From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- files/pl/_redirects.txt | 2683 +++++ files/pl/_wikihistory.json | 11772 +++++++++++++++++++ .../index.html | 93 + .../index.html" | 145 + .../index.html" | 46 + .../index.html" | 170 + files/pl/api_preferencji/index.html | 23 + .../pl/archive/add-ons/add-on_sdk/tools/index.html | 158 + .../add-ons/add-on_sdk/tools/jpm/index.html | 883 ++ .../add-ons/api_przechowywania_sesji/index.html | 85 + files/pl/archive/add-ons/index.html | 8 + .../index.html | 58 + files/pl/archive/b2g_os/add-ons/index.html | 58 + .../index.html" | 381 + files/pl/archive/b2g_os/index.html | 86 + .../b2g_os/instalacja_firefox_os/index.html | 72 + .../index.html | 149 + files/pl/archive/b2g_os/phone_guide/index.html | 53 + .../phone_guide/p\305\202omie\305\204/index.html" | 384 + .../b2g_os/phone_guide/zte_open_c/index.html | 82 + files/pl/archive/b2g_os/platform/gaia/index.html | 69 + files/pl/archive/b2g_os/platform/index.html | 81 + .../preparing_for_your_first_b2g_build/index.html | 135 + files/pl/archive/b2g_os/simulator/index.html | 47 + .../b2g_os/using_the_app_manager/index.html | 274 + files/pl/archive/index.html | 21 + files/pl/archive/marketplace/index.html | 57 + files/pl/archive/meta_docs/index.html | 12 + .../meta_docs/mdn_page_layout_guide/index.html | 8 + files/pl/archive/misc_top_level/index.html | 8 + .../obrazki,_tabele_i_tajemnicze_dziury/index.html | 114 + files/pl/archive/mozilla/drag_and_drop/index.html | 142 + files/pl/archive/mozilla/firefox/index.html | 8 + .../zastosowanie_mikroformat\303\263w/index.html" | 145 + files/pl/archive/mozilla/index.html | 10 + files/pl/archive/mozilla/venkman/index.html | 33 + files/pl/archive/mozilla/xbl/index.html | 39 + files/pl/archive/mozilla/xulrunner/index.html | 80 + files/pl/archive/rss/elementy/index.html | 148 + files/pl/archive/rss/elementy/title/index.html | 133 + files/pl/archive/rss/encje/index.html | 1380 +++ files/pl/archive/rss/index.html | 18 + "files/pl/archive/rss/modu\305\202y/index.html" | 16 + .../rss/modu\305\202y/slash/elementy/index.html" | 85 + .../pl/archive/rss/modu\305\202y/slash/index.html" | 70 + .../na_pocz\304\205tek/czym_jest_rss/index.html" | 227 + .../dlaczego_u\305\274ywamy_rss/index.html" | 22 + .../pl/archive/rss/na_pocz\304\205tek/index.html" | 54 + .../jak_dzia\305\202a_rss/index.html" | 16 + .../rss/na_pocz\304\205tek/syndykacja/index.html" | 76 + files/pl/archive/rss/wersje/0.90/index.html | 85 + files/pl/archive/rss/wersje/0.91/index.html | 18 + files/pl/archive/rss/wersje/index.html | 31 + files/pl/archive/standardy_www/index.html | 67 + .../index.html" | 40 + .../index.html" | 44 + .../index.html" | 104 + files/pl/archive/web/index.html | 12 + files/pl/archive/web/xforms/index.html | 68 + files/pl/archive/web/xforms/inne_zasoby/index.html | 16 + files/pl/atrybuty_elementu_xul/index.html | 509 + .../index.html" | 36 + .../index.html" | 89 + files/pl/bugzilla/index.html | 27 + files/pl/chrome/index.html | 24 + files/pl/co_nowego_w_deer_park_alpha/index.html | 262 + files/pl/components.utils.reporterror/index.html | 32 + files/pl/components.utils.sandbox/index.html | 8 + files/pl/components.utils/index.html | 35 + .../index.html" | 68 + files/pl/dhtml/index.html | 37 + .../index.html" | 47 + .../index.html | 288 + .../index.html | 57 + files/pl/dokumentacja_gecko_dom/index.html | 85 + .../pl/dokumentacja_gecko_dom/przedmowa/index.html | 46 + .../przyk\305\202ady_u\305\274ycia_dom/index.html" | 354 + .../dokumentacja_gecko_dom/wprowadzenie/index.html | 171 + .../dispatchevent_-_przyk\305\202ad/index.html" | 33 + files/pl/dom/element.onkeydown/index.html | 24 + files/pl/dom/index.html | 65 + files/pl/dom_i_javascript/index.html | 86 + .../index.html | 35 + .../index.html" | 81 + files/pl/dziesiec_lat_mdn/index.html | 43 + files/pl/e4x/index.html | 39 + .../firefox_-_potrzeba_wolno\305\233ci/index.html" | 21 + .../firefox_3_dla_programist\303\263w/index.html" | 279 + files/pl/fragmenty_kodu/canvas/index.html | 50 + files/pl/fragmenty_kodu/ciasteczka/index.html | 35 + files/pl/fragmenty_kodu/index.html | 73 + files/pl/fragmenty_kodu/js_xpcom/index.html | 125 + .../obserwator_pobierania_danych/index.html | 59 + files/pl/fragmenty_kodu/okna/index.html | 86 + .../fragmenty_kodu/r\303\263\305\274ne/index.html" | 103 + .../uruchamianie_aplikacji/index.html | 59 + .../fragmenty_kodu/wczytywanie_strony/index.html | 29 + files/pl/fragmenty_kodu/xml/index.html | 25 + .../2d_breakout_game_pure_javascript/index.html | 58 + .../odbijanie_od_scian/index.html | 111 + .../posusz_pilka/index.html | 147 + .../index.html | 118 + .../wykrywanie_kolizji/index.html | 128 + files/pl/games/tutorials/index.html | 27 + files/pl/gecko/index.html | 62 + files/pl/gecko_sdk/index.html | 112 + files/pl/generowanie_guid/index.html | 78 + files/pl/glossary/404/index.html | 15 + files/pl/glossary/abstrakcja/index.html | 55 + files/pl/glossary/accessibility/index.html | 32 + files/pl/glossary/accessibility_tree/index.html | 41 + files/pl/glossary/algorithm/index.html | 34 + files/pl/glossary/api/index.html | 31 + files/pl/glossary/argument/index.html | 22 + files/pl/glossary/arpanet/index.html | 14 + files/pl/glossary/array/index.html | 30 + files/pl/glossary/ascii/index.html | 17 + files/pl/glossary/boolean/index.html | 54 + files/pl/glossary/buffer/index.html | 16 + files/pl/glossary/chrome/index.html | 12 + files/pl/glossary/computer_programming/index.html | 17 + files/pl/glossary/cookie/index.html | 18 + files/pl/glossary/doctype/index.html | 28 + files/pl/glossary/dom/index.html | 29 + files/pl/glossary/firefox_os/index.html | 23 + files/pl/glossary/hipertekst/index.html | 26 + files/pl/glossary/hoisting/index.html | 64 + files/pl/glossary/html/index.html | 51 + files/pl/glossary/ietf/index.html | 19 + files/pl/glossary/index.html | 27 + files/pl/glossary/iso/index.html | 20 + files/pl/glossary/javascript/index.html | 41 + files/pl/glossary/klasa/index.html | 19 + files/pl/glossary/kryptografia/index.html | 13 + files/pl/glossary/metadata/index.html | 25 + files/pl/glossary/mozilla_firefox/index.html | 22 + files/pl/glossary/obiekt/index.html | 20 + files/pl/glossary/przegladarka/index.html | 27 + files/pl/glossary/pusty_element/index.html | 34 + files/pl/glossary/semantyka/index.html | 97 + files/pl/glossary/sgml/index.html | 20 + files/pl/glossary/slug/index.html | 15 + files/pl/glossary/truthy/index.html | 34 + files/pl/glossary/utf-8/index.html | 23 + files/pl/glossary/w3c/index.html | 26 + files/pl/glossary/webgl/index.html | 34 + files/pl/glossary/world_wide_web/index.html | 41 + files/pl/gry/index.html | 84 + files/pl/html/html5/index.html | 172 + files/pl/ikony_okna/index.html | 19 + .../index.html" | 34 + files/pl/javaxpcom/index.html | 28 + files/pl/json/index.html | 59 + .../index.html" | 23 + files/pl/learn/accessibility/index.html | 62 + .../accessibility/what_is_accessibility/index.html | 193 + files/pl/learn/common_questions/index.html | 135 + .../jak_dziala_internet/index.html | 100 + files/pl/learn/css/css_layout/flexbox/index.html | 340 + files/pl/learn/css/css_layout/index.html | 57 + .../learn/css/howto/generated_content/index.html | 140 + files/pl/learn/css/howto/index.html | 86 + files/pl/learn/css/index.html | 52 + .../css_basics/index.html | 272 + .../dealing_with_files/index.html | 95 + .../html_basics/index.html | 223 + .../learn/getting_started_with_the_web/index.html | 59 + .../installing_basic_software/index.html | 80 + .../jak_dziala_siec/index.html | 110 + .../javascript_basics/index.html | 395 + .../publishing_your_website/index.html | 124 + .../what_will_your_website_look_like/index.html | 99 + files/pl/learn/html/howto/index.html | 155 + .../html/howto/use_data_attributes/index.html | 82 + files/pl/learn/html/index.html | 50 + .../getting_started/index.html | 763 ++ .../pl/learn/html/introduction_to_html/index.html | 67 + files/pl/learn/index.html | 141 + files/pl/learn/javascript/asynchronous/index.html | 67 + .../javascript/asynchronous/introducing/index.html | 279 + .../pl/learn/javascript/building_blocks/index.html | 44 + .../javascript/client-side_web_apis/index.html | 37 + files/pl/learn/javascript/index.html | 78 + files/pl/learn/javascript/obiekty/index.html | 47 + .../pierwsze_kroki/a_first_splash/index.html | 687 ++ .../pierwsze_kroki/co_poszlo_nie_tak/index.html | 257 + .../pl/learn/javascript/pierwsze_kroki/index.html | 61 + .../javascript/pierwsze_kroki/math/index.html | 455 + .../pierwsze_kroki/what_is_javascript/index.html | 342 + .../javascript/pierwsze_kroki/zmienne/index.html | 453 + files/pl/learn/server-side/django/index.html | 70 + .../development_environment/index.html | 411 + .../pl/learn/server-side/express_nodejs/index.html | 70 + .../express_nodejs/introduction/index.html | 538 + .../express_nodejs/skeleton_website/index.html | 528 + .../szkolenie_aplikacja_biblioteka/index.html | 89 + files/pl/learn/server-side/index.html | 59 + .../client-side_javascript_frameworks/index.html | 147 + files/pl/learn/tools_and_testing/index.html | 48 + .../pl/lista_komponent\303\263w_xpcom/index.html" | 19 + files/pl/lokalizacja/index.html | 66 + files/pl/lokalizacja_opisu_rozszerzenia/index.html | 91 + files/pl/lokalizacja_rozszerzenia/index.html | 103 + files/pl/manifesty_instalacji/index.html | 444 + files/pl/mdn/contribute/feedback/index.html | 48 + files/pl/mdn/contribute/getting_started/index.html | 130 + .../budowa_dany_edycja_artyku\305\202/index.html" | 66 + .../howto/create_an_mdn_account/index.html | 41 + .../howto/create_and_edit_pages/index.html | 179 + .../howto/do_a_technical_review/index.html | 49 + files/pl/mdn/contribute/howto/index.html | 13 + .../howto/set_the_summary_for_a_page/index.html | 50 + files/pl/mdn/contribute/howto/tag/index.html | 376 + .../howto/tag_javascript_pages/index.html | 75 + files/pl/mdn/contribute/index.html | 92 + files/pl/mdn/contribute/localize/index.html | 33 + .../localize/localization_projects/index.html | 309 + .../localize/translating_pages/index.html | 40 + files/pl/mdn/contribute/persona_sign-in/index.html | 26 + files/pl/mdn/guidelines/index.html | 20 + files/pl/mdn/guidelines/style_guide/index.html | 556 + files/pl/mdn/index.html | 32 + files/pl/mdn/kuma/index.html | 25 + files/pl/mdn/user_guide/index.html | 7 + files/pl/midas/index.html | 330 + files/pl/midas/security_preferences/index.html | 63 + files/pl/miejsca/index.html | 67 + .../index.html" | 35 + "files/pl/modu\305\202y_javascript/index.html" | 25 + files/pl/motywy/index.html | 74 + files/pl/mozilla/add-ons/amo/index.html | 15 + files/pl/mozilla/add-ons/amo/policy/index.html | 20 + files/pl/mozilla/add-ons/index.html | 90 + files/pl/mozilla/add-ons/sdk/index.html | 113 + files/pl/mozilla/add-ons/thunderbird/index.html | 135 + .../mozilla/add-ons/webextensions/api/index.html | 61 + .../add-ons/webextensions/api/privacy/index.html | 72 + files/pl/mozilla/add-ons/webextensions/index.html | 125 + .../manifest.json/description/index.html | 40 + .../add-ons/webextensions/manifest.json/index.html | 105 + .../manifest.json/manifest_version/index.html | 41 + .../webextensions/manifest.json/name/index.html | 40 + .../webextensions/manifest.json/version/index.html | 45 + .../pierwsze_kroki_z_web-ext/index.html | 296 + .../tw\303\263j_pierwszy_webextension/index.html" | 152 + files/pl/mozilla/developer_guide/index.html | 153 + .../developer_guide/mozilla-central/index.html | 15 + .../mozilla/developer_guide/source_code/index.html | 49 + .../mozilla/firefox/developer_edition/index.html | 56 + files/pl/mozilla/firefox/index.html | 63 + .../firefox/multiprocess_firefox/index.html | 85 + .../index.html | 23 + files/pl/mozilla/firefox/releases/1.5/index.html | 157 + files/pl/mozilla/firefox/releases/2/index.html | 156 + files/pl/mozilla/firefox/releases/3/index.html | 273 + files/pl/mozilla/firefox/releases/index.html | 12 + files/pl/mozilla/firefox_for_android/index.html | 64 + .../mozilla/firefox_for_android_clone/index.html | 66 + files/pl/mozilla/index.html | 11 + .../pl/mozilla/javascript_code_modules/index.html | 98 + .../index.html" | 86 + files/pl/mozilla/javascript_tips/index.html | 110 + .../index.html" | 102 + files/pl/mozilla/localization/index.html | 21 + files/pl/mozilla/mobile/index.html | 32 + .../pl/mozilla/mobile/viewport_meta_tag/index.html | 97 + files/pl/mozilla/persona/branding/index.html | 43 + files/pl/mozilla/persona/index.html | 156 + files/pl/mozilla/preferences/index.html | 68 + .../pl/mozilla/projects/crash_reporting/index.html | 47 + .../wyszukiwanie_crash_reports/index.html | 250 + files/pl/mozilla/projects/index.html | 14 + files/pl/mozilla/projects/mozmill/index.html | 52 + files/pl/mozilla/projects/nss/index.html | 198 + .../projects/nss/probka_kodu_nss/index.html | 22 + files/pl/mozilla/projects/pzbo/index.html | 15 + files/pl/mozilla/rejestracja_chrome/index.html | 129 + files/pl/mozilla/tech/index.html | 17 + .../tech/xpcom/language_bindings/index.html | 25 + files/pl/mozilla/tech/xpcom/reference/index.html | 21 + files/pl/mozilla/tech/xul/action/index.html | 95 + .../pl/mozilla/tech/xul/arrowscrollbox/index.html | 184 + .../mozilla/tech/xul/atrybut/accessible/index.html | 17 + .../mozilla/tech/xul/atrybut/accesskey/index.html | 32 + .../tech/xul/atrybut/afterselected/index.html | 15 + files/pl/mozilla/tech/xul/atrybut/align/index.html | 33 + .../xul/atrybut/allownegativeassertions/index.html | 18 + .../xul/atrybut/alternatingbackground/index.html | 17 + .../tech/xul/atrybut/alwaysopenpopup/index.html | 17 + .../mozilla/tech/xul/atrybut/attribute/index.html | 17 + .../mozilla/tech/xul/atrybut/autocheck/index.html | 17 + .../xul/atrybut/autocompleteenabled/index.html | 18 + .../tech/xul/atrybut/autocompletepopup/index.html | 17 + .../tech/xul/atrybut/autocompletesearch/index.html | 20 + .../xul/atrybut/autocompletesearchparam/index.html | 18 + .../mozilla/tech/xul/atrybut/autofill/index.html | 18 + .../tech/xul/atrybut/autofillaftermatch/index.html | 17 + .../mozilla/tech/xul/atrybut/autoscroll/index.html | 18 + .../tech/xul/atrybut/beforeselected/index.html | 17 + .../tech/xul/atrybut/browser.type/index.html | 22 + .../tech/xul/atrybut/button.type/index.html | 20 + .../xul/atrybut/buttonaccesskeyaccept/index.html | 17 + .../xul/atrybut/buttonaccesskeycancel/index.html | 17 + .../atrybut/buttonaccesskeydisclosure/index.html | 17 + .../xul/atrybut/buttonaccesskeyextra1/index.html | 17 + .../xul/atrybut/buttonaccesskeyextra2/index.html | 17 + .../xul/atrybut/buttonaccesskeyhelp/index.html | 17 + .../tech/xul/atrybut/buttonalign/index.html | 17 + .../mozilla/tech/xul/atrybut/buttondir/index.html | 17 + .../xul/atrybut/buttondisabledaccept/index.html | 15 + .../tech/xul/atrybut/buttonlabelaccept/index.html | 17 + .../tech/xul/atrybut/buttonlabelcancel/index.html | 21 + .../xul/atrybut/buttonlabeldisclosure/index.html | 21 + .../tech/xul/atrybut/buttonlabelextra1/index.html | 17 + .../tech/xul/atrybut/buttonlabelextra2/index.html | 21 + .../tech/xul/atrybut/buttonlabelhelp/index.html | 21 + .../tech/xul/atrybut/buttonorient/index.html | 17 + .../mozilla/tech/xul/atrybut/buttonpack/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/buttons/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/checked/index.html | 17 + .../mozilla/tech/xul/atrybut/checkstate/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/class/index.html | 17 + .../tech/xul/atrybut/closebutton/index.html | 17 + .../xul/atrybut/coalesceduplicatearcs/index.html | 18 + .../mozilla/tech/xul/atrybut/collapse/index.html | 27 + .../mozilla/tech/xul/atrybut/collapsed/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/color/index.html | 21 + .../tech/xul/atrybut/colorpicker.type/index.html | 16 + files/pl/mozilla/tech/xul/atrybut/cols/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/command/index.html | 23 + .../mozilla/tech/xul/atrybut/container/index.html | 21 + .../tech/xul/atrybut/containment/index.html | 25 + .../tech/xul/atrybut/contentcontextmenu/index.html | 21 + .../tech/xul/atrybut/contenttooltip/index.html | 21 + .../tech/xul/atrybut/contextmenu/index.html | 18 + .../pl/mozilla/tech/xul/atrybut/control/index.html | 15 + files/pl/mozilla/tech/xul/atrybut/crop/index.html | 26 + .../pl/mozilla/tech/xul/atrybut/curpos/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/current/index.html | 16 + .../mozilla/tech/xul/atrybut/currentset/index.html | 23 + .../tech/xul/atrybut/customindex/index.html | 23 + .../tech/xul/atrybut/customizable/index.html | 23 + .../tech/xul/atrybut/datepicker.type/index.html | 38 + .../tech/xul/atrybut/datepicker.value/index.html | 30 + .../pl/mozilla/tech/xul/atrybut/default/index.html | 17 + .../tech/xul/atrybut/defaultbutton/index.html | 17 + .../mozilla/tech/xul/atrybut/defaultset/index.html | 18 + .../tech/xul/atrybut/description/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/dir/index.html | 20 + .../xul/atrybut/disableautocomplete/index.html | 17 + .../tech/xul/atrybut/disableautoselect/index.html | 17 + .../tech/xul/atrybut/disableclose/index.html | 17 + .../mozilla/tech/xul/atrybut/disabled/index.html | 19 + .../tech/xul/atrybut/disablehistory/index.html | 17 + .../xul/atrybut/disablekeynavigation/index.html | 17 + .../tech/xul/atrybut/disablesecurity/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/dlgtype/index.html | 23 + .../mozilla/tech/xul/atrybut/dragging/index.html | 17 + .../mozilla/tech/xul/atrybut/editable/index.html | 16 + .../tech/xul/atrybut/editor.type/index.html | 17 + .../mozilla/tech/xul/atrybut/editortype/index.html | 20 + .../pl/mozilla/tech/xul/atrybut/element/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/empty/index.html | 18 + .../tech/xul/atrybut/enablecolumndrag/index.html | 17 + .../tech/xul/atrybut/enablehistory/index.html | 17 + .../mozilla/tech/xul/atrybut/equalsize/index.html | 20 + .../mozilla/tech/xul/atrybut/eventnode/index.html | 20 + .../mozilla/tech/xul/atrybut/first-tab/index.html | 17 + .../tech/xul/atrybut/firstdayofweek/index.html | 23 + .../mozilla/tech/xul/atrybut/firstpage/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/flags/index.html | 20 + files/pl/mozilla/tech/xul/atrybut/flex/index.html | 20 + .../pl/mozilla/tech/xul/atrybut/focused/index.html | 17 + .../tech/xul/atrybut/grippyhidden/index.html | 18 + .../tech/xul/atrybut/grippytooltiptext/index.html | 18 + files/pl/mozilla/tech/xul/atrybut/group/index.html | 21 + .../xul/atrybut/handlectrlpageupdown/index.html | 17 + .../tech/xul/atrybut/handlectrltab/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/height/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/helpuri/index.html | 18 + .../pl/mozilla/tech/xul/atrybut/hidden/index.html | 17 + .../mozilla/tech/xul/atrybut/hidechrome/index.html | 17 + .../tech/xul/atrybut/hidecolumnpicker/index.html | 17 + .../mozilla/tech/xul/atrybut/hideheader/index.html | 17 + .../tech/xul/atrybut/hideseconds/index.html | 18 + .../mozilla/tech/xul/atrybut/homepage/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/href/index.html | 19 + files/pl/mozilla/tech/xul/atrybut/icon/index.html | 18 + files/pl/mozilla/tech/xul/atrybut/id/index.html | 37 + .../atrybut/ignoreblurwhilesearching/index.html | 12 + .../xul/atrybut/ignoreincolumnpicker/index.html | 16 + .../mozilla/tech/xul/atrybut/ignorekeys/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/image/index.html | 18 + .../mozilla/tech/xul/atrybut/increment/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/index.html | 274 + .../tech/xul/atrybut/inputtooltiptext/index.html | 17 + .../tech/xul/atrybut/insertafter/index.html | 18 + .../tech/xul/atrybut/insertbefore/index.html | 18 + .../tech/xul/atrybut/instantapply/index.html | 18 + .../mozilla/tech/xul/atrybut/inverted/index.html | 16 + files/pl/mozilla/tech/xul/atrybut/key/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/keycode/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/keytext/index.html | 17 + .../tech/xul/atrybut/label.value/index.html | 15 + files/pl/mozilla/tech/xul/atrybut/label/index.html | 32 + .../mozilla/tech/xul/atrybut/last-tab/index.html | 17 + .../mozilla/tech/xul/atrybut/lastpage/index.html | 17 + .../tech/xul/atrybut/lastselected/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/left/index.html | 17 + .../tech/xul/atrybut/listcell.type/index.html | 21 + .../tech/xul/atrybut/listitem.type/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/max/index.html | 14 + .../mozilla/tech/xul/atrybut/maxheight/index.html | 13 + .../mozilla/tech/xul/atrybut/maxlength/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/maxpos/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/maxrows/index.html | 21 + .../mozilla/tech/xul/atrybut/maxwidth/index.html | 17 + files/pl/mozilla/tech/xul/atrybut/menu/index.html | 21 + .../tech/xul/atrybut/menuitem.key/index.html | 21 + .../tech/xul/atrybut/menuitem.name/index.html | 39 + .../tech/xul/atrybut/menuitem.type/index.html | 27 + files/pl/mozilla/tech/xul/atrybut/min/index.html | 14 + .../mozilla/tech/xul/atrybut/minheight/index.html | 17 + .../tech/xul/atrybut/minresultsforpopup/index.html | 21 + .../mozilla/tech/xul/atrybut/minwidth/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/mode/index.html | 14 + .../mozilla/tech/xul/atrybut/modifiers/index.html | 25 + .../mozilla/tech/xul/atrybut/multiline/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/name/index.html | 14 + files/pl/mozilla/tech/xul/atrybut/next/index.html | 17 + .../mozilla/tech/xul/atrybut/noautohide/index.html | 15 + .../pl/mozilla/tech/xul/atrybut/nomatch/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/object/index.html | 16 + .../mozilla/tech/xul/atrybut/observes/index.html | 21 + .../tech/xul/atrybut/onbeforeaccept/index.html | 21 + .../tech/xul/atrybut/onbookmarkgroup/index.html | 17 + .../mozilla/tech/xul/atrybut/onchange/index.html | 18 + .../mozilla/tech/xul/atrybut/onclosetab/index.html | 21 + .../mozilla/tech/xul/atrybut/oncommand/index.html | 21 + .../tech/xul/atrybut/oncommandupdate/index.html | 17 + .../pl/mozilla/tech/xul/atrybut/onerror/index.html | 21 + .../tech/xul/atrybut/onerrorcommand/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/oninput/index.html | 26 + .../pl/mozilla/tech/xul/atrybut/onload/index.html | 23 + .../mozilla/tech/xul/atrybut/onnewtab/index.html | 23 + .../mozilla/tech/xul/atrybut/onpaneload/index.html | 21 + .../tech/xul/atrybut/onpopuphidden/index.html | 21 + .../tech/xul/atrybut/onpopuphiding/index.html | 21 + .../tech/xul/atrybut/onpopupshowing/index.html | 21 + .../tech/xul/atrybut/onpopupshown/index.html | 21 + .../tech/xul/atrybut/onsearchcomplete/index.html | 17 + .../mozilla/tech/xul/atrybut/onselect/index.html | 10 + .../tech/xul/atrybut/ontextcommand/index.html | 21 + .../tech/xul/atrybut/ontextentered/index.html | 21 + .../tech/xul/atrybut/ontextreverted/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/open/index.html | 18 + .../pl/mozilla/tech/xul/atrybut/orient/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/pack/index.html | 26 + .../pl/mozilla/tech/xul/atrybut/pageid/index.html | 21 + .../tech/xul/atrybut/pageincrement/index.html | 15 + .../mozilla/tech/xul/atrybut/pagestep/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/phase/index.html | 16 + .../tech/xul/atrybut/pickertooltiptext/index.html | 17 + .../mozilla/tech/xul/atrybut/popup.left/index.html | 21 + .../mozilla/tech/xul/atrybut/popup.top/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/popup/index.html | 26 + .../mozilla/tech/xul/atrybut/predicate/index.html | 15 + .../tech/xul/atrybut/preference.name/index.html | 18 + .../tech/xul/atrybut/preference.type/index.html | 23 + .../mozilla/tech/xul/atrybut/preference/index.html | 18 + .../tech/xul/atrybut/prefpane.selected/index.html | 28 + .../tech/xul/atrybut/prefpane.src/index.html | 24 + .../tech/xul/atrybut/progressmeter.mode/index.html | 19 + .../xul/atrybut/progressmeter.value/index.html | 16 + .../mozilla/tech/xul/atrybut/properties/index.html | 21 + .../mozilla/tech/xul/atrybut/readonly/index.html | 15 + files/pl/mozilla/tech/xul/atrybut/ref/index.html | 16 + .../tech/xul/atrybut/removeelement/index.html | 21 + .../tech/xul/atrybut/resizeafter/index.html | 32 + .../tech/xul/atrybut/resizebefore/index.html | 25 + .../tech/xul/atrybut/resizer.dir/index.html | 26 + files/pl/mozilla/tech/xul/atrybut/rows/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/screenx/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/screeny/index.html | 18 + .../mozilla/tech/xul/atrybut/script.src/index.html | 17 + .../tech/xul/atrybut/script.type/index.html | 21 + .../tech/xul/atrybut/searchsessions/index.html | 26 + .../mozilla/tech/xul/atrybut/selected/index.html | 29 + .../tech/xul/atrybut/selectedindex/index.html | 21 + .../tech/xul/atrybut/separator.orient/index.html | 20 + .../tech/xul/atrybut/showcommentcolumn/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/size/index.html | 21 + .../mozilla/tech/xul/atrybut/sizemode/index.html | 26 + .../tech/xul/atrybut/sizetopopup/index.html | 21 + .../mozilla/tech/xul/atrybut/sortactive/index.html | 21 + .../tech/xul/atrybut/sortdirection/index.html | 26 + .../tech/xul/atrybut/sortresource/index.html | 21 + .../tech/xul/atrybut/sortresource2/index.html | 18 + .../mozilla/tech/xul/atrybut/spellcheck/index.html | 25 + files/pl/mozilla/tech/xul/atrybut/src/index.html | 35 + files/pl/mozilla/tech/xul/atrybut/state/index.html | 21 + .../mozilla/tech/xul/atrybut/statusbar/index.html | 23 + .../mozilla/tech/xul/atrybut/statustext/index.html | 39 + .../tech/xul/atrybut/stringbundle.src/index.html | 18 + files/pl/mozilla/tech/xul/atrybut/style/index.html | 21 + .../pl/mozilla/tech/xul/atrybut/subject/index.html | 16 + .../mozilla/tech/xul/atrybut/substate/index.html | 27 + .../tech/xul/atrybut/tab.selected/index.html | 28 + .../mozilla/tech/xul/atrybut/tabindex/index.html | 15 + .../tech/xul/atrybut/tabs.onselect/index.html | 28 + .../tech/xul/atrybut/template.container/index.html | 21 + .../tech/xul/atrybut/textbox.onchange/index.html | 21 + .../tech/xul/atrybut/textbox.type/index.html | 31 + .../tech/xul/atrybut/textbox.value/index.html | 28 + .../tech/xul/atrybut/textnode.value/index.html | 18 + .../tech/xul/atrybut/timepicker.value/index.html | 18 + files/pl/mozilla/tech/xul/atrybut/title/index.html | 18 + .../tech/xul/atrybut/toolbar.mode/index.html | 27 + .../tech/xul/atrybut/toolbarbutton.type/index.html | 32 + .../tech/xul/atrybut/toolbarname/index.html | 23 + .../pl/mozilla/tech/xul/atrybut/tooltip/index.html | 21 + .../tech/xul/atrybut/tooltiptextnew/index.html | 23 + files/pl/mozilla/tech/xul/atrybut/top/index.html | 21 + .../tech/xul/atrybut/tree.onselect/index.html | 23 + .../tech/xul/atrybut/treecell.mode/index.html | 26 + .../tech/xul/atrybut/treecell.src/index.html | 18 + .../tech/xul/atrybut/treecol.src/index.html | 18 + .../tech/xul/atrybut/treecol.type/index.html | 50 + .../tech/xul/atrybut/treeitem.label/index.html | 18 + files/pl/mozilla/tech/xul/atrybut/type/index.html | 16 + .../mozilla/tech/xul/atrybut/useraction/index.html | 26 + .../mozilla/tech/xul/atrybut/validate/index.html | 25 + files/pl/mozilla/tech/xul/atrybut/value/index.html | 30 + .../tech/xul/atrybut/wait-cursor/index.html | 21 + files/pl/mozilla/tech/xul/atrybut/width/index.html | 21 + .../mozilla/tech/xul/atrybut/windowtype/index.html | 18 + files/pl/mozilla/tech/xul/atrybut/wrap/index.html | 17 + files/pl/mozilla/tech/xul/bbox/index.html | 91 + files/pl/mozilla/tech/xul/binding/index.html | 114 + files/pl/mozilla/tech/xul/bindings/index.html | 103 + files/pl/mozilla/tech/xul/box/index.html | 102 + files/pl/mozilla/tech/xul/broadcaster/index.html | 94 + .../pl/mozilla/tech/xul/broadcasterset/index.html | 92 + files/pl/mozilla/tech/xul/browser/index.html | 406 + files/pl/mozilla/tech/xul/button/index.html | 457 + files/pl/mozilla/tech/xul/caption/index.html | 176 + files/pl/mozilla/tech/xul/checkbox/index.html | 272 + files/pl/mozilla/tech/xul/colorpicker/index.html | 159 + files/pl/mozilla/tech/xul/column/index.html | 94 + files/pl/mozilla/tech/xul/columns/index.html | 94 + files/pl/mozilla/tech/xul/command/index.html | 79 + files/pl/mozilla/tech/xul/commandset/index.html | 61 + files/pl/mozilla/tech/xul/conditions/index.html | 93 + files/pl/mozilla/tech/xul/content/index.html | 96 + files/pl/mozilla/tech/xul/datepicker/index.html | 228 + files/pl/mozilla/tech/xul/deck/index.html | 140 + files/pl/mozilla/tech/xul/description/index.html | 235 + files/pl/mozilla/tech/xul/dialog/index.html | 448 + files/pl/mozilla/tech/xul/dialogheader/index.html | 89 + .../mozilla/tech/xul/dokumentacja_xul/index.html | 166 + files/pl/mozilla/tech/xul/editor/index.html | 213 + files/pl/mozilla/tech/xul/grid/index.html | 121 + files/pl/mozilla/tech/xul/grippy/index.html | 95 + files/pl/mozilla/tech/xul/groupbox/index.html | 116 + files/pl/mozilla/tech/xul/hbox/index.html | 100 + files/pl/mozilla/tech/xul/iframe/index.html | 182 + files/pl/mozilla/tech/xul/image/index.html | 163 + files/pl/mozilla/tech/xul/index.html | 31 + files/pl/mozilla/tech/xul/key/index.html | 149 + files/pl/mozilla/tech/xul/keyset/index.html | 97 + files/pl/mozilla/tech/xul/kontrolki_xul/index.html | 145 + .../aktualizacja_polece\305\204/index.html" | 133 + .../index.html" | 117 + .../index.html" | 58 + .../index.html" | 85 + .../index.html" | 121 + .../index.html" | 84 + .../dodawanie_arkuszy_styl\303\263w/index.html" | 165 + .../dodawanie_element\303\263w_html/index.html" | 124 + .../index.html" | 70 + .../index.html" | 152 + .../index.html" | 133 + .../dodawanie_innych_element\303\263w/index.html" | 87 + .../tech/xul/kurs_xul/dodawanie_metod/index.html | 196 + .../dodawanie_przycisk\303\263w/index.html" | 82 + .../dodawanie_w\305\202asno\305\233ci/index.html" | 165 + .../pl/mozilla/tech/xul/kurs_xul/drzewa/index.html | 117 + .../tech/xul/kurs_xul/drzewa_i_szablony/index.html | 138 + .../kurs_xul/dziedziczenie_atrybutu_xbl/index.html | 115 + .../tech/xul/kurs_xul/dziedziczenie_xbl/index.html | 56 + files/pl/mozilla/tech/xul/kurs_xul/index.html | 170 + .../tech/xul/kurs_xul/interfejsy_xpcom/index.html | 175 + .../index.html" | 166 + .../tech/xul/kurs_xul/kontrolki_list/index.html | 140 + .../xul/kurs_xul/kontrolki_numeryczne/index.html | 92 + .../kurs_xul/kontrolki_wej\305\233cia/index.html" | 131 + .../tech/xul/kurs_xul/lokalizacja/index.html | 310 + .../xul/kurs_xul/manipulowanie_listami/index.html | 146 + .../kurs_xul/model_pude\305\202kowy/index.html" | 126 + .../index.html" | 69 + .../modyfikowanie_interfejsu_xul/index.html | 170 + .../mo\305\274liwo\305\233ci_okna/index.html" | 74 + .../xul/kurs_xul/nadawanie_stylu_drzewa/index.html | 156 + .../index.html" | 89 + .../kurs_xul/obiektowy_model_dokumentu/index.html | 244 + .../kurs_xul/obiekty_pude\305\202ka/index.html" | 164 + .../obiekty_pude\305\202kowe_drzewa/index.html" | 189 + .../index.html" | 95 + .../xul/kurs_xul/panele_tre\305\233ci/index.html" | 83 + .../xul/kurs_xul/paski_narz\304\231dzi/index.html" | 85 + .../xul/kurs_xul/paski_post\304\231pu/index.html" | 59 + .../tech/xul/kurs_xul/paski_przewijania/index.html | 57 + .../plik_w\305\202asno\305\233ci/index.html" | 85 + .../tech/xul/kurs_xul/pliki_manifestu/index.html | 176 + .../mozilla/tech/xul/kurs_xul/pola_grup/index.html | 78 + .../mozilla/tech/xul/kurs_xul/polecenia/index.html | 170 + .../pozycjonowanie_element\303\263w/index.html" | 266 + .../xul/kurs_xul/pozycjonowanie_stosu/index.html | 36 + .../tech/xul/kurs_xul/proste_paski_menu/index.html | 163 + .../tech/xul/kurs_xul/przewijane_menu/index.html | 50 + .../kurs_xul/przyk\305\202ady_xpcom/index.html" | 155 + .../xul/kurs_xul/pude\305\202ko_kart/index.html" | 179 + .../tech/xul/kurs_xul/rozdzielacze/index.html | 95 + .../index.html" | 127 + .../pl/mozilla/tech/xul/kurs_xul/siatki/index.html | 169 + .../xul/kurs_xul/skrypty_instalacyjne/index.html | 135 + .../skr\303\263ty_klawiaturowe/index.html" | 378 + .../kurs_xul/stosy_i_pok\305\202ady/index.html" | 77 + .../tech/xul/kurs_xul/struktura_xul/index.html | 194 + .../mozilla/tech/xul/kurs_xul/szablony/index.html | 201 + .../index.html" | 105 + .../index.html" | 346 + .../xul/kurs_xul/trwa\305\202e_dane/index.html" | 54 + .../xul/kurs_xul/tworzenie_instalatora/index.html | 80 + .../xul/kurs_xul/tworzenie_kreatora/index.html | 143 + .../kurs_xul/tworzenie_motyw\303\263w/index.html" | 171 + .../tworzenie_okien_dialogowych/index.html | 151 + .../tech/xul/kurs_xul/tworzenie_okna/index.html | 103 + .../tech/xul/kurs_xul/url_chrome/index.html | 74 + .../index.html" | 174 + .../tech/xul/kurs_xul/wprowadzenie/index.html | 73 + .../xul/kurs_xul/wprowadzenie_do_rdf/index.html | 138 + .../xul/kurs_xul/wprowadzenie_do_xbl/index.html | 100 + .../kurs_xul/wyskakuj\304\205ce_menu/index.html" | 196 + .../w\305\202asne_widoki_drzewa/index.html" | 149 + .../zaawansowane_regu\305\202y/index.html" | 219 + .../index.html" | 141 + .../xul/kurs_xul/zaznaczenie_drzewa/index.html | 73 + .../index.html" | 299 + files/pl/mozilla/tech/xul/label/index.html | 258 + files/pl/mozilla/tech/xul/listbox/index.html | 413 + files/pl/mozilla/tech/xul/listcell/index.html | 135 + files/pl/mozilla/tech/xul/listcol/index.html | 95 + files/pl/mozilla/tech/xul/listcols/index.html | 109 + files/pl/mozilla/tech/xul/listhead/index.html | 125 + files/pl/mozilla/tech/xul/listheader/index.html | 128 + files/pl/mozilla/tech/xul/listitem/index.html | 366 + files/pl/mozilla/tech/xul/member/index.html | 107 + files/pl/mozilla/tech/xul/menu/index.html | 218 + files/pl/mozilla/tech/xul/menubar/index.html | 114 + files/pl/mozilla/tech/xul/menuitem/index.html | 360 + files/pl/mozilla/tech/xul/menulist/index.html | 476 + files/pl/mozilla/tech/xul/menuseparator/index.html | 149 + .../tech/xul/metoda/acceptdialog/index.html | 18 + .../tech/xul/metoda/additemtoselection/index.html | 17 + .../pl/mozilla/tech/xul/metoda/addpane/index.html | 18 + .../tech/xul/metoda/addprogresslistener/index.html | 18 + .../mozilla/tech/xul/metoda/addsession/index.html | 17 + files/pl/mozilla/tech/xul/metoda/addtab/index.html | 18 + .../pl/mozilla/tech/xul/metoda/advance/index.html | 18 + .../tech/xul/metoda/advanceselectedtab/index.html | 17 + .../tech/xul/metoda/appendcustomtoolbar/index.html | 17 + .../mozilla/tech/xul/metoda/appendgroup/index.html | 18 + .../mozilla/tech/xul/metoda/appenditem/index.html | 38 + files/pl/mozilla/tech/xul/metoda/blur/index.html | 18 + files/pl/mozilla/tech/xul/metoda/cancel/index.html | 17 + .../tech/xul/metoda/canceldialog/index.html | 17 + .../xul/metoda/centerwindowonscreen/index.html | 17 + .../xul/metoda/checkadjacentelement/index.html | 17 + .../tech/xul/metoda/clearresults/index.html | 17 + .../tech/xul/metoda/clearselection/index.html | 16 + files/pl/mozilla/tech/xul/metoda/click/index.html | 18 + files/pl/mozilla/tech/xul/metoda/close/index.html | 17 + .../tech/xul/metoda/collapsetoolbar/index.html | 18 + .../pl/mozilla/tech/xul/metoda/decrease/index.html | 19 + .../tech/xul/metoda/decreasepage/index.html | 18 + .../mozilla/tech/xul/metoda/docommand/index.html | 18 + .../xul/metoda/ensureelementisvisible/index.html | 17 + .../xul/metoda/ensureindexisvisible/index.html | 17 + .../ensureselectedelementisvisible/index.html | 16 + .../tech/xul/metoda/expandtoolbar/index.html | 18 + files/pl/mozilla/tech/xul/metoda/extra1/index.html | 17 + files/pl/mozilla/tech/xul/metoda/extra2/index.html | 17 + files/pl/mozilla/tech/xul/metoda/focus/index.html | 18 + .../xul/metoda/getbrowserfordocument/index.html | 21 + .../tech/xul/metoda/getbrowserfortab/index.html | 17 + .../mozilla/tech/xul/metoda/getbutton/index.html | 17 + .../tech/xul/metoda/getdefaultsession/index.html | 17 + .../mozilla/tech/xul/metoda/geteditor/index.html | 17 + .../xul/metoda/getelementsbyattribute/index.html | 18 + .../tech/xul/metoda/gethtmleditor/index.html | 17 + .../metoda/getindexoffirstvisiblerow/index.html | 17 + .../tech/xul/metoda/getindexofitem/index.html | 17 + .../tech/xul/metoda/getitematindex/index.html | 17 + .../mozilla/tech/xul/metoda/getnextitem/index.html | 17 + .../tech/xul/metoda/getnotificationbox/index.html | 21 + .../xul/metoda/getnumberofvisiblerows/index.html | 17 + .../mozilla/tech/xul/metoda/getpagebyid/index.html | 17 + .../tech/xul/metoda/getpreviousitem/index.html | 17 + .../mozilla/tech/xul/metoda/getresultat/index.html | 17 + .../tech/xul/metoda/getresultcount/index.html | 17 + .../tech/xul/metoda/getresultvalueat/index.html | 21 + .../mozilla/tech/xul/metoda/getrowcount/index.html | 18 + .../mozilla/tech/xul/metoda/getsearchat/index.html | 21 + .../mozilla/tech/xul/metoda/getsession/index.html | 21 + .../tech/xul/metoda/getsessionbyname/index.html | 21 + .../tech/xul/metoda/getsessionresultat/index.html | 21 + .../tech/xul/metoda/getsessionstatusat/index.html | 21 + .../tech/xul/metoda/getsessionvalueat/index.html | 21 + .../mozilla/tech/xul/metoda/getstring/index.html | 21 + files/pl/mozilla/tech/xul/metoda/goback/index.html | 17 + .../mozilla/tech/xul/metoda/gobackgroup/index.html | 23 + files/pl/mozilla/tech/xul/metoda/godown/index.html | 21 + .../mozilla/tech/xul/metoda/goforward/index.html | 17 + .../tech/xul/metoda/goforwardgroup/index.html | 23 + files/pl/mozilla/tech/xul/metoda/gohome/index.html | 17 + files/pl/mozilla/tech/xul/metoda/goto/index.html | 21 + .../mozilla/tech/xul/metoda/gotoindex/index.html | 17 + files/pl/mozilla/tech/xul/metoda/goup/index.html | 21 + .../tech/xul/metoda/hasuservalue/index.html | 21 + .../mozilla/tech/xul/metoda/hidepopup/index.html | 20 + .../pl/mozilla/tech/xul/metoda/increase/index.html | 27 + .../tech/xul/metoda/increasepage/index.html | 19 + files/pl/mozilla/tech/xul/metoda/index.html | 147 + .../mozilla/tech/xul/metoda/insertitem/index.html | 27 + .../tech/xul/metoda/insertitemat/index.html | 50 + .../tech/xul/metoda/invertselection/index.html | 21 + .../mozilla/tech/xul/metoda/loadonetab/index.html | 21 + .../pl/mozilla/tech/xul/metoda/loadtabs/index.html | 21 + .../pl/mozilla/tech/xul/metoda/loaduri/index.html | 17 + .../tech/xul/metoda/loaduriwithflags/index.html | 21 + .../tech/xul/metoda/makeeditable/index.html | 17 + .../tech/xul/metoda/menulist.appenditem/index.html | 26 + .../tech/xul/metoda/menulist.select/index.html | 21 + files/pl/mozilla/tech/xul/metoda/moveto/index.html | 21 + .../tech/xul/metoda/movetoalertposition/index.html | 17 + .../tech/xul/metoda/onsearchcomplete/index.html | 21 + .../tech/xul/metoda/ontextentered/index.html | 21 + .../tech/xul/metoda/ontextreverted/index.html | 21 + .../mozilla/tech/xul/metoda/openwindow/index.html | 21 + .../xul/metoda/preferenceforelement/index.html | 18 + files/pl/mozilla/tech/xul/metoda/reload/index.html | 17 + .../tech/xul/metoda/reloadalltabs/index.html | 21 + .../mozilla/tech/xul/metoda/reloadtab/index.html | 21 + .../tech/xul/metoda/reloadwithflags/index.html | 21 + .../tech/xul/metoda/removeallitems/index.html | 17 + .../tech/xul/metoda/removealltabsbut/index.html | 21 + .../metoda/removecurrentnotification/index.html | 18 + .../tech/xul/metoda/removecurrenttab/index.html | 21 + .../tech/xul/metoda/removeitemat/index.html | 39 + .../xul/metoda/removeitemfromselection/index.html | 21 + .../tech/xul/metoda/removenotification/index.html | 21 + .../xul/metoda/removeprogresslistener/index.html | 17 + .../tech/xul/metoda/removesession/index.html | 21 + .../tech/xul/metoda/replacegroup/index.html | 17 + files/pl/mozilla/tech/xul/metoda/reset/index.html | 23 + files/pl/mozilla/tech/xul/metoda/rewind/index.html | 21 + .../tech/xul/metoda/scrolltoindex/index.html | 21 + files/pl/mozilla/tech/xul/metoda/select/index.html | 21 + .../mozilla/tech/xul/metoda/selectall/index.html | 21 + .../mozilla/tech/xul/metoda/selectitem/index.html | 21 + .../tech/xul/metoda/selectitemrange/index.html | 16 + .../tech/xul/metoda/setselectionrange/index.html | 18 + .../pl/mozilla/tech/xul/metoda/showpane/index.html | 21 + files/pl/mozilla/tech/xul/metoda/sizeto/index.html | 18 + files/pl/mozilla/tech/xul/metoda/stop/index.html | 18 + .../tech/xul/metoda/syncsessions/index.html | 18 + .../mozilla/tech/xul/metoda/timedselect/index.html | 21 + .../tech/xul/metoda/toggleitemselection/index.html | 21 + files/pl/mozilla/tech/xul/notification/index.html | 117 + .../pl/mozilla/tech/xul/notificationbox/index.html | 150 + files/pl/mozilla/tech/xul/observes/index.html | 120 + files/pl/mozilla/tech/xul/page/index.html | 92 + files/pl/mozilla/tech/xul/popup/index.html | 19 + files/pl/mozilla/tech/xul/popupset/index.html | 104 + files/pl/mozilla/tech/xul/preference/index.html | 268 + files/pl/mozilla/tech/xul/preferences/index.html | 96 + files/pl/mozilla/tech/xul/prefpane/index.html | 183 + files/pl/mozilla/tech/xul/prefwindow/index.html | 388 + files/pl/mozilla/tech/xul/progressmeter/index.html | 170 + files/pl/mozilla/tech/xul/radio/index.html | 314 + files/pl/mozilla/tech/xul/radiogroup/index.html | 221 + files/pl/mozilla/tech/xul/resizer/index.html | 114 + files/pl/mozilla/tech/xul/richlistbox/index.html | 250 + files/pl/mozilla/tech/xul/richlistitem/index.html | 181 + files/pl/mozilla/tech/xul/row/index.html | 96 + files/pl/mozilla/tech/xul/rows/index.html | 96 + files/pl/mozilla/tech/xul/rule/index.html | 56 + files/pl/mozilla/tech/xul/scale/index.html | 223 + files/pl/mozilla/tech/xul/script/index.html | 126 + files/pl/mozilla/tech/xul/scrollbar/index.html | 85 + files/pl/mozilla/tech/xul/scrollbox/index.html | 105 + files/pl/mozilla/tech/xul/scrollcorner/index.html | 94 + files/pl/mozilla/tech/xul/separator/index.html | 131 + files/pl/mozilla/tech/xul/spacer/index.html | 103 + files/pl/mozilla/tech/xul/splitter/index.html | 146 + files/pl/mozilla/tech/xul/stack/index.html | 96 + files/pl/mozilla/tech/xul/statusbar/index.html | 120 + .../pl/mozilla/tech/xul/statusbarpanel/index.html | 127 + files/pl/mozilla/tech/xul/stringbundle/index.html | 177 + .../pl/mozilla/tech/xul/stringbundleset/index.html | 94 + .../pl/mozilla/tech/xul/styl/alert-icon/index.html | 15 + .../pl/mozilla/tech/xul/styl/error-icon/index.html | 15 + .../mozilla/tech/xul/styl/groove-thin/index.html | 15 + files/pl/mozilla/tech/xul/styl/groove/index.html | 15 + files/pl/mozilla/tech/xul/styl/header/index.html | 15 + files/pl/mozilla/tech/xul/styl/indent/index.html | 15 + files/pl/mozilla/tech/xul/styl/index.html | 32 + .../tech/xul/styl/listcell-iconic/index.html | 15 + .../tech/xul/styl/listitem-iconic/index.html | 15 + .../tech/xul/styl/menuitem-iconic/index.html | 15 + .../tech/xul/styl/menuitem-non-iconic/index.html | 15 + .../mozilla/tech/xul/styl/message-icon/index.html | 15 + .../pl/mozilla/tech/xul/styl/monospace/index.html | 15 + files/pl/mozilla/tech/xul/styl/plain/index.html | 15 + .../mozilla/tech/xul/styl/question-icon/index.html | 15 + .../mozilla/tech/xul/styl/small-margin/index.html | 15 + .../tech/xul/styl/statusbarpanel-iconic/index.html | 15 + .../xul/styl/statusbarpanel-menu-iconic/index.html | 15 + .../pl/mozilla/tech/xul/styl/text-link/index.html | 15 + files/pl/mozilla/tech/xul/styl/thin/index.html | 11 + .../mozilla/tech/xul/styl/tree-splitter/index.html | 15 + .../mozilla/tech/xul/styl/treecol-image/index.html | 16 + files/pl/mozilla/tech/xul/tab/index.html | 247 + files/pl/mozilla/tech/xul/tabbox/index.html | 168 + files/pl/mozilla/tech/xul/tabbrowser/index.html | 602 + files/pl/mozilla/tech/xul/tabpanel/index.html | 96 + files/pl/mozilla/tech/xul/tabpanels/index.html | 155 + files/pl/mozilla/tech/xul/tabs/index.html | 211 + files/pl/mozilla/tech/xul/template/index.html | 115 + files/pl/mozilla/tech/xul/textbox/index.html | 538 + .../index.html" | 866 ++ .../index.html" | 936 ++ files/pl/mozilla/tech/xul/textnode/index.html | 106 + files/pl/mozilla/tech/xul/timepicker/index.html | 263 + files/pl/mozilla/tech/xul/titlebar/index.html | 94 + files/pl/mozilla/tech/xul/toolbar/index.html | 239 + files/pl/mozilla/tech/xul/toolbarbutton/index.html | 474 + files/pl/mozilla/tech/xul/toolbargrippy/index.html | 113 + files/pl/mozilla/tech/xul/toolbaritem/index.html | 96 + .../pl/mozilla/tech/xul/toolbarpalette/index.html | 97 + .../mozilla/tech/xul/toolbarseparator/index.html | 115 + files/pl/mozilla/tech/xul/toolbarset/index.html | 96 + files/pl/mozilla/tech/xul/toolbarspacer/index.html | 113 + files/pl/mozilla/tech/xul/toolbarspring/index.html | 113 + files/pl/mozilla/tech/xul/toolbox/index.html | 186 + files/pl/mozilla/tech/xul/tooltip/index.html | 230 + files/pl/mozilla/tech/xul/tree/index.html | 372 + files/pl/mozilla/tech/xul/treecell/index.html | 117 + files/pl/mozilla/tech/xul/treechildren/index.html | 111 + files/pl/mozilla/tech/xul/treecol/index.html | 249 + files/pl/mozilla/tech/xul/treecols/index.html | 127 + files/pl/mozilla/tech/xul/treeitem/index.html | 93 + files/pl/mozilla/tech/xul/treerow/index.html | 114 + files/pl/mozilla/tech/xul/treeseparator/index.html | 114 + files/pl/mozilla/tech/xul/triple/index.html | 128 + files/pl/mozilla/tech/xul/vbox/index.html | 101 + files/pl/mozilla/tech/xul/window/index.html | 203 + files/pl/mozilla/tech/xul/wizard/index.html | 367 + files/pl/mozilla/tech/xul/wizardpage/index.html | 185 + .../accessible/index.html" | 20 + .../accesskey/index.html" | 20 + .../align/index.html" | 20 + .../allowevents/index.html" | 20 + .../alwaysopenpopup/index.html" | 20 + .../amindicator/index.html" | 13 + .../applocale/index.html" | 25 + .../autocheck/index.html" | 20 + .../autofill/index.html" | 20 + .../autofillaftermatch/index.html" | 20 + .../browser.preferences/index.html" | 16 + .../browsers/index.html" | 20 + .../builderview/index.html" | 20 + .../buttons/index.html" | 22 + .../canadvance/index.html" | 20 + .../cangoback/index.html" | 14 + .../cangoforward/index.html" | 20 + .../canrewind/index.html" | 14 + .../checked/index.html" | 16 + .../checkstate/index.html" | 16 + .../child/index.html" | 16 + .../children/index.html" | 20 + .../classname/index.html" | 20 + .../clickselectsall/index.html" | 16 + .../collapsed/index.html" | 20 + .../color/index.html" | 20 + .../columns/index.html" | 20 + .../command/index.html" | 20 + .../commandmanager/index.html" | 20 + .../completedefaultindex/index.html" | 20 + .../contentdocument/index.html" | 16 + .../contenttitle/index.html" | 16 + .../contentvieweredit/index.html" | 16 + .../contentviewerfile/index.html" | 16 + .../contentwindow/index.html" | 18 + .../contextmenu/index.html" | 17 + .../control/index.html" | 23 + .../controller/index.html" | 20 + .../w\305\202asno\305\233\304\207/crop/index.html" | 20 + .../current/index.html" | 20 + .../currentindex/index.html" | 44 + .../currentitem/index.html" | 20 + .../currentnotification/index.html" | 20 + .../currentpage/index.html" | 20 + .../currentpane/index.html" | 16 + .../currentset/index.html" | 28 + .../currenturi/index.html" | 16 + .../customtoolbarcount/index.html" | 22 + .../w\305\202asno\305\233\304\207/date/index.html" | 17 + .../dateleadingzero/index.html" | 17 + .../datevalue/index.html" | 17 + .../decimalplaces/index.html" | 16 + .../deck.selectedpanel/index.html" | 16 + .../defaultbutton/index.html" | 20 + .../defaultvalue/index.html" | 16 + .../description/index.html" | 20 + .../w\305\202asno\305\233\304\207/dir/index.html" | 20 + .../disableautocomplete/index.html" | 20 + .../disableautoselect/index.html" | 20 + .../disabled/index.html" | 20 + .../disablekeynavigation/index.html" | 20 + .../dlgtype/index.html" | 20 + .../docshell/index.html" | 14 + .../documentcharsetinfo/index.html" | 16 + .../editable/index.html" | 20 + .../editingsession/index.html" | 16 + .../editor/index.html" | 20 + .../editortype/index.html" | 19 + .../enablecolumndrag/index.html" | 20 + .../firstordinalcolumn/index.html" | 20 + .../firstpermanentchild/index.html" | 22 + .../w\305\202asno\305\233\304\207/flex/index.html" | 20 + .../focused/index.html" | 16 + .../focuseditem/index.html" | 20 + .../forcecomplete/index.html" | 20 + .../group/index.html" | 20 + .../handlectrlpageupdown/index.html" | 20 + .../handlectrltab/index.html" | 20 + .../height/index.html" | 20 + .../hidden/index.html" | 20 + .../hideseconds/index.html" | 17 + .../homepage/index.html" | 16 + .../w\305\202asno\305\233\304\207/hour/index.html" | 17 + .../hourleadingzero/index.html" | 17 + .../w\305\202asno\305\233\304\207/id/index.html" | 20 + .../ignoreblurwhilesearching/index.html" | 14 + .../image/index.html" | 20 + .../increment/index.html" | 17 + .../xul/w\305\202asno\305\233\304\207/index.html" | 219 + .../inputfield/index.html" | 20 + .../inverted/index.html" | 20 + .../is24hourclock/index.html" | 17 + .../w\305\202asno\305\233\304\207/ispm/index.html" | 17 + .../issearching/index.html" | 20 + .../label/index.html" | 16 + .../lastpermanentchild/index.html" | 22 + .../lastselected/index.html" | 20 + .../w\305\202asno\305\233\304\207/left/index.html" | 20 + .../linkedpanel/index.html" | 20 + .../locked/index.html" | 20 + .../markupdocumentviewer/index.html" | 16 + .../w\305\202asno\305\233\304\207/max/index.html" | 13 + .../maxheight/index.html" | 20 + .../maxlength/index.html" | 20 + .../maxrows/index.html" | 20 + .../maxwidth/index.html" | 17 + .../w\305\202asno\305\233\304\207/menu/index.html" | 20 + .../menuboxobject/index.html" | 20 + .../menulist.inputfield/index.html" | 27 + .../menupopup/index.html" | 20 + .../w\305\202asno\305\233\304\207/min/index.html" | 13 + .../minheight/index.html" | 20 + .../minresultsforpopup/index.html" | 20 + .../minute/index.html" | 17 + .../minuteleadingzero/index.html" | 17 + .../minwidth/index.html" | 20 + .../w\305\202asno\305\233\304\207/mode/index.html" | 20 + .../month/index.html" | 17 + .../monthleadingzero/index.html" | 17 + .../w\305\202asno\305\233\304\207/name/index.html" | 20 + .../w\305\202asno\305\233\304\207/next/index.html" | 20 + .../nomatch/index.html" | 20 + .../object/index.html" | 15 + .../observes/index.html" | 20 + .../onfirstpage/index.html" | 20 + .../onlastpage/index.html" | 20 + .../w\305\202asno\305\233\304\207/open/index.html" | 20 + .../ordinal/index.html" | 20 + .../orient/index.html" | 20 + .../w\305\202asno\305\233\304\207/pack/index.html" | 20 + .../pagecount/index.html" | 16 + .../pageid/index.html" | 20 + .../pageincrement/index.html" | 13 + .../pageindex/index.html" | 22 + .../palette/index.html" | 22 + .../persist/index.html" | 20 + .../pmindicator/index.html" | 17 + .../popup/index.html" | 20 + .../popupboxobject/index.html" | 20 + .../popupopen/index.html" | 14 + .../position/index.html" | 20 + .../predicate/index.html" | 15 + .../preference.preferences/index.html" | 20 + .../preferenceelements/index.html" | 20 + .../preferencepanes/index.html" | 20 + .../preferences/index.html" | 17 + .../radiogroup/index.html" | 20 + .../readonly/index.html" | 20 + .../w\305\202asno\305\233\304\207/ref/index.html" | 20 + .../resource/index.html" | 17 + .../resultspopup/index.html" | 20 + .../scrollincrement/index.html" | 15 + .../searchcount/index.html" | 20 + .../searchparam/index.html" | 20 + .../searchsessions/index.html" | 25 + .../second/index.html" | 17 + .../secondleadingzero/index.html" | 17 + .../securityui/index.html" | 16 + .../selected/index.html" | 20 + .../selectedbrowser/index.html" | 20 + .../selectedcount/index.html" | 20 + .../selectedindex/index.html" | 20 + .../selecteditem/index.html" | 20 + .../selecteditems/index.html" | 20 + .../selectedpanel/index.html" | 20 + .../selectedtab/index.html" | 20 + .../selectionend/index.html" | 20 + .../selectionstart/index.html" | 20 + .../selstyle/index.html" | 16 + .../seltype/index.html" | 29 + .../sessioncount/index.html" | 20 + .../sessionhistory/index.html" | 16 + .../showcommentcolumn/index.html" | 20 + .../showpopup/index.html" | 20 + .../w\305\202asno\305\233\304\207/size/index.html" | 20 + .../w\305\202asno\305\233\304\207/src/index.html" | 20 + .../statusbar/index.html" | 20 + .../statustext/index.html" | 20 + .../stringbundle/index.html" | 20 + .../strings/index.html" | 20 + .../style/index.html" | 20 + .../subject/index.html" | 15 + .../suppressonselect/index.html" | 20 + .../tabcontainer/index.html" | 20 + .../tabindex/index.html" | 20 + .../w\305\202asno\305\233\304\207/tabs/index.html" | 20 + .../tabscrolling/index.html" | 20 + .../textbox.type/index.html" | 24 + .../textlength/index.html" | 20 + .../textvalue/index.html" | 20 + .../timeout/index.html" | 20 + .../timepicker.value/index.html" | 17 + .../title/index.html" | 20 + .../toolbarname/index.html" | 17 + .../toolbarset/index.html" | 22 + .../tooltip/index.html" | 20 + .../tooltiptext/index.html" | 24 + .../w\305\202asno\305\233\304\207/top/index.html" | 20 + .../w\305\202asno\305\233\304\207/type/index.html" | 27 + .../useraction/index.html" | 20 + .../value/index.html" | 20 + .../w\305\202asno\305\233\304\207/view/index.html" | 15 + .../webbrowserfind/index.html" | 16 + .../webnavigation/index.html" | 16 + .../webprogress/index.html" | 16 + .../width/index.html" | 20 + .../wizardpages/index.html" | 20 + .../wraparound/index.html" | 16 + .../w\305\202asno\305\233\304\207/year/index.html" | 17 + .../yearleadingzero/index.html" | 17 + files/pl/mozilla/tech/xul/xul_school/index.html | 70 + files/pl/mozmill/using_the_driver/index.html | 132 + .../about_colon_debugging/index.html" | 207 + .../narz\304\231dzia/browser_toolbox/index.html" | 40 + .../narz\304\231dzia/debugger/how_to/index.html" | 11 + "files/pl/narz\304\231dzia/debugger/index.html" | 81 + "files/pl/narz\304\231dzia/index.html" | 211 + .../page_inspector/how_to/index.html" | 13 + .../how_to/open_the_inspector/index.html" | 15 + .../pl/narz\304\231dzia/page_inspector/index.html" | 58 + .../page_inspector/przewodnik_przez_ui/index.html" | 108 + .../performance/flame_chart/index.html" | 103 + "files/pl/narz\304\231dzia/performance/index.html" | 97 + "files/pl/narz\304\231dzia/profiler/index.html" | 95 + .../narz\304\231dzia/storage_inspector/index.html" | 206 + .../pl/narz\304\231dzia/tools_toolbox/index.html" | 113 + "files/pl/narz\304\231dzia/view_source/index.html" | 82 + "files/pl/narz\304\231dzia/walidatory/index.html" | 45 + "files/pl/narz\304\231dzia/webide/index.html" | 467 + .../webide/troubleshooting/index.html" | 152 + .../index.html" | 38 + "files/pl/narz\304\231dzia_clone/index.html" | 82 + files/pl/necko/index.html | 45 + .../index.html" | 38 + files/pl/nsiconsoleservice/index.html | 54 + files/pl/nsiinputstream/index.html | 41 + files/pl/nsiprogramminglanguage/index.html | 37 + files/pl/nsixulappinfo/index.html | 25 + files/pl/o_modelu_obiektowym_dokumentu/index.html | 19 + files/pl/paczki/index.html | 72 + "files/pl/pakowanie_motyw\303\263w/index.html" | 113 + "files/pl/pakowanie_rozszerze\305\204/index.html" | 34 + .../index.html" | 42 + files/pl/podstawy_web_services/index.html | 38 + files/pl/poprawki_css_w_firefoksie_3/index.html | 45 + files/pl/poprawki_dom_w_firefoksie_3/index.html | 40 + files/pl/poprawki_svg_w_firefoksie_3/index.html | 64 + files/pl/poprawki_xul_w_firefoksie_3/index.html | 97 + .../index.html | 137 + .../przyk\305\202ady/index.html" | 416 + .../index.html" | 115 + files/pl/prezentacje_xtech_2005/index.html | 43 + files/pl/programowanie_mozilli/index.html | 16 + files/pl/programowanie_www/index.html | 53 + .../index.html" | 61 + files/pl/pyxpcom/index.html | 61 + files/pl/qa/index.html | 59 + .../qa/wskazowki_do_zglaszania_bledow/index.html | 241 + files/pl/rdf/index.html | 54 + files/pl/rhino/index.html | 13 + files/pl/rozszerzenia/index.html | 20 + .../index.html" | 136 + files/pl/sandbox/index.html | 70 + files/pl/sax/index.html | 110 + files/pl/spidermonkey/index.html | 46 + files/pl/storage/index.html | 397 + .../pl/storage/wydajno\305\233\304\207/index.html" | 111 + files/pl/toolkit_api/index.html | 32 + .../index.html" | 141 + files/pl/tworzenie_mikropodsumowania/index.html | 214 + .../tworzenie_rozszerzenia_paska_stanu/index.html | 202 + files/pl/tworzenie_wtyczek_mozsearch/index.html | 52 + .../index.html | 158 + files/pl/tworzymy_rozszerzenie/index.html | 368 + .../aplikacje_internetowe_i_aria_faq/index.html | 299 + files/pl/web/accessibility/aria/index.html | 127 + files/pl/web/api/attr/index.html | 164 + files/pl/web/api/audiobuffer/index.html | 174 + .../createdynamicscompressor/index.html | 142 + files/pl/web/api/audiocontext/index.html | 293 + files/pl/web/api/audioparam/index.html | 224 + .../web/api/audioparam/setvalueattime/index.html | 182 + files/pl/web/api/cache/index.html | 121 + .../api/canvas_api/tutorial/basic_usage/index.html | 169 + files/pl/web/api/canvas_api/tutorial/index.html | 60 + .../tutorial/optymalizacja_canvas/index.html | 119 + .../tutorial/rysowanie_ksztaltow/index.html | 571 + files/pl/web/api/childnode/index.html | 190 + files/pl/web/api/childnode/remove/index.html | 91 + files/pl/web/api/console/index.html | 232 + files/pl/web/api/console/log/index.html | 69 + files/pl/web/api/cssnumericvalue/div/index.html | 59 + files/pl/web/api/cssnumericvalue/index.html | 113 + files/pl/web/api/cssrule/index.html | 97 + files/pl/web/api/document/activeelement/index.html | 26 + files/pl/web/api/document/alinkcolor/index.html | 24 + files/pl/web/api/document/anchors/index.html | 38 + files/pl/web/api/document/applets/index.html | 26 + files/pl/web/api/document/bgcolor/index.html | 33 + files/pl/web/api/document/body/index.html | 31 + files/pl/web/api/document/characterset/index.html | 26 + files/pl/web/api/document/clear/index.html | 19 + files/pl/web/api/document/close/index.html | 26 + files/pl/web/api/document/compatmode/index.html | 32 + files/pl/web/api/document/cookie/index.html | 49 + .../pl/web/api/document/createattribute/index.html | 29 + .../api/document/createdocumentfragment/index.html | 43 + files/pl/web/api/document/createelement/index.html | 74 + files/pl/web/api/document/createevent/index.html | 134 + files/pl/web/api/document/createrange/index.html | 29 + .../pl/web/api/document/createtextnode/index.html | 62 + files/pl/web/api/document/defaultview/index.html | 24 + files/pl/web/api/document/designmode/index.html | 53 + files/pl/web/api/document/doctype/index.html | 21 + .../pl/web/api/document/documentelement/index.html | 60 + files/pl/web/api/document/domain/index.html | 30 + files/pl/web/api/document/drag_event/index.html | 333 + files/pl/web/api/document/embeds/index.html | 22 + files/pl/web/api/document/execcommand/index.html | 280 + files/pl/web/api/document/fgcolor/index.html | 28 + files/pl/web/api/document/firstchild/index.html | 36 + files/pl/web/api/document/forms/index.html | 45 + .../pl/web/api/document/getelementbyid/index.html | 67 + .../api/document/getelementsbyclassname/index.html | 82 + .../web/api/document/getelementsbyname/index.html | 35 + .../api/document/getelementsbytagname/index.html | 108 + files/pl/web/api/document/hasfocus/index.html | 25 + files/pl/web/api/document/head/index.html | 110 + files/pl/web/api/document/height/index.html | 34 + files/pl/web/api/document/images/index.html | 31 + .../pl/web/api/document/implementation/index.html | 21 + files/pl/web/api/document/importnode/index.html | 57 + files/pl/web/api/document/index.html | 332 + files/pl/web/api/document/lastmodified/index.html | 25 + files/pl/web/api/document/linkcolor/index.html | 33 + files/pl/web/api/document/links/index.html | 30 + files/pl/web/api/document/location/index.html | 37 + files/pl/web/api/document/namespaceuri/index.html | 25 + files/pl/web/api/document/open/index.html | 40 + files/pl/web/api/document/plugins/index.html | 40 + files/pl/web/api/document/queryselector/index.html | 159 + files/pl/web/api/document/referrer/index.html | 22 + .../pl/web/api/document/releasecapture/index.html | 31 + files/pl/web/api/document/stylesheets/index.html | 19 + files/pl/web/api/document/title/index.html | 45 + files/pl/web/api/document/url/index.html | 25 + files/pl/web/api/document/vlinkcolor/index.html | 29 + files/pl/web/api/document/width/index.html | 28 + files/pl/web/api/document/write/index.html | 38 + files/pl/web/api/document/writeln/index.html | 41 + .../api/domapplicationsmanager/getall/index.html | 47 + files/pl/web/api/domapplicationsmanager/index.html | 86 + .../pl/web/api/element/addeventlistener/index.html | 109 + files/pl/web/api/element/appendchild/index.html | 52 + files/pl/web/api/element/attributes/index.html | 82 + files/pl/web/api/element/blur/index.html | 21 + files/pl/web/api/element/childnodes/index.html | 49 + files/pl/web/api/element/classlist/index.html | 264 + files/pl/web/api/element/classname/index.html | 37 + files/pl/web/api/element/click/index.html | 23 + files/pl/web/api/element/clientheight/index.html | 47 + files/pl/web/api/element/clientnode/index.html | 32 + files/pl/web/api/element/clientwidth/index.html | 47 + files/pl/web/api/element/dir/index.html | 34 + files/pl/web/api/element/dispatchevent/index.html | 43 + files/pl/web/api/element/firstchild/index.html | 101 + files/pl/web/api/element/focus/index.html | 23 + files/pl/web/api/element/getattribute/index.html | 43 + .../pl/web/api/element/getattributenode/index.html | 36 + .../web/api/element/getattributenodens/index.html | 39 + files/pl/web/api/element/getattributens/index.html | 47 + .../api/element/getboundingclientrect/index.html | 146 + .../api/element/getelementsbytagnamens/index.html | 49 + files/pl/web/api/element/hasattribute/index.html | 34 + files/pl/web/api/element/hasattributens/index.html | 39 + files/pl/web/api/element/hasattributes/index.html | 28 + files/pl/web/api/element/haschildnodes/index.html | 28 + files/pl/web/api/element/id/index.html | 38 + files/pl/web/api/element/index.html | 677 ++ files/pl/web/api/element/innerhtml/index.html | 67 + .../web/api/element/insertadjacenthtml/index.html | 91 + files/pl/web/api/element/insertbefore/index.html | 86 + files/pl/web/api/element/lang/index.html | 40 + files/pl/web/api/element/lastchild/index.html | 28 + files/pl/web/api/element/length/index.html | 37 + files/pl/web/api/element/localname/index.html | 64 + files/pl/web/api/element/name/index.html | 60 + files/pl/web/api/element/namespaceuri/index.html | 39 + files/pl/web/api/element/nextsibling/index.html | 63 + files/pl/web/api/element/nodename/index.html | 98 + files/pl/web/api/element/nodetype/index.html | 44 + files/pl/web/api/element/nodevalue/index.html | 85 + files/pl/web/api/element/normalize/index.html | 22 + files/pl/web/api/element/offsetheight/index.html | 61 + files/pl/web/api/element/offsetleft/index.html | 73 + files/pl/web/api/element/offsetparent/index.html | 28 + files/pl/web/api/element/offsetwidth/index.html | 70 + files/pl/web/api/element/onclick/index.html | 66 + files/pl/web/api/element/onkeypress/index.html | 21 + files/pl/web/api/element/onkeyup/index.html | 24 + files/pl/web/api/element/onmousedown/index.html | 23 + files/pl/web/api/element/onmousemove/index.html | 29 + files/pl/web/api/element/ownerdocument/index.html | 30 + files/pl/web/api/element/parentnode/index.html | 34 + files/pl/web/api/element/prefix/index.html | 28 + .../pl/web/api/element/previoussibling/index.html | 28 + files/pl/web/api/element/queryselector/index.html | 180 + .../pl/web/api/element/removeattribute/index.html | 36 + .../web/api/element/removeattributenode/index.html | 37 + .../web/api/element/removeattributens/index.html | 35 + files/pl/web/api/element/removechild/index.html | 36 + files/pl/web/api/element/replacechild/index.html | 53 + files/pl/web/api/element/scrollleft/index.html | 58 + files/pl/web/api/element/scrolltop/index.html | 70 + files/pl/web/api/element/scrollwidth/index.html | 32 + files/pl/web/api/element/setattribute/index.html | 34 + .../pl/web/api/element/setattributenode/index.html | 40 + .../web/api/element/setattributenodens/index.html | 41 + files/pl/web/api/element/setattributens/index.html | 33 + files/pl/web/api/element/style/index.html | 52 + files/pl/web/api/element/tabindex/index.html | 31 + files/pl/web/api/element/tagname/index.html | 37 + files/pl/web/api/element/textcontent/index.html | 41 + files/pl/web/api/event/altkey/index.html | 31 + files/pl/web/api/event/bubbles/index.html | 31 + files/pl/web/api/event/button/index.html | 66 + files/pl/web/api/event/cancelable/index.html | 34 + files/pl/web/api/event/cancelbubble/index.html | 15 + files/pl/web/api/event/charcode/index.html | 27 + files/pl/web/api/event/clientx/index.html | 25 + files/pl/web/api/event/clienty/index.html | 16 + files/pl/web/api/event/ctrlkey/index.html | 26 + files/pl/web/api/event/currenttarget/index.html | 25 + files/pl/web/api/event/eventphase/index.html | 40 + files/pl/web/api/event/index.html | 179 + files/pl/web/api/event/initevent/index.html | 45 + files/pl/web/api/event/initmouseevent/index.html | 86 + files/pl/web/api/event/inituievent/index.html | 49 + files/pl/web/api/event/ischar/index.html | 24 + files/pl/web/api/event/keycode/index.html | 23 + files/pl/web/api/event/layerx/index.html | 15 + files/pl/web/api/event/layery/index.html | 17 + files/pl/web/api/event/metakey/index.html | 30 + files/pl/web/api/event/pagex/index.html | 17 + files/pl/web/api/event/pagey/index.html | 15 + files/pl/web/api/event/relatedtarget/index.html | 56 + files/pl/web/api/event/screenx/index.html | 33 + files/pl/web/api/event/screeny/index.html | 23 + files/pl/web/api/event/shiftkey/index.html | 26 + files/pl/web/api/event/stoppropagation/index.html | 26 + files/pl/web/api/event/target/index.html | 27 + files/pl/web/api/event/timestamp/index.html | 47 + files/pl/web/api/event/type/index.html | 19 + files/pl/web/api/event/view/index.html | 23 + files/pl/web/api/file/file/index.html | 68 + files/pl/web/api/file/index.html | 112 + files/pl/web/api/geolocation_api/index.html | 92 + files/pl/web/api/globaleventhandlers/index.html | 714 ++ .../web/api/globaleventhandlers/onblur/index.html | 85 + .../web/api/globaleventhandlers/onfocus/index.html | 87 + .../api/htmlcanvaselement/capturestream/index.html | 73 + .../api/htmlcanvaselement/getcontext/index.html | 129 + .../pl/web/api/htmlcanvaselement/height/index.html | 79 + files/pl/web/api/htmlcanvaselement/index.html | 97 + .../pl/web/api/htmlcanvaselement/width/index.html | 79 + files/pl/web/api/htmlelement/dataset/index.html | 134 + files/pl/web/api/htmlelement/index.html | 409 + .../api/htmlformelement/acceptcharset/index.html | 33 + files/pl/web/api/htmlformelement/action/index.html | 36 + .../pl/web/api/htmlformelement/elements/index.html | 36 + .../pl/web/api/htmlformelement/encoding/index.html | 15 + .../pl/web/api/htmlformelement/enctype/index.html | 39 + files/pl/web/api/htmlformelement/index.html | 143 + files/pl/web/api/htmlformelement/length/index.html | 33 + files/pl/web/api/htmlformelement/method/index.html | 35 + files/pl/web/api/htmlformelement/name/index.html | 44 + files/pl/web/api/htmlformelement/reset/index.html | 37 + files/pl/web/api/htmlformelement/submit/index.html | 37 + files/pl/web/api/htmlformelement/target/index.html | 35 + files/pl/web/api/htmliframeelement/index.html | 288 + files/pl/web/api/htmlselectelement/index.html | 166 + .../pl/web/api/htmltableelement/caption/index.html | 39 + files/pl/web/api/htmltableelement/index.html | 72 + files/pl/web/api/htmltableelement/tfoot/index.html | 39 + files/pl/web/api/htmltableelement/thead/index.html | 45 + files/pl/web/api/index.html | 11 + files/pl/web/api/location/index.html | 114 + files/pl/web/api/location/reload/index.html | 67 + .../web/api/mediaelementaudiosourcenode/index.html | 84 + files/pl/web/api/midiaccess/index.html | 70 + files/pl/web/api/mousescrollevent/index.html | 126 + files/pl/web/api/navigator/appcodename/index.html | 30 + files/pl/web/api/navigator/appname/index.html | 29 + files/pl/web/api/navigator/appversion/index.html | 32 + files/pl/web/api/navigator/buildid/index.html | 41 + .../pl/web/api/navigator/cookieenabled/index.html | 45 + files/pl/web/api/navigator/index.html | 119 + files/pl/web/api/navigator/javaenabled/index.html | 39 + files/pl/web/api/navigator/language/index.html | 45 + files/pl/web/api/navigator/mimetypes/index.html | 40 + .../api/navigator/mozpermissionsettings/index.html | 33 + files/pl/web/api/navigator/online/index.html | 47 + files/pl/web/api/navigator/oscpu/index.html | 41 + files/pl/web/api/navigator/platform/index.html | 28 + files/pl/web/api/navigator/plugins/index.html | 58 + files/pl/web/api/navigator/product/index.html | 38 + files/pl/web/api/navigator/productsub/index.html | 52 + .../navigator/registercontenthandler/index.html | 49 + .../navigator/registerprotocolhandler/index.html | 66 + .../web-based_protocol_handlers/index.html | 107 + files/pl/web/api/navigatorlanguage/index.html | 148 + files/pl/web/api/navigatoronline/index.html | 127 + .../zdarzenia_online_i_offline/index.html | 84 + files/pl/web/api/navigatorplugins/index.html | 111 + .../api/parentnode/childelementcount/index.html | 93 + files/pl/web/api/parentnode/children/index.html | 96 + files/pl/web/api/parentnode/index.html | 90 + files/pl/web/api/powiadomienie/index.html | 348 + files/pl/web/api/push_api/index.html | 167 + files/pl/web/api/range/index.html | 105 + files/pl/web/api/response/index.html | 132 + files/pl/web/api/screen/colordepth/index.html | 43 + files/pl/web/api/screen/index.html | 74 + files/pl/web/api/screen/width/index.html | 108 + files/pl/web/api/selection/addrange/index.html | 40 + files/pl/web/api/selection/anchornode/index.html | 22 + files/pl/web/api/selection/anchoroffset/index.html | 23 + files/pl/web/api/selection/collapse/index.html | 45 + .../pl/web/api/selection/collapsetoend/index.html | 22 + .../web/api/selection/collapsetostart/index.html | 22 + files/pl/web/api/selection/containsnode/index.html | 47 + .../api/selection/deletefromdocument/index.html | 24 + files/pl/web/api/selection/extend/index.html | 40 + files/pl/web/api/selection/focusnode/index.html | 21 + files/pl/web/api/selection/focusoffset/index.html | 22 + files/pl/web/api/selection/getrangeat/index.html | 44 + files/pl/web/api/selection/index.html | 100 + files/pl/web/api/selection/iscollapsed/index.html | 21 + files/pl/web/api/selection/rangecount/index.html | 19 + .../web/api/selection/removeallranges/index.html | 22 + files/pl/web/api/selection/removerange/index.html | 40 + .../web/api/selection/selectallchildren/index.html | 40 + files/pl/web/api/selection/tostring/index.html | 35 + files/pl/web/api/speechrecognition/index.html | 153 + files/pl/web/api/storage/index.html | 154 + files/pl/web/api/stylesheet/cssrules/index.html | 46 + files/pl/web/api/stylesheet/deleterule/index.html | 26 + files/pl/web/api/stylesheet/disabled/index.html | 25 + files/pl/web/api/stylesheet/href/index.html | 42 + files/pl/web/api/stylesheet/index.html | 57 + files/pl/web/api/stylesheet/insertrule/index.html | 42 + files/pl/web/api/stylesheet/media/index.html | 29 + files/pl/web/api/stylesheet/ownerrule/index.html | 24 + .../web/api/stylesheet/parentstylesheet/index.html | 29 + files/pl/web/api/stylesheet/title/index.html | 18 + files/pl/web/api/stylesheet/type/index.html | 22 + files/pl/web/api/web_audio_api/index.html | 503 + files/pl/web/api/webgl_api/index.html | 252 + files/pl/web/api/webgl_api/tutorial/index.html | 40 + files/pl/web/api/window/alert/index.html | 58 + .../pl/web/api/window/applicationcache/index.html | 33 + files/pl/web/api/window/clearinterval/index.html | 28 + files/pl/web/api/window/cleartimeout/index.html | 40 + files/pl/web/api/window/closed/index.html | 59 + files/pl/web/api/window/content/index.html | 43 + files/pl/web/api/window/controllers/index.html | 24 + files/pl/web/api/window/crypto/index.html | 19 + files/pl/web/api/window/defaultstatus/index.html | 35 + files/pl/web/api/window/directories/index.html | 33 + files/pl/web/api/window/document/index.html | 40 + files/pl/web/api/window/dump/index.html | 30 + files/pl/web/api/window/focus/index.html | 24 + files/pl/web/api/window/frameelement/index.html | 34 + files/pl/web/api/window/frames/index.html | 31 + files/pl/web/api/window/getselection/index.html | 39 + files/pl/web/api/window/index.html | 494 + files/pl/web/api/window/localstorage/index.html | 125 + files/pl/web/api/window/name/index.html | 27 + files/pl/web/api/window/navigator/index.html | 84 + files/pl/web/api/window/onload/index.html | 62 + files/pl/web/api/window/open/index.html | 796 ++ files/pl/web/api/window/opendialog/index.html | 75 + files/pl/web/api/window/opener/index.html | 49 + files/pl/web/api/window/prompt/index.html | 33 + .../api/window/requestanimationframe/index.html | 170 + files/pl/web/api/window/resizeby/index.html | 32 + files/pl/web/api/window/resizeto/index.html | 36 + files/pl/web/api/window/scroll/index.html | 33 + files/pl/web/api/window/scrollbylines/index.html | 35 + files/pl/web/api/window/scrollbypages/index.html | 35 + files/pl/web/api/window/scrollto/index.html | 32 + files/pl/web/api/window/setinterval/index.html | 87 + files/pl/web/api/window/settimeout/index.html | 46 + files/pl/web/api/window/sidebar/index.html | 56 + files/pl/web/api/windowbase64/atob/index.html | 104 + files/pl/web/api/windowbase64/btoa/index.html | 126 + files/pl/web/api/windowbase64/index.html | 113 + files/pl/web/api/zdarzenia_dotykowe/index.html | 336 + .../certificate_transparency/index.html" | 63 + "files/pl/web/bezpiecze\305\204stwo/index.html" | 24 + .../podstawy_bezpieczenstwa_informacji/index.html" | 36 + .../podatnosci/index.html" | 100 + .../same-origin_policy/index.html" | 277 + .../subresource_integrity/index.html" | 163 + files/pl/web/css/-moz-binding/index.html | 48 + .../web/css/-moz-border-bottom-colors/index.html | 56 + .../pl/web/css/-moz-border-left-colors/index.html | 15 + files/pl/web/css/-moz-box-align/index.html | 77 + files/pl/web/css/-moz-box-flex/index.html | 64 + files/pl/web/css/-moz-box-orient/index.html | 54 + files/pl/web/css/-moz-box-pack/index.html | 82 + files/pl/web/css/-moz-image-region/index.html | 41 + files/pl/web/css/-moz-outline-color/index.html | 12 + .../css/-moz-outline-radius-bottomleft/index.html | 17 + .../css/-moz-outline-radius-bottomright/index.html | 15 + .../web/css/-moz-outline-radius-topleft/index.html | 15 + files/pl/web/css/-moz-outline-radius/index.html | 71 + files/pl/web/css/@document/index.html | 46 + files/pl/web/css/@import/index.html | 34 + files/pl/web/css/@media/index.html | 193 + files/pl/web/css/@supports/index.html | 123 + files/pl/web/css/_colon_-moz-last-node/index.html | 63 + .../web/css/_colon_-moz-tree-cell-text/index.html | 25 + files/pl/web/css/_colon_-moz-tree-cell/index.html | 28 + .../pl/web/css/_colon_-moz-tree-column/index.html | 25 + .../css/_colon_-moz-tree-drop-feedback/index.html | 26 + files/pl/web/css/_colon_-moz-tree-image/index.html | 28 + .../css/_colon_-moz-tree-indentation/index.html | 23 + files/pl/web/css/_colon_-moz-tree-line/index.html | 24 + .../css/_colon_-moz-tree-progressmeter/index.html | 24 + files/pl/web/css/_colon_-moz-tree-row/index.html | 47 + .../web/css/_colon_-moz-tree-separator/index.html | 27 + .../pl/web/css/_colon_-moz-tree-twisty/index.html | 29 + files/pl/web/css/_colon_active/index.html | 160 + files/pl/web/css/_colon_after/index.html | 63 + files/pl/web/css/_colon_before/index.html | 60 + files/pl/web/css/_colon_empty/index.html | 44 + files/pl/web/css/_colon_first-child/index.html | 74 + files/pl/web/css/_colon_first-letter/index.html | 49 + files/pl/web/css/_colon_first-node/index.html | 58 + files/pl/web/css/_colon_hover/index.html | 101 + files/pl/web/css/_colon_lang/index.html | 31 + files/pl/web/css/_colon_last-child/index.html | 51 + files/pl/web/css/_colon_link/index.html | 70 + files/pl/web/css/_colon_not/index.html | 73 + files/pl/web/css/_colon_root/index.html | 26 + files/pl/web/css/appearance/index.html | 96 + files/pl/web/css/attribute_selectors/index.html | 238 + files/pl/web/css/azimuth/index.html | 97 + files/pl/web/css/background-attachment/index.html | 124 + files/pl/web/css/background-color/index.html | 82 + files/pl/web/css/background-image/index.html | 114 + files/pl/web/css/background-origin/index.html | 52 + files/pl/web/css/background-position/index.html | 122 + files/pl/web/css/background-size/index.html | 190 + files/pl/web/css/background/index.html | 134 + files/pl/web/css/border-bottom-color/index.html | 149 + .../web/css/border-bottom-left-radius/index.html | 20 + .../web/css/border-bottom-right-radius/index.html | 20 + files/pl/web/css/border-bottom-style/index.html | 159 + files/pl/web/css/border-bottom-width/index.html | 143 + files/pl/web/css/border-bottom/index.html | 146 + files/pl/web/css/border-collapse/index.html | 89 + files/pl/web/css/border-color/index.html | 135 + files/pl/web/css/border-left-color/index.html | 109 + files/pl/web/css/border-left-style/index.html | 16 + files/pl/web/css/border-left-width/index.html | 19 + files/pl/web/css/border-left/index.html | 123 + files/pl/web/css/border-radius/index.html | 69 + files/pl/web/css/border-right-color/index.html | 16 + files/pl/web/css/border-right-style/index.html | 16 + files/pl/web/css/border-right-width/index.html | 17 + files/pl/web/css/border-right/index.html | 123 + files/pl/web/css/border-spacing/index.html | 101 + files/pl/web/css/border-style/index.html | 126 + files/pl/web/css/border-top-color/index.html | 14 + files/pl/web/css/border-top-left-radius/index.html | 20 + .../pl/web/css/border-top-right-radius/index.html | 14 + files/pl/web/css/border-top-style/index.html | 16 + files/pl/web/css/border-top-width/index.html | 16 + files/pl/web/css/border-top/index.html | 123 + files/pl/web/css/border-width/index.html | 113 + files/pl/web/css/border/index.html | 123 + files/pl/web/css/bottom/index.html | 149 + files/pl/web/css/box-decoration-break/index.html | 202 + files/pl/web/css/box-direction/index.html | 72 + files/pl/web/css/box-shadow/index.html | 222 + files/pl/web/css/box-sizing/index.html | 45 + files/pl/web/css/clear/index.html | 98 + files/pl/web/css/clip/index.html | 92 + files/pl/web/css/color/index.html | 62 + files/pl/web/css/content/index.html | 107 + files/pl/web/css/counter-increment/index.html | 67 + files/pl/web/css/counter-reset/index.html | 66 + files/pl/web/css/css_colors/index.html | 119 + .../css_colors/narzedzie_doboru_kolorow/index.html | 3241 +++++ .../pl/web/css/css_flexible_box_layout/index.html | 156 + .../auto-placement_in_css_grid_layout/index.html | 609 + files/pl/web/css/css_grid_layout/index.html | 245 + .../index.html | 594 + files/pl/web/css/css_reference/index.html | 56 + files/pl/web/css/css_selectors/index.html | 133 + .../index.html" | 64 + files/pl/web/css/cursor/index.html | 156 + .../index.html" | 41 + .../css/cz\304\231ste_pytania_o_css/index.html" | 162 + files/pl/web/css/direction/index.html | 50 + files/pl/web/css/display/index.html | 168 + files/pl/web/css/dziedziczenie/index.html | 50 + files/pl/web/css/empty-cells/index.html | 77 + files/pl/web/css/float/index.html | 116 + files/pl/web/css/font-family/index.html | 58 + files/pl/web/css/font-size-adjust/index.html | 60 + files/pl/web/css/font-size/index.html | 339 + files/pl/web/css/font-stretch/index.html | 77 + files/pl/web/css/font-style/index.html | 49 + files/pl/web/css/font-variant/index.html | 79 + files/pl/web/css/font-weight/index.html | 107 + files/pl/web/css/font/index.html | 145 + files/pl/web/css/grid/index.html | 200 + files/pl/web/css/height/index.html | 92 + files/pl/web/css/id_selectors/index.html | 77 + files/pl/web/css/ime-mode/index.html | 9 + files/pl/web/css/index.html | 95 + files/pl/web/css/initial/index.html | 118 + files/pl/web/css/inne_zasoby/index.html | 28 + files/pl/web/css/letter-spacing/index.html | 74 + files/pl/web/css/list-style-image/index.html | 70 + files/pl/web/css/list-style-position/index.html | 99 + files/pl/web/css/list-style-type/index.html | 108 + files/pl/web/css/margin/index.html | 112 + files/pl/web/css/media_queries/index.html | 122 + .../media_queries/using_media_queries/index.html | 643 + files/pl/web/css/mozilla_extensions/index.html | 679 ++ .../web/css/na_pocz\304\205tek/bloki/index.html" | 70 + .../na_pocz\304\205tek/czym_jest_css/index.html" | 132 + .../na_pocz\304\205tek/czytelny_css/index.html" | 153 + .../css/na_pocz\304\205tek/dane_xml/index.html" | 191 + .../css/na_pocz\304\205tek/grafika_svg/index.html" | 195 + "files/pl/web/css/na_pocz\304\205tek/index.html" | 63 + .../jak_dzia\305\202a_css/index.html" | 113 + .../css/na_pocz\304\205tek/javascript/index.html" | 126 + .../index.html" | 96 + .../web/css/na_pocz\304\205tek/kolor/index.html" | 208 + .../web/css/na_pocz\304\205tek/listy/index.html" | 268 + .../web/css/na_pocz\304\205tek/media/index.html" | 318 + .../po_co_u\305\274ywa\304\207_css/index.html" | 85 + .../css/na_pocz\304\205tek/selektory/index.html" | 259 + .../na_pocz\304\205tek/style_tekstowe/index.html" | 115 + .../web/css/na_pocz\304\205tek/tables/index.html" | 596 + .../na_pocz\304\205tek/uk\305\202ad/index.html" | 274 + .../wi\304\205zania_xbl/index.html" | 176 + .../index.html" | 299 + files/pl/web/css/opacity/index.html | 180 + files/pl/web/css/outline-offset/index.html | 42 + files/pl/web/css/outline/index.html | 57 + files/pl/web/css/page-break-after/index.html | 101 + .../index.html | 68 + files/pl/web/css/right/index.html | 148 + files/pl/web/css/rozszerzenia_webkit/index.html | 358 + files/pl/web/css/selektor_klasy/index.html | 86 + files/pl/web/css/selektor_uniwersalny/index.html | 104 + files/pl/web/css/selektory_typu/index.html | 80 + .../css/skr\303\263cone_deklaracje_css/index.html" | 56 + files/pl/web/css/text-transform/index.html | 81 + files/pl/web/css/transform-function/index.html | 201 + .../web/css/transform-function/matrix()/index.html | 58 + .../web/css/using_css_custom_properties/index.html | 244 + files/pl/web/css/vertical-align/index.html | 66 + .../index.html" | 25 + files/pl/web/css/white-space/index.html | 93 + files/pl/web/css/width/index.html | 207 + files/pl/web/css/word-spacing/index.html | 78 + files/pl/web/css/z-index/index.html | 128 + .../index.html" | 165 + .../dost\304\231pno\305\233\304\207/index.html" | 94 + .../index.html" | 171 + files/pl/web/exslt/index.html | 93 + files/pl/web/guide/ajax/index.html | 23 + .../web/guide/ajax/na_pocz\304\205tek/index.html" | 221 + files/pl/web/guide/api/index.html | 25 + files/pl/web/guide/css/kolumny_css3/index.html | 65 + .../guide/css/sprawdzanie_media_queries/index.html | 116 + files/pl/web/guide/graphics/index.html | 41 + .../pl/web/guide/html/editable_content/index.html | 216 + files/pl/web/guide/index.html | 55 + files/pl/web/guide/liczniki_css/index.html | 86 + files/pl/web/guide/performance/index.html | 14 + files/pl/web/html(pl)/index.html | 108 + .../tryb_zgodnosci_oraz_tryb_standardow/index.html | 54 + files/pl/web/html/canvas/index.html | 55 + files/pl/web/html/element/a/index.html | 384 + files/pl/web/html/element/abbr/index.html | 200 + files/pl/web/html/element/acronym/index.html | 81 + files/pl/web/html/element/address/index.html | 140 + files/pl/web/html/element/applet/index.html | 74 + files/pl/web/html/element/aside/index.html | 126 + files/pl/web/html/element/b/index.html | 30 + files/pl/web/html/element/base/index.html | 129 + files/pl/web/html/element/basefont/index.html | 34 + files/pl/web/html/element/bdo/index.html | 22 + files/pl/web/html/element/bgsound/index.html | 45 + files/pl/web/html/element/big/index.html | 20 + files/pl/web/html/element/blink/index.html | 22 + files/pl/web/html/element/blockquote/index.html | 49 + files/pl/web/html/element/body/index.html | 166 + files/pl/web/html/element/br/index.html | 41 + files/pl/web/html/element/center/index.html | 36 + files/pl/web/html/element/cite/index.html | 38 + files/pl/web/html/element/code/index.html | 23 + files/pl/web/html/element/comment/index.html | 33 + files/pl/web/html/element/dd/index.html | 33 + files/pl/web/html/element/details/index.html | 195 + files/pl/web/html/element/div/index.html | 131 + files/pl/web/html/element/dl/index.html | 112 + files/pl/web/html/element/dt/index.html | 24 + files/pl/web/html/element/em/index.html | 31 + files/pl/web/html/element/head/index.html | 130 + .../web/html/element/heading_elements/index.html | 250 + files/pl/web/html/element/hr/index.html | 57 + files/pl/web/html/element/html/index.html | 122 + files/pl/web/html/element/i/index.html | 19 + files/pl/web/html/element/iframe/index.html | 292 + files/pl/web/html/element/index.html | 131 + files/pl/web/html/element/input/button/index.html | 341 + files/pl/web/html/element/input/index.html | 1376 +++ files/pl/web/html/element/kbd/index.html | 27 + files/pl/web/html/element/li/index.html | 50 + files/pl/web/html/element/link/index.html | 412 + files/pl/web/html/element/marquee/index.html | 112 + files/pl/web/html/element/meta/index.html | 144 + files/pl/web/html/element/ol/index.html | 123 + files/pl/web/html/element/p/index.html | 45 + files/pl/web/html/element/q/index.html | 36 + files/pl/web/html/element/ruby/index.html | 103 + files/pl/web/html/element/s/index.html | 23 + files/pl/web/html/element/samp/index.html | 25 + files/pl/web/html/element/section/index.html | 128 + files/pl/web/html/element/small/index.html | 26 + files/pl/web/html/element/span/index.html | 138 + files/pl/web/html/element/strong/index.html | 22 + files/pl/web/html/element/title/index.html | 122 + files/pl/web/html/element/tt/index.html | 27 + files/pl/web/html/element/ul/index.html | 103 + files/pl/web/html/element/video/index.html | 355 + files/pl/web/html/elementy_blokowe/index.html | 38 + files/pl/web/html/elementy_liniowe/index.html | 30 + files/pl/web/html/global_attributes/index.html | 480 + .../web/html/global_attributes/pisownia/index.html | 63 + .../web/html/global_attributes/tabindex/index.html | 114 + files/pl/web/html/index.html | 56 + .../index.html | 28 + .../zarz\304\205dzanie_fokusem_w_html/index.html" | 18 + .../znaczenie_poprawnego_komentowania/index.html | 64 + files/pl/web/http/authentication/index.html | 135 + files/pl/web/http/ciasteczka/index.html | 263 + files/pl/web/http/headers/cache-control/index.html | 171 + files/pl/web/http/headers/data/index.html | 81 + files/pl/web/http/headers/index.html | 374 + .../pl/web/http/headers/referrer-policy/index.html | 260 + .../http/http_wiadomosci_og\303\263lne/index.html" | 178 + files/pl/web/http/index.html | 89 + files/pl/web/index.html | 53 + files/pl/web/javascript/domkniecia/index.html | 408 + .../dziedziczenie_lancuch_prototypow/index.html | 295 + files/pl/web/javascript/eventloop/index.html | 98 + .../control_flow_and_error_handling/index.html | 380 + files/pl/web/javascript/guide/funkcje/index.html | 642 + files/pl/web/javascript/guide/index.html | 122 + .../web/javascript/guide/introduction/index.html | 150 + .../guide/iterators_and_generators/index.html | 165 + .../guide/loops_and_iteration/index.html | 332 + .../javascript/guide/o_tym_przewodniku/index.html | 138 + .../web/javascript/guide/obsolete_pages/index.html | 10 + .../blok_instrukcji/index.html" | 41 + .../definiowanie_funkcji/index.html" | 61 + .../index.html" | 20 + .../funkcja_eval/index.html" | 20 + .../funkcja_isfinite/index.html" | 24 + .../funkcja_isnan/index.html" | 29 + .../funkcje_escape_i_unescape/index.html" | 25 + .../funkcje_number_i_string/index.html" | 26 + .../funkcje_parseint_i_parsefloat/index.html" | 27 + .../funkcje_predefiniowane/index.html" | 23 + .../index.html" | 875 ++ .../instrukcje_komentarzy/index.html" | 26 + .../instrukcje_manipulacji_obiektem/index.html" | 50 + .../index.html" | 42 + .../instrukcja_throw/index.html" | 45 + .../instrukcja_try...catch/index.html" | 114 + .../instrukcje_p\304\231tli/index.html" | 23 + .../instrukcja_break/index.html" | 27 + .../instrukcja_continue/index.html" | 51 + .../instrukcja_do_...while/index.html" | 23 + .../instrukcja_for/index.html" | 56 + .../instrukcja_label/index.html" | 23 + .../instrukcja_while/index.html" | 38 + .../instrukcje_warunkowe/index.html" | 89 + .../litera\305\202y/index.html" | 207 + .../o_tym_przewodniku/index.html" | 159 + .../obiekty_i_w\305\202asno\305\233ci/index.html" | 49 + .../obiekty_predefiniowane/index.html" | 24 + .../obiekt_array/index.html" | 94 + .../obiekt_boolean/index.html" | 14 + .../obiekty_predefiniowane/obiekt_date/index.html" | 87 + .../obiekt_function/index.html" | 50 + .../obiekty_predefiniowane/obiekt_math/index.html" | 72 + .../obiekt_number/index.html" | 83 + .../obiekt_regexp/index.html" | 12 + .../obiekt_string/index.html" | 92 + .../operatory/index.html" | 112 + .../index.html" | 17 + .../operatory/operatory_arytmetyczne/index.html" | 48 + .../operatory/operatory_logiczne/index.html" | 72 + .../operatory_por\303\263wnania/index.html" | 73 + .../operatory/operatory_przypisania/index.html" | 67 + .../operatory/operatory_specjalne/index.html" | 227 + .../podgl\304\205d_klas_liveconnect/index.html" | 47 + .../index.html" | 39 + .../konwersja_typu_danych/index.html" | 24 + .../konwersja_javascript_do_java/index.html" | 320 + .../index.html" | 24 + .../index.html" | 71 + .../praca_z_przyk\305\202adem/index.html" | 37 + .../tworzenie_hierarchii/index.html" | 149 + .../dodawanie_w\305\202asno\305\233ci/index.html" | 23 + .../index.html" | 33 + .../w\305\202asno\305\233ci_obiektu/index.html" | 19 + .../index.html" | 49 + .../index.html" | 122 + .../praca_z_zamkni\304\231ciami/index.html" | 286 + .../sta\305\202e/index.html" | 29 + .../definiowanie_metod/index.html" | 48 + .../index.html" | 19 + .../index.html" | 16 + .../tworzenie_nowych_obiekt\303\263w/index.html" | 22 + .../usuwanie_w\305\202asno\305\233ci/index.html" | 26 + .../u\305\274ywanie_inicjacji_obiektu/index.html" | 36 + .../index.html" | 32 + .../index.html" | 62 + .../index.html" | 43 + .../unicode/index.html" | 110 + .../warto\305\233ci/index.html" | 46 + .../wyra\305\274enia/index.html" | 22 + .../wywo\305\202anie_funkcji/index.html" | 45 + .../index.html" | 215 + .../zastosowanie_obiektu_arguments/index.html" | 41 + .../zmienne/index.html" | 63 + .../guide/sk\305\202adnia_i_typy/index.html" | 595 + files/pl/web/javascript/index.html | 131 + .../web/javascript/na_pocz\304\205tek/index.html" | 903 ++ .../pl/web/javascript/new_in_javascript/index.html | 10 + .../nowo\305\233ci_w_javascript_1.5/index.html" | 36 + .../nowo\305\233ci_w_javascript_1.6/index.html" | 62 + .../nowo\305\233ci_w_javascript_1.4/index.html" | 24 + .../nowo\305\233ci_w_javascript_1.8/index.html" | 135 + files/pl/web/javascript/o_javascript/index.html | 57 + .../ponowne_wprowadzenie_do_javascript/index.html | 965 ++ .../reference/classes/extends/index.html | 88 + .../pl/web/javascript/reference/classes/index.html | 410 + .../reference/classes/konstruktor/index.html | 188 + .../classes/private_class_fields/index.html | 205 + .../classes/public_class_fields/index.html | 269 + .../javascript/reference/classes/static/index.html | 138 + .../index.html" | 77 + .../pl/web/javascript/reference/errors/index.html | 28 + .../errors/invalid_array_length/index.html | 79 + .../reference/errors/invalid_date/index.html | 59 + .../reference/errors/json_bad_parse/index.html | 114 + .../missing_curly_after_function_body/index.html | 72 + .../errors/missing_initializer_in_const/index.html | 61 + .../index.html | 59 + .../missing_semicolon_before_statement/index.html | 82 + .../errors/more_arguments_needed/index.html | 44 + .../reference/errors/not_a_function/index.html | 84 + .../reference/errors/not_defined/index.html | 66 + .../errors/property_access_denied/index.html | 53 + .../reference/errors/unexpected_type/index.html | 69 + .../functions/funkcje_strzalkowe/index.html | 355 + .../javascript/reference/functions/get/index.html | 216 + .../web/javascript/reference/functions/index.html | 657 ++ .../parametry_domy\305\233lne/index.html" | 225 + .../javascript/reference/functions/set/index.html | 146 + .../referencje/funkcje/arguments/callee/index.html | 60 + .../referencje/funkcje/arguments/caller/index.html | 48 + .../referencje/funkcje/arguments/index.html | 129 + .../referencje/funkcje/arguments/length/index.html | 59 + files/pl/web/javascript/referencje/index.html | 70 + .../web/javascript/referencje/komentarz/index.html | 54 + .../javascript/referencje/liveconnect/index.html | 23 + .../referencje/liveconnect/jsexception/index.html | 93 + .../referencje/liveconnect/jsobject/index.html | 186 + .../referencje/o_tym_dokumencie/index.html | 58 + .../konwencje_formatowania_tekstu/index.html | 31 + .../referencje/obiekty/array/concat/index.html | 71 + .../referencje/obiekty/array/copywithin/index.html | 181 + .../referencje/obiekty/array/entries/index.html | 77 + .../referencje/obiekty/array/every/index.html | 89 + .../referencje/obiekty/array/fill/index.html | 185 + .../referencje/obiekty/array/filter/index.html | 150 + .../referencje/obiekty/array/find/index.html | 278 + .../referencje/obiekty/array/findindex/index.html | 214 + .../referencje/obiekty/array/flat/index.html | 173 + .../referencje/obiekty/array/foreach/index.html | 104 + .../referencje/obiekty/array/from/index.html | 248 + .../referencje/obiekty/array/includes/index.html | 110 + .../javascript/referencje/obiekty/array/index.html | 279 + .../referencje/obiekty/array/indexof/index.html | 95 + .../referencje/obiekty/array/isarray/index.html | 139 + .../referencje/obiekty/array/join/index.html | 50 + .../referencje/obiekty/array/keys/index.html | 120 + .../obiekty/array/lastindexof/index.html | 114 + .../referencje/obiekty/array/length/index.html | 53 + .../referencje/obiekty/array/map/index.html | 93 + .../referencje/obiekty/array/of/index.html | 92 + .../referencje/obiekty/array/pop/index.html | 138 + .../referencje/obiekty/array/prototype/index.html | 12 + .../referencje/obiekty/array/push/index.html | 51 + .../referencje/obiekty/array/reduce/index.html | 300 + .../obiekty/array/reduceright/index.html | 344 + .../referencje/obiekty/array/reverse/index.html | 55 + .../referencje/obiekty/array/shift/index.html | 48 + .../referencje/obiekty/array/slice/index.html | 99 + .../referencje/obiekty/array/some/index.html | 110 + .../referencje/obiekty/array/sort/index.html | 122 + .../referencje/obiekty/array/splice/index.html | 86 + .../obiekty/array/tolocalestring/index.html | 128 + .../referencje/obiekty/array/tosource/index.html | 62 + .../referencje/obiekty/array/tostring/index.html | 42 + .../referencje/obiekty/array/unshift/index.html | 56 + .../referencje/obiekty/array/values/index.html | 84 + .../referencje/obiekty/arraybuffer/index.html | 222 + .../referencje/obiekty/bigint/asintn/index.html | 79 + .../referencje/obiekty/bigint/asuintn/index.html | 78 + .../referencje/obiekty/bigint/index.html | 293 + .../referencje/obiekty/bigint/tostring/index.html | 95 + .../referencje/obiekty/bigint/valueof/index.html | 59 + .../referencje/obiekty/boolean/index.html | 111 + .../obiekty/boolean/prototype/index.html | 48 + .../referencje/obiekty/boolean/tosource/index.html | 51 + .../referencje/obiekty/boolean/tostring/index.html | 41 + .../referencje/obiekty/boolean/valueof/index.html | 43 + .../referencje/obiekty/dataview/index.html | 118 + .../referencje/obiekty/date/constructor/index.html | 18 + .../referencje/obiekty/date/getdate/index.html | 47 + .../referencje/obiekty/date/getday/index.html | 47 + .../referencje/obiekty/date/getfullyear/index.html | 47 + .../referencje/obiekty/date/gethours/index.html | 46 + .../obiekty/date/getmilliseconds/index.html | 44 + .../referencje/obiekty/date/getminutes/index.html | 48 + .../referencje/obiekty/date/getmonth/index.html | 46 + .../referencje/obiekty/date/getseconds/index.html | 46 + .../referencje/obiekty/date/gettime/index.html | 47 + .../obiekty/date/gettimezoneoffset/index.html | 35 + .../referencje/obiekty/date/getutcdate/index.html | 45 + .../referencje/obiekty/date/getutcday/index.html | 45 + .../obiekty/date/getutcfullyear/index.html | 44 + .../referencje/obiekty/date/getutchours/index.html | 44 + .../obiekty/date/getutcmilliseconds/index.html | 44 + .../obiekty/date/getutcminutes/index.html | 44 + .../referencje/obiekty/date/getutcmonth/index.html | 44 + .../obiekty/date/getutcseconds/index.html | 44 + .../referencje/obiekty/date/getyear/index.html | 97 + .../javascript/referencje/obiekty/date/index.html | 138 + .../referencje/obiekty/date/now/index.html | 43 + .../referencje/obiekty/date/parse/index.html | 74 + .../referencje/obiekty/date/prototype/index.html | 115 + .../referencje/obiekty/date/setdate/index.html | 43 + .../referencje/obiekty/date/setfullyear/index.html | 58 + .../referencje/obiekty/date/sethours/index.html | 66 + .../obiekty/date/setmilliseconds/index.html | 45 + .../referencje/obiekty/date/setminutes/index.html | 60 + .../referencje/obiekty/date/setmonth/index.html | 56 + .../referencje/obiekty/date/setseconds/index.html | 56 + .../referencje/obiekty/date/settime/index.html | 46 + .../referencje/obiekty/date/setutcdate/index.html | 45 + .../obiekty/date/setutcfullyear/index.html | 57 + .../referencje/obiekty/date/setutchours/index.html | 62 + .../obiekty/date/setutcmilliseconds/index.html | 45 + .../obiekty/date/setutcminutes/index.html | 57 + .../referencje/obiekty/date/setutcmonth/index.html | 52 + .../obiekty/date/setutcseconds/index.html | 52 + .../referencje/obiekty/date/setyear/index.html | 52 + .../referencje/obiekty/date/togmtstring/index.html | 44 + .../referencje/obiekty/date/tojson/index.html | 70 + .../obiekty/date/tolocaledatestring/index.html | 55 + .../obiekty/date/tolocalestring/index.html | 51 + .../obiekty/date/tolocaletimestring/index.html | 52 + .../referencje/obiekty/date/tosource/index.html | 49 + .../referencje/obiekty/date/tostring/index.html | 49 + .../referencje/obiekty/date/toutcstring/index.html | 43 + .../referencje/obiekty/date/utc/index.html | 69 + .../referencje/obiekty/date/valueof/index.html | 46 + .../referencje/obiekty/decodeuri/index.html | 39 + .../obiekty/decodeuricomponent/index.html | 41 + .../referencje/obiekty/encodeuri/index.html | 72 + .../obiekty/encodeuricomponent/index.html | 38 + .../obiekty/error/columnnumber/index.html | 81 + .../referencje/obiekty/error/filename/index.html | 49 + .../javascript/referencje/obiekty/error/index.html | 246 + .../referencje/obiekty/error/linenumber/index.html | 57 + .../referencje/obiekty/error/message/index.html | 108 + .../referencje/obiekty/error/name/index.html | 109 + .../referencje/obiekty/error/prototype/index.html | 113 + .../referencje/obiekty/error/stack/index.html | 127 + .../referencje/obiekty/error/tosource/index.html | 60 + .../referencje/obiekty/error/tostring/index.html | 98 + .../referencje/obiekty/escape/index.html | 120 + .../referencje/obiekty/evalerror/index.html | 87 + .../referencje/obiekty/function/apply/index.html | 289 + .../obiekty/function/arguments/index.html | 41 + .../referencje/obiekty/function/arity/index.html | 23 + .../referencje/obiekty/function/bind/index.html | 332 + .../referencje/obiekty/function/caller/index.html | 69 + .../obiekty/function/displayname/index.html | 119 + .../referencje/obiekty/function/index.html | 237 + .../referencje/obiekty/function/length/index.html | 42 + .../obiekty/function/tostring/index.html | 56 + .../referencje/obiekty/generator/index.html | 178 + .../web/javascript/referencje/obiekty/index.html | 193 + .../referencje/obiekty/infinity/index.html | 35 + .../referencje/obiekty/isfinite/index.html | 56 + .../javascript/referencje/obiekty/isnan/index.html | 53 + .../javascript/referencje/obiekty/java/index.html | 29 + .../referencje/obiekty/javaarray/index.html | 68 + .../referencje/obiekty/javaarray/length/index.html | 29 + .../obiekty/javaarray/tostring/index.html | 38 + .../referencje/obiekty/javaclass/index.html | 60 + .../referencje/obiekty/javaobject/index.html | 67 + .../referencje/obiekty/javapackage/index.html | 46 + .../javascript/referencje/obiekty/json/index.html | 147 + .../referencje/obiekty/map/clear/index.html | 87 + .../referencje/obiekty/map/delete/index.html | 85 + .../referencje/obiekty/map/entries/index.html | 128 + .../referencje/obiekty/map/foreach/index.html | 104 + .../referencje/obiekty/map/get/index.html | 80 + .../referencje/obiekty/map/has/index.html | 85 + .../javascript/referencje/obiekty/map/index.html | 458 + .../referencje/obiekty/map/keys/index.html | 78 + .../referencje/obiekty/map/set/index.html | 96 + .../referencje/obiekty/map/size/index.html | 65 + .../referencje/obiekty/map/values/index.html | 77 + .../referencje/obiekty/math/abs/index.html | 54 + .../referencje/obiekty/math/acos/index.html | 59 + .../referencje/obiekty/math/asin/index.html | 58 + .../referencje/obiekty/math/atan/index.html | 51 + .../referencje/obiekty/math/atan2/index.html | 63 + .../referencje/obiekty/math/ceil/index.html | 49 + .../referencje/obiekty/math/cos/index.html | 52 + .../referencje/obiekty/math/e/index.html | 40 + .../referencje/obiekty/math/exp/index.html | 49 + .../referencje/obiekty/math/floor/index.html | 46 + .../javascript/referencje/obiekty/math/index.html | 94 + .../referencje/obiekty/math/ln10/index.html | 42 + .../referencje/obiekty/math/ln2/index.html | 40 + .../referencje/obiekty/math/log/index.html | 54 + .../referencje/obiekty/math/log10e/index.html | 44 + .../referencje/obiekty/math/log2e/index.html | 42 + .../referencje/obiekty/math/max/index.html | 43 + .../referencje/obiekty/math/min/index.html | 44 + .../referencje/obiekty/math/pi/index.html | 40 + .../referencje/obiekty/math/pow/index.html | 49 + .../referencje/obiekty/math/random/index.html | 67 + .../referencje/obiekty/math/round/index.html | 50 + .../referencje/obiekty/math/sign/index.html | 118 + .../referencje/obiekty/math/sin/index.html | 51 + .../referencje/obiekty/math/sqrt/index.html | 46 + .../referencje/obiekty/math/sqrt1_2/index.html | 39 + .../referencje/obiekty/math/sqrt2/index.html | 41 + .../referencje/obiekty/math/tan/index.html | 53 + .../javascript/referencje/obiekty/nan/index.html | 45 + .../referencje/obiekty/netscape/index.html | 29 + .../javascript/referencje/obiekty/null/index.html | 134 + .../obiekty/number/constructor/index.html | 22 + .../referencje/obiekty/number/epsilon/index.html | 76 + .../referencje/obiekty/number/index.html | 111 + .../referencje/obiekty/number/isinteger/index.html | 88 + .../referencje/obiekty/number/isnan/index.html | 108 + .../referencje/obiekty/number/max_value/index.html | 35 + .../referencje/obiekty/number/min_value/index.html | 39 + .../referencje/obiekty/number/nan/index.html | 48 + .../obiekty/number/negative_infinity/index.html | 53 + .../obiekty/number/positive_infinity/index.html | 57 + .../obiekty/number/toexponential/index.html | 53 + .../referencje/obiekty/number/tofixed/index.html | 61 + .../obiekty/number/tolocalestring/index.html | 182 + .../obiekty/number/toprecision/index.html | 56 + .../referencje/obiekty/number/tostring/index.html | 59 + .../referencje/obiekty/object/assign/index.html | 307 + .../obiekty/object/constructor/index.html | 49 + .../referencje/obiekty/object/eval/index.html | 64 + .../referencje/obiekty/object/freeze/index.html | 201 + .../object/getownpropertydescriptor/index.html | 121 + .../obiekty/object/hasownproperty/index.html | 150 + .../referencje/obiekty/object/index.html | 212 + .../referencje/obiekty/object/proto/index.html | 193 + .../referencje/obiekty/object/prototype/index.html | 218 + .../referencje/obiekty/object/seal/index.html | 165 + .../obiekty/object/tolocalestring/index.html | 35 + .../referencje/obiekty/object/tosource/index.html | 73 + .../referencje/obiekty/object/tostring/index.html | 98 + .../referencje/obiekty/object/unwatch/index.html | 39 + .../referencje/obiekty/object/valueof/index.html | 63 + .../referencje/obiekty/object/watch/index.html | 78 + .../referencje/obiekty/packages/index.html | 50 + .../referencje/obiekty/packages/java/index.html | 49 + .../obiekty/packages/nazwaklasy/index.html | 41 + .../obiekty/packages/netscape/index.html | 35 + .../referencje/obiekty/packages/sun/index.html | 32 + .../referencje/obiekty/parsefloat/index.html | 68 + .../referencje/obiekty/parseint/index.html | 112 + .../referencje/obiekty/promise/index.html | 256 + .../obiekty/proxy/handler/apply/index.html | 117 + .../referencje/obiekty/proxy/handler/index.html | 77 + .../javascript/referencje/obiekty/proxy/index.html | 401 + .../referencje/obiekty/rangeerror/index.html | 162 + .../obiekty/rangeerror/prototype/index.html | 123 + .../referencje/obiekty/regexp/exec/index.html | 144 + .../referencje/obiekty/regexp/global/index.html | 35 + .../obiekty/regexp/ignorecase/index.html | 35 + .../referencje/obiekty/regexp/index.html | 383 + .../referencje/obiekty/regexp/lastmatch/index.html | 54 + .../referencje/obiekty/regexp/prototype/index.html | 53 + .../referencje/obiekty/regexp/source/index.html | 29 + .../referencje/obiekty/regexp/test/index.html | 53 + .../referencje/obiekty/regexp/tosource/index.html | 47 + .../referencje/obiekty/regexp/tostring/index.html | 46 + .../javascript/referencje/obiekty/set/index.html | 486 + .../obiekty/set/set.prototype.add()/index.html | 134 + .../obiekty/set/set.prototype.clear()/index.html | 124 + .../obiekty/set/set.prototype.delete()/index.html | 102 + .../referencje/obiekty/string/anchor/index.html | 56 + .../referencje/obiekty/string/big/index.html | 43 + .../referencje/obiekty/string/blink/index.html | 50 + .../referencje/obiekty/string/bold/index.html | 45 + .../referencje/obiekty/string/charat/index.html | 68 + .../obiekty/string/charcodeat/index.html | 42 + .../referencje/obiekty/string/concat/index.html | 44 + .../referencje/obiekty/string/fontcolor/index.html | 50 + .../referencje/obiekty/string/fontsize/index.html | 48 + .../obiekty/string/fromcharcode/index.html | 50 + .../obiekty/string/fromcodepoint/index.html | 149 + .../referencje/obiekty/string/index.html | 194 + .../referencje/obiekty/string/italics/index.html | 45 + .../referencje/obiekty/string/link/index.html | 43 + .../referencje/obiekty/string/prototype/index.html | 220 + .../referencje/obiekty/string/repeat/index.html | 166 + .../referencje/obiekty/string/search/index.html | 49 + .../referencje/obiekty/string/slice/index.html | 51 + .../referencje/obiekty/string/small/index.html | 37 + .../referencje/obiekty/string/strike/index.html | 44 + .../referencje/obiekty/string/sub/index.html | 44 + .../referencje/obiekty/string/substr/index.html | 66 + .../referencje/obiekty/string/substring/index.html | 90 + .../referencje/obiekty/string/sup/index.html | 45 + .../obiekty/string/tolowercase/index.html | 40 + .../referencje/obiekty/string/tosource/index.html | 41 + .../referencje/obiekty/string/tostring/index.html | 41 + .../obiekty/string/touppercase/index.html | 38 + .../referencje/obiekty/string/valueof/index.html | 40 + .../javascript/referencje/obiekty/sun/index.html | 29 + .../referencje/obiekty/symbol/index.html | 227 + .../referencje/obiekty/syntaxerror/index.html | 100 + .../referencje/obiekty/uint16array/index.html | 224 + .../referencje/obiekty/undefined/index.html | 40 + .../operatory/bitwise_operators/index.html | 558 + .../operatory/destructuring_assignment/index.html | 493 + .../index.html" | 78 + .../referencje/operatory/function_star_/index.html | 90 + .../referencje/operatory/grouping/index.html | 90 + .../web/javascript/referencje/operatory/index.html | 282 + .../operatory/logical_operators/index.html | 253 + .../referencje/operatory/new.target/index.html | 134 + .../nullish_coalescing_operator/index.html | 251 + .../operatory/object_initializer/index.html | 387 + .../operatory/operator_delete/index.html | 74 + .../operatory/operator_function/index.html | 144 + .../referencje/operatory/operator_in/index.html | 92 + .../operatory/operator_instanceof/index.html | 168 + .../referencje/operatory/operator_new/index.html | 183 + .../operatory/operator_potoku/index.html | 65 + .../operatory/operator_przecinkowy/index.html | 37 + .../operatory/operator_typeof/index.html | 91 + .../referencje/operatory/operator_void/index.html | 51 + .../operatory/operator_warunkowy/index.html | 34 + .../operatory/operatory_arytmetyczne/index.html | 267 + .../index.html" | 34 + .../operatory/operatory_pami\304\231ci/index.html" | 177 + .../operatory_por\303\263wnania/index.html" | 129 + .../operatory/operatory_przypisania/index.html | 74 + .../index.html" | 336 + .../sk\305\202adnia_rozwini\304\231cia/index.html" | 244 + .../operatory/spread_operator/index.html | 229 + .../referencje/operatory/super/index.html | 171 + .../referencje/operatory/this/index.html | 346 + .../referencje/operatory/yield/index.html | 168 + .../referencje/operatory/yield_star_/index.html | 200 + .../referencje/polecenia/block/index.html | 160 + .../referencje/polecenia/break/index.html | 67 + .../referencje/polecenia/class/index.html | 113 + .../referencje/polecenia/const/index.html | 53 + .../referencje/polecenia/continue/index.html | 166 + .../referencje/polecenia/debugger/index.html | 126 + .../referencje/polecenia/default/index.html | 120 + .../referencje/polecenia/do...while/index.html | 54 + .../referencje/polecenia/empty/index.html | 92 + .../referencje/polecenia/etykieta/index.html | 51 + .../referencje/polecenia/export/index.html | 47 + .../referencje/polecenia/for...in/index.html | 173 + .../javascript/referencje/polecenia/for/index.html | 58 + .../referencje/polecenia/for_each...in/index.html | 80 + .../referencje/polecenia/function/index.html | 68 + .../referencje/polecenia/function_star_/index.html | 309 + .../referencje/polecenia/funkcja_async/index.html | 264 + .../referencje/polecenia/if...else/index.html | 65 + .../referencje/polecenia/import/index.html | 55 + .../web/javascript/referencje/polecenia/index.html | 149 + .../referencje/polecenia/return/index.html | 48 + .../referencje/polecenia/switch/index.html | 285 + .../referencje/polecenia/throw/index.html | 197 + .../javascript/referencje/polecenia/var/index.html | 61 + .../referencje/polecenia/while/index.html | 61 + .../index.html" | 292 + .../s\305\202owa_zarezerwowane/index.html" | 17 + files/pl/web/javascript/shells/index.html | 42 + files/pl/web/javascript/typed_arrays/index.html | 277 + .../typy_oraz_struktury_danych/index.html | 443 + .../index.html | 341 + .../zasoby_j\304\231zyka_javascript/index.html" | 48 + files/pl/web/mathml/index.html | 62 + files/pl/web/progressive_web_apps/index.html | 113 + .../pl/web/security/securing_your_site/index.html | 55 + .../konfiguracja_mime_na_serwerze/index.html | 114 + files/pl/web/svg/element/a/index.html | 149 + .../pl/web/svg/element/animatetransform/index.html | 95 + files/pl/web/svg/element/index.html | 252 + "files/pl/web/svg/element/okr\304\205g/index.html" | 99 + files/pl/web/svg/index.html | 100 + files/pl/web/svg/inne_zasoby/index.html | 19 + files/pl/web/svg/przewodnik/index.html | 28 + .../svg_w_xhtml_-_wprowadzenie/index.html | 78 + files/pl/web/tutorials/index.html | 154 + files/pl/web/xml/index.html | 17 + files/pl/web/xml/wprowadzenie_do_xml-a/index.html | 46 + files/pl/web/xpath/funkcje/boolean/index.html | 38 + files/pl/web/xpath/funkcje/ceiling/index.html | 36 + files/pl/web/xpath/funkcje/concat/index.html | 31 + files/pl/web/xpath/funkcje/contains/index.html | 36 + files/pl/web/xpath/funkcje/count/index.html | 33 + files/pl/web/xpath/funkcje/current/index.html | 30 + files/pl/web/xpath/funkcje/document/index.html | 42 + .../web/xpath/funkcje/element-available/index.html | 30 + files/pl/web/xpath/funkcje/false/index.html | 37 + files/pl/web/xpath/funkcje/floor/index.html | 33 + .../pl/web/xpath/funkcje/format-number/index.html | 38 + .../xpath/funkcje/function-available/index.html | 29 + files/pl/web/xpath/funkcje/generate-id/index.html | 36 + files/pl/web/xpath/funkcje/id/index.html | 36 + files/pl/web/xpath/funkcje/index.html | 55 + files/pl/web/xpath/funkcje/key/index.html | 36 + files/pl/web/xpath/funkcje/lang/index.html | 58 + files/pl/web/xpath/funkcje/last/index.html | 33 + files/pl/web/xpath/funkcje/local-name/index.html | 36 + files/pl/web/xpath/funkcje/name/index.html | 35 + .../pl/web/xpath/funkcje/namespace-uri/index.html | 37 + .../web/xpath/funkcje/normalize-space/index.html | 34 + files/pl/web/xpath/funkcje/not/index.html | 37 + files/pl/web/xpath/funkcje/number/index.html | 37 + files/pl/web/xpath/funkcje/position/index.html | 44 + files/pl/web/xpath/funkcje/round/index.html | 36 + files/pl/web/xpath/funkcje/starts-with/index.html | 36 + .../pl/web/xpath/funkcje/string-length/index.html | 32 + files/pl/web/xpath/funkcje/string/index.html | 43 + .../web/xpath/funkcje/substring-after/index.html | 40 + .../web/xpath/funkcje/substring-before/index.html | 38 + files/pl/web/xpath/funkcje/substring/index.html | 40 + files/pl/web/xpath/funkcje/sum/index.html | 36 + .../web/xpath/funkcje/system-property/index.html | 36 + files/pl/web/xpath/funkcje/translate/index.html | 86 + files/pl/web/xpath/funkcje/true/index.html | 30 + .../xpath/funkcje/unparsed-entity-url/index.html | 29 + files/pl/web/xpath/index.html | 14 + files/pl/web/xpath/osie/index.html | 44 + files/pl/web/xslt/apply-imports/index.html | 30 + files/pl/web/xslt/apply-templates/index.html | 35 + files/pl/web/xslt/attribute-set/index.html | 35 + files/pl/web/xslt/attribute/index.html | 34 + files/pl/web/xslt/call-template/index.html | 32 + files/pl/web/xslt/choose/index.html | 35 + files/pl/web/xslt/comment/index.html | 31 + files/pl/web/xslt/copy-of/index.html | 32 + files/pl/web/xslt/copy/index.html | 32 + files/pl/web/xslt/decimal-format/index.html | 73 + files/pl/web/xslt/element/element/index.html | 36 + files/pl/web/xslt/element/index.html | 58 + files/pl/web/xslt/fallback/index.html | 32 + files/pl/web/xslt/for-each/index.html | 32 + files/pl/web/xslt/if/index.html | 33 + files/pl/web/xslt/import/index.html | 31 + files/pl/web/xslt/include/index.html | 31 + files/pl/web/xslt/index.html | 19 + files/pl/web/xslt/key/index.html | 36 + files/pl/web/xslt/message/index.html | 31 + files/pl/web/xslt/namespace-alias/index.html | 33 + files/pl/web/xslt/number/index.html | 98 + files/pl/web/xslt/otherwise/index.html | 32 + files/pl/web/xslt/output/index.html | 63 + files/pl/web/xslt/param/index.html | 34 + files/pl/web/xslt/preserve-space/index.html | 31 + .../pl/web/xslt/processing-instruction/index.html | 33 + files/pl/web/xslt/sort/index.html | 49 + files/pl/web/xslt/strip-space/index.html | 31 + files/pl/web/xslt/stylesheet/index.html | 34 + files/pl/web/xslt/template/index.html | 47 + files/pl/web/xslt/text/index.html | 34 + files/pl/web/xslt/transform/index.html | 17 + .../dokumentacja_xslt_xpath/index.html | 243 + .../web/xslt/transformacje_xml_z_xslt/index.html | 147 + .../przeczytaj_wi\304\231cej/index.html" | 205 + files/pl/web/xslt/value-of/index.html | 32 + files/pl/web/xslt/variable/index.html | 35 + files/pl/web/xslt/when/index.html | 33 + files/pl/web/xslt/with-param/index.html | 32 + files/pl/webassembly/index.html | 164 + files/pl/websockets/index.html | 188 + .../index.html" | 1390 +++ files/pl/wtyczki/index.html | 108 + .../index.html" | 583 + files/pl/xhtml/index.html | 26 + files/pl/xml_w_mozilli/index.html | 283 + .../index.html | 177 + files/pl/xml_web_services/index.html | 49 + files/pl/xmlhttprequest/index.html | 233 + .../xmlhttprequest/using_xmlhttprequest/index.html | 657 ++ files/pl/xpcnativewrapper/index.html | 208 + files/pl/xpcom/index.html | 101 + files/pl/xpcom_interface_reference/index.html | 18 + files/pl/xpconnect/index.html | 60 + .../pl/xpconnect/podstawy_architektury/index.html | 12 + files/pl/xpi/index.html | 22 + files/pl/xtf/index.html | 34 + files/pl/xul_explorer/index.html | 67 + "files/pl/zabawa_j\304\231zykiem_xul/index.html" | 146 + files/pl/zastosowanie_nsixulappinfo/index.html | 109 + .../index.html" | 30 + .../index.html | 21 + 2316 files changed, 213367 insertions(+) create mode 100644 files/pl/_redirects.txt create mode 100644 files/pl/_wikihistory.json create mode 100644 files/pl/aktualizacja_aplikacji_internetowych_dla_firefoksa_3/index.html create mode 100644 "files/pl/aktualizacja_rozszerze\305\204_dla_firefoksa_3/index.html" create mode 100644 "files/pl/aktualizacja_rozszerze\305\204_do_firefoksa_2/index.html" create mode 100644 "files/pl/api_dost\304\231pu_do_danych_z_kana\305\202\303\263w/index.html" create mode 100644 files/pl/api_preferencji/index.html create mode 100644 files/pl/archive/add-ons/add-on_sdk/tools/index.html create mode 100644 files/pl/archive/add-ons/add-on_sdk/tools/jpm/index.html create mode 100644 files/pl/archive/add-ons/api_przechowywania_sesji/index.html create mode 100644 files/pl/archive/add-ons/index.html create mode 100644 files/pl/archive/add-ons/wsparcie_dla_podpowiedzi_wyszukiwania_w_wyszukiwarkach/index.html create mode 100644 files/pl/archive/b2g_os/add-ons/index.html create mode 100644 "files/pl/archive/b2g_os/firefox_os_wst\304\231pne_budowanie/index.html" create mode 100644 files/pl/archive/b2g_os/index.html create mode 100644 files/pl/archive/b2g_os/instalacja_firefox_os/index.html create mode 100644 files/pl/archive/b2g_os/instalacja_firefox_os/streszczenie_procesu_budowania_firefox_os/index.html create mode 100644 files/pl/archive/b2g_os/phone_guide/index.html create mode 100644 "files/pl/archive/b2g_os/phone_guide/p\305\202omie\305\204/index.html" create mode 100644 files/pl/archive/b2g_os/phone_guide/zte_open_c/index.html create mode 100644 files/pl/archive/b2g_os/platform/gaia/index.html create mode 100644 files/pl/archive/b2g_os/platform/index.html create mode 100644 files/pl/archive/b2g_os/preparing_for_your_first_b2g_build/index.html create mode 100644 files/pl/archive/b2g_os/simulator/index.html create mode 100644 files/pl/archive/b2g_os/using_the_app_manager/index.html create mode 100644 files/pl/archive/index.html create mode 100644 files/pl/archive/marketplace/index.html create mode 100644 files/pl/archive/meta_docs/index.html create mode 100644 files/pl/archive/meta_docs/mdn_page_layout_guide/index.html create mode 100644 files/pl/archive/misc_top_level/index.html create mode 100644 files/pl/archive/misc_top_level/obrazki,_tabele_i_tajemnicze_dziury/index.html create mode 100644 files/pl/archive/mozilla/drag_and_drop/index.html create mode 100644 files/pl/archive/mozilla/firefox/index.html create mode 100644 "files/pl/archive/mozilla/firefox/zastosowanie_mikroformat\303\263w/index.html" create mode 100644 files/pl/archive/mozilla/index.html create mode 100644 files/pl/archive/mozilla/venkman/index.html create mode 100644 files/pl/archive/mozilla/xbl/index.html create mode 100644 files/pl/archive/mozilla/xulrunner/index.html create mode 100644 files/pl/archive/rss/elementy/index.html create mode 100644 files/pl/archive/rss/elementy/title/index.html create mode 100644 files/pl/archive/rss/encje/index.html create mode 100644 files/pl/archive/rss/index.html create mode 100644 "files/pl/archive/rss/modu\305\202y/index.html" create mode 100644 "files/pl/archive/rss/modu\305\202y/slash/elementy/index.html" create mode 100644 "files/pl/archive/rss/modu\305\202y/slash/index.html" create mode 100644 "files/pl/archive/rss/na_pocz\304\205tek/czym_jest_rss/index.html" create mode 100644 "files/pl/archive/rss/na_pocz\304\205tek/dlaczego_u\305\274ywamy_rss/index.html" create mode 100644 "files/pl/archive/rss/na_pocz\304\205tek/index.html" create mode 100644 "files/pl/archive/rss/na_pocz\304\205tek/jak_dzia\305\202a_rss/index.html" create mode 100644 "files/pl/archive/rss/na_pocz\304\205tek/syndykacja/index.html" create mode 100644 files/pl/archive/rss/wersje/0.90/index.html create mode 100644 files/pl/archive/rss/wersje/0.91/index.html create mode 100644 files/pl/archive/rss/wersje/index.html create mode 100644 files/pl/archive/standardy_www/index.html create mode 100644 "files/pl/archive/standardy_www/poprawne_u\305\274ycie_tytu\305\202\303\263w_w_zewn\304\231trznych_arkuszach_styl\303\263w/index.html" create mode 100644 "files/pl/archive/standardy_www/stylizowanie_skr\303\263t\303\263w_i_akronim\303\263w/index.html" create mode 100644 "files/pl/archive/standardy_www/wyb\303\263r_zgodno\305\233ci_ze_standardami_zamiast_praktyk_w\305\202asno\305\233ciowych/index.html" create mode 100644 files/pl/archive/web/index.html create mode 100644 files/pl/archive/web/xforms/index.html create mode 100644 files/pl/archive/web/xforms/inne_zasoby/index.html create mode 100644 files/pl/atrybuty_elementu_xul/index.html create mode 100644 "files/pl/bezpiecze\305\204stwo_w_firefoksie_2/index.html" create mode 100644 "files/pl/bezpieczny_dost\304\231p_do_sk\305\202adnik\303\263w_dom_z_poziomu_chrome/index.html" create mode 100644 files/pl/bugzilla/index.html create mode 100644 files/pl/chrome/index.html create mode 100644 files/pl/co_nowego_w_deer_park_alpha/index.html create mode 100644 files/pl/components.utils.reporterror/index.html create mode 100644 files/pl/components.utils.sandbox/index.html create mode 100644 files/pl/components.utils/index.html create mode 100644 "files/pl/cz\304\231sto_zadawane_pytania_dotycz\304\205ce_rozszerze\305\204/index.html" create mode 100644 files/pl/dhtml/index.html create mode 100644 "files/pl/dodawanie_dostawc\303\263w_danych_ochrony_przed_phishingiem/index.html" create mode 100644 files/pl/dodawanie_preferencji_do_rozszerzenia/index.html create mode 100644 files/pl/dodawanie_wyszukiwarek_z_poziomu_stron_www/index.html create mode 100644 files/pl/dokumentacja_gecko_dom/index.html create mode 100644 files/pl/dokumentacja_gecko_dom/przedmowa/index.html create mode 100644 "files/pl/dokumentacja_gecko_dom/przyk\305\202ady_u\305\274ycia_dom/index.html" create mode 100644 files/pl/dokumentacja_gecko_dom/wprowadzenie/index.html create mode 100644 "files/pl/dom/dispatchevent_-_przyk\305\202ad/index.html" create mode 100644 files/pl/dom/element.onkeydown/index.html create mode 100644 files/pl/dom/index.html create mode 100644 files/pl/dom_i_javascript/index.html create mode 100644 files/pl/dostosowanie_aplikacji_xul_do_firefoksa_1.5/index.html create mode 100644 "files/pl/dynamiczne_zmiany_interfejsu_u\305\274ytkownika_bazuj\304\205cego_na_xul-u/index.html" create mode 100644 files/pl/dziesiec_lat_mdn/index.html create mode 100644 files/pl/e4x/index.html create mode 100644 "files/pl/firefox_-_potrzeba_wolno\305\233ci/index.html" create mode 100644 "files/pl/firefox_3_dla_programist\303\263w/index.html" create mode 100644 files/pl/fragmenty_kodu/canvas/index.html create mode 100644 files/pl/fragmenty_kodu/ciasteczka/index.html create mode 100644 files/pl/fragmenty_kodu/index.html create mode 100644 files/pl/fragmenty_kodu/js_xpcom/index.html create mode 100644 files/pl/fragmenty_kodu/obserwator_pobierania_danych/index.html create mode 100644 files/pl/fragmenty_kodu/okna/index.html create mode 100644 "files/pl/fragmenty_kodu/r\303\263\305\274ne/index.html" create mode 100644 files/pl/fragmenty_kodu/uruchamianie_aplikacji/index.html create mode 100644 files/pl/fragmenty_kodu/wczytywanie_strony/index.html create mode 100644 files/pl/fragmenty_kodu/xml/index.html create mode 100644 files/pl/games/tutorials/2d_breakout_game_pure_javascript/index.html create mode 100644 files/pl/games/tutorials/2d_breakout_game_pure_javascript/odbijanie_od_scian/index.html create mode 100644 files/pl/games/tutorials/2d_breakout_game_pure_javascript/posusz_pilka/index.html create mode 100644 files/pl/games/tutorials/2d_breakout_game_pure_javascript/stworz_element_canvas_i_rysuj_na_nim/index.html create mode 100644 files/pl/games/tutorials/2d_breakout_game_pure_javascript/wykrywanie_kolizji/index.html create mode 100644 files/pl/games/tutorials/index.html create mode 100644 files/pl/gecko/index.html create mode 100644 files/pl/gecko_sdk/index.html create mode 100644 files/pl/generowanie_guid/index.html create mode 100644 files/pl/glossary/404/index.html create mode 100644 files/pl/glossary/abstrakcja/index.html create mode 100644 files/pl/glossary/accessibility/index.html create mode 100644 files/pl/glossary/accessibility_tree/index.html create mode 100644 files/pl/glossary/algorithm/index.html create mode 100644 files/pl/glossary/api/index.html create mode 100644 files/pl/glossary/argument/index.html create mode 100644 files/pl/glossary/arpanet/index.html create mode 100644 files/pl/glossary/array/index.html create mode 100644 files/pl/glossary/ascii/index.html create mode 100644 files/pl/glossary/boolean/index.html create mode 100644 files/pl/glossary/buffer/index.html create mode 100644 files/pl/glossary/chrome/index.html create mode 100644 files/pl/glossary/computer_programming/index.html create mode 100644 files/pl/glossary/cookie/index.html create mode 100644 files/pl/glossary/doctype/index.html create mode 100644 files/pl/glossary/dom/index.html create mode 100644 files/pl/glossary/firefox_os/index.html create mode 100644 files/pl/glossary/hipertekst/index.html create mode 100644 files/pl/glossary/hoisting/index.html create mode 100644 files/pl/glossary/html/index.html create mode 100644 files/pl/glossary/ietf/index.html create mode 100644 files/pl/glossary/index.html create mode 100644 files/pl/glossary/iso/index.html create mode 100644 files/pl/glossary/javascript/index.html create mode 100644 files/pl/glossary/klasa/index.html create mode 100644 files/pl/glossary/kryptografia/index.html create mode 100644 files/pl/glossary/metadata/index.html create mode 100644 files/pl/glossary/mozilla_firefox/index.html create mode 100644 files/pl/glossary/obiekt/index.html create mode 100644 files/pl/glossary/przegladarka/index.html create mode 100644 files/pl/glossary/pusty_element/index.html create mode 100644 files/pl/glossary/semantyka/index.html create mode 100644 files/pl/glossary/sgml/index.html create mode 100644 files/pl/glossary/slug/index.html create mode 100644 files/pl/glossary/truthy/index.html create mode 100644 files/pl/glossary/utf-8/index.html create mode 100644 files/pl/glossary/w3c/index.html create mode 100644 files/pl/glossary/webgl/index.html create mode 100644 files/pl/glossary/world_wide_web/index.html create mode 100644 files/pl/gry/index.html create mode 100644 files/pl/html/html5/index.html create mode 100644 files/pl/ikony_okna/index.html create mode 100644 "files/pl/istotne_b\305\202\304\231dy_poprawione_w_firefoksie_3/index.html" create mode 100644 files/pl/javaxpcom/index.html create mode 100644 files/pl/json/index.html create mode 100644 "files/pl/konsola_b\305\202\304\231d\303\263w/index.html" create mode 100644 files/pl/learn/accessibility/index.html create mode 100644 files/pl/learn/accessibility/what_is_accessibility/index.html create mode 100644 files/pl/learn/common_questions/index.html create mode 100644 files/pl/learn/common_questions/jak_dziala_internet/index.html create mode 100644 files/pl/learn/css/css_layout/flexbox/index.html create mode 100644 files/pl/learn/css/css_layout/index.html create mode 100644 files/pl/learn/css/howto/generated_content/index.html create mode 100644 files/pl/learn/css/howto/index.html create mode 100644 files/pl/learn/css/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/css_basics/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/dealing_with_files/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/html_basics/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/installing_basic_software/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/jak_dziala_siec/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/javascript_basics/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/publishing_your_website/index.html create mode 100644 files/pl/learn/getting_started_with_the_web/what_will_your_website_look_like/index.html create mode 100644 files/pl/learn/html/howto/index.html create mode 100644 files/pl/learn/html/howto/use_data_attributes/index.html create mode 100644 files/pl/learn/html/index.html create mode 100644 files/pl/learn/html/introduction_to_html/getting_started/index.html create mode 100644 files/pl/learn/html/introduction_to_html/index.html create mode 100644 files/pl/learn/index.html create mode 100644 files/pl/learn/javascript/asynchronous/index.html create mode 100644 files/pl/learn/javascript/asynchronous/introducing/index.html create mode 100644 files/pl/learn/javascript/building_blocks/index.html create mode 100644 files/pl/learn/javascript/client-side_web_apis/index.html create mode 100644 files/pl/learn/javascript/index.html create mode 100644 files/pl/learn/javascript/obiekty/index.html create mode 100644 files/pl/learn/javascript/pierwsze_kroki/a_first_splash/index.html create mode 100644 files/pl/learn/javascript/pierwsze_kroki/co_poszlo_nie_tak/index.html create mode 100644 files/pl/learn/javascript/pierwsze_kroki/index.html create mode 100644 files/pl/learn/javascript/pierwsze_kroki/math/index.html create mode 100644 files/pl/learn/javascript/pierwsze_kroki/what_is_javascript/index.html create mode 100644 files/pl/learn/javascript/pierwsze_kroki/zmienne/index.html create mode 100644 files/pl/learn/server-side/django/index.html create mode 100644 files/pl/learn/server-side/express_nodejs/development_environment/index.html create mode 100644 files/pl/learn/server-side/express_nodejs/index.html create mode 100644 files/pl/learn/server-side/express_nodejs/introduction/index.html create mode 100644 files/pl/learn/server-side/express_nodejs/skeleton_website/index.html create mode 100644 files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html create mode 100644 files/pl/learn/server-side/index.html create mode 100644 files/pl/learn/tools_and_testing/client-side_javascript_frameworks/index.html create mode 100644 files/pl/learn/tools_and_testing/index.html create mode 100644 "files/pl/lista_komponent\303\263w_xpcom/index.html" create mode 100644 files/pl/lokalizacja/index.html create mode 100644 files/pl/lokalizacja_opisu_rozszerzenia/index.html create mode 100644 files/pl/lokalizacja_rozszerzenia/index.html create mode 100644 files/pl/manifesty_instalacji/index.html create mode 100644 files/pl/mdn/contribute/feedback/index.html create mode 100644 files/pl/mdn/contribute/getting_started/index.html create mode 100644 "files/pl/mdn/contribute/howto/budowa_dany_edycja_artyku\305\202/index.html" create mode 100644 files/pl/mdn/contribute/howto/create_an_mdn_account/index.html create mode 100644 files/pl/mdn/contribute/howto/create_and_edit_pages/index.html create mode 100644 files/pl/mdn/contribute/howto/do_a_technical_review/index.html create mode 100644 files/pl/mdn/contribute/howto/index.html create mode 100644 files/pl/mdn/contribute/howto/set_the_summary_for_a_page/index.html create mode 100644 files/pl/mdn/contribute/howto/tag/index.html create mode 100644 files/pl/mdn/contribute/howto/tag_javascript_pages/index.html create mode 100644 files/pl/mdn/contribute/index.html create mode 100644 files/pl/mdn/contribute/localize/index.html create mode 100644 files/pl/mdn/contribute/localize/localization_projects/index.html create mode 100644 files/pl/mdn/contribute/localize/translating_pages/index.html create mode 100644 files/pl/mdn/contribute/persona_sign-in/index.html create mode 100644 files/pl/mdn/guidelines/index.html create mode 100644 files/pl/mdn/guidelines/style_guide/index.html create mode 100644 files/pl/mdn/index.html create mode 100644 files/pl/mdn/kuma/index.html create mode 100644 files/pl/mdn/user_guide/index.html create mode 100644 files/pl/midas/index.html create mode 100644 files/pl/midas/security_preferences/index.html create mode 100644 files/pl/miejsca/index.html create mode 100644 "files/pl/mi\304\231dzynarodowe_pismo_w_xul_javascript/index.html" create mode 100644 "files/pl/modu\305\202y_javascript/index.html" create mode 100644 files/pl/motywy/index.html create mode 100644 files/pl/mozilla/add-ons/amo/index.html create mode 100644 files/pl/mozilla/add-ons/amo/policy/index.html create mode 100644 files/pl/mozilla/add-ons/index.html create mode 100644 files/pl/mozilla/add-ons/sdk/index.html create mode 100644 files/pl/mozilla/add-ons/thunderbird/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/api/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/api/privacy/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/manifest.json/description/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/manifest.json/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/manifest.json/name/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/manifest.json/version/index.html create mode 100644 files/pl/mozilla/add-ons/webextensions/pierwsze_kroki_z_web-ext/index.html create mode 100644 "files/pl/mozilla/add-ons/webextensions/tw\303\263j_pierwszy_webextension/index.html" create mode 100644 files/pl/mozilla/developer_guide/index.html create mode 100644 files/pl/mozilla/developer_guide/mozilla-central/index.html create mode 100644 files/pl/mozilla/developer_guide/source_code/index.html create mode 100644 files/pl/mozilla/firefox/developer_edition/index.html create mode 100644 files/pl/mozilla/firefox/index.html create mode 100644 files/pl/mozilla/firefox/multiprocess_firefox/index.html create mode 100644 files/pl/mozilla/firefox/multiprocess_firefox/tab_selection_in_multiprocess_firefox/index.html create mode 100644 files/pl/mozilla/firefox/releases/1.5/index.html create mode 100644 files/pl/mozilla/firefox/releases/2/index.html create mode 100644 files/pl/mozilla/firefox/releases/3/index.html create mode 100644 files/pl/mozilla/firefox/releases/index.html create mode 100644 files/pl/mozilla/firefox_for_android/index.html create mode 100644 files/pl/mozilla/firefox_for_android_clone/index.html create mode 100644 files/pl/mozilla/index.html create mode 100644 files/pl/mozilla/javascript_code_modules/index.html create mode 100644 "files/pl/mozilla/javascript_code_modules/zastosowanie_modu\305\202\303\263w_javascript/index.html" create mode 100644 files/pl/mozilla/javascript_tips/index.html create mode 100644 "files/pl/mozilla/localization/co_ka\305\274dy_t\305\202umacz_mozilli_powinien_wiedzie\304\207/index.html" create mode 100644 files/pl/mozilla/localization/index.html create mode 100644 files/pl/mozilla/mobile/index.html create mode 100644 files/pl/mozilla/mobile/viewport_meta_tag/index.html create mode 100644 files/pl/mozilla/persona/branding/index.html create mode 100644 files/pl/mozilla/persona/index.html create mode 100644 files/pl/mozilla/preferences/index.html create mode 100644 files/pl/mozilla/projects/crash_reporting/index.html create mode 100644 files/pl/mozilla/projects/crash_reporting/wyszukiwanie_crash_reports/index.html create mode 100644 files/pl/mozilla/projects/index.html create mode 100644 files/pl/mozilla/projects/mozmill/index.html create mode 100644 files/pl/mozilla/projects/nss/index.html create mode 100644 files/pl/mozilla/projects/nss/probka_kodu_nss/index.html create mode 100644 files/pl/mozilla/projects/pzbo/index.html create mode 100644 files/pl/mozilla/rejestracja_chrome/index.html create mode 100644 files/pl/mozilla/tech/index.html create mode 100644 files/pl/mozilla/tech/xpcom/language_bindings/index.html create mode 100644 files/pl/mozilla/tech/xpcom/reference/index.html create mode 100644 files/pl/mozilla/tech/xul/action/index.html create mode 100644 files/pl/mozilla/tech/xul/arrowscrollbox/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/accessible/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/accesskey/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/afterselected/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/align/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/allownegativeassertions/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/alternatingbackground/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/alwaysopenpopup/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/attribute/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autocheck/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autocompleteenabled/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autocompletepopup/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autocompletesearch/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autocompletesearchparam/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autofill/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autofillaftermatch/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/autoscroll/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/beforeselected/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/browser.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/button.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyaccept/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonaccesskeycancel/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonaccesskeydisclosure/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra1/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra2/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyhelp/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonalign/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttondir/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttondisabledaccept/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonlabelaccept/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonlabelcancel/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonlabeldisclosure/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonlabelextra1/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonlabelextra2/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonlabelhelp/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonorient/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttonpack/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/buttons/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/checked/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/checkstate/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/class/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/closebutton/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/coalesceduplicatearcs/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/collapse/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/collapsed/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/color/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/colorpicker.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/cols/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/command/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/container/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/containment/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/contentcontextmenu/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/contenttooltip/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/contextmenu/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/control/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/crop/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/curpos/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/current/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/currentset/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/customindex/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/customizable/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/datepicker.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/datepicker.value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/default/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/defaultbutton/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/defaultset/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/description/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/dir/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disableautocomplete/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disableautoselect/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disableclose/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disabled/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disablehistory/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disablekeynavigation/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/disablesecurity/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/dlgtype/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/dragging/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/editable/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/editor.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/editortype/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/element/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/empty/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/enablecolumndrag/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/enablehistory/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/equalsize/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/eventnode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/first-tab/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/firstdayofweek/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/firstpage/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/flags/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/flex/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/focused/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/grippyhidden/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/grippytooltiptext/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/group/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/handlectrlpageupdown/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/handlectrltab/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/height/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/helpuri/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/hidden/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/hidechrome/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/hidecolumnpicker/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/hideheader/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/hideseconds/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/homepage/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/href/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/icon/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/id/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ignoreblurwhilesearching/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ignoreincolumnpicker/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ignorekeys/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/image/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/increment/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/inputtooltiptext/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/insertafter/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/insertbefore/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/instantapply/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/inverted/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/key/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/keycode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/keytext/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/label.value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/label/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/last-tab/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/lastpage/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/lastselected/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/left/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/listcell.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/listitem.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/max/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/maxheight/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/maxlength/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/maxpos/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/maxrows/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/maxwidth/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/menu/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/menuitem.key/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/menuitem.name/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/menuitem.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/min/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/minheight/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/minresultsforpopup/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/minwidth/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/mode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/modifiers/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/multiline/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/name/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/next/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/noautohide/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/nomatch/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/object/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/observes/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onbeforeaccept/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onbookmarkgroup/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onchange/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onclosetab/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/oncommand/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/oncommandupdate/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onerror/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onerrorcommand/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/oninput/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onload/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onnewtab/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onpaneload/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onpopuphidden/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onpopuphiding/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onpopupshowing/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onpopupshown/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onsearchcomplete/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/onselect/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ontextcommand/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ontextentered/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ontextreverted/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/open/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/orient/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/pack/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/pageid/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/pageincrement/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/pagestep/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/phase/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/pickertooltiptext/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/popup.left/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/popup.top/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/popup/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/predicate/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/preference.name/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/preference.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/preference/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/prefpane.selected/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/prefpane.src/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/progressmeter.mode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/progressmeter.value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/properties/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/readonly/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/ref/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/removeelement/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/resizeafter/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/resizebefore/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/resizer.dir/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/rows/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/screenx/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/screeny/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/script.src/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/script.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/searchsessions/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/selected/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/selectedindex/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/separator.orient/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/showcommentcolumn/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/size/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/sizemode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/sizetopopup/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/sortactive/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/sortdirection/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/sortresource/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/sortresource2/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/spellcheck/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/src/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/state/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/statusbar/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/statustext/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/stringbundle.src/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/style/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/subject/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/substate/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/tab.selected/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/tabindex/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/tabs.onselect/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/template.container/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/textbox.onchange/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/textbox.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/textbox.value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/textnode.value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/timepicker.value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/title/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/toolbar.mode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/toolbarbutton.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/toolbarname/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/tooltip/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/tooltiptextnew/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/top/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/tree.onselect/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/treecell.mode/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/treecell.src/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/treecol.src/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/treecol.type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/treeitem.label/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/type/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/useraction/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/validate/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/value/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/wait-cursor/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/width/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/windowtype/index.html create mode 100644 files/pl/mozilla/tech/xul/atrybut/wrap/index.html create mode 100644 files/pl/mozilla/tech/xul/bbox/index.html create mode 100644 files/pl/mozilla/tech/xul/binding/index.html create mode 100644 files/pl/mozilla/tech/xul/bindings/index.html create mode 100644 files/pl/mozilla/tech/xul/box/index.html create mode 100644 files/pl/mozilla/tech/xul/broadcaster/index.html create mode 100644 files/pl/mozilla/tech/xul/broadcasterset/index.html create mode 100644 files/pl/mozilla/tech/xul/browser/index.html create mode 100644 files/pl/mozilla/tech/xul/button/index.html create mode 100644 files/pl/mozilla/tech/xul/caption/index.html create mode 100644 files/pl/mozilla/tech/xul/checkbox/index.html create mode 100644 files/pl/mozilla/tech/xul/colorpicker/index.html create mode 100644 files/pl/mozilla/tech/xul/column/index.html create mode 100644 files/pl/mozilla/tech/xul/columns/index.html create mode 100644 files/pl/mozilla/tech/xul/command/index.html create mode 100644 files/pl/mozilla/tech/xul/commandset/index.html create mode 100644 files/pl/mozilla/tech/xul/conditions/index.html create mode 100644 files/pl/mozilla/tech/xul/content/index.html create mode 100644 files/pl/mozilla/tech/xul/datepicker/index.html create mode 100644 files/pl/mozilla/tech/xul/deck/index.html create mode 100644 files/pl/mozilla/tech/xul/description/index.html create mode 100644 files/pl/mozilla/tech/xul/dialog/index.html create mode 100644 files/pl/mozilla/tech/xul/dialogheader/index.html create mode 100644 files/pl/mozilla/tech/xul/dokumentacja_xul/index.html create mode 100644 files/pl/mozilla/tech/xul/editor/index.html create mode 100644 files/pl/mozilla/tech/xul/grid/index.html create mode 100644 files/pl/mozilla/tech/xul/grippy/index.html create mode 100644 files/pl/mozilla/tech/xul/groupbox/index.html create mode 100644 files/pl/mozilla/tech/xul/hbox/index.html create mode 100644 files/pl/mozilla/tech/xul/iframe/index.html create mode 100644 files/pl/mozilla/tech/xul/image/index.html create mode 100644 files/pl/mozilla/tech/xul/index.html create mode 100644 files/pl/mozilla/tech/xul/key/index.html create mode 100644 files/pl/mozilla/tech/xul/keyset/index.html create mode 100644 files/pl/mozilla/tech/xul/kontrolki_xul/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/aktualizacja_polece\305\204/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_drzewa/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_instalacji/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_kreator\303\263w/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_menu/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_przycisku/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_arkuszy_styl\303\263w/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_element\303\263w_html/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_etykiet_i_obrazk\303\263w/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarzenia/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarze\305\204/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_innych_element\303\263w/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/dodawanie_metod/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_przycisk\303\263w/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/dodawanie_w\305\202asno\305\233ci/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/drzewa/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/drzewa_i_szablony/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_atrybutu_xbl/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_xbl/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/interfejsy_xpcom/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/kontrola_zaznaczenia_i_aktywacji_element\303\263w/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/kontrolki_list/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/kontrolki_numeryczne/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/kontrolki_wej\305\233cia/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/lokalizacja/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/manipulowanie_listami/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/model_pude\305\202kowy/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/modyfikacja_domy\305\233lnego_motywu/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/modyfikowanie_interfejsu_xul/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/mo\305\274liwo\305\233ci_okna/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/nadawanie_stylu_drzewa/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/nak\305\202adki_dla_wielu_pakiet\303\263w/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/obiektowy_model_dokumentu/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202ka/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202kowe_drzewa/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/okna_otwierania_i_zapisywania_plik\303\263w/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/panele_tre\305\233ci/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/paski_narz\304\231dzi/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/paski_post\304\231pu/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/paski_przewijania/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/plik_w\305\202asno\305\233ci/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/pliki_manifestu/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/pola_grup/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/polecenia/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_element\303\263w/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_stosu/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/proste_paski_menu/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/przewijane_menu/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/przyk\305\202ady_xpcom/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/pude\305\202ko_kart/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/rozdzielacze/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/rozg\305\202aszacze_oraz_obserwatory/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/siatki/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/skrypty_instalacyjne/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/skr\303\263ty_klawiaturowe/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/stosy_i_pok\305\202ady/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/struktura_xul/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/szablony/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_modelu_pude\305\202kowego/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_widoku_drzewa/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/trwa\305\202e_dane/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/tworzenie_instalatora/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/tworzenie_kreatora/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/tworzenie_motyw\303\263w/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okien_dialogowych/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okna/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/url_chrome/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/wi\304\231cej_funkcji_obs\305\202ugi_zdarze\305\204/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_rdf/index.html create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_xbl/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/wyskakuj\304\205ce_menu/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/w\305\202asne_widoki_drzewa/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/zaawansowane_regu\305\202y/index.html" create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/zastosowanie_odst\304\231p\303\263w/index.html" create mode 100644 files/pl/mozilla/tech/xul/kurs_xul/zaznaczenie_drzewa/index.html create mode 100644 "files/pl/mozilla/tech/xul/kurs_xul/\305\272r\303\263d\305\202a_danych_rdf/index.html" create mode 100644 files/pl/mozilla/tech/xul/label/index.html create mode 100644 files/pl/mozilla/tech/xul/listbox/index.html create mode 100644 files/pl/mozilla/tech/xul/listcell/index.html create mode 100644 files/pl/mozilla/tech/xul/listcol/index.html create mode 100644 files/pl/mozilla/tech/xul/listcols/index.html create mode 100644 files/pl/mozilla/tech/xul/listhead/index.html create mode 100644 files/pl/mozilla/tech/xul/listheader/index.html create mode 100644 files/pl/mozilla/tech/xul/listitem/index.html create mode 100644 files/pl/mozilla/tech/xul/member/index.html create mode 100644 files/pl/mozilla/tech/xul/menu/index.html create mode 100644 files/pl/mozilla/tech/xul/menubar/index.html create mode 100644 files/pl/mozilla/tech/xul/menuitem/index.html create mode 100644 files/pl/mozilla/tech/xul/menulist/index.html create mode 100644 files/pl/mozilla/tech/xul/menuseparator/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/acceptdialog/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/additemtoselection/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/addpane/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/addprogresslistener/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/addsession/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/addtab/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/advance/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/advanceselectedtab/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/appendcustomtoolbar/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/appendgroup/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/appenditem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/blur/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/cancel/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/canceldialog/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/centerwindowonscreen/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/checkadjacentelement/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/clearresults/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/clearselection/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/click/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/close/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/collapsetoolbar/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/decrease/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/decreasepage/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/docommand/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/ensureelementisvisible/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/ensureindexisvisible/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/ensureselectedelementisvisible/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/expandtoolbar/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/extra1/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/extra2/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/focus/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getbrowserfordocument/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getbrowserfortab/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getbutton/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getdefaultsession/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/geteditor/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getelementsbyattribute/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/gethtmleditor/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getindexoffirstvisiblerow/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getindexofitem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getitematindex/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getnextitem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getnotificationbox/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getnumberofvisiblerows/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getpagebyid/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getpreviousitem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getresultat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getresultcount/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getresultvalueat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getrowcount/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getsearchat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getsession/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getsessionbyname/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getsessionresultat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getsessionstatusat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getsessionvalueat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/getstring/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/goback/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/gobackgroup/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/godown/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/goforward/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/goforwardgroup/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/gohome/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/goto/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/gotoindex/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/goup/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/hasuservalue/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/hidepopup/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/increase/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/increasepage/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/insertitem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/insertitemat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/invertselection/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/loadonetab/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/loadtabs/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/loaduri/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/loaduriwithflags/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/makeeditable/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/menulist.appenditem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/menulist.select/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/moveto/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/movetoalertposition/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/onsearchcomplete/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/ontextentered/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/ontextreverted/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/openwindow/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/preferenceforelement/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/reload/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/reloadalltabs/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/reloadtab/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/reloadwithflags/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removeallitems/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removealltabsbut/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removecurrentnotification/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removecurrenttab/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removeitemat/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removeitemfromselection/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removenotification/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removeprogresslistener/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/removesession/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/replacegroup/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/reset/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/rewind/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/scrolltoindex/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/select/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/selectall/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/selectitem/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/selectitemrange/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/setselectionrange/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/showpane/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/sizeto/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/stop/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/syncsessions/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/timedselect/index.html create mode 100644 files/pl/mozilla/tech/xul/metoda/toggleitemselection/index.html create mode 100644 files/pl/mozilla/tech/xul/notification/index.html create mode 100644 files/pl/mozilla/tech/xul/notificationbox/index.html create mode 100644 files/pl/mozilla/tech/xul/observes/index.html create mode 100644 files/pl/mozilla/tech/xul/page/index.html create mode 100644 files/pl/mozilla/tech/xul/popup/index.html create mode 100644 files/pl/mozilla/tech/xul/popupset/index.html create mode 100644 files/pl/mozilla/tech/xul/preference/index.html create mode 100644 files/pl/mozilla/tech/xul/preferences/index.html create mode 100644 files/pl/mozilla/tech/xul/prefpane/index.html create mode 100644 files/pl/mozilla/tech/xul/prefwindow/index.html create mode 100644 files/pl/mozilla/tech/xul/progressmeter/index.html create mode 100644 files/pl/mozilla/tech/xul/radio/index.html create mode 100644 files/pl/mozilla/tech/xul/radiogroup/index.html create mode 100644 files/pl/mozilla/tech/xul/resizer/index.html create mode 100644 files/pl/mozilla/tech/xul/richlistbox/index.html create mode 100644 files/pl/mozilla/tech/xul/richlistitem/index.html create mode 100644 files/pl/mozilla/tech/xul/row/index.html create mode 100644 files/pl/mozilla/tech/xul/rows/index.html create mode 100644 files/pl/mozilla/tech/xul/rule/index.html create mode 100644 files/pl/mozilla/tech/xul/scale/index.html create mode 100644 files/pl/mozilla/tech/xul/script/index.html create mode 100644 files/pl/mozilla/tech/xul/scrollbar/index.html create mode 100644 files/pl/mozilla/tech/xul/scrollbox/index.html create mode 100644 files/pl/mozilla/tech/xul/scrollcorner/index.html create mode 100644 files/pl/mozilla/tech/xul/separator/index.html create mode 100644 files/pl/mozilla/tech/xul/spacer/index.html create mode 100644 files/pl/mozilla/tech/xul/splitter/index.html create mode 100644 files/pl/mozilla/tech/xul/stack/index.html create mode 100644 files/pl/mozilla/tech/xul/statusbar/index.html create mode 100644 files/pl/mozilla/tech/xul/statusbarpanel/index.html create mode 100644 files/pl/mozilla/tech/xul/stringbundle/index.html create mode 100644 files/pl/mozilla/tech/xul/stringbundleset/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/alert-icon/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/error-icon/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/groove-thin/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/groove/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/header/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/indent/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/listcell-iconic/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/listitem-iconic/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/menuitem-iconic/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/menuitem-non-iconic/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/message-icon/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/monospace/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/plain/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/question-icon/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/small-margin/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/statusbarpanel-iconic/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/statusbarpanel-menu-iconic/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/text-link/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/thin/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/tree-splitter/index.html create mode 100644 files/pl/mozilla/tech/xul/styl/treecol-image/index.html create mode 100644 files/pl/mozilla/tech/xul/tab/index.html create mode 100644 files/pl/mozilla/tech/xul/tabbox/index.html create mode 100644 files/pl/mozilla/tech/xul/tabbrowser/index.html create mode 100644 files/pl/mozilla/tech/xul/tabpanel/index.html create mode 100644 files/pl/mozilla/tech/xul/tabpanels/index.html create mode 100644 files/pl/mozilla/tech/xul/tabs/index.html create mode 100644 files/pl/mozilla/tech/xul/template/index.html create mode 100644 files/pl/mozilla/tech/xul/textbox/index.html create mode 100644 "files/pl/mozilla/tech/xul/textbox_(firefox_-_automatyczne_uzupe\305\202nianie)/index.html" create mode 100644 "files/pl/mozilla/tech/xul/textbox_(mozilla_-_automatyczne_uzupe\305\202nianie)/index.html" create mode 100644 files/pl/mozilla/tech/xul/textnode/index.html create mode 100644 files/pl/mozilla/tech/xul/timepicker/index.html create mode 100644 files/pl/mozilla/tech/xul/titlebar/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbar/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbarbutton/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbargrippy/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbaritem/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbarpalette/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbarseparator/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbarset/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbarspacer/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbarspring/index.html create mode 100644 files/pl/mozilla/tech/xul/toolbox/index.html create mode 100644 files/pl/mozilla/tech/xul/tooltip/index.html create mode 100644 files/pl/mozilla/tech/xul/tree/index.html create mode 100644 files/pl/mozilla/tech/xul/treecell/index.html create mode 100644 files/pl/mozilla/tech/xul/treechildren/index.html create mode 100644 files/pl/mozilla/tech/xul/treecol/index.html create mode 100644 files/pl/mozilla/tech/xul/treecols/index.html create mode 100644 files/pl/mozilla/tech/xul/treeitem/index.html create mode 100644 files/pl/mozilla/tech/xul/treerow/index.html create mode 100644 files/pl/mozilla/tech/xul/treeseparator/index.html create mode 100644 files/pl/mozilla/tech/xul/triple/index.html create mode 100644 files/pl/mozilla/tech/xul/vbox/index.html create mode 100644 files/pl/mozilla/tech/xul/window/index.html create mode 100644 files/pl/mozilla/tech/xul/wizard/index.html create mode 100644 files/pl/mozilla/tech/xul/wizardpage/index.html create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accessible/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accesskey/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/align/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/allowevents/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/alwaysopenpopup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/amindicator/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/applocale/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autocheck/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofill/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofillaftermatch/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browser.preferences/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browsers/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/builderview/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/buttons/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canadvance/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoback/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoforward/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canrewind/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checked/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checkstate/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/child/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/children/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/classname/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/clickselectsall/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/collapsed/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/color/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/columns/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/command/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/commandmanager/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/completedefaultindex/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentdocument/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contenttitle/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentvieweredit/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentviewerfile/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentwindow/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contextmenu/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/control/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/controller/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/crop/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/current/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentindex/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentitem/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentnotification/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpage/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpane/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentset/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currenturi/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/customtoolbarcount/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/date/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dateleadingzero/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/datevalue/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/decimalplaces/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/deck.selectedpanel/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultbutton/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultvalue/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/description/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dir/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautocomplete/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautoselect/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disabled/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disablekeynavigation/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dlgtype/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/docshell/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/documentcharsetinfo/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editable/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editingsession/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editor/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editortype/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/enablecolumndrag/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstordinalcolumn/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstpermanentchild/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/flex/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focused/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focuseditem/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/forcecomplete/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/group/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrlpageupdown/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrltab/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/height/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hidden/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hideseconds/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/homepage/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hour/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hourleadingzero/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/id/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ignoreblurwhilesearching/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/image/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/increment/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inputfield/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inverted/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/is24hourclock/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ispm/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/issearching/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/label/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastpermanentchild/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastselected/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/left/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/linkedpanel/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/locked/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/markupdocumentviewer/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/max/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxheight/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxlength/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxrows/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxwidth/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menu/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menuboxobject/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menulist.inputfield/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menupopup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/min/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minheight/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minresultsforpopup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minute/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minuteleadingzero/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minwidth/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/mode/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/month/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/monthleadingzero/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/name/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/next/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/nomatch/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/object/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/observes/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onfirstpage/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onlastpage/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/open/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ordinal/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/orient/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pack/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pagecount/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageid/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageincrement/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageindex/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/palette/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/persist/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pmindicator/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupboxobject/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupopen/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/position/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/predicate/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preference.preferences/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferenceelements/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferencepanes/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferences/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/radiogroup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/readonly/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ref/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resource/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resultspopup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/scrollincrement/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchcount/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchparam/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchsessions/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/second/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/secondleadingzero/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/securityui/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selected/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedbrowser/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedcount/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedindex/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditem/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditems/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedpanel/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedtab/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionend/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionstart/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selstyle/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/seltype/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessioncount/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessionhistory/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showcommentcolumn/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showpopup/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/size/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/src/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statusbar/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statustext/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/stringbundle/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/strings/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/style/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/subject/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/suppressonselect/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabcontainer/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabindex/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabs/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabscrolling/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textbox.type/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textlength/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textvalue/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timeout/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timepicker.value/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/title/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarname/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarset/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltip/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltiptext/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/top/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/type/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/useraction/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/value/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/view/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webbrowserfind/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webnavigation/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webprogress/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/width/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wizardpages/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wraparound/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/year/index.html" create mode 100644 "files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/yearleadingzero/index.html" create mode 100644 files/pl/mozilla/tech/xul/xul_school/index.html create mode 100644 files/pl/mozmill/using_the_driver/index.html create mode 100644 "files/pl/narz\304\231dzia/about_colon_debugging/index.html" create mode 100644 "files/pl/narz\304\231dzia/browser_toolbox/index.html" create mode 100644 "files/pl/narz\304\231dzia/debugger/how_to/index.html" create mode 100644 "files/pl/narz\304\231dzia/debugger/index.html" create mode 100644 "files/pl/narz\304\231dzia/index.html" create mode 100644 "files/pl/narz\304\231dzia/page_inspector/how_to/index.html" create mode 100644 "files/pl/narz\304\231dzia/page_inspector/how_to/open_the_inspector/index.html" create mode 100644 "files/pl/narz\304\231dzia/page_inspector/index.html" create mode 100644 "files/pl/narz\304\231dzia/page_inspector/przewodnik_przez_ui/index.html" create mode 100644 "files/pl/narz\304\231dzia/performance/flame_chart/index.html" create mode 100644 "files/pl/narz\304\231dzia/performance/index.html" create mode 100644 "files/pl/narz\304\231dzia/profiler/index.html" create mode 100644 "files/pl/narz\304\231dzia/storage_inspector/index.html" create mode 100644 "files/pl/narz\304\231dzia/tools_toolbox/index.html" create mode 100644 "files/pl/narz\304\231dzia/view_source/index.html" create mode 100644 "files/pl/narz\304\231dzia/walidatory/index.html" create mode 100644 "files/pl/narz\304\231dzia/webide/index.html" create mode 100644 "files/pl/narz\304\231dzia/webide/troubleshooting/index.html" create mode 100644 "files/pl/narz\304\231dzia_autorskie_zgodne_ze_standardami/index.html" create mode 100644 "files/pl/narz\304\231dzia_clone/index.html" create mode 100644 files/pl/necko/index.html create mode 100644 "files/pl/nieprawid\305\202owy_typ_mime_plik\303\263w_css/index.html" create mode 100644 files/pl/nsiconsoleservice/index.html create mode 100644 files/pl/nsiinputstream/index.html create mode 100644 files/pl/nsiprogramminglanguage/index.html create mode 100644 files/pl/nsixulappinfo/index.html create mode 100644 files/pl/o_modelu_obiektowym_dokumentu/index.html create mode 100644 files/pl/paczki/index.html create mode 100644 "files/pl/pakowanie_motyw\303\263w/index.html" create mode 100644 "files/pl/pakowanie_rozszerze\305\204/index.html" create mode 100644 "files/pl/podaj_d\305\202o\305\204_'kursorowi'/index.html" create mode 100644 files/pl/podstawy_web_services/index.html create mode 100644 files/pl/poprawki_css_w_firefoksie_3/index.html create mode 100644 files/pl/poprawki_dom_w_firefoksie_3/index.html create mode 100644 files/pl/poprawki_svg_w_firefoksie_3/index.html create mode 100644 files/pl/poprawki_xul_w_firefoksie_3/index.html create mode 100644 files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/index.html create mode 100644 "files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/przyk\305\202ady/index.html" create mode 100644 "files/pl/porady_odno\305\233nie_tworzenia_szybko_\305\202aduj\304\205cych_si\304\231_stron_html/index.html" create mode 100644 files/pl/prezentacje_xtech_2005/index.html create mode 100644 files/pl/programowanie_mozilli/index.html create mode 100644 files/pl/programowanie_www/index.html create mode 100644 "files/pl/przygotowanie_\305\233rodowiska_programowania_rozszerzenia/index.html" create mode 100644 files/pl/pyxpcom/index.html create mode 100644 files/pl/qa/index.html create mode 100644 files/pl/qa/wskazowki_do_zglaszania_bledow/index.html create mode 100644 files/pl/rdf/index.html create mode 100644 files/pl/rhino/index.html create mode 100644 files/pl/rozszerzenia/index.html create mode 100644 "files/pl/rysowanie_tekstu_przy_u\305\274yciu_canvas/index.html" create mode 100644 files/pl/sandbox/index.html create mode 100644 files/pl/sax/index.html create mode 100644 files/pl/spidermonkey/index.html create mode 100644 files/pl/storage/index.html create mode 100644 "files/pl/storage/wydajno\305\233\304\207/index.html" create mode 100644 files/pl/toolkit_api/index.html create mode 100644 "files/pl/tutorial_lokalizacji_rozszerze\305\204_do_firefoksa_i_thunderbirda_dla_wersji_1.0_i_wy\305\274szych/index.html" create mode 100644 files/pl/tworzenie_mikropodsumowania/index.html create mode 100644 files/pl/tworzenie_rozszerzenia_paska_stanu/index.html create mode 100644 files/pl/tworzenie_wtyczek_mozsearch/index.html create mode 100644 files/pl/tworzenie_wtyczek_opensearch_dla_firefoksa/index.html create mode 100644 files/pl/tworzymy_rozszerzenie/index.html create mode 100644 files/pl/web/accessibility/aria/aplikacje_internetowe_i_aria_faq/index.html create mode 100644 files/pl/web/accessibility/aria/index.html create mode 100644 files/pl/web/api/attr/index.html create mode 100644 files/pl/web/api/audiobuffer/index.html create mode 100644 files/pl/web/api/audiocontext/createdynamicscompressor/index.html create mode 100644 files/pl/web/api/audiocontext/index.html create mode 100644 files/pl/web/api/audioparam/index.html create mode 100644 files/pl/web/api/audioparam/setvalueattime/index.html create mode 100644 files/pl/web/api/cache/index.html create mode 100644 files/pl/web/api/canvas_api/tutorial/basic_usage/index.html create mode 100644 files/pl/web/api/canvas_api/tutorial/index.html create mode 100644 files/pl/web/api/canvas_api/tutorial/optymalizacja_canvas/index.html create mode 100644 files/pl/web/api/canvas_api/tutorial/rysowanie_ksztaltow/index.html create mode 100644 files/pl/web/api/childnode/index.html create mode 100644 files/pl/web/api/childnode/remove/index.html create mode 100644 files/pl/web/api/console/index.html create mode 100644 files/pl/web/api/console/log/index.html create mode 100644 files/pl/web/api/cssnumericvalue/div/index.html create mode 100644 files/pl/web/api/cssnumericvalue/index.html create mode 100644 files/pl/web/api/cssrule/index.html create mode 100644 files/pl/web/api/document/activeelement/index.html create mode 100644 files/pl/web/api/document/alinkcolor/index.html create mode 100644 files/pl/web/api/document/anchors/index.html create mode 100644 files/pl/web/api/document/applets/index.html create mode 100644 files/pl/web/api/document/bgcolor/index.html create mode 100644 files/pl/web/api/document/body/index.html create mode 100644 files/pl/web/api/document/characterset/index.html create mode 100644 files/pl/web/api/document/clear/index.html create mode 100644 files/pl/web/api/document/close/index.html create mode 100644 files/pl/web/api/document/compatmode/index.html create mode 100644 files/pl/web/api/document/cookie/index.html create mode 100644 files/pl/web/api/document/createattribute/index.html create mode 100644 files/pl/web/api/document/createdocumentfragment/index.html create mode 100644 files/pl/web/api/document/createelement/index.html create mode 100644 files/pl/web/api/document/createevent/index.html create mode 100644 files/pl/web/api/document/createrange/index.html create mode 100644 files/pl/web/api/document/createtextnode/index.html create mode 100644 files/pl/web/api/document/defaultview/index.html create mode 100644 files/pl/web/api/document/designmode/index.html create mode 100644 files/pl/web/api/document/doctype/index.html create mode 100644 files/pl/web/api/document/documentelement/index.html create mode 100644 files/pl/web/api/document/domain/index.html create mode 100644 files/pl/web/api/document/drag_event/index.html create mode 100644 files/pl/web/api/document/embeds/index.html create mode 100644 files/pl/web/api/document/execcommand/index.html create mode 100644 files/pl/web/api/document/fgcolor/index.html create mode 100644 files/pl/web/api/document/firstchild/index.html create mode 100644 files/pl/web/api/document/forms/index.html create mode 100644 files/pl/web/api/document/getelementbyid/index.html create mode 100644 files/pl/web/api/document/getelementsbyclassname/index.html create mode 100644 files/pl/web/api/document/getelementsbyname/index.html create mode 100644 files/pl/web/api/document/getelementsbytagname/index.html create mode 100644 files/pl/web/api/document/hasfocus/index.html create mode 100644 files/pl/web/api/document/head/index.html create mode 100644 files/pl/web/api/document/height/index.html create mode 100644 files/pl/web/api/document/images/index.html create mode 100644 files/pl/web/api/document/implementation/index.html create mode 100644 files/pl/web/api/document/importnode/index.html create mode 100644 files/pl/web/api/document/index.html create mode 100644 files/pl/web/api/document/lastmodified/index.html create mode 100644 files/pl/web/api/document/linkcolor/index.html create mode 100644 files/pl/web/api/document/links/index.html create mode 100644 files/pl/web/api/document/location/index.html create mode 100644 files/pl/web/api/document/namespaceuri/index.html create mode 100644 files/pl/web/api/document/open/index.html create mode 100644 files/pl/web/api/document/plugins/index.html create mode 100644 files/pl/web/api/document/queryselector/index.html create mode 100644 files/pl/web/api/document/referrer/index.html create mode 100644 files/pl/web/api/document/releasecapture/index.html create mode 100644 files/pl/web/api/document/stylesheets/index.html create mode 100644 files/pl/web/api/document/title/index.html create mode 100644 files/pl/web/api/document/url/index.html create mode 100644 files/pl/web/api/document/vlinkcolor/index.html create mode 100644 files/pl/web/api/document/width/index.html create mode 100644 files/pl/web/api/document/write/index.html create mode 100644 files/pl/web/api/document/writeln/index.html create mode 100644 files/pl/web/api/domapplicationsmanager/getall/index.html create mode 100644 files/pl/web/api/domapplicationsmanager/index.html create mode 100644 files/pl/web/api/element/addeventlistener/index.html create mode 100644 files/pl/web/api/element/appendchild/index.html create mode 100644 files/pl/web/api/element/attributes/index.html create mode 100644 files/pl/web/api/element/blur/index.html create mode 100644 files/pl/web/api/element/childnodes/index.html create mode 100644 files/pl/web/api/element/classlist/index.html create mode 100644 files/pl/web/api/element/classname/index.html create mode 100644 files/pl/web/api/element/click/index.html create mode 100644 files/pl/web/api/element/clientheight/index.html create mode 100644 files/pl/web/api/element/clientnode/index.html create mode 100644 files/pl/web/api/element/clientwidth/index.html create mode 100644 files/pl/web/api/element/dir/index.html create mode 100644 files/pl/web/api/element/dispatchevent/index.html create mode 100644 files/pl/web/api/element/firstchild/index.html create mode 100644 files/pl/web/api/element/focus/index.html create mode 100644 files/pl/web/api/element/getattribute/index.html create mode 100644 files/pl/web/api/element/getattributenode/index.html create mode 100644 files/pl/web/api/element/getattributenodens/index.html create mode 100644 files/pl/web/api/element/getattributens/index.html create mode 100644 files/pl/web/api/element/getboundingclientrect/index.html create mode 100644 files/pl/web/api/element/getelementsbytagnamens/index.html create mode 100644 files/pl/web/api/element/hasattribute/index.html create mode 100644 files/pl/web/api/element/hasattributens/index.html create mode 100644 files/pl/web/api/element/hasattributes/index.html create mode 100644 files/pl/web/api/element/haschildnodes/index.html create mode 100644 files/pl/web/api/element/id/index.html create mode 100644 files/pl/web/api/element/index.html create mode 100644 files/pl/web/api/element/innerhtml/index.html create mode 100644 files/pl/web/api/element/insertadjacenthtml/index.html create mode 100644 files/pl/web/api/element/insertbefore/index.html create mode 100644 files/pl/web/api/element/lang/index.html create mode 100644 files/pl/web/api/element/lastchild/index.html create mode 100644 files/pl/web/api/element/length/index.html create mode 100644 files/pl/web/api/element/localname/index.html create mode 100644 files/pl/web/api/element/name/index.html create mode 100644 files/pl/web/api/element/namespaceuri/index.html create mode 100644 files/pl/web/api/element/nextsibling/index.html create mode 100644 files/pl/web/api/element/nodename/index.html create mode 100644 files/pl/web/api/element/nodetype/index.html create mode 100644 files/pl/web/api/element/nodevalue/index.html create mode 100644 files/pl/web/api/element/normalize/index.html create mode 100644 files/pl/web/api/element/offsetheight/index.html create mode 100644 files/pl/web/api/element/offsetleft/index.html create mode 100644 files/pl/web/api/element/offsetparent/index.html create mode 100644 files/pl/web/api/element/offsetwidth/index.html create mode 100644 files/pl/web/api/element/onclick/index.html create mode 100644 files/pl/web/api/element/onkeypress/index.html create mode 100644 files/pl/web/api/element/onkeyup/index.html create mode 100644 files/pl/web/api/element/onmousedown/index.html create mode 100644 files/pl/web/api/element/onmousemove/index.html create mode 100644 files/pl/web/api/element/ownerdocument/index.html create mode 100644 files/pl/web/api/element/parentnode/index.html create mode 100644 files/pl/web/api/element/prefix/index.html create mode 100644 files/pl/web/api/element/previoussibling/index.html create mode 100644 files/pl/web/api/element/queryselector/index.html create mode 100644 files/pl/web/api/element/removeattribute/index.html create mode 100644 files/pl/web/api/element/removeattributenode/index.html create mode 100644 files/pl/web/api/element/removeattributens/index.html create mode 100644 files/pl/web/api/element/removechild/index.html create mode 100644 files/pl/web/api/element/replacechild/index.html create mode 100644 files/pl/web/api/element/scrollleft/index.html create mode 100644 files/pl/web/api/element/scrolltop/index.html create mode 100644 files/pl/web/api/element/scrollwidth/index.html create mode 100644 files/pl/web/api/element/setattribute/index.html create mode 100644 files/pl/web/api/element/setattributenode/index.html create mode 100644 files/pl/web/api/element/setattributenodens/index.html create mode 100644 files/pl/web/api/element/setattributens/index.html create mode 100644 files/pl/web/api/element/style/index.html create mode 100644 files/pl/web/api/element/tabindex/index.html create mode 100644 files/pl/web/api/element/tagname/index.html create mode 100644 files/pl/web/api/element/textcontent/index.html create mode 100644 files/pl/web/api/event/altkey/index.html create mode 100644 files/pl/web/api/event/bubbles/index.html create mode 100644 files/pl/web/api/event/button/index.html create mode 100644 files/pl/web/api/event/cancelable/index.html create mode 100644 files/pl/web/api/event/cancelbubble/index.html create mode 100644 files/pl/web/api/event/charcode/index.html create mode 100644 files/pl/web/api/event/clientx/index.html create mode 100644 files/pl/web/api/event/clienty/index.html create mode 100644 files/pl/web/api/event/ctrlkey/index.html create mode 100644 files/pl/web/api/event/currenttarget/index.html create mode 100644 files/pl/web/api/event/eventphase/index.html create mode 100644 files/pl/web/api/event/index.html create mode 100644 files/pl/web/api/event/initevent/index.html create mode 100644 files/pl/web/api/event/initmouseevent/index.html create mode 100644 files/pl/web/api/event/inituievent/index.html create mode 100644 files/pl/web/api/event/ischar/index.html create mode 100644 files/pl/web/api/event/keycode/index.html create mode 100644 files/pl/web/api/event/layerx/index.html create mode 100644 files/pl/web/api/event/layery/index.html create mode 100644 files/pl/web/api/event/metakey/index.html create mode 100644 files/pl/web/api/event/pagex/index.html create mode 100644 files/pl/web/api/event/pagey/index.html create mode 100644 files/pl/web/api/event/relatedtarget/index.html create mode 100644 files/pl/web/api/event/screenx/index.html create mode 100644 files/pl/web/api/event/screeny/index.html create mode 100644 files/pl/web/api/event/shiftkey/index.html create mode 100644 files/pl/web/api/event/stoppropagation/index.html create mode 100644 files/pl/web/api/event/target/index.html create mode 100644 files/pl/web/api/event/timestamp/index.html create mode 100644 files/pl/web/api/event/type/index.html create mode 100644 files/pl/web/api/event/view/index.html create mode 100644 files/pl/web/api/file/file/index.html create mode 100644 files/pl/web/api/file/index.html create mode 100644 files/pl/web/api/geolocation_api/index.html create mode 100644 files/pl/web/api/globaleventhandlers/index.html create mode 100644 files/pl/web/api/globaleventhandlers/onblur/index.html create mode 100644 files/pl/web/api/globaleventhandlers/onfocus/index.html create mode 100644 files/pl/web/api/htmlcanvaselement/capturestream/index.html create mode 100644 files/pl/web/api/htmlcanvaselement/getcontext/index.html create mode 100644 files/pl/web/api/htmlcanvaselement/height/index.html create mode 100644 files/pl/web/api/htmlcanvaselement/index.html create mode 100644 files/pl/web/api/htmlcanvaselement/width/index.html create mode 100644 files/pl/web/api/htmlelement/dataset/index.html create mode 100644 files/pl/web/api/htmlelement/index.html create mode 100644 files/pl/web/api/htmlformelement/acceptcharset/index.html create mode 100644 files/pl/web/api/htmlformelement/action/index.html create mode 100644 files/pl/web/api/htmlformelement/elements/index.html create mode 100644 files/pl/web/api/htmlformelement/encoding/index.html create mode 100644 files/pl/web/api/htmlformelement/enctype/index.html create mode 100644 files/pl/web/api/htmlformelement/index.html create mode 100644 files/pl/web/api/htmlformelement/length/index.html create mode 100644 files/pl/web/api/htmlformelement/method/index.html create mode 100644 files/pl/web/api/htmlformelement/name/index.html create mode 100644 files/pl/web/api/htmlformelement/reset/index.html create mode 100644 files/pl/web/api/htmlformelement/submit/index.html create mode 100644 files/pl/web/api/htmlformelement/target/index.html create mode 100644 files/pl/web/api/htmliframeelement/index.html create mode 100644 files/pl/web/api/htmlselectelement/index.html create mode 100644 files/pl/web/api/htmltableelement/caption/index.html create mode 100644 files/pl/web/api/htmltableelement/index.html create mode 100644 files/pl/web/api/htmltableelement/tfoot/index.html create mode 100644 files/pl/web/api/htmltableelement/thead/index.html create mode 100644 files/pl/web/api/index.html create mode 100644 files/pl/web/api/location/index.html create mode 100644 files/pl/web/api/location/reload/index.html create mode 100644 files/pl/web/api/mediaelementaudiosourcenode/index.html create mode 100644 files/pl/web/api/midiaccess/index.html create mode 100644 files/pl/web/api/mousescrollevent/index.html create mode 100644 files/pl/web/api/navigator/appcodename/index.html create mode 100644 files/pl/web/api/navigator/appname/index.html create mode 100644 files/pl/web/api/navigator/appversion/index.html create mode 100644 files/pl/web/api/navigator/buildid/index.html create mode 100644 files/pl/web/api/navigator/cookieenabled/index.html create mode 100644 files/pl/web/api/navigator/index.html create mode 100644 files/pl/web/api/navigator/javaenabled/index.html create mode 100644 files/pl/web/api/navigator/language/index.html create mode 100644 files/pl/web/api/navigator/mimetypes/index.html create mode 100644 files/pl/web/api/navigator/mozpermissionsettings/index.html create mode 100644 files/pl/web/api/navigator/online/index.html create mode 100644 files/pl/web/api/navigator/oscpu/index.html create mode 100644 files/pl/web/api/navigator/platform/index.html create mode 100644 files/pl/web/api/navigator/plugins/index.html create mode 100644 files/pl/web/api/navigator/product/index.html create mode 100644 files/pl/web/api/navigator/productsub/index.html create mode 100644 files/pl/web/api/navigator/registercontenthandler/index.html create mode 100644 files/pl/web/api/navigator/registerprotocolhandler/index.html create mode 100644 files/pl/web/api/navigator/registerprotocolhandler/web-based_protocol_handlers/index.html create mode 100644 files/pl/web/api/navigatorlanguage/index.html create mode 100644 files/pl/web/api/navigatoronline/index.html create mode 100644 files/pl/web/api/navigatoronline/zdarzenia_online_i_offline/index.html create mode 100644 files/pl/web/api/navigatorplugins/index.html create mode 100644 files/pl/web/api/parentnode/childelementcount/index.html create mode 100644 files/pl/web/api/parentnode/children/index.html create mode 100644 files/pl/web/api/parentnode/index.html create mode 100644 files/pl/web/api/powiadomienie/index.html create mode 100644 files/pl/web/api/push_api/index.html create mode 100644 files/pl/web/api/range/index.html create mode 100644 files/pl/web/api/response/index.html create mode 100644 files/pl/web/api/screen/colordepth/index.html create mode 100644 files/pl/web/api/screen/index.html create mode 100644 files/pl/web/api/screen/width/index.html create mode 100644 files/pl/web/api/selection/addrange/index.html create mode 100644 files/pl/web/api/selection/anchornode/index.html create mode 100644 files/pl/web/api/selection/anchoroffset/index.html create mode 100644 files/pl/web/api/selection/collapse/index.html create mode 100644 files/pl/web/api/selection/collapsetoend/index.html create mode 100644 files/pl/web/api/selection/collapsetostart/index.html create mode 100644 files/pl/web/api/selection/containsnode/index.html create mode 100644 files/pl/web/api/selection/deletefromdocument/index.html create mode 100644 files/pl/web/api/selection/extend/index.html create mode 100644 files/pl/web/api/selection/focusnode/index.html create mode 100644 files/pl/web/api/selection/focusoffset/index.html create mode 100644 files/pl/web/api/selection/getrangeat/index.html create mode 100644 files/pl/web/api/selection/index.html create mode 100644 files/pl/web/api/selection/iscollapsed/index.html create mode 100644 files/pl/web/api/selection/rangecount/index.html create mode 100644 files/pl/web/api/selection/removeallranges/index.html create mode 100644 files/pl/web/api/selection/removerange/index.html create mode 100644 files/pl/web/api/selection/selectallchildren/index.html create mode 100644 files/pl/web/api/selection/tostring/index.html create mode 100644 files/pl/web/api/speechrecognition/index.html create mode 100644 files/pl/web/api/storage/index.html create mode 100644 files/pl/web/api/stylesheet/cssrules/index.html create mode 100644 files/pl/web/api/stylesheet/deleterule/index.html create mode 100644 files/pl/web/api/stylesheet/disabled/index.html create mode 100644 files/pl/web/api/stylesheet/href/index.html create mode 100644 files/pl/web/api/stylesheet/index.html create mode 100644 files/pl/web/api/stylesheet/insertrule/index.html create mode 100644 files/pl/web/api/stylesheet/media/index.html create mode 100644 files/pl/web/api/stylesheet/ownerrule/index.html create mode 100644 files/pl/web/api/stylesheet/parentstylesheet/index.html create mode 100644 files/pl/web/api/stylesheet/title/index.html create mode 100644 files/pl/web/api/stylesheet/type/index.html create mode 100644 files/pl/web/api/web_audio_api/index.html create mode 100644 files/pl/web/api/webgl_api/index.html create mode 100644 files/pl/web/api/webgl_api/tutorial/index.html create mode 100644 files/pl/web/api/window/alert/index.html create mode 100644 files/pl/web/api/window/applicationcache/index.html create mode 100644 files/pl/web/api/window/clearinterval/index.html create mode 100644 files/pl/web/api/window/cleartimeout/index.html create mode 100644 files/pl/web/api/window/closed/index.html create mode 100644 files/pl/web/api/window/content/index.html create mode 100644 files/pl/web/api/window/controllers/index.html create mode 100644 files/pl/web/api/window/crypto/index.html create mode 100644 files/pl/web/api/window/defaultstatus/index.html create mode 100644 files/pl/web/api/window/directories/index.html create mode 100644 files/pl/web/api/window/document/index.html create mode 100644 files/pl/web/api/window/dump/index.html create mode 100644 files/pl/web/api/window/focus/index.html create mode 100644 files/pl/web/api/window/frameelement/index.html create mode 100644 files/pl/web/api/window/frames/index.html create mode 100644 files/pl/web/api/window/getselection/index.html create mode 100644 files/pl/web/api/window/index.html create mode 100644 files/pl/web/api/window/localstorage/index.html create mode 100644 files/pl/web/api/window/name/index.html create mode 100644 files/pl/web/api/window/navigator/index.html create mode 100644 files/pl/web/api/window/onload/index.html create mode 100644 files/pl/web/api/window/open/index.html create mode 100644 files/pl/web/api/window/opendialog/index.html create mode 100644 files/pl/web/api/window/opener/index.html create mode 100644 files/pl/web/api/window/prompt/index.html create mode 100644 files/pl/web/api/window/requestanimationframe/index.html create mode 100644 files/pl/web/api/window/resizeby/index.html create mode 100644 files/pl/web/api/window/resizeto/index.html create mode 100644 files/pl/web/api/window/scroll/index.html create mode 100644 files/pl/web/api/window/scrollbylines/index.html create mode 100644 files/pl/web/api/window/scrollbypages/index.html create mode 100644 files/pl/web/api/window/scrollto/index.html create mode 100644 files/pl/web/api/window/setinterval/index.html create mode 100644 files/pl/web/api/window/settimeout/index.html create mode 100644 files/pl/web/api/window/sidebar/index.html create mode 100644 files/pl/web/api/windowbase64/atob/index.html create mode 100644 files/pl/web/api/windowbase64/btoa/index.html create mode 100644 files/pl/web/api/windowbase64/index.html create mode 100644 files/pl/web/api/zdarzenia_dotykowe/index.html create mode 100644 "files/pl/web/bezpiecze\305\204stwo/certificate_transparency/index.html" create mode 100644 "files/pl/web/bezpiecze\305\204stwo/index.html" create mode 100644 "files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/index.html" create mode 100644 "files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/podatnosci/index.html" create mode 100644 "files/pl/web/bezpiecze\305\204stwo/same-origin_policy/index.html" create mode 100644 "files/pl/web/bezpiecze\305\204stwo/subresource_integrity/index.html" create mode 100644 files/pl/web/css/-moz-binding/index.html create mode 100644 files/pl/web/css/-moz-border-bottom-colors/index.html create mode 100644 files/pl/web/css/-moz-border-left-colors/index.html create mode 100644 files/pl/web/css/-moz-box-align/index.html create mode 100644 files/pl/web/css/-moz-box-flex/index.html create mode 100644 files/pl/web/css/-moz-box-orient/index.html create mode 100644 files/pl/web/css/-moz-box-pack/index.html create mode 100644 files/pl/web/css/-moz-image-region/index.html create mode 100644 files/pl/web/css/-moz-outline-color/index.html create mode 100644 files/pl/web/css/-moz-outline-radius-bottomleft/index.html create mode 100644 files/pl/web/css/-moz-outline-radius-bottomright/index.html create mode 100644 files/pl/web/css/-moz-outline-radius-topleft/index.html create mode 100644 files/pl/web/css/-moz-outline-radius/index.html create mode 100644 files/pl/web/css/@document/index.html create mode 100644 files/pl/web/css/@import/index.html create mode 100644 files/pl/web/css/@media/index.html create mode 100644 files/pl/web/css/@supports/index.html create mode 100644 files/pl/web/css/_colon_-moz-last-node/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-cell-text/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-cell/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-column/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-drop-feedback/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-image/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-indentation/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-line/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-progressmeter/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-row/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-separator/index.html create mode 100644 files/pl/web/css/_colon_-moz-tree-twisty/index.html create mode 100644 files/pl/web/css/_colon_active/index.html create mode 100644 files/pl/web/css/_colon_after/index.html create mode 100644 files/pl/web/css/_colon_before/index.html create mode 100644 files/pl/web/css/_colon_empty/index.html create mode 100644 files/pl/web/css/_colon_first-child/index.html create mode 100644 files/pl/web/css/_colon_first-letter/index.html create mode 100644 files/pl/web/css/_colon_first-node/index.html create mode 100644 files/pl/web/css/_colon_hover/index.html create mode 100644 files/pl/web/css/_colon_lang/index.html create mode 100644 files/pl/web/css/_colon_last-child/index.html create mode 100644 files/pl/web/css/_colon_link/index.html create mode 100644 files/pl/web/css/_colon_not/index.html create mode 100644 files/pl/web/css/_colon_root/index.html create mode 100644 files/pl/web/css/appearance/index.html create mode 100644 files/pl/web/css/attribute_selectors/index.html create mode 100644 files/pl/web/css/azimuth/index.html create mode 100644 files/pl/web/css/background-attachment/index.html create mode 100644 files/pl/web/css/background-color/index.html create mode 100644 files/pl/web/css/background-image/index.html create mode 100644 files/pl/web/css/background-origin/index.html create mode 100644 files/pl/web/css/background-position/index.html create mode 100644 files/pl/web/css/background-size/index.html create mode 100644 files/pl/web/css/background/index.html create mode 100644 files/pl/web/css/border-bottom-color/index.html create mode 100644 files/pl/web/css/border-bottom-left-radius/index.html create mode 100644 files/pl/web/css/border-bottom-right-radius/index.html create mode 100644 files/pl/web/css/border-bottom-style/index.html create mode 100644 files/pl/web/css/border-bottom-width/index.html create mode 100644 files/pl/web/css/border-bottom/index.html create mode 100644 files/pl/web/css/border-collapse/index.html create mode 100644 files/pl/web/css/border-color/index.html create mode 100644 files/pl/web/css/border-left-color/index.html create mode 100644 files/pl/web/css/border-left-style/index.html create mode 100644 files/pl/web/css/border-left-width/index.html create mode 100644 files/pl/web/css/border-left/index.html create mode 100644 files/pl/web/css/border-radius/index.html create mode 100644 files/pl/web/css/border-right-color/index.html create mode 100644 files/pl/web/css/border-right-style/index.html create mode 100644 files/pl/web/css/border-right-width/index.html create mode 100644 files/pl/web/css/border-right/index.html create mode 100644 files/pl/web/css/border-spacing/index.html create mode 100644 files/pl/web/css/border-style/index.html create mode 100644 files/pl/web/css/border-top-color/index.html create mode 100644 files/pl/web/css/border-top-left-radius/index.html create mode 100644 files/pl/web/css/border-top-right-radius/index.html create mode 100644 files/pl/web/css/border-top-style/index.html create mode 100644 files/pl/web/css/border-top-width/index.html create mode 100644 files/pl/web/css/border-top/index.html create mode 100644 files/pl/web/css/border-width/index.html create mode 100644 files/pl/web/css/border/index.html create mode 100644 files/pl/web/css/bottom/index.html create mode 100644 files/pl/web/css/box-decoration-break/index.html create mode 100644 files/pl/web/css/box-direction/index.html create mode 100644 files/pl/web/css/box-shadow/index.html create mode 100644 files/pl/web/css/box-sizing/index.html create mode 100644 files/pl/web/css/clear/index.html create mode 100644 files/pl/web/css/clip/index.html create mode 100644 files/pl/web/css/color/index.html create mode 100644 files/pl/web/css/content/index.html create mode 100644 files/pl/web/css/counter-increment/index.html create mode 100644 files/pl/web/css/counter-reset/index.html create mode 100644 files/pl/web/css/css_colors/index.html create mode 100644 files/pl/web/css/css_colors/narzedzie_doboru_kolorow/index.html create mode 100644 files/pl/web/css/css_flexible_box_layout/index.html create mode 100644 files/pl/web/css/css_grid_layout/auto-placement_in_css_grid_layout/index.html create mode 100644 files/pl/web/css/css_grid_layout/index.html create mode 100644 files/pl/web/css/css_grid_layout/realizacja_typowych_ukladow_za_pomoca_ukladu_siatki_css/index.html create mode 100644 files/pl/web/css/css_reference/index.html create mode 100644 files/pl/web/css/css_selectors/index.html create mode 100644 "files/pl/web/css/css_selectors/u\305\274ycie_pseudoklasy__colon_target_w_selektorach/index.html" create mode 100644 files/pl/web/css/cursor/index.html create mode 100644 "files/pl/web/css/cursor/u\305\274ycie_warto\305\233ci_url_dla_w\305\202asno\305\233ci_cursor/index.html" create mode 100644 "files/pl/web/css/cz\304\231ste_pytania_o_css/index.html" create mode 100644 files/pl/web/css/direction/index.html create mode 100644 files/pl/web/css/display/index.html create mode 100644 files/pl/web/css/dziedziczenie/index.html create mode 100644 files/pl/web/css/empty-cells/index.html create mode 100644 files/pl/web/css/float/index.html create mode 100644 files/pl/web/css/font-family/index.html create mode 100644 files/pl/web/css/font-size-adjust/index.html create mode 100644 files/pl/web/css/font-size/index.html create mode 100644 files/pl/web/css/font-stretch/index.html create mode 100644 files/pl/web/css/font-style/index.html create mode 100644 files/pl/web/css/font-variant/index.html create mode 100644 files/pl/web/css/font-weight/index.html create mode 100644 files/pl/web/css/font/index.html create mode 100644 files/pl/web/css/grid/index.html create mode 100644 files/pl/web/css/height/index.html create mode 100644 files/pl/web/css/id_selectors/index.html create mode 100644 files/pl/web/css/ime-mode/index.html create mode 100644 files/pl/web/css/index.html create mode 100644 files/pl/web/css/initial/index.html create mode 100644 files/pl/web/css/inne_zasoby/index.html create mode 100644 files/pl/web/css/letter-spacing/index.html create mode 100644 files/pl/web/css/list-style-image/index.html create mode 100644 files/pl/web/css/list-style-position/index.html create mode 100644 files/pl/web/css/list-style-type/index.html create mode 100644 files/pl/web/css/margin/index.html create mode 100644 files/pl/web/css/media_queries/index.html create mode 100644 files/pl/web/css/media_queries/using_media_queries/index.html create mode 100644 files/pl/web/css/mozilla_extensions/index.html create mode 100644 "files/pl/web/css/na_pocz\304\205tek/bloki/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/czym_jest_css/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/czytelny_css/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/dane_xml/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/grafika_svg/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/jak_dzia\305\202a_css/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/javascript/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/kaskadowo\305\233\304\207_i_dziedziczenie/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/kolor/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/listy/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/media/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/po_co_u\305\274ywa\304\207_css/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/selektory/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/style_tekstowe/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/tables/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/uk\305\202ad/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/wi\304\205zania_xbl/index.html" create mode 100644 "files/pl/web/css/na_pocz\304\205tek/xul-owe_interfejsy_u\305\274ytkownika/index.html" create mode 100644 files/pl/web/css/opacity/index.html create mode 100644 files/pl/web/css/outline-offset/index.html create mode 100644 files/pl/web/css/outline/index.html create mode 100644 files/pl/web/css/page-break-after/index.html create mode 100644 files/pl/web/css/prywatnosc_i_znacznik__colon_visited/index.html create mode 100644 files/pl/web/css/right/index.html create mode 100644 files/pl/web/css/rozszerzenia_webkit/index.html create mode 100644 files/pl/web/css/selektor_klasy/index.html create mode 100644 files/pl/web/css/selektor_uniwersalny/index.html create mode 100644 files/pl/web/css/selektory_typu/index.html create mode 100644 "files/pl/web/css/skr\303\263cone_deklaracje_css/index.html" create mode 100644 files/pl/web/css/text-transform/index.html create mode 100644 files/pl/web/css/transform-function/index.html create mode 100644 files/pl/web/css/transform-function/matrix()/index.html create mode 100644 files/pl/web/css/using_css_custom_properties/index.html create mode 100644 files/pl/web/css/vertical-align/index.html create mode 100644 "files/pl/web/css/warto\305\233\304\207_pocz\304\205tkowa/index.html" create mode 100644 files/pl/web/css/white-space/index.html create mode 100644 files/pl/web/css/width/index.html create mode 100644 files/pl/web/css/word-spacing/index.html create mode 100644 files/pl/web/css/z-index/index.html create mode 100644 "files/pl/web/dost\304\231pno\305\233\304\207/an_overview_of_accessible_web_applications_and_widgets/index.html" create mode 100644 "files/pl/web/dost\304\231pno\305\233\304\207/index.html" create mode 100644 "files/pl/web/dost\304\231pno\305\233\304\207/keyboard-navigable_javascript_widgets/index.html" create mode 100644 files/pl/web/exslt/index.html create mode 100644 files/pl/web/guide/ajax/index.html create mode 100644 "files/pl/web/guide/ajax/na_pocz\304\205tek/index.html" create mode 100644 files/pl/web/guide/api/index.html create mode 100644 files/pl/web/guide/css/kolumny_css3/index.html create mode 100644 files/pl/web/guide/css/sprawdzanie_media_queries/index.html create mode 100644 files/pl/web/guide/graphics/index.html create mode 100644 files/pl/web/guide/html/editable_content/index.html create mode 100644 files/pl/web/guide/index.html create mode 100644 files/pl/web/guide/liczniki_css/index.html create mode 100644 files/pl/web/guide/performance/index.html create mode 100644 files/pl/web/html(pl)/index.html create mode 100644 files/pl/web/html(pl)/tryb_zgodnosci_oraz_tryb_standardow/index.html create mode 100644 files/pl/web/html/canvas/index.html create mode 100644 files/pl/web/html/element/a/index.html create mode 100644 files/pl/web/html/element/abbr/index.html create mode 100644 files/pl/web/html/element/acronym/index.html create mode 100644 files/pl/web/html/element/address/index.html create mode 100644 files/pl/web/html/element/applet/index.html create mode 100644 files/pl/web/html/element/aside/index.html create mode 100644 files/pl/web/html/element/b/index.html create mode 100644 files/pl/web/html/element/base/index.html create mode 100644 files/pl/web/html/element/basefont/index.html create mode 100644 files/pl/web/html/element/bdo/index.html create mode 100644 files/pl/web/html/element/bgsound/index.html create mode 100644 files/pl/web/html/element/big/index.html create mode 100644 files/pl/web/html/element/blink/index.html create mode 100644 files/pl/web/html/element/blockquote/index.html create mode 100644 files/pl/web/html/element/body/index.html create mode 100644 files/pl/web/html/element/br/index.html create mode 100644 files/pl/web/html/element/center/index.html create mode 100644 files/pl/web/html/element/cite/index.html create mode 100644 files/pl/web/html/element/code/index.html create mode 100644 files/pl/web/html/element/comment/index.html create mode 100644 files/pl/web/html/element/dd/index.html create mode 100644 files/pl/web/html/element/details/index.html create mode 100644 files/pl/web/html/element/div/index.html create mode 100644 files/pl/web/html/element/dl/index.html create mode 100644 files/pl/web/html/element/dt/index.html create mode 100644 files/pl/web/html/element/em/index.html create mode 100644 files/pl/web/html/element/head/index.html create mode 100644 files/pl/web/html/element/heading_elements/index.html create mode 100644 files/pl/web/html/element/hr/index.html create mode 100644 files/pl/web/html/element/html/index.html create mode 100644 files/pl/web/html/element/i/index.html create mode 100644 files/pl/web/html/element/iframe/index.html create mode 100644 files/pl/web/html/element/index.html create mode 100644 files/pl/web/html/element/input/button/index.html create mode 100644 files/pl/web/html/element/input/index.html create mode 100644 files/pl/web/html/element/kbd/index.html create mode 100644 files/pl/web/html/element/li/index.html create mode 100644 files/pl/web/html/element/link/index.html create mode 100644 files/pl/web/html/element/marquee/index.html create mode 100644 files/pl/web/html/element/meta/index.html create mode 100644 files/pl/web/html/element/ol/index.html create mode 100644 files/pl/web/html/element/p/index.html create mode 100644 files/pl/web/html/element/q/index.html create mode 100644 files/pl/web/html/element/ruby/index.html create mode 100644 files/pl/web/html/element/s/index.html create mode 100644 files/pl/web/html/element/samp/index.html create mode 100644 files/pl/web/html/element/section/index.html create mode 100644 files/pl/web/html/element/small/index.html create mode 100644 files/pl/web/html/element/span/index.html create mode 100644 files/pl/web/html/element/strong/index.html create mode 100644 files/pl/web/html/element/title/index.html create mode 100644 files/pl/web/html/element/tt/index.html create mode 100644 files/pl/web/html/element/ul/index.html create mode 100644 files/pl/web/html/element/video/index.html create mode 100644 files/pl/web/html/elementy_blokowe/index.html create mode 100644 files/pl/web/html/elementy_liniowe/index.html create mode 100644 files/pl/web/html/global_attributes/index.html create mode 100644 files/pl/web/html/global_attributes/pisownia/index.html create mode 100644 files/pl/web/html/global_attributes/tabindex/index.html create mode 100644 files/pl/web/html/index.html create mode 100644 files/pl/web/html/kontrola_sprawdzania_pisowni_w_formularzach_html/index.html create mode 100644 "files/pl/web/html/zarz\304\205dzanie_fokusem_w_html/index.html" create mode 100644 files/pl/web/html/znaczenie_poprawnego_komentowania/index.html create mode 100644 files/pl/web/http/authentication/index.html create mode 100644 files/pl/web/http/ciasteczka/index.html create mode 100644 files/pl/web/http/headers/cache-control/index.html create mode 100644 files/pl/web/http/headers/data/index.html create mode 100644 files/pl/web/http/headers/index.html create mode 100644 files/pl/web/http/headers/referrer-policy/index.html create mode 100644 "files/pl/web/http/http_wiadomosci_og\303\263lne/index.html" create mode 100644 files/pl/web/http/index.html create mode 100644 files/pl/web/index.html create mode 100644 files/pl/web/javascript/domkniecia/index.html create mode 100644 files/pl/web/javascript/dziedziczenie_lancuch_prototypow/index.html create mode 100644 files/pl/web/javascript/eventloop/index.html create mode 100644 files/pl/web/javascript/guide/control_flow_and_error_handling/index.html create mode 100644 files/pl/web/javascript/guide/funkcje/index.html create mode 100644 files/pl/web/javascript/guide/index.html create mode 100644 files/pl/web/javascript/guide/introduction/index.html create mode 100644 files/pl/web/javascript/guide/iterators_and_generators/index.html create mode 100644 files/pl/web/javascript/guide/loops_and_iteration/index.html create mode 100644 files/pl/web/javascript/guide/o_tym_przewodniku/index.html create mode 100644 files/pl/web/javascript/guide/obsolete_pages/index.html create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/blok_instrukcji/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/definiowanie_funkcji/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/dodawanie_obiektom_nowej_funkcjonalno\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/funkcja_eval/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/funkcja_isfinite/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/funkcja_isnan/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/funkcje_escape_i_unescape/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/funkcje_number_i_string/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/funkcje_parseint_i_parsefloat/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/funkcje_predefiniowane/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_komentarzy/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_manipulacji_obiektem/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_obs\305\202ugi_wyj\304\205tk\303\263w/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_obs\305\202ugi_wyj\304\205tk\303\263w/instrukcja_throw/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_obs\305\202ugi_wyj\304\205tk\303\263w/instrukcja_try...catch/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/instrukcja_break/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/instrukcja_continue/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/instrukcja_do_...while/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/instrukcja_for/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/instrukcja_label/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_p\304\231tli/instrukcja_while/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/instrukcje_warunkowe/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/litera\305\202y/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/o_tym_przewodniku/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_i_w\305\202asno\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_array/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_boolean/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_date/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_function/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_math/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_number/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_regexp/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/obiekty_predefiniowane/obiekt_string/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/operacje_na_\305\202a\305\204cuchach/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/operatory_arytmetyczne/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/operatory_logiczne/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/operatory_por\303\263wnania/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/operatory_przypisania/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/operatory/operatory_specjalne/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/podgl\304\205d_klas_liveconnect/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/podgl\304\205d_klas_liveconnect/komunikacja_mi\304\231dzy_java_a_javascript/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/podgl\304\205d_klas_liveconnect/konwersja_typu_danych/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/podgl\304\205d_klas_liveconnect/konwersja_typu_danych/konwersja_javascript_do_java/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/powr\303\263t_dziedziczenia_w\305\202asno\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/powr\303\263t_dziedziczenia_w\305\202asno\305\233ci/warto\305\233ci_lokalne_vs._dziedziczone/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_przyk\305\202adem/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_przyk\305\202adem/tworzenie_hierarchii/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_przyk\305\202adem/w\305\202asno\305\233ci_obiektu/dodawanie_w\305\202asno\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_przyk\305\202adem/w\305\202asno\305\233ci_obiektu/dziedziczenie_w\305\202asno\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_przyk\305\202adem/w\305\202asno\305\233ci_obiektu/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_wyra\305\274eniami_regularnymi/globalne_wyszukiwanie,_wielko\305\233\304\207_znak\303\263w,_wieloliniowe_wej\305\233cie/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_wyra\305\274eniami_regularnymi/przyk\305\202ady_wyra\305\274e\305\204_regularnych/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/praca_z_zamkni\304\231ciami/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/sta\305\202e/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/definiowanie_metod/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/definiowanie_w\305\202asno\305\233ci_typu_obiektu/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/indeksowanie_w\305\202asno\305\233ci_obiektu/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/usuwanie_w\305\202asno\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/u\305\274ywanie_inicjacji_obiektu/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/zastosowanie_'this'_do_obiektu_referencji/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_nowych_obiekt\303\263w/zastosowanie_konstruktor\303\263w_funkcji/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/tworzenie_wyra\305\274enia_regularnego/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/unicode/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/warto\305\233ci/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/wyra\305\274enia/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/wywo\305\202anie_funkcji/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/zapisywanie_wzorca_wyra\305\274enia_regularnego/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/zastosowanie_obiektu_arguments/index.html" create mode 100644 "files/pl/web/javascript/guide/obsolete_pages/przewodnik_po_j\304\231zyku_javascript_1.5/zmienne/index.html" create mode 100644 "files/pl/web/javascript/guide/sk\305\202adnia_i_typy/index.html" create mode 100644 files/pl/web/javascript/index.html create mode 100644 "files/pl/web/javascript/na_pocz\304\205tek/index.html" create mode 100644 files/pl/web/javascript/new_in_javascript/index.html create mode 100644 "files/pl/web/javascript/new_in_javascript/nowo\305\233ci_w_javascript_1.5/index.html" create mode 100644 "files/pl/web/javascript/new_in_javascript/nowo\305\233ci_w_javascript_1.6/index.html" create mode 100644 "files/pl/web/javascript/nowo\305\233ci_w_javascript_1.4/index.html" create mode 100644 "files/pl/web/javascript/nowo\305\233ci_w_javascript_1.8/index.html" create mode 100644 files/pl/web/javascript/o_javascript/index.html create mode 100644 files/pl/web/javascript/ponowne_wprowadzenie_do_javascript/index.html create mode 100644 files/pl/web/javascript/reference/classes/extends/index.html create mode 100644 files/pl/web/javascript/reference/classes/index.html create mode 100644 files/pl/web/javascript/reference/classes/konstruktor/index.html create mode 100644 files/pl/web/javascript/reference/classes/private_class_fields/index.html create mode 100644 files/pl/web/javascript/reference/classes/public_class_fields/index.html create mode 100644 files/pl/web/javascript/reference/classes/static/index.html create mode 100644 "files/pl/web/javascript/reference/errors/brakuj\304\205cy_\305\233rednik_po_w\305\202asno\305\233ci_id/index.html" create mode 100644 files/pl/web/javascript/reference/errors/index.html create mode 100644 files/pl/web/javascript/reference/errors/invalid_array_length/index.html create mode 100644 files/pl/web/javascript/reference/errors/invalid_date/index.html create mode 100644 files/pl/web/javascript/reference/errors/json_bad_parse/index.html create mode 100644 files/pl/web/javascript/reference/errors/missing_curly_after_function_body/index.html create mode 100644 files/pl/web/javascript/reference/errors/missing_initializer_in_const/index.html create mode 100644 files/pl/web/javascript/reference/errors/missing_parenthesis_after_argument_list/index.html create mode 100644 files/pl/web/javascript/reference/errors/missing_semicolon_before_statement/index.html create mode 100644 files/pl/web/javascript/reference/errors/more_arguments_needed/index.html create mode 100644 files/pl/web/javascript/reference/errors/not_a_function/index.html create mode 100644 files/pl/web/javascript/reference/errors/not_defined/index.html create mode 100644 files/pl/web/javascript/reference/errors/property_access_denied/index.html create mode 100644 files/pl/web/javascript/reference/errors/unexpected_type/index.html create mode 100644 files/pl/web/javascript/reference/functions/funkcje_strzalkowe/index.html create mode 100644 files/pl/web/javascript/reference/functions/get/index.html create mode 100644 files/pl/web/javascript/reference/functions/index.html create mode 100644 "files/pl/web/javascript/reference/functions/parametry_domy\305\233lne/index.html" create mode 100644 files/pl/web/javascript/reference/functions/set/index.html create mode 100644 files/pl/web/javascript/referencje/funkcje/arguments/callee/index.html create mode 100644 files/pl/web/javascript/referencje/funkcje/arguments/caller/index.html create mode 100644 files/pl/web/javascript/referencje/funkcje/arguments/index.html create mode 100644 files/pl/web/javascript/referencje/funkcje/arguments/length/index.html create mode 100644 files/pl/web/javascript/referencje/index.html create mode 100644 files/pl/web/javascript/referencje/komentarz/index.html create mode 100644 files/pl/web/javascript/referencje/liveconnect/index.html create mode 100644 files/pl/web/javascript/referencje/liveconnect/jsexception/index.html create mode 100644 files/pl/web/javascript/referencje/liveconnect/jsobject/index.html create mode 100644 files/pl/web/javascript/referencje/o_tym_dokumencie/index.html create mode 100644 files/pl/web/javascript/referencje/o_tym_dokumencie/konwencje_formatowania_tekstu/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/concat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/copywithin/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/entries/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/every/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/fill/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/filter/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/find/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/findindex/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/flat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/foreach/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/from/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/includes/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/indexof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/isarray/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/join/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/keys/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/lastindexof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/length/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/map/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/of/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/pop/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/push/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/reduce/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/reduceright/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/reverse/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/shift/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/slice/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/some/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/sort/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/splice/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/tolocalestring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/unshift/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/array/values/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/arraybuffer/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/bigint/asintn/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/bigint/asuintn/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/bigint/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/bigint/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/bigint/valueof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/boolean/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/boolean/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/boolean/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/boolean/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/boolean/valueof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/dataview/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/constructor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getdate/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getday/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getfullyear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/gethours/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getmilliseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getminutes/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getmonth/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/gettime/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/gettimezoneoffset/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcdate/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcday/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcfullyear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutchours/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcmilliseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcminutes/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcmonth/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getutcseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/getyear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/now/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/parse/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setdate/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setfullyear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/sethours/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setmilliseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setminutes/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setmonth/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/settime/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutcdate/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutcfullyear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutchours/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutcmilliseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutcminutes/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutcmonth/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setutcseconds/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/setyear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/togmtstring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/tojson/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/tolocaledatestring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/tolocalestring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/tolocaletimestring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/toutcstring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/utc/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/date/valueof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/decodeuri/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/decodeuricomponent/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/encodeuri/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/encodeuricomponent/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/columnnumber/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/filename/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/linenumber/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/message/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/name/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/stack/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/error/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/escape/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/evalerror/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/apply/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/arguments/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/arity/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/bind/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/caller/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/displayname/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/length/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/function/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/generator/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/infinity/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/isfinite/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/isnan/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/java/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/javaarray/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/javaarray/length/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/javaarray/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/javaclass/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/javaobject/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/javapackage/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/json/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/clear/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/delete/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/entries/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/foreach/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/get/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/has/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/keys/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/set/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/size/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/map/values/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/abs/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/acos/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/asin/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/atan/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/atan2/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/ceil/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/cos/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/e/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/exp/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/floor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/ln10/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/ln2/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/log/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/log10e/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/log2e/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/max/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/min/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/pi/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/pow/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/random/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/round/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/sign/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/sin/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/sqrt/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/sqrt1_2/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/sqrt2/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/math/tan/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/nan/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/netscape/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/null/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/constructor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/epsilon/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/isinteger/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/isnan/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/max_value/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/min_value/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/nan/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/negative_infinity/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/positive_infinity/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/toexponential/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/tofixed/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/tolocalestring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/toprecision/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/number/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/assign/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/constructor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/eval/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/freeze/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/getownpropertydescriptor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/hasownproperty/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/proto/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/seal/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/tolocalestring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/unwatch/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/valueof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/object/watch/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/packages/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/packages/java/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/packages/nazwaklasy/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/packages/netscape/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/packages/sun/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/parsefloat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/parseint/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/promise/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/proxy/handler/apply/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/proxy/handler/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/proxy/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/rangeerror/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/rangeerror/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/exec/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/global/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/ignorecase/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/lastmatch/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/source/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/test/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/regexp/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/set/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/set/set.prototype.add()/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/set/set.prototype.clear()/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/set/set.prototype.delete()/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/anchor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/big/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/blink/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/bold/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/charat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/charcodeat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/concat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/fontcolor/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/fontsize/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/fromcharcode/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/fromcodepoint/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/italics/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/link/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/prototype/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/repeat/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/search/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/slice/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/small/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/strike/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/sub/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/substr/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/substring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/sup/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/tolowercase/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/tosource/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/tostring/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/touppercase/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/string/valueof/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/sun/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/symbol/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/syntaxerror/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/uint16array/index.html create mode 100644 files/pl/web/javascript/referencje/obiekty/undefined/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/bitwise_operators/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/destructuring_assignment/index.html create mode 100644 "files/pl/web/javascript/referencje/operatory/domkni\304\231cia_wyra\305\274e\305\204/index.html" create mode 100644 files/pl/web/javascript/referencje/operatory/function_star_/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/grouping/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/logical_operators/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/new.target/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/nullish_coalescing_operator/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/object_initializer/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_delete/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_function/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_in/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_instanceof/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_new/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_potoku/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_przecinkowy/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_typeof/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_void/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operator_warunkowy/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/operatory_arytmetyczne/index.html create mode 100644 "files/pl/web/javascript/referencje/operatory/operatory_dzia\305\202aj\304\205ce_na_ci\304\205gach_znak\303\263w/index.html" create mode 100644 "files/pl/web/javascript/referencje/operatory/operatory_pami\304\231ci/index.html" create mode 100644 "files/pl/web/javascript/referencje/operatory/operatory_por\303\263wnania/index.html" create mode 100644 files/pl/web/javascript/referencje/operatory/operatory_przypisania/index.html create mode 100644 "files/pl/web/javascript/referencje/operatory/pierwsze\305\204stwo_operator\303\263w/index.html" create mode 100644 "files/pl/web/javascript/referencje/operatory/sk\305\202adnia_rozwini\304\231cia/index.html" create mode 100644 files/pl/web/javascript/referencje/operatory/spread_operator/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/super/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/this/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/yield/index.html create mode 100644 files/pl/web/javascript/referencje/operatory/yield_star_/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/block/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/break/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/class/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/const/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/continue/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/debugger/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/default/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/do...while/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/empty/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/etykieta/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/export/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/for...in/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/for/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/for_each...in/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/function/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/function_star_/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/funkcja_async/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/if...else/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/import/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/return/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/switch/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/throw/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/var/index.html create mode 100644 files/pl/web/javascript/referencje/polecenia/while/index.html create mode 100644 "files/pl/web/javascript/referencje/przestarza\305\202e_w\305\202asno\305\233ci_i_metody/index.html" create mode 100644 "files/pl/web/javascript/referencje/s\305\202owa_zarezerwowane/index.html" create mode 100644 files/pl/web/javascript/shells/index.html create mode 100644 files/pl/web/javascript/typed_arrays/index.html create mode 100644 files/pl/web/javascript/typy_oraz_struktury_danych/index.html create mode 100644 files/pl/web/javascript/wprowadzenie_do_programowania_obiektowego_w_jezyku_javascript/index.html create mode 100644 "files/pl/web/javascript/zasoby_j\304\231zyka_javascript/index.html" create mode 100644 files/pl/web/mathml/index.html create mode 100644 files/pl/web/progressive_web_apps/index.html create mode 100644 files/pl/web/security/securing_your_site/index.html create mode 100644 files/pl/web/security/securing_your_site/konfiguracja_mime_na_serwerze/index.html create mode 100644 files/pl/web/svg/element/a/index.html create mode 100644 files/pl/web/svg/element/animatetransform/index.html create mode 100644 files/pl/web/svg/element/index.html create mode 100644 "files/pl/web/svg/element/okr\304\205g/index.html" create mode 100644 files/pl/web/svg/index.html create mode 100644 files/pl/web/svg/inne_zasoby/index.html create mode 100644 files/pl/web/svg/przewodnik/index.html create mode 100644 files/pl/web/svg/przewodnik/svg_w_xhtml_-_wprowadzenie/index.html create mode 100644 files/pl/web/tutorials/index.html create mode 100644 files/pl/web/xml/index.html create mode 100644 files/pl/web/xml/wprowadzenie_do_xml-a/index.html create mode 100644 files/pl/web/xpath/funkcje/boolean/index.html create mode 100644 files/pl/web/xpath/funkcje/ceiling/index.html create mode 100644 files/pl/web/xpath/funkcje/concat/index.html create mode 100644 files/pl/web/xpath/funkcje/contains/index.html create mode 100644 files/pl/web/xpath/funkcje/count/index.html create mode 100644 files/pl/web/xpath/funkcje/current/index.html create mode 100644 files/pl/web/xpath/funkcje/document/index.html create mode 100644 files/pl/web/xpath/funkcje/element-available/index.html create mode 100644 files/pl/web/xpath/funkcje/false/index.html create mode 100644 files/pl/web/xpath/funkcje/floor/index.html create mode 100644 files/pl/web/xpath/funkcje/format-number/index.html create mode 100644 files/pl/web/xpath/funkcje/function-available/index.html create mode 100644 files/pl/web/xpath/funkcje/generate-id/index.html create mode 100644 files/pl/web/xpath/funkcje/id/index.html create mode 100644 files/pl/web/xpath/funkcje/index.html create mode 100644 files/pl/web/xpath/funkcje/key/index.html create mode 100644 files/pl/web/xpath/funkcje/lang/index.html create mode 100644 files/pl/web/xpath/funkcje/last/index.html create mode 100644 files/pl/web/xpath/funkcje/local-name/index.html create mode 100644 files/pl/web/xpath/funkcje/name/index.html create mode 100644 files/pl/web/xpath/funkcje/namespace-uri/index.html create mode 100644 files/pl/web/xpath/funkcje/normalize-space/index.html create mode 100644 files/pl/web/xpath/funkcje/not/index.html create mode 100644 files/pl/web/xpath/funkcje/number/index.html create mode 100644 files/pl/web/xpath/funkcje/position/index.html create mode 100644 files/pl/web/xpath/funkcje/round/index.html create mode 100644 files/pl/web/xpath/funkcje/starts-with/index.html create mode 100644 files/pl/web/xpath/funkcje/string-length/index.html create mode 100644 files/pl/web/xpath/funkcje/string/index.html create mode 100644 files/pl/web/xpath/funkcje/substring-after/index.html create mode 100644 files/pl/web/xpath/funkcje/substring-before/index.html create mode 100644 files/pl/web/xpath/funkcje/substring/index.html create mode 100644 files/pl/web/xpath/funkcje/sum/index.html create mode 100644 files/pl/web/xpath/funkcje/system-property/index.html create mode 100644 files/pl/web/xpath/funkcje/translate/index.html create mode 100644 files/pl/web/xpath/funkcje/true/index.html create mode 100644 files/pl/web/xpath/funkcje/unparsed-entity-url/index.html create mode 100644 files/pl/web/xpath/index.html create mode 100644 files/pl/web/xpath/osie/index.html create mode 100644 files/pl/web/xslt/apply-imports/index.html create mode 100644 files/pl/web/xslt/apply-templates/index.html create mode 100644 files/pl/web/xslt/attribute-set/index.html create mode 100644 files/pl/web/xslt/attribute/index.html create mode 100644 files/pl/web/xslt/call-template/index.html create mode 100644 files/pl/web/xslt/choose/index.html create mode 100644 files/pl/web/xslt/comment/index.html create mode 100644 files/pl/web/xslt/copy-of/index.html create mode 100644 files/pl/web/xslt/copy/index.html create mode 100644 files/pl/web/xslt/decimal-format/index.html create mode 100644 files/pl/web/xslt/element/element/index.html create mode 100644 files/pl/web/xslt/element/index.html create mode 100644 files/pl/web/xslt/fallback/index.html create mode 100644 files/pl/web/xslt/for-each/index.html create mode 100644 files/pl/web/xslt/if/index.html create mode 100644 files/pl/web/xslt/import/index.html create mode 100644 files/pl/web/xslt/include/index.html create mode 100644 files/pl/web/xslt/index.html create mode 100644 files/pl/web/xslt/key/index.html create mode 100644 files/pl/web/xslt/message/index.html create mode 100644 files/pl/web/xslt/namespace-alias/index.html create mode 100644 files/pl/web/xslt/number/index.html create mode 100644 files/pl/web/xslt/otherwise/index.html create mode 100644 files/pl/web/xslt/output/index.html create mode 100644 files/pl/web/xslt/param/index.html create mode 100644 files/pl/web/xslt/preserve-space/index.html create mode 100644 files/pl/web/xslt/processing-instruction/index.html create mode 100644 files/pl/web/xslt/sort/index.html create mode 100644 files/pl/web/xslt/strip-space/index.html create mode 100644 files/pl/web/xslt/stylesheet/index.html create mode 100644 files/pl/web/xslt/template/index.html create mode 100644 files/pl/web/xslt/text/index.html create mode 100644 files/pl/web/xslt/transform/index.html create mode 100644 files/pl/web/xslt/transformacje_xml_z_xslt/dokumentacja_xslt_xpath/index.html create mode 100644 files/pl/web/xslt/transformacje_xml_z_xslt/index.html create mode 100644 "files/pl/web/xslt/transformacje_xml_z_xslt/przeczytaj_wi\304\231cej/index.html" create mode 100644 files/pl/web/xslt/value-of/index.html create mode 100644 files/pl/web/xslt/variable/index.html create mode 100644 files/pl/web/xslt/when/index.html create mode 100644 files/pl/web/xslt/with-param/index.html create mode 100644 files/pl/webassembly/index.html create mode 100644 files/pl/websockets/index.html create mode 100644 "files/pl/wsparcie_przegl\304\205darek_dla_element\303\263w_html/index.html" create mode 100644 files/pl/wtyczki/index.html create mode 100644 "files/pl/wykrywanie_wersji_i_programowanie_dla_wielu_przegl\304\205darek/index.html" create mode 100644 files/pl/xhtml/index.html create mode 100644 files/pl/xml_w_mozilli/index.html create mode 100644 files/pl/xml_web_services/accessing_web_services_in_mozilla_using_wsdl_proxying/index.html create mode 100644 files/pl/xml_web_services/index.html create mode 100644 files/pl/xmlhttprequest/index.html create mode 100644 files/pl/xmlhttprequest/using_xmlhttprequest/index.html create mode 100644 files/pl/xpcnativewrapper/index.html create mode 100644 files/pl/xpcom/index.html create mode 100644 files/pl/xpcom_interface_reference/index.html create mode 100644 files/pl/xpconnect/index.html create mode 100644 files/pl/xpconnect/podstawy_architektury/index.html create mode 100644 files/pl/xpi/index.html create mode 100644 files/pl/xtf/index.html create mode 100644 files/pl/xul_explorer/index.html create mode 100644 "files/pl/zabawa_j\304\231zykiem_xul/index.html" create mode 100644 files/pl/zastosowanie_nsixulappinfo/index.html create mode 100644 "files/pl/zdarzenia_przeci\304\205gania_i_upuszczania/index.html" create mode 100644 files/pl/zmiany_w_obiekcie_xmlhttprequest_w_gecko_1.8/index.html (limited to 'files/pl') diff --git a/files/pl/_redirects.txt b/files/pl/_redirects.txt new file mode 100644 index 0000000000..6cfa2f0581 --- /dev/null +++ b/files/pl/_redirects.txt @@ -0,0 +1,2683 @@ +# FROM-URL TO-URL +/pl/docs/AJAX /pl/docs/Web/Guide/AJAX +/pl/docs/AJAX/Na_pocz%C4%85tek /pl/docs/Web/Guide/AJAX/Na_pocz%C4%85tek +/pl/docs/AJAX:Dokumentacje /pl/docs/AJAX/Dokumentacje +/pl/docs/AJAX:Inne_zasoby /pl/docs/AJAX/Inne_zasoby +/pl/docs/AJAX:Na_pocz%C4%85tek /pl/docs/Web/Guide/AJAX/Na_pocz%C4%85tek +/pl/docs/AJAX:Przyk%C5%82ady /pl/docs/AJAX/Przyk%C5%82ady +/pl/docs/AJAX:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/AJAX/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Accessibility /pl/docs/Web/Dost%C4%99pno%C5%9B%C4%87 +/pl/docs/Alternatywny_blok_licencyjny /en-US/docs/Project:pl/Przyk%C5%82ady/Alternatywny_blok_licencyjny +/pl/docs/Bezpiecze%C5%84stwo:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Bezpiecze%C5%84stwo/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Bezpieczny_dost%C4%99p_do_zawarto%C5%9Bci_DOM_z_chrome /pl/docs/Bezpieczny_dost%C4%99p_do_sk%C5%82adnik%C3%B3w_DOM_z_poziomu_chrome +/pl/docs/Brudnopis_ptaszora /pl/docs/Wikipedysta/Ptak82_Brudnopis_ptaszora +/pl/docs/Brudnopis_ptaszora_Kurs_XUL /pl/docs/Wikipedysta/Ptak82_Brudnopis_ptaszora_Kurs_XUL +/pl/docs/Brudnopis_ptaszora_archiwum /pl/docs/Wikipedysta/Ptak82_Brudnopis_ptaszora_archiwum +/pl/docs/Brudnopis_ptaszora_s%C5%82ownik /pl/docs/Wikipedysta/Ptak82_Brudnopis_ptaszora_s%C5%82ownik +/pl/docs/Bugzilla_(link) https://bugzilla.mozilla.org/enter_bug.cgi?format=guided +/pl/docs/CSS /pl/docs/Web/CSS +/pl/docs/CSS/-moz-appearance /pl/docs/Web/CSS/appearance +/pl/docs/CSS/-moz-background-clip /pl/docs/CSS/background-clip +/pl/docs/CSS/-moz-background-inline-policy /pl/docs/Web/CSS/box-decoration-break +/pl/docs/CSS/-moz-background-origin /pl/docs/Web/CSS/background-origin +/pl/docs/CSS/-moz-binding /pl/docs/Web/CSS/-moz-binding +/pl/docs/CSS/-moz-border-bottom-colors /pl/docs/Web/CSS/-moz-border-bottom-colors +/pl/docs/CSS/-moz-border-left-colors /pl/docs/Web/CSS/-moz-border-left-colors +/pl/docs/CSS/-moz-border-radius /pl/docs/Web/CSS/border-radius +/pl/docs/CSS/-moz-border-radius-bottomleft /pl/docs/Web/CSS/border-bottom-left-radius +/pl/docs/CSS/-moz-border-radius-bottomright /pl/docs/Web/CSS/border-bottom-right-radius +/pl/docs/CSS/-moz-border-radius-topleft /pl/docs/Web/CSS/border-top-left-radius +/pl/docs/CSS/-moz-border-radius-topright /pl/docs/Web/CSS/border-top-right-radius +/pl/docs/CSS/-moz-border-right-colors /pl/docs/Web/CSS/-moz-border-right-colors +/pl/docs/CSS/-moz-border-top-colors /pl/docs/Web/CSS/-moz-border-top-colors +/pl/docs/CSS/-moz-box-align /pl/docs/Web/CSS/-moz-box-align +/pl/docs/CSS/-moz-box-direction /pl/docs/Web/CSS/box-direction +/pl/docs/CSS/-moz-box-flex /pl/docs/Web/CSS/-moz-box-flex +/pl/docs/CSS/-moz-box-orient /pl/docs/Web/CSS/-moz-box-orient +/pl/docs/CSS/-moz-box-pack /pl/docs/Web/CSS/-moz-box-pack +/pl/docs/CSS/-moz-box-sizing /pl/docs/Web/CSS/box-sizing +/pl/docs/CSS/-moz-image-region /pl/docs/Web/CSS/-moz-image-region +/pl/docs/CSS/-moz-opacity /pl/docs/Web/CSS/opacity +/pl/docs/CSS/-moz-outline /pl/docs/Web/CSS/outline +/pl/docs/CSS/-moz-outline-color /pl/docs/Web/CSS/-moz-outline-color +/pl/docs/CSS/-moz-outline-offset /pl/docs/Web/CSS/outline-offset +/pl/docs/CSS/-moz-outline-radius /pl/docs/Web/CSS/-moz-outline-radius +/pl/docs/CSS/-moz-outline-radius-bottomleft /pl/docs/Web/CSS/-moz-outline-radius-bottomleft +/pl/docs/CSS/-moz-outline-radius-bottomright /pl/docs/Web/CSS/-moz-outline-radius-bottomright +/pl/docs/CSS/-moz-outline-radius-topleft /pl/docs/Web/CSS/-moz-outline-radius-topleft +/pl/docs/CSS/-moz-outline-radius-topright /pl/docs/Web/CSS/-moz-outline-radius-topright +/pl/docs/CSS/-moz-outline-style /pl/docs/Web/CSS/outline-style +/pl/docs/CSS/:-moz-tree-cell /pl/docs/Web/CSS/:-moz-tree-cell +/pl/docs/CSS/:-moz-tree-cell-text /pl/docs/Web/CSS/:-moz-tree-cell-text +/pl/docs/CSS/:-moz-tree-column /pl/docs/Web/CSS/:-moz-tree-column +/pl/docs/CSS/:-moz-tree-drop-feedback /pl/docs/Web/CSS/:-moz-tree-drop-feedback +/pl/docs/CSS/:-moz-tree-image /pl/docs/Web/CSS/:-moz-tree-image +/pl/docs/CSS/:-moz-tree-indentation /pl/docs/Web/CSS/:-moz-tree-indentation +/pl/docs/CSS/:-moz-tree-line /pl/docs/Web/CSS/:-moz-tree-line +/pl/docs/CSS/:-moz-tree-progressmeter /pl/docs/Web/CSS/:-moz-tree-progressmeter +/pl/docs/CSS/:-moz-tree-row /pl/docs/Web/CSS/:-moz-tree-row +/pl/docs/CSS/:-moz-tree-separator /pl/docs/Web/CSS/:-moz-tree-separator +/pl/docs/CSS/:-moz-tree-twisty /pl/docs/Web/CSS/:-moz-tree-twisty +/pl/docs/CSS/:after /pl/docs/Web/CSS/:after +/pl/docs/CSS/:before /pl/docs/Web/CSS/:before +/pl/docs/CSS/:empty /pl/docs/Web/CSS/:empty +/pl/docs/CSS/:first-child /pl/docs/Web/CSS/:first-child +/pl/docs/CSS/:first-letter /pl/docs/Web/CSS/:first-letter +/pl/docs/CSS/:first-node /pl/docs/Web/CSS/:first-node +/pl/docs/CSS/:lang /pl/docs/Web/CSS/:lang +/pl/docs/CSS/:last-child /pl/docs/Web/CSS/:last-child +/pl/docs/CSS/:last-node /pl/docs/Web/CSS/%3A-moz-last-node +/pl/docs/CSS/:not /pl/docs/Web/CSS/:not +/pl/docs/CSS/:root /pl/docs/Web/CSS/:root +/pl/docs/CSS/@-moz-document /pl/docs/Web/CSS/%40document +/pl/docs/CSS/@import /pl/docs/Web/CSS/@import +/pl/docs/CSS/@media /pl/docs/Web/CSS/@media +/pl/docs/CSS/CSS_Reference /pl/docs/Web/CSS/CSS_Reference +/pl/docs/CSS/Dziedziczenie /pl/docs/Web/CSS/Dziedziczenie +/pl/docs/CSS/Getting_Started/Tables /pl/docs/Web/CSS/Na_pocz%C4%85tek/Tables +/pl/docs/CSS/Inne_zasoby /pl/docs/Web/CSS/Inne_zasoby +/pl/docs/CSS/Margin /pl/docs/Web/CSS/Margin +/pl/docs/CSS/Na_pocz%C4%85tek /pl/docs/Web/CSS/Na_pocz%C4%85tek +/pl/docs/CSS/Na_pocz%C4%85tek/Bloki /pl/docs/Web/CSS/Na_pocz%C4%85tek/Bloki +/pl/docs/CSS/Na_pocz%C4%85tek/Czym_jest_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czym_jest_CSS +/pl/docs/CSS/Na_pocz%C4%85tek/Czym_jest_CSS? /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czym_jest_CSS +/pl/docs/CSS/Na_pocz%C4%85tek/Czytelny_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czytelny_CSS +/pl/docs/CSS/Na_pocz%C4%85tek/Dane_XML /pl/docs/Web/CSS/Na_pocz%C4%85tek/Dane_XML +/pl/docs/CSS/Na_pocz%C4%85tek/Grafika_SVG /pl/docs/Web/CSS/Na_pocz%C4%85tek/Grafika_SVG +/pl/docs/CSS/Na_pocz%C4%85tek/Jak_dzia%C5%82a_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Jak_dzia%C5%82a_CSS +/pl/docs/CSS/Na_pocz%C4%85tek/JavaScript /pl/docs/Web/CSS/Na_pocz%C4%85tek/JavaScript +/pl/docs/CSS/Na_pocz%C4%85tek/Kaskadowo%C5%9B%C4%87_i_dziedziczenie /pl/docs/Web/CSS/Na_pocz%C4%85tek/Kaskadowo%C5%9B%C4%87_i_dziedziczenie +/pl/docs/CSS/Na_pocz%C4%85tek/Kolor /pl/docs/Web/CSS/Na_pocz%C4%85tek/Kolor +/pl/docs/CSS/Na_pocz%C4%85tek/Listy /pl/docs/Web/CSS/Na_pocz%C4%85tek/Listy +/pl/docs/CSS/Na_pocz%C4%85tek/Media /pl/docs/Web/CSS/Na_pocz%C4%85tek/Media +/pl/docs/CSS/Na_pocz%C4%85tek/Po_co_u%C5%BCywa%C4%87_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Po_co_u%C5%BCywa%C4%87_CSS +/pl/docs/CSS/Na_pocz%C4%85tek/Selektory /pl/docs/Web/CSS/Na_pocz%C4%85tek/Selektory +/pl/docs/CSS/Na_pocz%C4%85tek/Style_tekstowe /pl/docs/Web/CSS/Na_pocz%C4%85tek/Style_tekstowe +/pl/docs/CSS/Na_pocz%C4%85tek/Tabele /pl/docs/Web/CSS/Na_pocz%C4%85tek/Tables +/pl/docs/CSS/Na_pocz%C4%85tek/Tre%C5%9B%C4%87 /pl/docs/Learn/CSS/Howto/Generated_content +/pl/docs/CSS/Na_pocz%C4%85tek/Uk%C5%82ad /pl/docs/Web/CSS/Na_pocz%C4%85tek/Uk%C5%82ad +/pl/docs/CSS/Na_pocz%C4%85tek/Wi%C4%85zania_XBL /pl/docs/Web/CSS/Na_pocz%C4%85tek/Wi%C4%85zania_XBL +/pl/docs/CSS/Na_pocz%C4%85tek/XUL-owe_interfejsy_u%C5%BCytkownika /pl/docs/Web/CSS/Na_pocz%C4%85tek/XUL-owe_interfejsy_u%C5%BCytkownika +/pl/docs/CSS/Selektory_typu /pl/docs/Web/CSS/Selektory_typu +/pl/docs/CSS/Warto%C5%9B%C4%87_pocz%C4%85tkowa /pl/docs/Web/CSS/Warto%C5%9B%C4%87_pocz%C4%85tkowa +/pl/docs/CSS/azimuth /pl/docs/Web/CSS/azimuth +/pl/docs/CSS/background /pl/docs/Web/CSS/background +/pl/docs/CSS/background-attachment /pl/docs/Web/CSS/background-attachment +/pl/docs/CSS/background-color /pl/docs/Web/CSS/background-color +/pl/docs/CSS/background-image /pl/docs/Web/CSS/background-image +/pl/docs/CSS/background-position /pl/docs/Web/CSS/background-position +/pl/docs/CSS/background-repeat /pl/docs/Web/CSS/background-repeat +/pl/docs/CSS/border /pl/docs/Web/CSS/border +/pl/docs/CSS/border-bottom /pl/docs/Web/CSS/border-bottom +/pl/docs/CSS/border-bottom-color /pl/docs/Web/CSS/border-bottom-color +/pl/docs/CSS/border-bottom-style /pl/docs/Web/CSS/border-bottom-style +/pl/docs/CSS/border-bottom-width /pl/docs/Web/CSS/border-bottom-width +/pl/docs/CSS/border-collapse /pl/docs/Web/CSS/border-collapse +/pl/docs/CSS/border-color /pl/docs/Web/CSS/border-color +/pl/docs/CSS/border-left /pl/docs/Web/CSS/border-left +/pl/docs/CSS/border-left-color /pl/docs/Web/CSS/border-left-color +/pl/docs/CSS/border-left-style /pl/docs/Web/CSS/border-left-style +/pl/docs/CSS/border-left-width /pl/docs/Web/CSS/border-left-width +/pl/docs/CSS/border-right /pl/docs/Web/CSS/border-right +/pl/docs/CSS/border-right-color /pl/docs/Web/CSS/border-right-color +/pl/docs/CSS/border-right-style /pl/docs/Web/CSS/border-right-style +/pl/docs/CSS/border-right-width /pl/docs/Web/CSS/border-right-width +/pl/docs/CSS/border-spacing /pl/docs/Web/CSS/border-spacing +/pl/docs/CSS/border-style /pl/docs/Web/CSS/border-style +/pl/docs/CSS/border-top /pl/docs/Web/CSS/border-top +/pl/docs/CSS/border-top-color /pl/docs/Web/CSS/border-top-color +/pl/docs/CSS/border-top-style /pl/docs/Web/CSS/border-top-style +/pl/docs/CSS/border-top-width /pl/docs/Web/CSS/border-top-width +/pl/docs/CSS/border-width /pl/docs/Web/CSS/border-width +/pl/docs/CSS/bottom /pl/docs/Web/CSS/bottom +/pl/docs/CSS/caption-side /pl/docs/Web/CSS/caption-side +/pl/docs/CSS/clear /pl/docs/Web/CSS/clear +/pl/docs/CSS/clip /pl/docs/Web/CSS/clip +/pl/docs/CSS/color /pl/docs/Web/CSS/color +/pl/docs/CSS/content /pl/docs/Web/CSS/content +/pl/docs/CSS/counter-increment /pl/docs/Web/CSS/counter-increment +/pl/docs/CSS/counter-reset /pl/docs/Web/CSS/counter-reset +/pl/docs/CSS/cursor /pl/docs/Web/CSS/cursor +/pl/docs/CSS/direction /pl/docs/Web/CSS/direction +/pl/docs/CSS/display /pl/docs/Web/CSS/display +/pl/docs/CSS/empty-cells /pl/docs/Web/CSS/empty-cells +/pl/docs/CSS/float /pl/docs/Web/CSS/float +/pl/docs/CSS/font /pl/docs/Web/CSS/font +/pl/docs/CSS/font-family /pl/docs/Web/CSS/font-family +/pl/docs/CSS/font-size /pl/docs/Web/CSS/font-size +/pl/docs/CSS/font-size-adjust /pl/docs/Web/CSS/font-size-adjust +/pl/docs/CSS/font-stretch /pl/docs/Web/CSS/font-stretch +/pl/docs/CSS/font-style /pl/docs/Web/CSS/font-style +/pl/docs/CSS/font-variant /pl/docs/Web/CSS/font-variant +/pl/docs/CSS/font-weight /pl/docs/Web/CSS/font-weight +/pl/docs/CSS/height /pl/docs/Web/CSS/height +/pl/docs/CSS/ime-mode /pl/docs/Web/CSS/ime-mode +/pl/docs/CSS/left /pl/docs/Web/CSS/left +/pl/docs/CSS/letter-spacing /pl/docs/Web/CSS/letter-spacing +/pl/docs/CSS/line-height /pl/docs/Web/CSS/line-height +/pl/docs/CSS/list-style /pl/docs/Web/CSS/list-style +/pl/docs/CSS/list-style-image /pl/docs/Web/CSS/list-style-image +/pl/docs/CSS/list-style-position /pl/docs/Web/CSS/list-style-position +/pl/docs/CSS/list-style-type /pl/docs/Web/CSS/list-style-type +/pl/docs/CSS/opacity /pl/docs/Web/CSS/opacity +/pl/docs/CSS/outline /pl/docs/Web/CSS/outline +/pl/docs/CSS/page-break-after /pl/docs/Web/CSS/page-break-after +/pl/docs/CSS/text-transform /pl/docs/Web/CSS/text-transform +/pl/docs/CSS/vertical-align /pl/docs/Web/CSS/vertical-align +/pl/docs/CSS/white-space /pl/docs/Web/CSS/white-space +/pl/docs/CSS/word-spacing /pl/docs/Web/CSS/word-spacing +/pl/docs/CSS/z-index /pl/docs/Web/CSS/z-index +/pl/docs/CSS:-moz-appearance /pl/docs/Web/CSS/appearance +/pl/docs/CSS:-moz-background-clip /pl/docs/CSS/background-clip +/pl/docs/CSS:-moz-background-inline-policy /pl/docs/Web/CSS/box-decoration-break +/pl/docs/CSS:-moz-background-origin /pl/docs/Web/CSS/background-origin +/pl/docs/CSS:-moz-binding /pl/docs/Web/CSS/-moz-binding +/pl/docs/CSS:-moz-border-bottom-colors /pl/docs/Web/CSS/-moz-border-bottom-colors +/pl/docs/CSS:-moz-border-left-colors /pl/docs/Web/CSS/-moz-border-left-colors +/pl/docs/CSS:-moz-border-radius /pl/docs/Web/CSS/border-radius +/pl/docs/CSS:-moz-border-radius-bottomleft /pl/docs/Web/CSS/border-bottom-left-radius +/pl/docs/CSS:-moz-border-radius-bottomright /pl/docs/Web/CSS/border-bottom-right-radius +/pl/docs/CSS:-moz-border-radius-topleft /pl/docs/Web/CSS/border-top-left-radius +/pl/docs/CSS:-moz-border-radius-topright /pl/docs/Web/CSS/border-top-right-radius +/pl/docs/CSS:-moz-border-right-colors /pl/docs/Web/CSS/-moz-border-right-colors +/pl/docs/CSS:-moz-border-top-colors /pl/docs/Web/CSS/-moz-border-top-colors +/pl/docs/CSS:-moz-box-align /pl/docs/Web/CSS/-moz-box-align +/pl/docs/CSS:-moz-box-direction /pl/docs/Web/CSS/box-direction +/pl/docs/CSS:-moz-box-flex /pl/docs/Web/CSS/-moz-box-flex +/pl/docs/CSS:-moz-box-orient /pl/docs/Web/CSS/-moz-box-orient +/pl/docs/CSS:-moz-box-pack /pl/docs/Web/CSS/-moz-box-pack +/pl/docs/CSS:-moz-box-sizing /pl/docs/Web/CSS/box-sizing +/pl/docs/CSS:-moz-image-region /pl/docs/Web/CSS/-moz-image-region +/pl/docs/CSS:-moz-opacity /pl/docs/Web/CSS/opacity +/pl/docs/CSS:-moz-outline /pl/docs/Web/CSS/outline +/pl/docs/CSS:-moz-outline-color /pl/docs/Web/CSS/-moz-outline-color +/pl/docs/CSS:-moz-outline-offset /pl/docs/Web/CSS/outline-offset +/pl/docs/CSS:-moz-outline-radius /pl/docs/Web/CSS/-moz-outline-radius +/pl/docs/CSS:-moz-outline-radius-bottomleft /pl/docs/Web/CSS/-moz-outline-radius-bottomleft +/pl/docs/CSS:-moz-outline-radius-bottomright /pl/docs/Web/CSS/-moz-outline-radius-bottomright +/pl/docs/CSS:-moz-outline-radius-topleft /pl/docs/Web/CSS/-moz-outline-radius-topleft +/pl/docs/CSS:-moz-outline-radius-topright /pl/docs/Web/CSS/-moz-outline-radius-topright +/pl/docs/CSS:-moz-outline-style /pl/docs/Web/CSS/outline-style +/pl/docs/CSS::-moz-tree-cell /pl/docs/Web/CSS/:-moz-tree-cell +/pl/docs/CSS::-moz-tree-cell-text /pl/docs/Web/CSS/:-moz-tree-cell-text +/pl/docs/CSS::-moz-tree-column /pl/docs/Web/CSS/:-moz-tree-column +/pl/docs/CSS::-moz-tree-drop-feedback /pl/docs/Web/CSS/:-moz-tree-drop-feedback +/pl/docs/CSS::-moz-tree-image /pl/docs/Web/CSS/:-moz-tree-image +/pl/docs/CSS::-moz-tree-indentation /pl/docs/Web/CSS/:-moz-tree-indentation +/pl/docs/CSS::-moz-tree-line /pl/docs/Web/CSS/:-moz-tree-line +/pl/docs/CSS::-moz-tree-progressmeter /pl/docs/Web/CSS/:-moz-tree-progressmeter +/pl/docs/CSS::-moz-tree-row /pl/docs/Web/CSS/:-moz-tree-row +/pl/docs/CSS::-moz-tree-separator /pl/docs/Web/CSS/:-moz-tree-separator +/pl/docs/CSS::-moz-tree-twisty /pl/docs/Web/CSS/:-moz-tree-twisty +/pl/docs/CSS::after /pl/docs/Web/CSS/:after +/pl/docs/CSS::before /pl/docs/Web/CSS/:before +/pl/docs/CSS::empty /pl/docs/Web/CSS/:empty +/pl/docs/CSS::first-child /pl/docs/Web/CSS/:first-child +/pl/docs/CSS::first-letter /pl/docs/Web/CSS/:first-letter +/pl/docs/CSS::first-node /pl/docs/Web/CSS/:first-node +/pl/docs/CSS::lang /pl/docs/Web/CSS/:lang +/pl/docs/CSS::last-child /pl/docs/Web/CSS/:last-child +/pl/docs/CSS::last-node /pl/docs/Web/CSS/%3A-moz-last-node +/pl/docs/CSS::not /pl/docs/Web/CSS/:not +/pl/docs/CSS::root /pl/docs/Web/CSS/:root +/pl/docs/CSS:@-moz-document /pl/docs/Web/CSS/%40document +/pl/docs/CSS:@import /pl/docs/Web/CSS/@import +/pl/docs/CSS:@media /pl/docs/Web/CSS/@media +/pl/docs/CSS:Dokumentacje /pl/docs/CSS/Dokumentacje +/pl/docs/CSS:Dziedziczenie /pl/docs/Web/CSS/Dziedziczenie +/pl/docs/CSS:Inne_zasoby /pl/docs/Web/CSS/Inne_zasoby +/pl/docs/CSS:Media:Visual /pl/docs/CSS/Media/Visual +/pl/docs/CSS:Na_pocz%C4%85tek /pl/docs/Web/CSS/Na_pocz%C4%85tek +/pl/docs/CSS:Na_pocz%C4%85tek:Bloki /pl/docs/Web/CSS/Na_pocz%C4%85tek/Bloki +/pl/docs/CSS:Na_pocz%C4%85tek:Czym_jest_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czym_jest_CSS +/pl/docs/CSS:Na_pocz%C4%85tek:Czym_jest_CSS? /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czym_jest_CSS +/pl/docs/CSS:Na_pocz%C4%85tek:Czytelny_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czytelny_CSS +/pl/docs/CSS:Na_pocz%C4%85tek:Dane_XML /pl/docs/Web/CSS/Na_pocz%C4%85tek/Dane_XML +/pl/docs/CSS:Na_pocz%C4%85tek:Grafika_SVG /pl/docs/Web/CSS/Na_pocz%C4%85tek/Grafika_SVG +/pl/docs/CSS:Na_pocz%C4%85tek:Jak_dzia%C5%82a_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Jak_dzia%C5%82a_CSS +/pl/docs/CSS:Na_pocz%C4%85tek:JavaScript /pl/docs/Web/CSS/Na_pocz%C4%85tek/JavaScript +/pl/docs/CSS:Na_pocz%C4%85tek:Kaskadowo%C5%9B%C4%87_i_dziedziczenie /pl/docs/Web/CSS/Na_pocz%C4%85tek/Kaskadowo%C5%9B%C4%87_i_dziedziczenie +/pl/docs/CSS:Na_pocz%C4%85tek:Kolor /pl/docs/Web/CSS/Na_pocz%C4%85tek/Kolor +/pl/docs/CSS:Na_pocz%C4%85tek:Listy /pl/docs/Web/CSS/Na_pocz%C4%85tek/Listy +/pl/docs/CSS:Na_pocz%C4%85tek:Media /pl/docs/Web/CSS/Na_pocz%C4%85tek/Media +/pl/docs/CSS:Na_pocz%C4%85tek:Po_co_u%C5%BCywa%C4%87_CSS /pl/docs/Web/CSS/Na_pocz%C4%85tek/Po_co_u%C5%BCywa%C4%87_CSS +/pl/docs/CSS:Na_pocz%C4%85tek:Po_co_u%C5%BCywa%C4%87_CSS? /pl/docs/CSS/Na_pocz%C4%85tek/Po_co_u%C5%BCywa%C4%87_CSS? +/pl/docs/CSS:Na_pocz%C4%85tek:Selektory /pl/docs/Web/CSS/Na_pocz%C4%85tek/Selektory +/pl/docs/CSS:Na_pocz%C4%85tek:Style_tekstowe /pl/docs/Web/CSS/Na_pocz%C4%85tek/Style_tekstowe +/pl/docs/CSS:Na_pocz%C4%85tek:Tabele /pl/docs/Web/CSS/Na_pocz%C4%85tek/Tables +/pl/docs/CSS:Na_pocz%C4%85tek:Tre%C5%9B%C4%87 /pl/docs/Learn/CSS/Howto/Generated_content +/pl/docs/CSS:Na_pocz%C4%85tek:Uk%C5%82ad /pl/docs/Web/CSS/Na_pocz%C4%85tek/Uk%C5%82ad +/pl/docs/CSS:Na_pocz%C4%85tek:Wi%C4%85zania_XBL /pl/docs/Web/CSS/Na_pocz%C4%85tek/Wi%C4%85zania_XBL +/pl/docs/CSS:Na_pocz%C4%85tek:XUL-owe_interfejsy_u%C5%BCytkownika /pl/docs/Web/CSS/Na_pocz%C4%85tek/XUL-owe_interfejsy_u%C5%BCytkownika +/pl/docs/CSS:Przyk%C5%82ady /pl/docs/CSS/Przyk%C5%82ady +/pl/docs/CSS:Selektory_typu /pl/docs/Web/CSS/Selektory_typu +/pl/docs/CSS:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/CSS/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/CSS:Warto%C5%9B%C4%87_pocz%C4%85tkowa /pl/docs/Web/CSS/Warto%C5%9B%C4%87_pocz%C4%85tkowa +/pl/docs/CSS:azimuth /pl/docs/Web/CSS/azimuth +/pl/docs/CSS:background /pl/docs/Web/CSS/background +/pl/docs/CSS:background-attachment /pl/docs/Web/CSS/background-attachment +/pl/docs/CSS:background-color /pl/docs/Web/CSS/background-color +/pl/docs/CSS:background-image /pl/docs/Web/CSS/background-image +/pl/docs/CSS:background-position /pl/docs/Web/CSS/background-position +/pl/docs/CSS:background-repeat /pl/docs/Web/CSS/background-repeat +/pl/docs/CSS:border /pl/docs/Web/CSS/border +/pl/docs/CSS:border-bottom /pl/docs/Web/CSS/border-bottom +/pl/docs/CSS:border-bottom-color /pl/docs/Web/CSS/border-bottom-color +/pl/docs/CSS:border-bottom-style /pl/docs/Web/CSS/border-bottom-style +/pl/docs/CSS:border-bottom-width /pl/docs/Web/CSS/border-bottom-width +/pl/docs/CSS:border-collapse /pl/docs/Web/CSS/border-collapse +/pl/docs/CSS:border-color /pl/docs/Web/CSS/border-color +/pl/docs/CSS:border-left /pl/docs/Web/CSS/border-left +/pl/docs/CSS:border-left-color /pl/docs/Web/CSS/border-left-color +/pl/docs/CSS:border-left-style /pl/docs/Web/CSS/border-left-style +/pl/docs/CSS:border-left-width /pl/docs/Web/CSS/border-left-width +/pl/docs/CSS:border-right /pl/docs/Web/CSS/border-right +/pl/docs/CSS:border-right-color /pl/docs/Web/CSS/border-right-color +/pl/docs/CSS:border-right-style /pl/docs/Web/CSS/border-right-style +/pl/docs/CSS:border-right-width /pl/docs/Web/CSS/border-right-width +/pl/docs/CSS:border-spacing /pl/docs/Web/CSS/border-spacing +/pl/docs/CSS:border-style /pl/docs/Web/CSS/border-style +/pl/docs/CSS:border-top /pl/docs/Web/CSS/border-top +/pl/docs/CSS:border-top-color /pl/docs/Web/CSS/border-top-color +/pl/docs/CSS:border-top-style /pl/docs/Web/CSS/border-top-style +/pl/docs/CSS:border-top-width /pl/docs/Web/CSS/border-top-width +/pl/docs/CSS:border-width /pl/docs/Web/CSS/border-width +/pl/docs/CSS:bottom /pl/docs/Web/CSS/bottom +/pl/docs/CSS:caption-side /pl/docs/Web/CSS/caption-side +/pl/docs/CSS:clear /pl/docs/Web/CSS/clear +/pl/docs/CSS:clip /pl/docs/Web/CSS/clip +/pl/docs/CSS:color /pl/docs/Web/CSS/color +/pl/docs/CSS:content /pl/docs/Web/CSS/content +/pl/docs/CSS:counter-increment /pl/docs/Web/CSS/counter-increment +/pl/docs/CSS:counter-reset /pl/docs/Web/CSS/counter-reset +/pl/docs/CSS:cursor /pl/docs/Web/CSS/cursor +/pl/docs/CSS:direction /pl/docs/Web/CSS/direction +/pl/docs/CSS:display /pl/docs/Web/CSS/display +/pl/docs/CSS:empty-cells /pl/docs/Web/CSS/empty-cells +/pl/docs/CSS:float /pl/docs/Web/CSS/float +/pl/docs/CSS:font /pl/docs/Web/CSS/font +/pl/docs/CSS:font-family /pl/docs/Web/CSS/font-family +/pl/docs/CSS:font-size /pl/docs/Web/CSS/font-size +/pl/docs/CSS:font-size-adjust /pl/docs/Web/CSS/font-size-adjust +/pl/docs/CSS:font-stretch /pl/docs/Web/CSS/font-stretch +/pl/docs/CSS:font-style /pl/docs/Web/CSS/font-style +/pl/docs/CSS:font-variant /pl/docs/Web/CSS/font-variant +/pl/docs/CSS:font-weight /pl/docs/Web/CSS/font-weight +/pl/docs/CSS:height /pl/docs/Web/CSS/height +/pl/docs/CSS:left /pl/docs/Web/CSS/left +/pl/docs/CSS:letter-spacing /pl/docs/Web/CSS/letter-spacing +/pl/docs/CSS:list-style /pl/docs/Web/CSS/list-style +/pl/docs/CSS:list-style-image /pl/docs/Web/CSS/list-style-image +/pl/docs/CSS:list-style-position /pl/docs/Web/CSS/list-style-position +/pl/docs/CSS:list-style-type /pl/docs/Web/CSS/list-style-type +/pl/docs/CSS:text-transform /pl/docs/Web/CSS/text-transform +/pl/docs/CSS:vertical-align /pl/docs/Web/CSS/vertical-align +/pl/docs/CSS:warto%C5%9B%C4%87_wyliczona /pl/docs/CSS/warto%C5%9B%C4%87_wyliczona +/pl/docs/CSS:white-space /pl/docs/Web/CSS/white-space +/pl/docs/CSS:word-spacing /pl/docs/Web/CSS/word-spacing +/pl/docs/CSS:z-index /pl/docs/Web/CSS/z-index +/pl/docs/Checky_-_rozszerzenie_Firefoksa_(link) https://addons.mozilla.org/extensions/moreinfo.php?id=165 +/pl/docs/Chrome_Registration /pl/docs/Mozilla/Rejestracja_Chrome +/pl/docs/Common_CSS_Questions /pl/docs/Cz%C4%99ste_Pytania_o_CSS +/pl/docs/Cz%C4%99ste_pytania_o_CSS /pl/docs/Web/CSS/Cz%C4%99ste_pytania_o_CSS +/pl/docs/DOM/CSS /pl/docs/Web/CSS/CSS_Reference +/pl/docs/DOM/HTMLTableElement /pl/docs/Web/API/HTMLTableElement +/pl/docs/DOM/Selection /pl/docs/Web/API/Selection +/pl/docs/DOM/Selection/addRange /pl/docs/Web/API/Selection/addRange +/pl/docs/DOM/Selection/anchorNode /pl/docs/Web/API/Selection/anchorNode +/pl/docs/DOM/Selection/anchorOffset /pl/docs/Web/API/Selection/anchorOffset +/pl/docs/DOM/Selection/collapse /pl/docs/Web/API/Selection/collapse +/pl/docs/DOM/Selection/collapseToEnd /pl/docs/Web/API/Selection/collapseToEnd +/pl/docs/DOM/Selection/collapseToStart /pl/docs/Web/API/Selection/collapseToStart +/pl/docs/DOM/Selection/containsNode /pl/docs/Web/API/Selection/containsNode +/pl/docs/DOM/Selection/deleteFromDocument /pl/docs/Web/API/Selection/deleteFromDocument +/pl/docs/DOM/Selection/extend /pl/docs/Web/API/Selection/extend +/pl/docs/DOM/Selection/focusNode /pl/docs/Web/API/Selection/focusNode +/pl/docs/DOM/Selection/focusOffset /pl/docs/Web/API/Selection/focusOffset +/pl/docs/DOM/Selection/getRangeAt /pl/docs/Web/API/Selection/getRangeAt +/pl/docs/DOM/Selection/isCollapsed /pl/docs/Web/API/Selection/isCollapsed +/pl/docs/DOM/Selection/rangeCount /pl/docs/Web/API/Selection/rangeCount +/pl/docs/DOM/Selection/removeAllRanges /pl/docs/Web/API/Selection/removeAllRanges +/pl/docs/DOM/Selection/removeRange /pl/docs/Web/API/Selection/removeRange +/pl/docs/DOM/Selection/selectAllChildren /pl/docs/Web/API/Selection/selectAllChildren +/pl/docs/DOM/Selection/toString /pl/docs/Web/API/Selection/toString +/pl/docs/DOM/Storage /pl/docs/Web/API/Storage +/pl/docs/DOM/cssRule /pl/docs/Web/API/CSSRule +/pl/docs/DOM/document /pl/docs/Web/API/Document +/pl/docs/DOM/document.URL /pl/docs/Web/API/Document/URL +/pl/docs/DOM/document.activeElement /pl/docs/Web/API/Document/activeElement +/pl/docs/DOM/document.alinkColor /pl/docs/Web/API/Document/alinkColor +/pl/docs/DOM/document.anchors /pl/docs/Web/API/Document/anchors +/pl/docs/DOM/document.applets /pl/docs/Web/API/Document/applets +/pl/docs/DOM/document.bgColor /pl/docs/Web/API/Document/bgColor +/pl/docs/DOM/document.body /pl/docs/Web/API/Document/body +/pl/docs/DOM/document.characterSet /pl/docs/Web/API/Document/characterSet +/pl/docs/DOM/document.clear /pl/docs/Web/API/Document/clear +/pl/docs/DOM/document.close /pl/docs/Web/API/Document/close +/pl/docs/DOM/document.compatMode /pl/docs/Web/API/Document/compatMode +/pl/docs/DOM/document.cookie /pl/docs/Web/API/Document/cookie +/pl/docs/DOM/document.createAttribute /pl/docs/Web/API/Document/createAttribute +/pl/docs/DOM/document.createDocumentFragment /pl/docs/Web/API/Document/createDocumentFragment +/pl/docs/DOM/document.createElement /pl/docs/Web/API/Document/createElement +/pl/docs/DOM/document.createEvent /pl/docs/Web/API/Document/createEvent +/pl/docs/DOM/document.createRange /pl/docs/Web/API/Document/createRange +/pl/docs/DOM/document.createTextNode /pl/docs/Web/API/Document/createTextNode +/pl/docs/DOM/document.defaultView /pl/docs/Web/API/Document/defaultView +/pl/docs/DOM/document.doctype /pl/docs/Web/API/Document/doctype +/pl/docs/DOM/document.documentElement /pl/docs/Web/API/Document/documentElement +/pl/docs/DOM/document.domain /pl/docs/Web/API/Document/domain +/pl/docs/DOM/document.embeds /pl/docs/Web/API/Document/embeds +/pl/docs/DOM/document.fgColor /pl/docs/Web/API/Document/fgColor +/pl/docs/DOM/document.firstChild /pl/docs/Web/API/Document/firstChild +/pl/docs/DOM/document.forms /pl/docs/Web/API/Document/forms +/pl/docs/DOM/document.getElementById /pl/docs/Web/API/Document/getElementById +/pl/docs/DOM/document.getElementsByName /pl/docs/Web/API/Document/getElementsByName +/pl/docs/DOM/document.getElementsByTagName /pl/docs/Web/API/Document/getElementsByTagName +/pl/docs/DOM/document.hasFocus /pl/docs/Web/API/Document/hasFocus +/pl/docs/DOM/document.height /pl/docs/Web/API/Document/height +/pl/docs/DOM/document.images /pl/docs/Web/API/Document/images +/pl/docs/DOM/document.implementation /pl/docs/Web/API/Document/implementation +/pl/docs/DOM/document.importNode /pl/docs/Web/API/Document/importNode +/pl/docs/DOM/document.lastModified /pl/docs/Web/API/Document/lastModified +/pl/docs/DOM/document.linkColor /pl/docs/Web/API/Document/linkColor +/pl/docs/DOM/document.links /pl/docs/Web/API/Document/links +/pl/docs/DOM/document.loadOverlay /pl/docs/Web/API/Document/loadOverlay +/pl/docs/DOM/document.location /pl/docs/Web/API/Document/location +/pl/docs/DOM/document.namespaceURI /pl/docs/Web/API/Document/namespaceURI +/pl/docs/DOM/document.open /pl/docs/Web/API/Document/open +/pl/docs/DOM/document.plugins /pl/docs/Web/API/Document/plugins +/pl/docs/DOM/document.referrer /pl/docs/Web/API/Document/referrer +/pl/docs/DOM/document.styleSheets /pl/docs/Web/API/Document/styleSheets +/pl/docs/DOM/document.title /pl/docs/Web/API/Document/title +/pl/docs/DOM/document.vlinkColor /pl/docs/Web/API/Document/vlinkColor +/pl/docs/DOM/document.width /pl/docs/Web/API/Document/width +/pl/docs/DOM/document.write /pl/docs/Web/API/Document/write +/pl/docs/DOM/document.writeln /pl/docs/Web/API/Document/writeln +/pl/docs/DOM/element /pl/docs/Web/API/Element +/pl/docs/DOM/element.addEventListener /pl/docs/Web/API/Element/addEventListener +/pl/docs/DOM/element.appendChild /pl/docs/Web/API/Element/appendChild +/pl/docs/DOM/element.attributes /pl/docs/Web/API/Element/attributes +/pl/docs/DOM/element.blur /pl/docs/Web/API/Element/blur +/pl/docs/DOM/element.childNodes /pl/docs/Web/API/Element/childNodes +/pl/docs/DOM/element.className /pl/docs/Web/API/Element/className +/pl/docs/DOM/element.click /pl/docs/Web/API/Element/click +/pl/docs/DOM/element.clientHeight /pl/docs/Web/API/Element/clientHeight +/pl/docs/DOM/element.clientWidth /pl/docs/Web/API/Element/clientWidth +/pl/docs/DOM/element.cloneNode /pl/docs/Web/API/Element/clientNode +/pl/docs/DOM/element.createAttribute /pl/docs/Web/API/Document/createAttribute +/pl/docs/DOM/element.dir /pl/docs/Web/API/Element/dir +/pl/docs/DOM/element.dispatchEvent /pl/docs/Web/API/Element/dispatchEvent +/pl/docs/DOM/element.firstChild /pl/docs/Web/API/Element/firstChild +/pl/docs/DOM/element.focus /pl/docs/Web/API/Element/focus +/pl/docs/DOM/element.getAttribute /pl/docs/Web/API/Element/getAttribute +/pl/docs/DOM/element.getAttributeNS /pl/docs/Web/API/Element/getAttributeNS +/pl/docs/DOM/element.getAttributeNode /pl/docs/Web/API/Element/getAttributeNode +/pl/docs/DOM/element.getAttributeNodeNS /pl/docs/Web/API/Element/getAttributeNodeNS +/pl/docs/DOM/element.getElementsByTagNameNS /pl/docs/Web/API/Element/getElementsByTagNameNS +/pl/docs/DOM/element.hasAttribute /pl/docs/Web/API/Element/hasAttribute +/pl/docs/DOM/element.hasAttributeNS /pl/docs/Web/API/Element/hasAttributeNS +/pl/docs/DOM/element.hasAttributes /pl/docs/Web/API/Element/hasAttributes +/pl/docs/DOM/element.hasChildNodes /pl/docs/Web/API/Element/hasChildNodes +/pl/docs/DOM/element.id /pl/docs/Web/API/Element/id +/pl/docs/DOM/element.innerHTML /pl/docs/Web/API/Element/innerHTML +/pl/docs/DOM/element.insertBefore /pl/docs/Web/API/Element/insertBefore +/pl/docs/DOM/element.lang /pl/docs/Web/API/Element/lang +/pl/docs/DOM/element.lastChild /pl/docs/Web/API/Element/lastChild +/pl/docs/DOM/element.length /pl/docs/Web/API/Element/length +/pl/docs/DOM/element.localName /pl/docs/Web/API/Element/localName +/pl/docs/DOM/element.name /pl/docs/Web/API/Element/name +/pl/docs/DOM/element.namespaceURI /pl/docs/Web/API/Element/namespaceURI +/pl/docs/DOM/element.nextSibling /pl/docs/Web/API/Element/nextSibling +/pl/docs/DOM/element.nodeName /pl/docs/Web/API/Element/nodeName +/pl/docs/DOM/element.nodeType /pl/docs/Web/API/Element/nodeType +/pl/docs/DOM/element.nodeValue /pl/docs/Web/API/Element/nodeValue +/pl/docs/DOM/element.normalize /pl/docs/Web/API/Element/normalize +/pl/docs/DOM/element.offsetHeight /pl/docs/Web/API/Element/offsetHeight +/pl/docs/DOM/element.offsetLeft /pl/docs/Web/API/Element/offsetLeft +/pl/docs/DOM/element.offsetParent /pl/docs/Web/API/Element/offsetParent +/pl/docs/DOM/element.offsetWidth /pl/docs/Web/API/Element/offsetWidth +/pl/docs/DOM/element.onclick /pl/docs/Web/API/Element/onclick +/pl/docs/DOM/element.onkeypress /pl/docs/Web/API/Element/onkeypress +/pl/docs/DOM/element.onkeyup /pl/docs/Web/API/Element/onkeyup +/pl/docs/DOM/element.onmousedown /pl/docs/Web/API/Element/onmousedown +/pl/docs/DOM/element.onmousemove /pl/docs/Web/API/Element/onmousemove +/pl/docs/DOM/element.ownerDocument /pl/docs/Web/API/Element/ownerDocument +/pl/docs/DOM/element.parentNode /pl/docs/Web/API/Element/parentNode +/pl/docs/DOM/element.prefix /pl/docs/Web/API/Element/prefix +/pl/docs/DOM/element.previousSibling /pl/docs/Web/API/Element/previousSibling +/pl/docs/DOM/element.removeAttribute /pl/docs/Web/API/Element/removeAttribute +/pl/docs/DOM/element.removeAttributeNS /pl/docs/Web/API/Element/removeAttributeNS +/pl/docs/DOM/element.removeAttributeNode /pl/docs/Web/API/Element/removeAttributeNode +/pl/docs/DOM/element.removeChild /pl/docs/Web/API/Element/removeChild +/pl/docs/DOM/element.replaceChild /pl/docs/Web/API/Element/replaceChild +/pl/docs/DOM/element.scrollLeft /pl/docs/Web/API/Element/scrollLeft +/pl/docs/DOM/element.scrollTop /pl/docs/Web/API/Element/scrollTop +/pl/docs/DOM/element.scrollWidth /pl/docs/Web/API/Element/scrollWidth +/pl/docs/DOM/element.setAttribute /pl/docs/Web/API/Element/setAttribute +/pl/docs/DOM/element.setAttributeNS /pl/docs/Web/API/Element/setAttributeNS +/pl/docs/DOM/element.setAttributeNode /pl/docs/Web/API/Element/setAttributeNode +/pl/docs/DOM/element.setAttributeNodeNS /pl/docs/Web/API/Element/setAttributeNodeNS +/pl/docs/DOM/element.style /pl/docs/Web/API/Element/style +/pl/docs/DOM/element.tabIndex /pl/docs/Web/API/Element/tabIndex +/pl/docs/DOM/element.tagName /pl/docs/Web/API/Element/tagName +/pl/docs/DOM/element.textContent /pl/docs/Web/API/Element/textContent +/pl/docs/DOM/event /pl/docs/Web/API/Event +/pl/docs/DOM/event.altKey /pl/docs/Web/API/Event/altKey +/pl/docs/DOM/event.bubbles /pl/docs/Web/API/Event/bubbles +/pl/docs/DOM/event.button /pl/docs/Web/API/Event/button +/pl/docs/DOM/event.cancelBubble /pl/docs/Web/API/Event/cancelBubble +/pl/docs/DOM/event.cancelable /pl/docs/Web/API/Event/cancelable +/pl/docs/DOM/event.charCode /pl/docs/Web/API/Event/charCode +/pl/docs/DOM/event.clientX /pl/docs/Web/API/Event/clientX +/pl/docs/DOM/event.clientY /pl/docs/Web/API/Event/clientY +/pl/docs/DOM/event.ctrlKey /pl/docs/Web/API/Event/ctrlKey +/pl/docs/DOM/event.currentTarget /pl/docs/Web/API/Event/currentTarget +/pl/docs/DOM/event.detail /pl/docs/Web/API/Event/detail +/pl/docs/DOM/event.eventPhase /pl/docs/Web/API/Event/eventPhase +/pl/docs/DOM/event.initEvent /pl/docs/Web/API/Event/initEvent +/pl/docs/DOM/event.initMouseEvent /pl/docs/Web/API/Event/initMouseEvent +/pl/docs/DOM/event.initUIEvent /pl/docs/Web/API/Event/initUIEvent +/pl/docs/DOM/event.isChar /pl/docs/Web/API/Event/isChar +/pl/docs/DOM/event.keyCode /pl/docs/Web/API/Event/keyCode +/pl/docs/DOM/event.layerX /pl/docs/Web/API/Event/layerX +/pl/docs/DOM/event.layerY /pl/docs/Web/API/Event/layerY +/pl/docs/DOM/event.metaKey /pl/docs/Web/API/Event/metaKey +/pl/docs/DOM/event.pageX /pl/docs/Web/API/Event/pageX +/pl/docs/DOM/event.pageY /pl/docs/Web/API/Event/pageY +/pl/docs/DOM/event.relatedTarget /pl/docs/Web/API/Event/relatedTarget +/pl/docs/DOM/event.screenX /pl/docs/Web/API/Event/screenX +/pl/docs/DOM/event.screenY /pl/docs/Web/API/Event/screenY +/pl/docs/DOM/event.shiftKey /pl/docs/Web/API/Event/shiftKey +/pl/docs/DOM/event.stopPropagation /pl/docs/Web/API/Event/stopPropagation +/pl/docs/DOM/event.target /pl/docs/Web/API/Event/target +/pl/docs/DOM/event.timeStamp /pl/docs/Web/API/Event/timeStamp +/pl/docs/DOM/event.type /pl/docs/Web/API/Event/type +/pl/docs/DOM/event.view /pl/docs/Web/API/Event/view +/pl/docs/DOM/form /pl/docs/Web/API/HTMLFormElement +/pl/docs/DOM/form.acceptCharset /pl/docs/Web/API/HTMLFormElement/acceptCharset +/pl/docs/DOM/form.action /pl/docs/Web/API/HTMLFormElement/action +/pl/docs/DOM/form.elements /pl/docs/Web/API/HTMLFormElement/elements +/pl/docs/DOM/form.encoding /pl/docs/Web/API/HTMLFormElement/encoding +/pl/docs/DOM/form.enctype /pl/docs/Web/API/HTMLFormElement/enctype +/pl/docs/DOM/form.length /pl/docs/Web/API/HTMLFormElement/length +/pl/docs/DOM/form.method /pl/docs/Web/API/HTMLFormElement/method +/pl/docs/DOM/form.name /pl/docs/Web/API/HTMLFormElement/name +/pl/docs/DOM/form.reset /pl/docs/Web/API/HTMLFormElement/reset +/pl/docs/DOM/form.submit /pl/docs/Web/API/HTMLFormElement/submit +/pl/docs/DOM/form.target /pl/docs/Web/API/HTMLFormElement/target +/pl/docs/DOM/range /pl/docs/Web/API/Range +/pl/docs/DOM/stylesheet /pl/docs/Web/API/Stylesheet +/pl/docs/DOM/stylesheet.cssRules /pl/docs/Web/API/Stylesheet/cssRules +/pl/docs/DOM/stylesheet.deleteRule /pl/docs/Web/API/Stylesheet/deleteRule +/pl/docs/DOM/stylesheet.disabled /pl/docs/Web/API/Stylesheet/disabled +/pl/docs/DOM/stylesheet.href /pl/docs/Web/API/Stylesheet/href +/pl/docs/DOM/stylesheet.insertRule /pl/docs/Web/API/Stylesheet/insertRule +/pl/docs/DOM/stylesheet.media /pl/docs/Web/API/Stylesheet/media +/pl/docs/DOM/stylesheet.ownerRule /pl/docs/Web/API/Stylesheet/ownerRule +/pl/docs/DOM/stylesheet.parentStyleSheet /pl/docs/Web/API/Stylesheet/parentStyleSheet +/pl/docs/DOM/stylesheet.title /pl/docs/Web/API/Stylesheet/title +/pl/docs/DOM/stylesheet.type /pl/docs/Web/API/Stylesheet/type +/pl/docs/DOM/table /pl/docs/Web/API/HTMLTableElement +/pl/docs/DOM/table.caption /pl/docs/Web/API/HTMLTableElement/caption +/pl/docs/DOM/table.tFoot /pl/docs/Web/API/HTMLTableElement/tFoot +/pl/docs/DOM/table.tHead /pl/docs/Web/API/HTMLTableElement/tHead +/pl/docs/DOM/window /pl/docs/Web/API/Window +/pl/docs/DOM/window.alert /pl/docs/Web/API/Window/alert +/pl/docs/DOM/window.clearInterval /pl/docs/Web/API/Window/clearInterval +/pl/docs/DOM/window.clearTimeout /pl/docs/Web/API/Window/clearTimeout +/pl/docs/DOM/window.closed /pl/docs/Web/API/Window/closed +/pl/docs/DOM/window.content /pl/docs/Web/API/Window/content +/pl/docs/DOM/window.controllers /pl/docs/Web/API/Window/controllers +/pl/docs/DOM/window.crypto /pl/docs/Web/API/Window/crypto +/pl/docs/DOM/window.defaultStatus /pl/docs/Web/API/Window/defaultStatus +/pl/docs/DOM/window.directories /pl/docs/Web/API/Window/directories +/pl/docs/DOM/window.document /pl/docs/Web/API/Window/document +/pl/docs/DOM/window.dump /pl/docs/Web/API/Window/dump +/pl/docs/DOM/window.focus /pl/docs/Web/API/Window/focus +/pl/docs/DOM/window.frameElement /pl/docs/Web/API/Window/frameElement +/pl/docs/DOM/window.frames /pl/docs/Web/API/Window/frames +/pl/docs/DOM/window.getSelection /pl/docs/Web/API/Window/getSelection +/pl/docs/DOM/window.name /pl/docs/Web/API/Window/name +/pl/docs/DOM/window.navigator /pl/docs/Web/API/Window/navigator +/pl/docs/DOM/window.navigator.appCodeName /pl/docs/Web/API/Navigator/appCodeName +/pl/docs/DOM/window.navigator.appName /pl/docs/Web/API/Navigator/appName +/pl/docs/DOM/window.navigator.appVersion /pl/docs/Web/API/Navigator/appVersion +/pl/docs/DOM/window.navigator.buildID /pl/docs/Web/API/Navigator/buildID +/pl/docs/DOM/window.navigator.cookieEnabled /pl/docs/Web/API/Navigator/cookieEnabled +/pl/docs/DOM/window.navigator.javaEnabled /pl/docs/Web/API/Navigator/javaEnabled +/pl/docs/DOM/window.navigator.language /pl/docs/Web/API/Navigator/language +/pl/docs/DOM/window.navigator.mimeTypes /pl/docs/Web/API/Navigator/mimeTypes +/pl/docs/DOM/window.navigator.onLine /pl/docs/Web/API/Navigator/onLine +/pl/docs/DOM/window.navigator.oscpu /pl/docs/Web/API/Navigator/oscpu +/pl/docs/DOM/window.navigator.platform /pl/docs/Web/API/Navigator/platform +/pl/docs/DOM/window.navigator.plugins /pl/docs/Web/API/Navigator/plugins +/pl/docs/DOM/window.navigator.product /pl/docs/Web/API/Navigator/product +/pl/docs/DOM/window.navigator.productSub /pl/docs/Web/API/Navigator/productSub +/pl/docs/DOM/window.navigator.registerContentHandler /pl/docs/Web/API/Navigator/registerContentHandler +/pl/docs/DOM/window.navigator.registerProtocolHandler /pl/docs/Web/API/Navigator/registerProtocolHandler +/pl/docs/DOM/window.onload /pl/docs/Web/API/Window/onload +/pl/docs/DOM/window.open /pl/docs/Web/API/Window/open +/pl/docs/DOM/window.openDialog /pl/docs/Web/API/Window/openDialog +/pl/docs/DOM/window.opener /pl/docs/Web/API/Window/opener +/pl/docs/DOM/window.prompt /pl/docs/Web/API/Window/prompt +/pl/docs/DOM/window.resizeBy /pl/docs/Web/API/Window/resizeBy +/pl/docs/DOM/window.resizeTo /pl/docs/Web/API/Window/resizeTo +/pl/docs/DOM/window.screen.colorDepth /pl/docs/Web/API/Screen/colorDepth +/pl/docs/DOM/window.scroll /pl/docs/Web/API/Window/scroll +/pl/docs/DOM/window.scrollByLines /pl/docs/Web/API/Window/scrollByLines +/pl/docs/DOM/window.scrollByPages /pl/docs/Web/API/Window/scrollByPages +/pl/docs/DOM/window.scrollTo /pl/docs/Web/API/Window/scrollTo +/pl/docs/DOM/window.setInterval /pl/docs/Web/API/Window/setInterval +/pl/docs/DOM/window.setTimeout /pl/docs/Web/API/Window/setTimeout +/pl/docs/DOM:Artyku%C5%82y /pl/docs/DOM/Artyku%C5%82y +/pl/docs/DOM:CSS /pl/docs/Web/CSS/CSS_Reference +/pl/docs/DOM:Dokumentacje /pl/docs/DOM/Dokumentacje +/pl/docs/DOM:Inne_zasoby /pl/docs/DOM/Inne_zasoby +/pl/docs/DOM:Przyk%C5%82ady /pl/docs/DOM/Przyk%C5%82ady +/pl/docs/DOM:Selection /pl/docs/Web/API/Selection +/pl/docs/DOM:Selection:addRange /pl/docs/Web/API/Selection/addRange +/pl/docs/DOM:Selection:anchorNode /pl/docs/Web/API/Selection/anchorNode +/pl/docs/DOM:Selection:anchorOffset /pl/docs/Web/API/Selection/anchorOffset +/pl/docs/DOM:Selection:collapse /pl/docs/Web/API/Selection/collapse +/pl/docs/DOM:Selection:collapseToEnd /pl/docs/Web/API/Selection/collapseToEnd +/pl/docs/DOM:Selection:collapseToStart /pl/docs/Web/API/Selection/collapseToStart +/pl/docs/DOM:Selection:containsNode /pl/docs/Web/API/Selection/containsNode +/pl/docs/DOM:Selection:deleteFromDocument /pl/docs/Web/API/Selection/deleteFromDocument +/pl/docs/DOM:Selection:extend /pl/docs/Web/API/Selection/extend +/pl/docs/DOM:Selection:focusNode /pl/docs/Web/API/Selection/focusNode +/pl/docs/DOM:Selection:focusOffset /pl/docs/Web/API/Selection/focusOffset +/pl/docs/DOM:Selection:getRangeAt /pl/docs/Web/API/Selection/getRangeAt +/pl/docs/DOM:Selection:isCollapsed /pl/docs/Web/API/Selection/isCollapsed +/pl/docs/DOM:Selection:rangeCount /pl/docs/Web/API/Selection/rangeCount +/pl/docs/DOM:Selection:removeAllRanges /pl/docs/Web/API/Selection/removeAllRanges +/pl/docs/DOM:Selection:removeRange /pl/docs/Web/API/Selection/removeRange +/pl/docs/DOM:Selection:selectAllChildren /pl/docs/Web/API/Selection/selectAllChildren +/pl/docs/DOM:Selection:toString /pl/docs/Web/API/Selection/toString +/pl/docs/DOM:Storage /pl/docs/Web/API/Storage +/pl/docs/DOM:WRONG_DOCUMENT_ERR_note /pl/docs/DOM/WRONG_DOCUMENT_ERR_note +/pl/docs/DOM:cssRule /pl/docs/Web/API/CSSRule +/pl/docs/DOM:dispatchEvent_-_przyk%C5%82ad /pl/docs/DOM/dispatchEvent_-_przyk%C5%82ad +/pl/docs/DOM:document /pl/docs/Web/API/Document +/pl/docs/DOM:document.URL /pl/docs/Web/API/Document/URL +/pl/docs/DOM:document.activeElement /pl/docs/Web/API/Document/activeElement +/pl/docs/DOM:document.adoptNode /pl/docs/DOM/document.adoptNode +/pl/docs/DOM:document.alinkColor /pl/docs/Web/API/Document/alinkColor +/pl/docs/DOM:document.anchors /pl/docs/Web/API/Document/anchors +/pl/docs/DOM:document.applets /pl/docs/Web/API/Document/applets +/pl/docs/DOM:document.bgColor /pl/docs/Web/API/Document/bgColor +/pl/docs/DOM:document.body /pl/docs/Web/API/Document/body +/pl/docs/DOM:document.characterSet /pl/docs/Web/API/Document/characterSet +/pl/docs/DOM:document.clear /pl/docs/Web/API/Document/clear +/pl/docs/DOM:document.close /pl/docs/Web/API/Document/close +/pl/docs/DOM:document.compatMode /pl/docs/Web/API/Document/compatMode +/pl/docs/DOM:document.cookie /pl/docs/Web/API/Document/cookie +/pl/docs/DOM:document.createAttribute /pl/docs/Web/API/Document/createAttribute +/pl/docs/DOM:document.createDocumentFragment /pl/docs/Web/API/Document/createDocumentFragment +/pl/docs/DOM:document.createElement /pl/docs/Web/API/Document/createElement +/pl/docs/DOM:document.createElementNS /pl/docs/DOM/document.createElementNS +/pl/docs/DOM:document.createEvent /pl/docs/Web/API/Document/createEvent +/pl/docs/DOM:document.createRange /pl/docs/Web/API/Document/createRange +/pl/docs/DOM:document.createTextNode /pl/docs/Web/API/Document/createTextNode +/pl/docs/DOM:document.defaultView /pl/docs/Web/API/Document/defaultView +/pl/docs/DOM:document.doctype /pl/docs/Web/API/Document/doctype +/pl/docs/DOM:document.documentElement /pl/docs/Web/API/Document/documentElement +/pl/docs/DOM:document.domain /pl/docs/Web/API/Document/domain +/pl/docs/DOM:document.embeds /pl/docs/Web/API/Document/embeds +/pl/docs/DOM:document.evaluate /pl/docs/DOM/document.evaluate +/pl/docs/DOM:document.fgColor /pl/docs/Web/API/Document/fgColor +/pl/docs/DOM:document.firstChild /pl/docs/Web/API/Document/firstChild +/pl/docs/DOM:document.forms /pl/docs/Web/API/Document/forms +/pl/docs/DOM:document.getElementById /pl/docs/Web/API/Document/getElementById +/pl/docs/DOM:document.getElementsByName /pl/docs/Web/API/Document/getElementsByName +/pl/docs/DOM:document.getElementsByTagName /pl/docs/Web/API/Document/getElementsByTagName +/pl/docs/DOM:document.hasFocus /pl/docs/Web/API/Document/hasFocus +/pl/docs/DOM:document.height /pl/docs/Web/API/Document/height +/pl/docs/DOM:document.images /pl/docs/Web/API/Document/images +/pl/docs/DOM:document.implementation /pl/docs/Web/API/Document/implementation +/pl/docs/DOM:document.importNode /pl/docs/Web/API/Document/importNode +/pl/docs/DOM:document.lastModified /pl/docs/Web/API/Document/lastModified +/pl/docs/DOM:document.linkColor /pl/docs/Web/API/Document/linkColor +/pl/docs/DOM:document.links /pl/docs/Web/API/Document/links +/pl/docs/DOM:document.loadOverlay /pl/docs/Web/API/Document/loadOverlay +/pl/docs/DOM:document.location /pl/docs/Web/API/Document/location +/pl/docs/DOM:document.namespaceURI /pl/docs/Web/API/Document/namespaceURI +/pl/docs/DOM:document.open /pl/docs/Web/API/Document/open +/pl/docs/DOM:document.plugins /pl/docs/Web/API/Document/plugins +/pl/docs/DOM:document.referrer /pl/docs/Web/API/Document/referrer +/pl/docs/DOM:document.styleSheets /pl/docs/Web/API/Document/styleSheets +/pl/docs/DOM:document.title /pl/docs/Web/API/Document/title +/pl/docs/DOM:document.vlinkColor /pl/docs/Web/API/Document/vlinkColor +/pl/docs/DOM:document.width /pl/docs/Web/API/Document/width +/pl/docs/DOM:document.write /pl/docs/Web/API/Document/write +/pl/docs/DOM:document.writeln /pl/docs/Web/API/Document/writeln +/pl/docs/DOM:element /pl/docs/Web/API/Element +/pl/docs/DOM:element.addEventListener /pl/docs/Web/API/Element/addEventListener +/pl/docs/DOM:element.appendChild /pl/docs/Web/API/Element/appendChild +/pl/docs/DOM:element.attributes /pl/docs/Web/API/Element/attributes +/pl/docs/DOM:element.blur /pl/docs/Web/API/Element/blur +/pl/docs/DOM:element.childNodes /pl/docs/Web/API/Element/childNodes +/pl/docs/DOM:element.className /pl/docs/Web/API/Element/className +/pl/docs/DOM:element.click /pl/docs/Web/API/Element/click +/pl/docs/DOM:element.clientHeight /pl/docs/Web/API/Element/clientHeight +/pl/docs/DOM:element.clientLeft /pl/docs/DOM/element.clientLeft +/pl/docs/DOM:element.clientTop /pl/docs/DOM/element.clientTop +/pl/docs/DOM:element.clientWidth /pl/docs/Web/API/Element/clientWidth +/pl/docs/DOM:element.cloneNode /pl/docs/Web/API/Element/clientNode +/pl/docs/DOM:element.createAttribute /pl/docs/Web/API/Document/createAttribute +/pl/docs/DOM:element.dir /pl/docs/Web/API/Element/dir +/pl/docs/DOM:element.dispatchEvent /pl/docs/Web/API/Element/dispatchEvent +/pl/docs/DOM:element.firstChild /pl/docs/Web/API/Element/firstChild +/pl/docs/DOM:element.focus /pl/docs/Web/API/Element/focus +/pl/docs/DOM:element.getAttribute /pl/docs/Web/API/Element/getAttribute +/pl/docs/DOM:element.getAttributeNS /pl/docs/Web/API/Element/getAttributeNS +/pl/docs/DOM:element.getAttributeNode /pl/docs/Web/API/Element/getAttributeNode +/pl/docs/DOM:element.getAttributeNodeNS /pl/docs/Web/API/Element/getAttributeNodeNS +/pl/docs/DOM:element.getElementsByTagName /pl/docs/DOM/element.getElementsByTagName +/pl/docs/DOM:element.getElementsByTagNameNS /pl/docs/Web/API/Element/getElementsByTagNameNS +/pl/docs/DOM:element.hasAttribute /pl/docs/Web/API/Element/hasAttribute +/pl/docs/DOM:element.hasAttributeNS /pl/docs/Web/API/Element/hasAttributeNS +/pl/docs/DOM:element.hasAttributes /pl/docs/Web/API/Element/hasAttributes +/pl/docs/DOM:element.hasChildNodes /pl/docs/Web/API/Element/hasChildNodes +/pl/docs/DOM:element.id /pl/docs/Web/API/Element/id +/pl/docs/DOM:element.innerHTML /pl/docs/Web/API/Element/innerHTML +/pl/docs/DOM:element.insertBefore /pl/docs/Web/API/Element/insertBefore +/pl/docs/DOM:element.lang /pl/docs/Web/API/Element/lang +/pl/docs/DOM:element.lastChild /pl/docs/Web/API/Element/lastChild +/pl/docs/DOM:element.length /pl/docs/Web/API/Element/length +/pl/docs/DOM:element.localName /pl/docs/Web/API/Element/localName +/pl/docs/DOM:element.name /pl/docs/Web/API/Element/name +/pl/docs/DOM:element.namespaceURI /pl/docs/Web/API/Element/namespaceURI +/pl/docs/DOM:element.nextSibling /pl/docs/Web/API/Element/nextSibling +/pl/docs/DOM:element.nodeName /pl/docs/Web/API/Element/nodeName +/pl/docs/DOM:element.nodeType /pl/docs/Web/API/Element/nodeType +/pl/docs/DOM:element.nodeValue /pl/docs/Web/API/Element/nodeValue +/pl/docs/DOM:element.normalize /pl/docs/Web/API/Element/normalize +/pl/docs/DOM:element.offsetHeight /pl/docs/Web/API/Element/offsetHeight +/pl/docs/DOM:element.offsetLeft /pl/docs/Web/API/Element/offsetLeft +/pl/docs/DOM:element.offsetParent /pl/docs/Web/API/Element/offsetParent +/pl/docs/DOM:element.offsetTop /pl/docs/DOM/element.offsetTop +/pl/docs/DOM:element.offsetWidth /pl/docs/Web/API/Element/offsetWidth +/pl/docs/DOM:element.onclick /pl/docs/Web/API/Element/onclick +/pl/docs/DOM:element.onkeydown /pl/docs/DOM/element.onkeydown +/pl/docs/DOM:element.onkeypress /pl/docs/Web/API/Element/onkeypress +/pl/docs/DOM:element.onkeyup /pl/docs/Web/API/Element/onkeyup +/pl/docs/DOM:element.onmousedown /pl/docs/Web/API/Element/onmousedown +/pl/docs/DOM:element.onmousemove /pl/docs/Web/API/Element/onmousemove +/pl/docs/DOM:element.onmouseover /pl/docs/DOM/element.onmouseover +/pl/docs/DOM:element.ownerDocument /pl/docs/Web/API/Element/ownerDocument +/pl/docs/DOM:element.parentNode /pl/docs/Web/API/Element/parentNode +/pl/docs/DOM:element.prefix /pl/docs/Web/API/Element/prefix +/pl/docs/DOM:element.previousSibling /pl/docs/Web/API/Element/previousSibling +/pl/docs/DOM:element.removeAttribute /pl/docs/Web/API/Element/removeAttribute +/pl/docs/DOM:element.removeAttributeNS /pl/docs/Web/API/Element/removeAttributeNS +/pl/docs/DOM:element.removeAttributeNode /pl/docs/Web/API/Element/removeAttributeNode +/pl/docs/DOM:element.removeChild /pl/docs/Web/API/Element/removeChild +/pl/docs/DOM:element.removeEventListener /pl/docs/DOM/element.removeEventListener +/pl/docs/DOM:element.replaceChild /pl/docs/Web/API/Element/replaceChild +/pl/docs/DOM:element.scrollHeight /pl/docs/DOM/element.scrollHeight +/pl/docs/DOM:element.scrollLeft /pl/docs/Web/API/Element/scrollLeft +/pl/docs/DOM:element.scrollTop /pl/docs/Web/API/Element/scrollTop +/pl/docs/DOM:element.scrollWidth /pl/docs/Web/API/Element/scrollWidth +/pl/docs/DOM:element.setAttribute /pl/docs/Web/API/Element/setAttribute +/pl/docs/DOM:element.setAttributeNS /pl/docs/Web/API/Element/setAttributeNS +/pl/docs/DOM:element.setAttributeNode /pl/docs/Web/API/Element/setAttributeNode +/pl/docs/DOM:element.setAttributeNodeNS /pl/docs/Web/API/Element/setAttributeNodeNS +/pl/docs/DOM:element.style /pl/docs/Web/API/Element/style +/pl/docs/DOM:element.tabIndex /pl/docs/Web/API/Element/tabIndex +/pl/docs/DOM:element.tagName /pl/docs/Web/API/Element/tagName +/pl/docs/DOM:element.textContent /pl/docs/Web/API/Element/textContent +/pl/docs/DOM:event /pl/docs/Web/API/Event +/pl/docs/DOM:event.altKey /pl/docs/Web/API/Event/altKey +/pl/docs/DOM:event.bubbles /pl/docs/Web/API/Event/bubbles +/pl/docs/DOM:event.button /pl/docs/Web/API/Event/button +/pl/docs/DOM:event.cancelBubble /pl/docs/Web/API/Event/cancelBubble +/pl/docs/DOM:event.cancelable /pl/docs/Web/API/Event/cancelable +/pl/docs/DOM:event.charCode /pl/docs/Web/API/Event/charCode +/pl/docs/DOM:event.clientX /pl/docs/Web/API/Event/clientX +/pl/docs/DOM:event.clientY /pl/docs/Web/API/Event/clientY +/pl/docs/DOM:event.ctrlKey /pl/docs/Web/API/Event/ctrlKey +/pl/docs/DOM:event.currentTarget /pl/docs/Web/API/Event/currentTarget +/pl/docs/DOM:event.detail /pl/docs/Web/API/Event/detail +/pl/docs/DOM:event.eventPhase /pl/docs/Web/API/Event/eventPhase +/pl/docs/DOM:event.initEvent /pl/docs/Web/API/Event/initEvent +/pl/docs/DOM:event.initKeyEvent /pl/docs/DOM/event.initKeyEvent +/pl/docs/DOM:event.initMouseEvent /pl/docs/Web/API/Event/initMouseEvent +/pl/docs/DOM:event.initUIEvent /pl/docs/Web/API/Event/initUIEvent +/pl/docs/DOM:event.isChar /pl/docs/Web/API/Event/isChar +/pl/docs/DOM:event.keyCode /pl/docs/Web/API/Event/keyCode +/pl/docs/DOM:event.layerX /pl/docs/Web/API/Event/layerX +/pl/docs/DOM:event.layerY /pl/docs/Web/API/Event/layerY +/pl/docs/DOM:event.metaKey /pl/docs/Web/API/Event/metaKey +/pl/docs/DOM:event.pageX /pl/docs/Web/API/Event/pageX +/pl/docs/DOM:event.pageY /pl/docs/Web/API/Event/pageY +/pl/docs/DOM:event.preventDefault /pl/docs/DOM/event.preventDefault +/pl/docs/DOM:event.relatedTarget /pl/docs/Web/API/Event/relatedTarget +/pl/docs/DOM:event.screenX /pl/docs/Web/API/Event/screenX +/pl/docs/DOM:event.screenY /pl/docs/Web/API/Event/screenY +/pl/docs/DOM:event.shiftKey /pl/docs/Web/API/Event/shiftKey +/pl/docs/DOM:event.stopPropagation /pl/docs/Web/API/Event/stopPropagation +/pl/docs/DOM:event.target /pl/docs/Web/API/Event/target +/pl/docs/DOM:event.timeStamp /pl/docs/Web/API/Event/timeStamp +/pl/docs/DOM:event.type /pl/docs/Web/API/Event/type +/pl/docs/DOM:event.view /pl/docs/Web/API/Event/view +/pl/docs/DOM:form /pl/docs/Web/API/HTMLFormElement +/pl/docs/DOM:form.acceptCharset /pl/docs/Web/API/HTMLFormElement/acceptCharset +/pl/docs/DOM:form.action /pl/docs/Web/API/HTMLFormElement/action +/pl/docs/DOM:form.elements /pl/docs/Web/API/HTMLFormElement/elements +/pl/docs/DOM:form.encoding /pl/docs/Web/API/HTMLFormElement/encoding +/pl/docs/DOM:form.enctype /pl/docs/Web/API/HTMLFormElement/enctype +/pl/docs/DOM:form.length /pl/docs/Web/API/HTMLFormElement/length +/pl/docs/DOM:form.method /pl/docs/Web/API/HTMLFormElement/method +/pl/docs/DOM:form.name /pl/docs/Web/API/HTMLFormElement/name +/pl/docs/DOM:form.reset /pl/docs/Web/API/HTMLFormElement/reset +/pl/docs/DOM:form.submit /pl/docs/Web/API/HTMLFormElement/submit +/pl/docs/DOM:form.target /pl/docs/Web/API/HTMLFormElement/target +/pl/docs/DOM:range /pl/docs/Web/API/Range +/pl/docs/DOM:range.intersectsNode /pl/docs/DOM/range.intersectsNode +/pl/docs/DOM:style /pl/docs/DOM/style +/pl/docs/DOM:stylesheet /pl/docs/Web/API/Stylesheet +/pl/docs/DOM:stylesheet.cssRules /pl/docs/Web/API/Stylesheet/cssRules +/pl/docs/DOM:stylesheet.deleteRule /pl/docs/Web/API/Stylesheet/deleteRule +/pl/docs/DOM:stylesheet.disabled /pl/docs/Web/API/Stylesheet/disabled +/pl/docs/DOM:stylesheet.href /pl/docs/Web/API/Stylesheet/href +/pl/docs/DOM:stylesheet.insertRule /pl/docs/Web/API/Stylesheet/insertRule +/pl/docs/DOM:stylesheet.media /pl/docs/Web/API/Stylesheet/media +/pl/docs/DOM:stylesheet.ownerNode /pl/docs/DOM/stylesheet.ownerNode +/pl/docs/DOM:stylesheet.ownerRule /pl/docs/Web/API/Stylesheet/ownerRule +/pl/docs/DOM:stylesheet.parentStyleSheet /pl/docs/Web/API/Stylesheet/parentStyleSheet +/pl/docs/DOM:stylesheet.title /pl/docs/Web/API/Stylesheet/title +/pl/docs/DOM:stylesheet.type /pl/docs/Web/API/Stylesheet/type +/pl/docs/DOM:table /pl/docs/Web/API/HTMLTableElement +/pl/docs/DOM:table.caption /pl/docs/Web/API/HTMLTableElement/caption +/pl/docs/DOM:table.tFoot /pl/docs/Web/API/HTMLTableElement/tFoot +/pl/docs/DOM:table.tHead /pl/docs/Web/API/HTMLTableElement/tHead +/pl/docs/DOM:window /pl/docs/Web/API/Window +/pl/docs/DOM:window.alert /pl/docs/Web/API/Window/alert +/pl/docs/DOM:window.captureEvents /pl/docs/DOM/window.captureEvents +/pl/docs/DOM:window.closed /pl/docs/Web/API/Window/closed +/pl/docs/DOM:window.content /pl/docs/Web/API/Window/content +/pl/docs/DOM:window.controllers /pl/docs/Web/API/Window/controllers +/pl/docs/DOM:window.crypto /pl/docs/Web/API/Window/crypto +/pl/docs/DOM:window.defaultStatus /pl/docs/Web/API/Window/defaultStatus +/pl/docs/DOM:window.directories /pl/docs/Web/API/Window/directories +/pl/docs/DOM:window.document /pl/docs/Web/API/Window/document +/pl/docs/DOM:window.dump /pl/docs/Web/API/Window/dump +/pl/docs/DOM:window.focus /pl/docs/Web/API/Window/focus +/pl/docs/DOM:window.frameElement /pl/docs/Web/API/Window/frameElement +/pl/docs/DOM:window.frames /pl/docs/Web/API/Window/frames +/pl/docs/DOM:window.getSelection /pl/docs/Web/API/Window/getSelection +/pl/docs/DOM:window.name /pl/docs/Web/API/Window/name +/pl/docs/DOM:window.navigator /pl/docs/Web/API/Window/navigator +/pl/docs/DOM:window.navigator.appCodeName /pl/docs/Web/API/Navigator/appCodeName +/pl/docs/DOM:window.navigator.appName /pl/docs/Web/API/Navigator/appName +/pl/docs/DOM:window.navigator.appVersion /pl/docs/Web/API/Navigator/appVersion +/pl/docs/DOM:window.navigator.buildID /pl/docs/Web/API/Navigator/buildID +/pl/docs/DOM:window.navigator.cookieEnabled /pl/docs/Web/API/Navigator/cookieEnabled +/pl/docs/DOM:window.navigator.javaEnabled /pl/docs/Web/API/Navigator/javaEnabled +/pl/docs/DOM:window.navigator.language /pl/docs/Web/API/Navigator/language +/pl/docs/DOM:window.navigator.mimeTypes /pl/docs/Web/API/Navigator/mimeTypes +/pl/docs/DOM:window.navigator.onLine /pl/docs/Web/API/Navigator/onLine +/pl/docs/DOM:window.navigator.oscpu /pl/docs/Web/API/Navigator/oscpu +/pl/docs/DOM:window.navigator.platform /pl/docs/Web/API/Navigator/platform +/pl/docs/DOM:window.navigator.plugins /pl/docs/Web/API/Navigator/plugins +/pl/docs/DOM:window.navigator.product /pl/docs/Web/API/Navigator/product +/pl/docs/DOM:window.navigator.productSub /pl/docs/Web/API/Navigator/productSub +/pl/docs/DOM:window.navigator.registerContentHandler /pl/docs/Web/API/Navigator/registerContentHandler +/pl/docs/DOM:window.navigator.registerProtocolHandler /pl/docs/Web/API/Navigator/registerProtocolHandler +/pl/docs/DOM:window.onload /pl/docs/Web/API/Window/onload +/pl/docs/DOM:window.open /pl/docs/Web/API/Window/open +/pl/docs/DOM:window.openDialog /pl/docs/Web/API/Window/openDialog +/pl/docs/DOM:window.opener /pl/docs/Web/API/Window/opener +/pl/docs/DOM:window.prompt /pl/docs/Web/API/Window/prompt +/pl/docs/DOM:window.releaseEvents /pl/docs/DOM/window.releaseEvents +/pl/docs/DOM:window.resizeBy /pl/docs/Web/API/Window/resizeBy +/pl/docs/DOM:window.resizeTo /pl/docs/Web/API/Window/resizeTo +/pl/docs/DOM:window.screen /pl/docs/DOM/window.screen +/pl/docs/DOM:window.screen.colorDepth /pl/docs/Web/API/Screen/colorDepth +/pl/docs/DOM:window.scroll /pl/docs/Web/API/Window/scroll +/pl/docs/DOM:window.scrollBy /pl/docs/DOM/window.scrollBy +/pl/docs/DOM:window.scrollByLines /pl/docs/Web/API/Window/scrollByLines +/pl/docs/DOM:window.scrollByPages /pl/docs/Web/API/Window/scrollByPages +/pl/docs/DOM:window.scrollTo /pl/docs/Web/API/Window/scrollTo +/pl/docs/DOM:window.setInterval /pl/docs/Web/API/Window/setInterval +/pl/docs/DOM:window.setTimeout /pl/docs/Web/API/Window/setTimeout +/pl/docs/DevEdge /pl/docs/Project:DevEdge +/pl/docs/Developer_Guide /pl/docs/Mozilla/Developer_guide +/pl/docs/Developer_Guide/Source_Code /pl/docs/Mozilla/Developer_guide/Source_Code +/pl/docs/Developer_Guide/Source_Code/Pobieranie_kodu_zrodlowego /pl/docs/Mozilla/Developer_guide/Source_Code/Pobieranie_kodu_zrodlowego +/pl/docs/Dodatki_w_Mozilli_-_FAQ(link) https://addons.mozilla.org/faq.php +/pl/docs/Dodawanie_wyszukiwarek_ze_stron_WWW /pl/docs/Dodawanie_wyszukiwarek_z_poziomu_stron_WWW +/pl/docs/Dokumentacja_CSS /pl/docs/Web/CSS/CSS_Reference +/pl/docs/Dokumentacja_CSS/Rozszerzenia_Mozilli /pl/docs/Web/CSS/Mozilla_Extensions +/pl/docs/Dokumentacja_CSS/W%C5%82asno%C5%9Bci_szablonu /pl/docs/Web/CSS/CSS_Reference/W%C5%82asno%C5%9Bci_szablonu +/pl/docs/Dokumentacja_CSS:Rozszerzenia_Mozilli /pl/docs/Web/CSS/Mozilla_Extensions +/pl/docs/Dokumentacja_CSS:W%C5%82asno%C5%9Bci_szablonu /pl/docs/Web/CSS/CSS_Reference/W%C5%82asno%C5%9Bci_szablonu +/pl/docs/Dokumentacja_Gecko_DOM/Wprowadzenie_do_DOM /pl/docs/Dokumentacja_Gecko_DOM/Wprowadzenie +/pl/docs/Dokumentacja_Gecko_DOM/document /pl/docs/Web/API/Document +/pl/docs/Dokumentacja_Gecko_DOM/element /pl/docs/Web/API/Element +/pl/docs/Dokumentacja_Gecko_DOM/element.focus /pl/docs/Web/API/Element/focus +/pl/docs/Dokumentacja_Gecko_DOM/element/appendChild /pl/docs/Web/API/Element/appendChild +/pl/docs/Dokumentacja_Gecko_DOM/element/blur /pl/docs/Web/API/Element/blur +/pl/docs/Dokumentacja_Gecko_DOM/element/cloneNode /pl/docs/Web/API/Element/clientNode +/pl/docs/Dokumentacja_Gecko_DOM/element/focus /pl/docs/Web/API/Element/focus +/pl/docs/Dokumentacja_Gecko_DOM/element/getAttribute /pl/docs/Web/API/Element/getAttribute +/pl/docs/Dokumentacja_Gecko_DOM/element/setAttribute /pl/docs/Web/API/Element/setAttribute +/pl/docs/Dokumentacja_Gecko_DOM/window /pl/docs/Web/API/Window +/pl/docs/Dokumentacja_Gecko_DOM:Przedmowa /pl/docs/Dokumentacja_Gecko_DOM/Przedmowa +/pl/docs/Dokumentacja_Gecko_DOM:Przyk%C5%82ady_u%C5%BCycia_DOM /pl/docs/Dokumentacja_Gecko_DOM/Przyk%C5%82ady_u%C5%BCycia_DOM +/pl/docs/Dokumentacja_Gecko_DOM:Wprowadzenie /pl/docs/Dokumentacja_Gecko_DOM/Wprowadzenie +/pl/docs/Dokumentacja_Gecko_DOM:Wprowadzenie_do_DOM /pl/docs/Dokumentacja_Gecko_DOM/Wprowadzenie +/pl/docs/Dokumentacja_Gecko_DOM:document /pl/docs/Web/API/Document +/pl/docs/Dokumentacja_Gecko_DOM:element /pl/docs/Web/API/Element +/pl/docs/Dokumentacja_Gecko_DOM:element.focus /pl/docs/Web/API/Element/focus +/pl/docs/Dokumentacja_Gecko_DOM:element:appendChild /pl/docs/Web/API/Element/appendChild +/pl/docs/Dokumentacja_Gecko_DOM:element:blur /pl/docs/Web/API/Element/blur +/pl/docs/Dokumentacja_Gecko_DOM:element:cloneNode /pl/docs/Web/API/Element/clientNode +/pl/docs/Dokumentacja_Gecko_DOM:element:focus /pl/docs/Web/API/Element/focus +/pl/docs/Dokumentacja_Gecko_DOM:element:getAttribute /pl/docs/Web/API/Element/getAttribute +/pl/docs/Dokumentacja_Gecko_DOM:element:setAttribute /pl/docs/Web/API/Element/setAttribute +/pl/docs/Dokumentacja_Gecko_DOM:window /pl/docs/Web/API/Window +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5 /pl/docs/Web/JavaScript/Referencje +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments/callee /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/callee +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments/caller /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/caller +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments/length /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/decodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURI +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/decodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURIComponent +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/encodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURI +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/encodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURIComponent +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/isFinite /pl/docs/Web/JavaScript/Referencje/Obiekty/isFinite +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/isNaN /pl/docs/Web/JavaScript/Referencje/Obiekty/isNaN +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/parseFloat /pl/docs/Web/JavaScript/Referencje/Obiekty/parseFloat +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/parseInt /pl/docs/Web/JavaScript/Referencje/Obiekty/parseInt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Komentarze /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Komentarze/komentarz /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/LiveConnect /pl/docs/Web/JavaScript/Referencje/LiveConnect +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/LiveConnect/JSException /pl/docs/Web/JavaScript/Referencje/LiveConnect/JSException +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/LiveConnect/JSObject /pl/docs/Web/JavaScript/Referencje/LiveConnect/JSObject +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/O_tym_dokumencie /pl/docs/Web/JavaScript/Referencje/O_tym_dokumencie +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/O_tym_dokumencie/Konwencje_formatowania_tekstu /pl/docs/Web/JavaScript/Referencje/O_tym_dokumencie/Konwencje_formatowania_tekstu +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/concat /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/concat +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/every /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/every +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/filter /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/filter +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/forEach /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/forEach +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/index /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/index +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/indexOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/indexOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/input /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/input +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/join /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/join +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/lastIndexOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/lastIndexOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/length /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/map /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/map +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/pop /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/pop +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/push /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/push +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/reverse /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/reverse +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/shift /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/shift +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/slice /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/slice +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/some /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/some +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/sort /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/sort +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/splice /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/splice +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/unshift /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/unshift +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/UTC /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/UTC +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/constructor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getDay /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getDay +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getTime /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getTime +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getTimezoneOffset /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getTimezoneOffset +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCDay /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCDay +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/now /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/now +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/parse /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/parse +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setTime /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setTime +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toGMTString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toGMTString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toLocaleDateString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleDateString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toLocaleString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toLocaleTimeString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleTimeString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toUTCString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toUTCString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/arguments /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/arguments +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/arity /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/arity +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/caller /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/caller +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/length /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaArray /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaArray/length /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaArray/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaClass /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaClass +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaObject /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaObject +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaPackage /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaPackage +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math /pl/docs/Web/JavaScript/Referencje/Obiekty/Math +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/E +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LN10 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LN10 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LN2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LN2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LOG10E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LOG10E +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LOG2E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LOG2E +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/PI /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/PI +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/SQRT1_2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/SQRT1_2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/SQRT2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/SQRT2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/abs /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/abs +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/acos /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/acos +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/asin /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/asin +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/atan /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/atan +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/atan2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/atan2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/ceil /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/ceil +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/cos /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/cos +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/exp /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/exp +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/floor /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/floor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/log /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/log +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/max /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/max +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/min /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/min +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/pow /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/pow +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/random /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/random +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/round /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/round +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/sin /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/sin +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/sqrt /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/sqrt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/tan /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/tan +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/MAX_VALUE /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/MAX_VALUE +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/MIN_VALUE /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/MIN_VALUE +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/NEGATIVE_INFINITY /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/NEGATIVE_INFINITY +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/NaN +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/POSITIVE_INFINITY /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/POSITIVE_INFINITY +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/constructor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toExponential /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toExponential +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toFixed /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toFixed +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toPrecision /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toPrecision +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/constructor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/toLocaleString /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toLocaleString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/unwatch /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/unwatch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/watch /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/watch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/java /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/java +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/nazwaKlasy /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/nazwaKlasy +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/netscape /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/netscape +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/sun /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/sun +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/exec /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/exec +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/global /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/global +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/ignoreCase /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/ignoreCase +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/source /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/source +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/test /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/test +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/anchor /pl/docs/Web/JavaScript/Referencje/Obiekty/String/anchor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/big /pl/docs/Web/JavaScript/Referencje/Obiekty/String/big +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/blink /pl/docs/Web/JavaScript/Referencje/Obiekty/String/blink +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/bold /pl/docs/Web/JavaScript/Referencje/Obiekty/String/bold +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/charAt /pl/docs/Web/JavaScript/Referencje/Obiekty/String/charAt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/charCodeAt /pl/docs/Web/JavaScript/Referencje/Obiekty/String/charCodeAt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/concat /pl/docs/Web/JavaScript/Referencje/Obiekty/String/concat +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fixed /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fixed +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fontcolor /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fontcolor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fontsize /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fontsize +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fromCharCode /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fromCharCode +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/italics /pl/docs/Web/JavaScript/Referencje/Obiekty/String/italics +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/length /pl/docs/Web/JavaScript/Referencje/Obiekty/String/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/link /pl/docs/Web/JavaScript/Referencje/Obiekty/String/link +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/String/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/search /pl/docs/Web/JavaScript/Referencje/Obiekty/String/search +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/slice /pl/docs/Web/JavaScript/Referencje/Obiekty/String/slice +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/small /pl/docs/Web/JavaScript/Referencje/Obiekty/String/small +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/strike /pl/docs/Web/JavaScript/Referencje/Obiekty/String/strike +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/sub /pl/docs/Web/JavaScript/Referencje/Obiekty/String/sub +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/substr /pl/docs/Web/JavaScript/Referencje/Obiekty/String/substr +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/substring /pl/docs/Web/JavaScript/Referencje/Obiekty/String/substring +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/sup /pl/docs/Web/JavaScript/Referencje/Obiekty/String/sup +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toLowerCase /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toLowerCase +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toUpperCase /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toUpperCase +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/String/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/java /pl/docs/Web/JavaScript/Referencje/Obiekty/java +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/netscape /pl/docs/Web/JavaScript/Referencje/Obiekty/netscape +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/sun /pl/docs/Web/JavaScript/Referencje/Obiekty/sun +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_arytmetyczne /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_arytmetyczne +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_dzia%C5%82aj%C4%85ce_na_ci%C4%85gach_znak%C3%B3w /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_dzia%C5%82aj%C4%85ce_na_ci%C4%85gach_znak%C3%B3w +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_pami%C4%99ci /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_pami%C4%99ci +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_przypisania /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_przypisania +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_delete /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_delete +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_function /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_in /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_in +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_instanceof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_instanceof +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_new /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_new +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_przecinkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_przecinkowy +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_typeof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_typeof +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_void /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_void +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_warunkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_warunkowy +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Pierwsze%C5%84stwo_operator%C3%B3w /pl/docs/Web/JavaScript/Referencje/Operatory/Pierwsze%C5%84stwo_operator%C3%B3w +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia /pl/docs/Web/JavaScript/Referencje/Polecenia +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/block /pl/docs/Web/JavaScript/Referencje/Polecenia/block +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/break /pl/docs/Web/JavaScript/Referencje/Polecenia/break +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/do...while /pl/docs/Web/JavaScript/Referencje/Polecenia/do...while +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/etykieta /pl/docs/Web/JavaScript/Referencje/Polecenia/etykieta +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/export /pl/docs/Web/JavaScript/Referencje/Polecenia/export +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/for /pl/docs/Web/JavaScript/Referencje/Polecenia/for +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/function /pl/docs/Web/JavaScript/Referencje/Polecenia/function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/if...else /pl/docs/Web/JavaScript/Referencje/Polecenia/if...else +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/import /pl/docs/Web/JavaScript/Referencje/Polecenia/import +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/return /pl/docs/Web/JavaScript/Referencje/Polecenia/return +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/switch /pl/docs/Web/JavaScript/Referencje/Polecenia/switch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/throw /pl/docs/Web/JavaScript/Referencje/Polecenia/throw +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/var /pl/docs/Web/JavaScript/Referencje/Polecenia/var +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/while /pl/docs/Web/JavaScript/Referencje/Polecenia/while +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Przestarza%C5%82e_w%C5%82asno%C5%9Bci_i_metody /pl/docs/Web/JavaScript/Referencje/Przestarza%C5%82e_w%C5%82asno%C5%9Bci_i_metody +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/S%C5%82owa_zarezerwowane /pl/docs/Web/JavaScript/Referencje/S%C5%82owa_zarezerwowane +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci/Infinity /pl/docs/Web/JavaScript/Referencje/Obiekty/Infinity +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci/NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/NaN +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci/undefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bciundefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Wyra%C5%BCenia /pl/docs/Web/JavaScript/Referencje/Polecenia +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Wyra%C5%BCenia/const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:arguments /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:arguments:callee /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/callee +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:arguments:caller /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/caller +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:arguments:length /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:decodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURI +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:decodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURIComponent +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:encodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURI +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:encodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURIComponent +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:isFinite /pl/docs/Web/JavaScript/Referencje/Obiekty/isFinite +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:isNaN /pl/docs/Web/JavaScript/Referencje/Obiekty/isNaN +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:parseFloat /pl/docs/Web/JavaScript/Referencje/Obiekty/parseFloat +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Funkcje:parseInt /pl/docs/Web/JavaScript/Referencje/Obiekty/parseInt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Komentarze /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Komentarze:komentarz /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:LiveConnect /pl/docs/Web/JavaScript/Referencje/LiveConnect +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:LiveConnect:JSException /pl/docs/Web/JavaScript/Referencje/LiveConnect/JSException +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:LiveConnect:JSObject /pl/docs/Web/JavaScript/Referencje/LiveConnect/JSObject +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:O_tym_dokumencie /pl/docs/Web/JavaScript/Referencje/O_tym_dokumencie +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:O_tym_dokumencie:Konwencje_formatowania_tekstu /pl/docs/Web/JavaScript/Referencje/O_tym_dokumencie/Konwencje_formatowania_tekstu +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:concat /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/concat +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:every /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/every +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:filter /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/filter +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:forEach /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/forEach +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:index /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/index +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:indexOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/indexOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:input /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/input +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:join /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/join +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:lastIndexOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/lastIndexOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:length /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:map /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/map +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:pop /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/pop +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:push /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/push +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:reverse /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/reverse +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:shift /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/shift +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:slice /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/slice +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:some /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/some +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:sort /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/sort +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:splice /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/splice +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:unshift /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/unshift +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Array:valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Boolean:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Boolean:prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Boolean:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Boolean:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Boolean:valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:UTC /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/UTC +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/constructor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getDay /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getDay +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getTime /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getTime +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getTimezoneOffset /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getTimezoneOffset +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCDay /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCDay +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getUTCSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:getYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:now /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/now +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:parse /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/parse +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setTime /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setTime +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCDate +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCFullYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCHours +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMilliseconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMinutes +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMonth +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setUTCSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCSeconds +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:setYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setYear +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toGMTString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toGMTString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toLocaleDateString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleDateString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toLocaleString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toLocaleTimeString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleTimeString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:toUTCString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toUTCString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Date:valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Error /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Error +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:apply /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/apply +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:arguments /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/arguments +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:arity /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/arity +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:call /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/call +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:caller /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/caller +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:length /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:prototype /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Function:valueOf /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Function/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:JavaArray /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:JavaArray:length /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:JavaArray:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:JavaClass /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaClass +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:JavaObject /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaObject +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:JavaPackage /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaPackage +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math /pl/docs/Web/JavaScript/Referencje/Obiekty/Math +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/E +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:LN10 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LN10 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:LN2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LN2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:LOG10E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LOG10E +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:LOG2E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LOG2E +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:PI /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/PI +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:SQRT1_2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/SQRT1_2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:SQRT2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/SQRT2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:abs /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/abs +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:acos /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/acos +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:asin /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/asin +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:atan /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/atan +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:atan2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/atan2 +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:ceil /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/ceil +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:cos /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/cos +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:exp /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/exp +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:floor /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/floor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:log /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/log +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:max /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/max +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:min /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/min +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:pow /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/pow +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:random /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/random +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:round /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/round +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:sin /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/sin +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:sqrt /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/sqrt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Math:tan /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/tan +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:MAX_VALUE /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/MAX_VALUE +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:MIN_VALUE /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/MIN_VALUE +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:NEGATIVE_INFINITY /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/NEGATIVE_INFINITY +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/NaN +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:POSITIVE_INFINITY /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/POSITIVE_INFINITY +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/constructor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:toExponential /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toExponential +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:toFixed /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toFixed +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:toPrecision /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toPrecision +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Number:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/constructor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:isPrototypeOf /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/isPrototypeOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:toLocaleString /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toLocaleString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:unwatch /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/unwatch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Object:watch /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/watch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Packages /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Packages:java /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/java +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Packages:nazwaKlasy /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/nazwaKlasy +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Packages:netscape /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/netscape +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:Packages:sun /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/sun +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:exec /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/exec +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:global /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/global +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:ignoreCase /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/ignoreCase +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:lastIndex /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/lastIndex +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:multiline /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/multiline +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:source /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/source +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:test /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/test +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:RegExp:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:anchor /pl/docs/Web/JavaScript/Referencje/Obiekty/String/anchor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:big /pl/docs/Web/JavaScript/Referencje/Obiekty/String/big +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:blink /pl/docs/Web/JavaScript/Referencje/Obiekty/String/blink +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:bold /pl/docs/Web/JavaScript/Referencje/Obiekty/String/bold +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:charAt /pl/docs/Web/JavaScript/Referencje/Obiekty/String/charAt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:charCodeAt /pl/docs/Web/JavaScript/Referencje/Obiekty/String/charCodeAt +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:concat /pl/docs/Web/JavaScript/Referencje/Obiekty/String/concat +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:fixed /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fixed +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:fontcolor /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fontcolor +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:fontsize /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fontsize +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:fromCharCode /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fromCharCode +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:indexOf /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/indexOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:italics /pl/docs/Web/JavaScript/Referencje/Obiekty/String/italics +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:lastIndexOf /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/lastIndexOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:length /pl/docs/Web/JavaScript/Referencje/Obiekty/String/length +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:link /pl/docs/Web/JavaScript/Referencje/Obiekty/String/link +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:match /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/match +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/String/prototype +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:replace /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/replace +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:search /pl/docs/Web/JavaScript/Referencje/Obiekty/String/search +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:slice /pl/docs/Web/JavaScript/Referencje/Obiekty/String/slice +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:small /pl/docs/Web/JavaScript/Referencje/Obiekty/String/small +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:split /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/split +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:strike /pl/docs/Web/JavaScript/Referencje/Obiekty/String/strike +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:sub /pl/docs/Web/JavaScript/Referencje/Obiekty/String/sub +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:substr /pl/docs/Web/JavaScript/Referencje/Obiekty/String/substr +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:substring /pl/docs/Web/JavaScript/Referencje/Obiekty/String/substring +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:sup /pl/docs/Web/JavaScript/Referencje/Obiekty/String/sup +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:toLowerCase /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toLowerCase +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toSource +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:toString /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toString +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:toUpperCase /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toUpperCase +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:String:valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/String/valueOf +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:java /pl/docs/Web/JavaScript/Referencje/Obiekty/java +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:netscape /pl/docs/Web/JavaScript/Referencje/Obiekty/netscape +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Obiekty:sun /pl/docs/Web/JavaScript/Referencje/Obiekty/sun +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_arytmetyczne /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_arytmetyczne +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_bitowe /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_bitowe +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_dzia%C5%82aj%C4%85ce_na_ci%C4%85gach_znak%C3%B3w /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_dzia%C5%82aj%C4%85ce_na_ci%C4%85gach_znak%C3%B3w +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_logiczne /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_logiczne +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_pami%C4%99ci /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_pami%C4%99ci +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_por%C3%B3wnania /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_przypisania /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_przypisania +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_delete /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_delete +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_function /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_in /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_in +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_instanceof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_instanceof +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_new /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_new +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_przecinkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_przecinkowy +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_this /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_this +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_typeof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_typeof +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_void /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_void +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Operatory_specjalne:Operator_warunkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_warunkowy +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Operatory:Pierwsze%C5%84stwo_operator%C3%B3w /pl/docs/Web/JavaScript/Referencje/Operatory/Pierwsze%C5%84stwo_operator%C3%B3w +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia /pl/docs/Web/JavaScript/Referencje/Polecenia +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:block /pl/docs/Web/JavaScript/Referencje/Polecenia/block +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:break /pl/docs/Web/JavaScript/Referencje/Polecenia/break +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:continue /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/continue +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:do...while /pl/docs/Web/JavaScript/Referencje/Polecenia/do...while +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:etykieta /pl/docs/Web/JavaScript/Referencje/Polecenia/etykieta +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:export /pl/docs/Web/JavaScript/Referencje/Polecenia/export +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:for /pl/docs/Web/JavaScript/Referencje/Polecenia/for +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:for...in /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/for...in +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:function /pl/docs/Web/JavaScript/Referencje/Polecenia/function +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:if...else /pl/docs/Web/JavaScript/Referencje/Polecenia/if...else +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:import /pl/docs/Web/JavaScript/Referencje/Polecenia/import +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:return /pl/docs/Web/JavaScript/Referencje/Polecenia/return +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:switch /pl/docs/Web/JavaScript/Referencje/Polecenia/switch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:throw /pl/docs/Web/JavaScript/Referencje/Polecenia/throw +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:try...catch /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/try...catch +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:var /pl/docs/Web/JavaScript/Referencje/Polecenia/var +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:while /pl/docs/Web/JavaScript/Referencje/Polecenia/while +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Polecenia:with /pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/with +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Przestarza%C5%82e_w%C5%82asno%C5%9Bci_i_metody /pl/docs/Web/JavaScript/Referencje/Przestarza%C5%82e_w%C5%82asno%C5%9Bci_i_metody +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:S%C5%82owa_zarezerwowane /pl/docs/Web/JavaScript/Referencje/S%C5%82owa_zarezerwowane +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:W%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:W%C5%82asno%C5%9Bci:Infinity /pl/docs/Web/JavaScript/Referencje/Obiekty/Infinity +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:W%C5%82asno%C5%9Bci:NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/NaN +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:W%C5%82asno%C5%9Bci:undefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:W%C5%82asno%C5%9Bciundefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Dokumentacja_j%C4%99zyka_JavaScript_1.5:Wyra%C5%BCenia:const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Dokumentacja_kompilacji /pl/docs/Mozilla/Developer_guide/Dokumentacja_kompilacji +/pl/docs/Dokumentacja_kompilacji:TOC /pl/docs/Dokumentacja_kompilacji/TOC +/pl/docs/Dokumentacja_wtyczek_Gecko:Inicjacja_i_niszczenie /pl/docs/Dokumentacja_wtyczek_Gecko/Inicjacja_i_niszczenie +/pl/docs/Dokumentacja_wtyczek_Gecko:Interfejs_programowania_aplikacji_(API)_od_strony_przegl%C4%85darki /pl/docs/Dokumentacja_wtyczek_Gecko/Interfejs_programowania_aplikacji_(API)_od_strony_przegl%C4%85darki +/pl/docs/Dokumentacja_wtyczek_Gecko:Interfejs_programowania_aplikacji_(API)_od_strony_wtyczki /pl/docs/Dokumentacja_wtyczek_Gecko/Interfejs_programowania_aplikacji_(API)_od_strony_wtyczki +/pl/docs/Dokumentacja_wtyczek_Gecko:Pami%C4%99%C4%87 /pl/docs/Dokumentacja_wtyczek_Gecko/Pami%C4%99%C4%87 +/pl/docs/Dokumentacja_wtyczek_Gecko:Podstawy /pl/docs/Dokumentacja_wtyczek_Gecko/Podstawy +/pl/docs/Dokumentacja_wtyczek_Gecko:Przedmowa /pl/docs/Dokumentacja_wtyczek_Gecko/Przedmowa +/pl/docs/Dokumentacja_wtyczek_Gecko:Przegl%C4%85d_tworzenia_wtyczek /pl/docs/Dokumentacja_wtyczek_Gecko/Przegl%C4%85d_tworzenia_wtyczek +/pl/docs/Dokumentacja_wtyczek_Gecko:Rysowanie_i_obs%C5%82uga_zdarze%C5%84 /pl/docs/Dokumentacja_wtyczek_Gecko/Rysowanie_i_obs%C5%82uga_zdarze%C5%84 +/pl/docs/Dokumentacja_wtyczek_Gecko:Sta%C5%82e /pl/docs/Dokumentacja_wtyczek_Gecko/Sta%C5%82e +/pl/docs/Dokumentacja_wtyczek_Gecko:Struktury /pl/docs/Dokumentacja_wtyczek_Gecko/Struktury +/pl/docs/Dokumentacja_wtyczek_Gecko:Strumienie /pl/docs/Dokumentacja_wtyczek_Gecko/Strumienie +/pl/docs/Dokumentacja_wtyczek_Gecko:URL /pl/docs/Dokumentacja_wtyczek_Gecko/URL +/pl/docs/Dokumentacja_wtyczek_Gecko:Wersja,_interfejs_u%C5%BCytkownika_(UI)_oraz_informacje_statusu /pl/docs/Dokumentacja_wtyczek_Gecko/Wersja,_interfejs_u%C5%BCytkownika_(UI)_oraz_informacje_statusu +/pl/docs/Dokumentacja_wtyczek_Gecko:Wtyczki_skryptowalne /pl/docs/Dokumentacja_wtyczek_Gecko/Wtyczki_skryptowalne +/pl/docs/Dost%C4%99pno%C5%9B%C4%87 /pl/docs/Web/Dost%C4%99pno%C5%9B%C4%87 +/pl/docs/Dost%C4%99pno%C5%9B%C4%87:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Dost%C4%99pno%C5%9B%C4%87/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Dynamiczne_zmiany_interfejsu_u%C5%BCytkownika_bazuj%C4%85cego_na_XULu /pl/docs/Dynamiczne_zmiany_interfejsu_u%C5%BCytkownika_bazuj%C4%85cego_na_XUL-u +/pl/docs/ECMAScript /pl/docs/Web/JavaScript/Zasoby_języka_JavaScript +/pl/docs/EXSLT /pl/docs/Web/EXSLT +/pl/docs/EditCSS_-_rozszerzenie_Firefoksa_(link) https://addons.mozilla.org/extensions/moreinfo.php?id=179 +/pl/docs/Edytowanie_sformatowanego_tekstu_(Rich-Text_Editing)_w_Mozilli /pl/docs/Web/Guide/HTML/Editable_content/Edytowanie_sformatowanego_tekstu_(Rich-Text_Editing)_w_Mozilli +/pl/docs/Firebug_-_rozszerzenie_Firefoksa_(link) https://addons.mozilla.org/extensions/moreinfo.php?id=1843&application=firefox +/pl/docs/Firefox_1.5 /pl/docs/Mozilla/Firefox/Releases/1.5 +/pl/docs/Firefox_1.5_Beta_dla_programist%C3%B3w /pl/docs/Mozilla/Firefox/Releases/1.5 +/pl/docs/Firefox_1.5_dla_programist%C3%B3w /pl/docs/Mozilla/Firefox/Releases/1.5 +/pl/docs/Firefox_2 /pl/docs/Mozilla/Firefox/Releases/2 +/pl/docs/Firefox_2_dla_programist%C3%B3w /pl/docs/Mozilla/Firefox/Releases/2 +/pl/docs/Firefox_3 /pl/docs/Firefox_3_dla_programist%C3%B3w +/pl/docs/Firefox_3.5_dla_programist%C3%B3w /pl/docs/Mozilla/Firefox/Releases/3.5 +/pl/docs/Focus_management_in_HTML /pl/docs/Web/HTML/Zarz%C4%85dzanie_fokusem_w_HTML +/pl/docs/Fragmenty_kodu/Preferencje /pl/docs/Code_snippets/Preferences +/pl/docs/Fragmenty_kodu:Canvas /pl/docs/Fragmenty_kodu/Canvas +/pl/docs/Fragmenty_kodu:Ciasteczka /pl/docs/Fragmenty_kodu/Ciasteczka +/pl/docs/Fragmenty_kodu:JS_XPCOM /pl/docs/Fragmenty_kodu/JS_XPCOM +/pl/docs/Fragmenty_kodu:Obserwator_pobierania_danych /pl/docs/Fragmenty_kodu/Obserwator_pobierania_danych +/pl/docs/Fragmenty_kodu:Okienka_dialogowe /pl/docs/Fragmenty_kodu/Okienka_dialogowe +/pl/docs/Fragmenty_kodu:Okna /pl/docs/Fragmenty_kodu/Okna +/pl/docs/Fragmenty_kodu:Paski_narz%C4%99dzi /pl/docs/Fragmenty_kodu/Paski_narz%C4%99dzi +/pl/docs/Fragmenty_kodu:Plik_I_O /pl/docs/Fragmenty_kodu/Plik_I_O +/pl/docs/Fragmenty_kodu:Preferencje /pl/docs/Code_snippets/Preferences +/pl/docs/Fragmenty_kodu:Przegl%C4%85danie_w_kartach /pl/docs/Fragmenty_kodu/Przegl%C4%85danie_w_kartach +/pl/docs/Fragmenty_kodu:R%C3%B3%C5%BCne /pl/docs/Fragmenty_kodu/R%C3%B3%C5%BCne +/pl/docs/Fragmenty_kodu:Uruchamianie_aplikacji /pl/docs/Fragmenty_kodu/Uruchamianie_aplikacji +/pl/docs/Fragmenty_kodu:Wczytywanie_strony /pl/docs/Fragmenty_kodu/Wczytywanie_strony +/pl/docs/Fragmenty_kodu:XML /pl/docs/Fragmenty_kodu/XML +/pl/docs/Funkcje_obs%C5%82ugi_protoko%C5%82%C3%B3w_przez_aplikacje_internetowe /pl/docs/Web/API/Navigator/registerProtocolHandler/Web-based_protocol_handlers +/pl/docs/Glossary/AOM /pl/docs/Glossary/Accessibility_tree +/pl/docs/HTML /pl/docs/Web/HTML +/pl/docs/HTML/Canvas /pl/docs/Web/HTML/Canvas +/pl/docs/HTML/Element /pl/docs/Web/HTML/Element +/pl/docs/HTML/Element/a /pl/docs/Web/HTML/Element/a +/pl/docs/HTML/Element/abbr /pl/docs/Web/HTML/Element/abbr +/pl/docs/HTML/Element/acronym /pl/docs/Web/HTML/Element/acronym +/pl/docs/HTML/Element/address /pl/docs/Web/HTML/Element/address +/pl/docs/HTML/Element/applet /pl/docs/Web/HTML/Element/applet +/pl/docs/HTML/Element/area /pl/docs/Web/HTML/Element/area +/pl/docs/HTML/Element/b /pl/docs/Web/HTML/Element/b +/pl/docs/HTML/Element/base /pl/docs/Web/HTML/Element/base +/pl/docs/HTML/Element/basefont /pl/docs/Web/HTML/Element/basefont +/pl/docs/HTML/Element/bdo /pl/docs/Web/HTML/Element/bdo +/pl/docs/HTML/Element/bgsound /pl/docs/Web/HTML/Element/bgsound +/pl/docs/HTML/Element/big /pl/docs/Web/HTML/Element/big +/pl/docs/HTML/Element/blink /pl/docs/Web/HTML/Element/blink +/pl/docs/HTML/Element/blockquote /pl/docs/Web/HTML/Element/blockquote +/pl/docs/HTML/Element/br /pl/docs/Web/HTML/Element/br +/pl/docs/HTML/Element/center /pl/docs/Web/HTML/Element/center +/pl/docs/HTML/Element/cite /pl/docs/Web/HTML/Element/cite +/pl/docs/HTML/Element/code /pl/docs/Web/HTML/Element/code +/pl/docs/HTML/Element/col /pl/docs/Web/HTML/Element/col +/pl/docs/HTML/Element/comment /pl/docs/Web/HTML/Element/comment +/pl/docs/HTML/Element/dd /pl/docs/Web/HTML/Element/dd +/pl/docs/HTML/Element/dl /pl/docs/Web/HTML/Element/dl +/pl/docs/HTML/Element/dt /pl/docs/Web/HTML/Element/dt +/pl/docs/HTML/Element/em /pl/docs/Web/HTML/Element/em +/pl/docs/HTML/Element/hr /pl/docs/Web/HTML/Element/hr +/pl/docs/HTML/Element/html /pl/docs/Web/HTML/Element/html +/pl/docs/HTML/Element/i /pl/docs/Web/HTML/Element/i +/pl/docs/HTML/Element/kbd /pl/docs/Web/HTML/Element/kbd +/pl/docs/HTML/Element/li /pl/docs/Web/HTML/Element/li +/pl/docs/HTML/Element/link /pl/docs/Web/HTML/Element/link +/pl/docs/HTML/Element/marquee /pl/docs/Web/HTML/Element/marquee +/pl/docs/HTML/Element/ol /pl/docs/Web/HTML/Element/ol +/pl/docs/HTML/Element/p /pl/docs/Web/HTML/Element/p +/pl/docs/HTML/Element/q /pl/docs/Web/HTML/Element/q +/pl/docs/HTML/Element/s /pl/docs/Web/HTML/Element/s +/pl/docs/HTML/Element/samp /pl/docs/Web/HTML/Element/samp +/pl/docs/HTML/Element/small /pl/docs/Web/HTML/Element/small +/pl/docs/HTML/Element/span /pl/docs/Web/HTML/Element/span +/pl/docs/HTML/Element/strong /pl/docs/Web/HTML/Element/strong +/pl/docs/HTML/Element/tt /pl/docs/Web/HTML/Element/tt +/pl/docs/HTML/Element/ul /pl/docs/Web/HTML/Element/ul +/pl/docs/HTML/Elementy /pl/docs/Web/HTML/Element +/pl/docs/HTML/Elementy/a /pl/docs/Web/HTML/Element/a +/pl/docs/HTML/Elementy/abbr /pl/docs/Web/HTML/Element/abbr +/pl/docs/HTML/Elementy/acronym /pl/docs/Web/HTML/Element/acronym +/pl/docs/HTML/Elementy/address /pl/docs/Web/HTML/Element/address +/pl/docs/HTML/Elementy/area /pl/docs/Web/HTML/Element/area +/pl/docs/HTML/Elementy/b /pl/docs/Web/HTML/Element/b +/pl/docs/HTML/Elementy/big /pl/docs/Web/HTML/Element/big +/pl/docs/HTML/Elementy/blink /pl/docs/Web/HTML/Element/blink +/pl/docs/HTML/Elementy/blockquote /pl/docs/Web/HTML/Element/blockquote +/pl/docs/HTML/Elementy/br /pl/docs/Web/HTML/Element/br +/pl/docs/HTML/Elementy/code /pl/docs/Web/HTML/Element/code +/pl/docs/HTML/Elementy/dd /pl/docs/Web/HTML/Element/dd +/pl/docs/HTML/Elementy/dl /pl/docs/Web/HTML/Element/dl +/pl/docs/HTML/Elementy/em /pl/docs/Web/HTML/Element/em +/pl/docs/HTML/Elementy/hr /pl/docs/Web/HTML/Element/hr +/pl/docs/HTML/Elementy/html /pl/docs/Web/HTML/Element/html +/pl/docs/HTML/Elementy/i /pl/docs/Web/HTML/Element/i +/pl/docs/HTML/Elementy/marquee /pl/docs/Web/HTML/Element/marquee +/pl/docs/HTML/Elementy/s /pl/docs/Web/HTML/Element/s +/pl/docs/HTML/Elementy/small /pl/docs/Web/HTML/Element/small +/pl/docs/HTML/Elementy/strong /pl/docs/Web/HTML/Element/strong +/pl/docs/HTML/Elementy_blokowe /pl/docs/Web/HTML/Elementy_blokowe +/pl/docs/HTML/Elementy_liniowe /pl/docs/Web/HTML/Elementy_liniowe +/pl/docs/HTML/Kontrola_sprawdzania_pisowni_w_formularzach_HTML /pl/docs/Web/HTML/Kontrola_sprawdzania_pisowni_w_formularzach_HTML +/pl/docs/HTML/The_Importance_of_Correct_Commenting /pl/docs/Web/HTML/Znaczenie_poprawnego_komentowania +/pl/docs/HTML/Znaczenie_poprawnego_komentowania /pl/docs/Web/HTML/Znaczenie_poprawnego_komentowania +/pl/docs/HTML:Canvas /pl/docs/Web/HTML/Canvas +/pl/docs/HTML:Element /pl/docs/Web/HTML/Element +/pl/docs/HTML:Element:a /pl/docs/Web/HTML/Element/a +/pl/docs/HTML:Element:abbr /pl/docs/Web/HTML/Element/abbr +/pl/docs/HTML:Element:acronym /pl/docs/Web/HTML/Element/acronym +/pl/docs/HTML:Element:address /pl/docs/Web/HTML/Element/address +/pl/docs/HTML:Element:applet /pl/docs/Web/HTML/Element/applet +/pl/docs/HTML:Element:area /pl/docs/Web/HTML/Element/area +/pl/docs/HTML:Element:b /pl/docs/Web/HTML/Element/b +/pl/docs/HTML:Element:base /pl/docs/Web/HTML/Element/base +/pl/docs/HTML:Element:basefont /pl/docs/Web/HTML/Element/basefont +/pl/docs/HTML:Element:bdo /pl/docs/Web/HTML/Element/bdo +/pl/docs/HTML:Element:bgsound /pl/docs/Web/HTML/Element/bgsound +/pl/docs/HTML:Element:big /pl/docs/Web/HTML/Element/big +/pl/docs/HTML:Element:blink /pl/docs/Web/HTML/Element/blink +/pl/docs/HTML:Element:blockquote /pl/docs/Web/HTML/Element/blockquote +/pl/docs/HTML:Element:br /pl/docs/Web/HTML/Element/br +/pl/docs/HTML:Element:center /pl/docs/Web/HTML/Element/center +/pl/docs/HTML:Element:cite /pl/docs/Web/HTML/Element/cite +/pl/docs/HTML:Element:code /pl/docs/Web/HTML/Element/code +/pl/docs/HTML:Element:col /pl/docs/Web/HTML/Element/col +/pl/docs/HTML:Element:comment /pl/docs/Web/HTML/Element/comment +/pl/docs/HTML:Element:dd /pl/docs/Web/HTML/Element/dd +/pl/docs/HTML:Element:dl /pl/docs/Web/HTML/Element/dl +/pl/docs/HTML:Element:dt /pl/docs/Web/HTML/Element/dt +/pl/docs/HTML:Element:em /pl/docs/Web/HTML/Element/em +/pl/docs/HTML:Element:hr /pl/docs/Web/HTML/Element/hr +/pl/docs/HTML:Element:html /pl/docs/Web/HTML/Element/html +/pl/docs/HTML:Element:i /pl/docs/Web/HTML/Element/i +/pl/docs/HTML:Element:kbd /pl/docs/Web/HTML/Element/kbd +/pl/docs/HTML:Element:li /pl/docs/Web/HTML/Element/li +/pl/docs/HTML:Element:link /pl/docs/Web/HTML/Element/link +/pl/docs/HTML:Element:marquee /pl/docs/Web/HTML/Element/marquee +/pl/docs/HTML:Element:ol /pl/docs/Web/HTML/Element/ol +/pl/docs/HTML:Element:p /pl/docs/Web/HTML/Element/p +/pl/docs/HTML:Element:q /pl/docs/Web/HTML/Element/q +/pl/docs/HTML:Element:s /pl/docs/Web/HTML/Element/s +/pl/docs/HTML:Element:samp /pl/docs/Web/HTML/Element/samp +/pl/docs/HTML:Element:small /pl/docs/Web/HTML/Element/small +/pl/docs/HTML:Element:strong /pl/docs/Web/HTML/Element/strong +/pl/docs/HTML:Element:tt /pl/docs/Web/HTML/Element/tt +/pl/docs/HTML:Element:ul /pl/docs/Web/HTML/Element/ul +/pl/docs/HTML:Elementy /pl/docs/Web/HTML/Element +/pl/docs/HTML:Elementy:a /pl/docs/Web/HTML/Element/a +/pl/docs/HTML:Elementy:abbr /pl/docs/Web/HTML/Element/abbr +/pl/docs/HTML:Elementy:acronym /pl/docs/Web/HTML/Element/acronym +/pl/docs/HTML:Elementy:address /pl/docs/Web/HTML/Element/address +/pl/docs/HTML:Elementy:area /pl/docs/Web/HTML/Element/area +/pl/docs/HTML:Elementy:b /pl/docs/Web/HTML/Element/b +/pl/docs/HTML:Elementy:big /pl/docs/Web/HTML/Element/big +/pl/docs/HTML:Elementy:blink /pl/docs/Web/HTML/Element/blink +/pl/docs/HTML:Elementy:blockquote /pl/docs/Web/HTML/Element/blockquote +/pl/docs/HTML:Elementy:br /pl/docs/Web/HTML/Element/br +/pl/docs/HTML:Elementy:code /pl/docs/Web/HTML/Element/code +/pl/docs/HTML:Elementy:dd /pl/docs/Web/HTML/Element/dd +/pl/docs/HTML:Elementy:dl /pl/docs/Web/HTML/Element/dl +/pl/docs/HTML:Elementy:em /pl/docs/Web/HTML/Element/em +/pl/docs/HTML:Elementy:hr /pl/docs/Web/HTML/Element/hr +/pl/docs/HTML:Elementy:html /pl/docs/Web/HTML/Element/html +/pl/docs/HTML:Elementy:i /pl/docs/Web/HTML/Element/i +/pl/docs/HTML:Elementy:marquee /pl/docs/Web/HTML/Element/marquee +/pl/docs/HTML:Elementy:s /pl/docs/Web/HTML/Element/s +/pl/docs/HTML:Elementy:small /pl/docs/Web/HTML/Element/small +/pl/docs/HTML:Elementy:strong /pl/docs/Web/HTML/Element/strong +/pl/docs/HTML:Elementy_blokowe /pl/docs/Web/HTML/Elementy_blokowe +/pl/docs/HTML:Elementy_liniowe /pl/docs/Web/HTML/Elementy_liniowe +/pl/docs/HTML:Inne_zasoby /pl/docs/HTML/Inne_zasoby +/pl/docs/HTML:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/HTML/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/HTML:The_Importance_of_Correct_Commenting /pl/docs/Web/HTML/Znaczenie_poprawnego_komentowania +/pl/docs/HTML:Znaczenie_poprawnego_komentowania /pl/docs/Web/HTML/Znaczenie_poprawnego_komentowania +/pl/docs/HTML_Element_Cross_Reference /pl/docs/Wsparcie_przegl%C4%85darek_dla_element%C3%B3w_HTML +/pl/docs/Interfejsy:O_interfejsach_skryptowalnych /pl/docs/Interfejsy/O_interfejsach_skryptowalnych +/pl/docs/Interfejsy:O_zamro%C5%BConych_interfejsach /pl/docs/Interfejsy/O_zamro%C5%BConych_interfejsach +/pl/docs/Introduction /pl/docs/Mozilla/Developer_guide/Introduction +/pl/docs/JavaScript /pl/docs/Web/JavaScript +/pl/docs/JavaScript/Guide /pl/docs/Web/JavaScript/Guide +/pl/docs/JavaScript/Guide/Obsolete_Pages /pl/docs/Web/JavaScript/Guide/Obsolete_Pages +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5 /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5 +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Blok_instrukcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Blok_instrukcji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Czytanie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Definiowanie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Definiowanie_funkcji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Dodawanie_obiektom_nowej_funkcjonalno%C5%9Bci. /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Dodawanie_obiektom_nowej_funkcjonalno%C5%9Bci. +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_eval /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_eval +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isFinite /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isFinite +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isNaN /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isNaN +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_Number_i_String /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_Number_i_String +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_escape_i_unescape /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_escape_i_unescape +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_parseInt_i_parseFloat /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_parseInt_i_parseFloat +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcja_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcja_p%C4%99tli/Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_komentarzy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_komentarzy +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_manipulacji_obiektem /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_manipulacji_obiektem +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_throw /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_throw +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_try...catch /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_try...catch +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_break /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_break +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continues /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_for /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_for +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_label /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_label +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_while +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_warunkowe /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_warunkowe +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/J%C4%99zyki_oparte_na_klasach_vs._oparte_na_prototypach /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Litera%C5%82y /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Litera%C5%82y +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Nazywanie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_logiczny /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_arytmetyczne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_arytmetyczne +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_bitowe /pl/docs/Web/JavaScript/Guide/Expressions_and_Operators#Bitwise_operators +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_logiczne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_logiczne +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnywania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_przypisania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_przypisania +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_specjalne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_specjalne +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_string /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_Java_a_JavaScript /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_Java_a_JavaScript +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_JavaScript_do_Java /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_JavaScript_do_Java +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Globlne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/Tworzenie_hierarchii /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/Tworzenie_hierarchii +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu/Dodawanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu/Dziedziczenie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi /pl/docs/Web/JavaScript/Guide/Regular_Expressions#Working_with_Regular_Expressions +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Globalne_wyszukiwanie,_wielko%C5%9B%C4%87_znak%C3%B3w,_wieloliniowe_wej%C5%9Bcie /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Globalne_wyszukiwanie,_wielko%C5%9B%C4%87_znak%C3%B3w,_wieloliniowe_wej%C5%9Bcie +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Przyk%C5%82ady_wyra%C5%BCe%C5%84_regularnych /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Przyk%C5%82ady_wyra%C5%BCe%C5%84_regularnych +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_zamkni%C4%99ciami /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_zamkni%C4%99ciami +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Przegl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Sta%C5%82e /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Sta%C5%82e +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_metod /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_metod +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_wyra%C5%BCenia_regularnego +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/U%C5%BCywanie_argument%C3%B3w_tablicy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Unicode /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Unicode +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Warto%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Warto%C5%9Bci +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wyra%C5%BCenia /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wyra%C5%BCenia +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zmienne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zmienne +/pl/docs/JavaScript/Guide/o_tym_przewodniku /pl/docs/Web/JavaScript/Guide/o_tym_przewodniku +/pl/docs/JavaScript/Na_pocz%C4%85tek /pl/docs/Web/JavaScript/Na_pocz%C4%85tek +/pl/docs/JavaScript/New_in_JavaScript /pl/docs/Web/JavaScript/New_in_JavaScript +/pl/docs/JavaScript/Reference/Global_Objects/Function/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Function/toString +/pl/docs/JavaScript/Typed_arrays /pl/docs/Web/JavaScript/Typed_arrays +/pl/docs/JavaScript:Artyku%C5%82y /pl/docs/JavaScript/Artyku%C5%82y +/pl/docs/JavaScript:Dokumentacje /pl/docs/JavaScript/Dokumentacje +/pl/docs/JavaScript:Inne_zasoby /pl/docs/JavaScript/Inne_zasoby +/pl/docs/JavaScript:Na_pocz%C4%85tek /pl/docs/Web/JavaScript/Na_pocz%C4%85tek +/pl/docs/JavaScript:Przyk%C5%82ady /pl/docs/JavaScript/Przyk%C5%82ady +/pl/docs/JavaScript:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/JavaScript/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Kod_%C5%BAr%C3%B3d%C5%82owy_Mozilli_(Mercurial) /pl/docs/Mozilla/Developer_guide/Source_Code/Kod_%C5%BAr%C3%B3d%C5%82owy_Mozilli_(Mercurial) +/pl/docs/Kodowanie_Mozilli /pl/docs/Programowanie_Mozilli +/pl/docs/Kolumny_CSS3 /pl/docs/Web/Guide/CSS/Kolumny_CSS3 +/pl/docs/Kontrola_sprawdzania_pisowni_w_formularzach_HTML /pl/docs/Web/HTML/Kontrola_sprawdzania_pisowni_w_formularzach_HTML +/pl/docs/Learn/CSS/Introduction_to_CSS /en-US/docs/Learn/CSS/First_steps +/pl/docs/Learn/CSS/Introduction_to_CSS/How_CSS_works /en-US/docs/Learn/CSS/First_steps/How_CSS_works +/pl/docs/Learn/CSS/Introduction_to_CSS/Selektory /en-US/docs/Learn/CSS/Building_blocks/Selectors +/pl/docs/Learn/CSS/stylowanie_blokow /en-US/docs/Learn/CSS/Building_blocks +/pl/docs/Liczniki_CSS /pl/docs/Web/Guide/Liczniki_CSS +/pl/docs/Live_HTTP_Headers_(external) /pl/docs/Live_HTTP_Headers_(link) +/pl/docs/Lokalizacja:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Lokalizacja/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Lokalizacja_opisu_rozszerze%C5%84 /pl/docs/Lokalizacja_opisu_rozszerzenia +/pl/docs/MDN/Contribute/Content /pl/docs/MDN/Guidelines +/pl/docs/MDN/Contribute/Content/Style_guide /pl/docs/MDN/Guidelines/Style_guide +/pl/docs/MDN/Feedback /pl/docs/MDN/Contribute/Feedback +/pl/docs/MDN/rozpocznij_mdn /pl/docs/MDN/Contribute/Getting_started +/pl/docs/Manifest_Instalacji /pl/docs/Manifesty_Instalacji +/pl/docs/Manifesty_Chrome /pl/docs/Mozilla/Rejestracja_Chrome +/pl/docs/MathML /pl/docs/Web/MathML +/pl/docs/Motywy:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Motywy/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Narz%C4%99dzia:Walidatory /pl/docs/Narz%C4%99dzia/Walidatory +/pl/docs/Narz%C4%99dzia_programist%C3%B3w /pl/docs/Narz%C4%99dzia +/pl/docs/New_in_JavaScript_1.6 /pl/docs/Web/JavaScript/New_in_JavaScript/Nowo%C5%9Bci_w_JavaScript_1.6 +/pl/docs/Nowo%C5%9Bci_w_JavaScript_1.4 /pl/docs/Web/JavaScript/Nowo%C5%9Bci_w_JavaScript_1.4 +/pl/docs/Nowo%C5%9Bci_w_JavaScript_1.5 /pl/docs/Web/JavaScript/New_in_JavaScript/Nowo%C5%9Bci_w_JavaScript_1.5 +/pl/docs/Nowo%C5%9Bci_w_JavaScript_1.6 /pl/docs/Web/JavaScript/New_in_JavaScript/Nowo%C5%9Bci_w_JavaScript_1.6 +/pl/docs/Nowo%C5%9Bci_w_JavaScript_1.7 /pl/docs/Web/JavaScript/New_in_JavaScript/Nowo%C5%9Bci_w_JavaScript_1.7 +/pl/docs/Nowo%C5%9Bci_w_JavaScript_1.8 /pl/docs/Web/JavaScript/Nowo%C5%9Bci_w_JavaScript_1.8 +/pl/docs/Obs%C5%82uga_protoko%C5%82%C3%B3w_przez_aplikacje_WWW /pl/docs/Web/API/Navigator/registerProtocolHandler/Web-based_protocol_handlers +/pl/docs/Odno%C5%9Bniki_XPInstall_API /pl/docs/Dokumentacja_XPInstall_API +/pl/docs/Pomoc /en-US/docs/Help:pl/Zawarto%C5%9B%C4%87 +/pl/docs/Poprawne_zastosowanie_CSS_i_JavaScript_w_dokumentach_XHTML:Przyk%C5%82ady /pl/docs/Poprawne_zastosowanie_CSS_i_JavaScript_w_dokumentach_XHTML/Przyk%C5%82ady +/pl/docs/Preferencje_API /pl/docs/API_Preferencji +/pl/docs/Programowanie_Mozilli:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Programowanie_Mozilli/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Prosty_RayCaster:Level.js /pl/docs/Prosty_RayCaster/Level.js +/pl/docs/Prosty_RayCaster:Player.js /pl/docs/Prosty_RayCaster/Player.js +/pl/docs/Prosty_RayCaster:RayCaster.html /pl/docs/Prosty_RayCaster/RayCaster.html +/pl/docs/Prosty_RayCaster:RayCaster.js /pl/docs/Prosty_RayCaster/RayCaster.js +/pl/docs/Prosty_RayCaster:input.js /pl/docs/Prosty_RayCaster/input.js +/pl/docs/Prosty_RayCaster:trace.css /pl/docs/Prosty_RayCaster/trace.css +/pl/docs/Prosty_RayCaster:trace.js /pl/docs/Prosty_RayCaster/trace.js +/pl/docs/Przewodnik_po_canvas:Kompozycje /pl/docs/Przewodnik_po_canvas/Kompozycje +/pl/docs/Przewodnik_po_canvas:Proste_animacje /pl/docs/Przewodnik_po_canvas/Proste_animacje +/pl/docs/Przewodnik_po_canvas:Proste_zastosowanie /pl/docs/Przewodnik_po_canvas/Proste_zastosowanie +/pl/docs/Przewodnik_po_canvas:Rysowanie_kszta%C5%82t%C3%B3w /pl/docs/Przewodnik_po_canvas/Rysowanie_kszta%C5%82t%C3%B3w +/pl/docs/Przewodnik_po_canvas:Transformacje /pl/docs/Przewodnik_po_canvas/Transformacje +/pl/docs/Przewodnik_po_canvas:Zastosowanie_obrazk%C3%B3w /pl/docs/Przewodnik_po_canvas/Zastosowanie_obrazk%C3%B3w +/pl/docs/Przewodnik_po_canvas:Zastosowanie_styl%C3%B3w_i_kolor%C3%B3w /pl/docs/Przewodnik_po_canvas/Zastosowanie_styl%C3%B3w_i_kolor%C3%B3w +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5 /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5 +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Blok_instrukcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Blok_instrukcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Czytanie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Definiowanie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Definiowanie_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Dodawanie_obiektom_nowej_funkcjonalno%C5%9Bci. /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Dodawanie_obiektom_nowej_funkcjonalno%C5%9Bci. +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_eval /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_eval +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isFinite /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isFinite +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isNaN /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isNaN +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_Number_i_String /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_Number_i_String +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_escape_i_unescape /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_escape_i_unescape +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_parseInt_i_parseFloat /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_parseInt_i_parseFloat +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcja_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcja_p%C4%99tli/Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_komentarzy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_komentarzy +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_manipulacji_obiektem /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_manipulacji_obiektem +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_throw /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_throw +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_try...catch /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_try...catch +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_break /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_break +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continues /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_for /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_for +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_label /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_label +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_while +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_warunkowe /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_warunkowe +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/J%C4%99zyki_oparte_na_klasach_vs._oparte_na_prototypach /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Litera%C5%82y /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Litera%C5%82y +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Nazywanie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_logiczny /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_arytmetyczne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_arytmetyczne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_bitowe /pl/docs/Web/JavaScript/Guide/Expressions_and_Operators#Bitwise_operators +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_logiczne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_logiczne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnywania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_przypisania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_przypisania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_specjalne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_specjalne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_string /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_Java_a_JavaScript /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_Java_a_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_JavaScript_do_Java /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_JavaScript_do_Java +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Globlne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/Tworzenie_hierarchii /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/Tworzenie_hierarchii +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu/Dodawanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu/Dziedziczenie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi /pl/docs/Web/JavaScript/Guide/Regular_Expressions#Working_with_Regular_Expressions +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Globalne_wyszukiwanie,_wielko%C5%9B%C4%87_znak%C3%B3w,_wieloliniowe_wej%C5%9Bcie /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Globalne_wyszukiwanie,_wielko%C5%9B%C4%87_znak%C3%B3w,_wieloliniowe_wej%C5%9Bcie +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Przyk%C5%82ady_wyra%C5%BCe%C5%84_regularnych /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Przyk%C5%82ady_wyra%C5%BCe%C5%84_regularnych +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_zamkni%C4%99ciami /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_zamkni%C4%99ciami +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Przegl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Sta%C5%82e /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Sta%C5%82e +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_metod /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_metod +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_wyra%C5%BCenia_regularnego +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/U%C5%BCywanie_argument%C3%B3w_tablicy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Unicode /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Unicode +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Warto%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Warto%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wyra%C5%BCenia /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wyra%C5%BCenia +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zmienne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zmienne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Blok_instrukcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Blok_instrukcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Czytanie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Definiowanie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Definiowanie_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane:Funkcja_eval /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_eval +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane:Funkcja_isFinite /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isFinite +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane:Funkcja_isNaN /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isNaN +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane:Funkcje_Number_i_String /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_Number_i_String +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane:Funkcje_escape_i_unescape /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_escape_i_unescape +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Funkcje_predefiniowane:Funkcje_parseInt_i_parseFloat /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_parseInt_i_parseFloat +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcja_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcja_p%C4%99tli:Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_komentarzy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_komentarzy +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_manipulacji_obiektem /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_manipulacji_obiektem +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w:Instrukcja_throw /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_throw +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w:Instrukcja_try...catch /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_obs%C5%82ugi_wyj%C4%85tk%C3%B3w/Instrukcja_try...catch +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_break /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_break +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_continue /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_continues /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_for /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_for +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_label /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_label +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_p%C4%99tli:Instrukcja_while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_while +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Instrukcje_warunkowe /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_warunkowe +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:J%C4%99zyki_oparte_na_klasach_vs._oparte_na_prototypach /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Litera%C5%82y /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Litera%C5%82y +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Nazywanie_Funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:O /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:O_tym_przewodniku /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_i_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_i_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_Array /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_Boolean /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_Date /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_Math /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_Number /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_RegExp /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_String /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_function /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Obiekty_predefiniowane:Obiekt_logiczny /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operacje_na_%C5%82a%C5%84cuchach /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_arytmetyczne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_arytmetyczne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_bitowe /pl/docs/Web/JavaScript/Guide/Expressions_and_Operators#Bitwise_operators +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_logiczne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_logiczne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_por%C3%B3wnania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_por%C3%B3wnywania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_przypisania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_przypisania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_specjalne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_specjalne +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Operatory:Operatory_string /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Komunikacja_mi%C4%99dzy_JavaScript_a_Java /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_JavaScript_a_Java +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Komunikacja_mi%C4%99dzy_Java_a_JavaScript /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_Java_a_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Komunikacja_mi%C4%99dzy_Java_a_JavaScript:U%C5%BCywanie_klas_LiveConnect /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Komunikacja_mi%C4%99dzy_Java_a_JavaScript/U%C5%BCywanie_klas_LiveConnect +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Konwersja_typu_danych /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Konwersja_typu_danych:Konwersja_JavaScript_do_Java /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_JavaScript_do_Java +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Konwersja_typu_danych:Konwersja_Java_do_JavaScript /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_Java_do_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Podgl%C4%85d_klas_LiveConnect:Praca_z_klas%C4%85_opakowuj%C4%85c%C4%85 /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_klas_LiveConnect/Praca_z_klas%C4%85_opakowuj%C4%85c%C4%85 +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci:Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci:Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci:Globlne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci:Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci:Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci:Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci:Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci:Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci:Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci:Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci:Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci:Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci:Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:Tworzenie_hierarchii /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/Tworzenie_hierarchii +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu:Dodawanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu:Dziedziczenie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:W%C5%82asno%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:W%C5%82asno%C5%9Bci_obiektu:Dodawanie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:W%C5%82asno%C5%9Bci_obiektu:Dziedziczenie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_przyk%C5%82adem:Wi%C4%99cej_elastycznych_konstruktor%C3%B3w /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/Wi%C4%99cej_elastycznych_konstruktor%C3%B3w +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_wyra%C5%BCeniami_regularnymi /pl/docs/Web/JavaScript/Guide/Regular_Expressions#Working_with_Regular_Expressions +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_wyra%C5%BCeniami_regularnymi:Globalne_wyszukiwanie,_wielko%C5%9B%C4%87_znak%C3%B3w,_wieloliniowe_wej%C5%9Bcie /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Globalne_wyszukiwanie,_wielko%C5%9B%C4%87_znak%C3%B3w,_wieloliniowe_wej%C5%9Bcie +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_wyra%C5%BCeniami_regularnymi:Przyk%C5%82ady_wyra%C5%BCe%C5%84_regularnych /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/Przyk%C5%82ady_wyra%C5%BCe%C5%84_regularnych +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Praca_z_wyra%C5%BCeniami_regularnymi:U%C5%BCycie_odpowiedniego_znaku /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi/U%C5%BCycie_odpowiedniego_znaku +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Przegl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Sta%C5%82e /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Sta%C5%82e +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Definiowanie_metod /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_metod +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Definiowanie_metod_pobierania_i_ustawiania /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_metod_pobierania_i_ustawiania +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Definiowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Definiowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Indeksowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Indeksowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Indeksowanie_w%C5%82asno%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:U%C5%BCywanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:U%C5%BCywanie_inicjacji_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:U%C5%BCywanie_inicjacji_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:U%C5%BCywanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Usuwanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Usuwanie_w%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Zastosowanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_nowych_obiekt%C3%B3w:Zastosowanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Tworzenie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_wyra%C5%BCenia_regularnego +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:U%C5%BCywanie_argument%C3%B3w_tablicy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Unicode /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Unicode +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Warto%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Warto%C5%9Bci +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Wyra%C5%BCenia /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wyra%C5%BCenia +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Wywo%C5%82anie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Zapisywanie_wzorca_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Zastosowanie_obiektu_arguments /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5:Zmienne /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zmienne +/pl/docs/QA:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/QA/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/RDF:Inne_zasoby /pl/docs/RDF/Inne_zasoby +/pl/docs/RDF:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/RDF/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/RDF_API:_Interfejsy_(link) /pl/docs/RDF_API/Interfejsy_(link) +/pl/docs/RSS:Inne_zasoby /pl/docs/RSS/Inne_zasoby +/pl/docs/RSS:Wersje:0.91:Netscape:Wersja_1 /pl/docs/RSS/Wersje/0.91/Netscape/Wersja_1 +/pl/docs/Rejestracja_Chrome /pl/docs/Mozilla/Rejestracja_Chrome +/pl/docs/Rejestry_Chrome /pl/docs/Mozilla/Rejestracja_Chrome +/pl/docs/Rozszerzenia/:Inne_zasoby /pl/docs/Rozszerzenia/Inne_zasoby +/pl/docs/Rozszerzenia::Inne_zasoby /pl/docs/Rozszerzenia/Inne_zasoby +/pl/docs/Rozszerzenia:Inne_zasoby /pl/docs/Rozszerzenia/Inne_zasoby +/pl/docs/Rozszerzenia:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Rozszerzenia/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Rozszerzenia_CSS_Mozilli /pl/docs/Web/CSS/Mozilla_Extensions +/pl/docs/Rysowanie_grafik_za_pomoc%C4%85_Canvas /pl/docs/Web/API/Canvas_API/Tutorial +/pl/docs/SVG /pl/docs/Web/SVG +/pl/docs/SVG/Inne_zasoby /pl/docs/Web/SVG/Inne_zasoby +/pl/docs/SVG/Przewodnik /pl/docs/Web/SVG/Przewodnik +/pl/docs/SVG:Inne_zasoby /pl/docs/Web/SVG/Inne_zasoby +/pl/docs/SVG:Przewodnik /pl/docs/Web/SVG/Przewodnik +/pl/docs/SVG_w_Firefoksie_2 /pl/docs/SVG_w_Firefoksie +/pl/docs/SVG_w_XHTML_-_Wprowadzenie /pl/docs/Web/SVG/Przewodnik/SVG_w_XHTML_-_Wprowadzenie +/pl/docs/Safely_accessing_content_DOM_from_chrome /pl/docs/Bezpieczny_dost%C4%99p_do_sk%C5%82adnik%C3%B3w_DOM_z_poziomu_chrome +/pl/docs/Skr%C3%B3cone_deklaracje_CSS /pl/docs/Web/CSS/Skr%C3%B3cone_deklaracje_CSS +/pl/docs/Standardy_WWW:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Standardy_WWW/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Storage:Wydajno%C5%9B%C4%87 /pl/docs/Storage/Wydajno%C5%9B%C4%87 +/pl/docs/Strona_g%C5%82%C3%B3wna /pl/docs/Web +/pl/docs/Szybka_dokumentacja_CSS-2 /pl/docs/Web/CSS +/pl/docs/The_Basics_of_Web_Services /pl/docs/Podstawy_Web_Services +/pl/docs/Tips_for_Authoring_Fast-loading_HTML_Pages /pl/docs/Porady_odno%C5%9Bnie_tworzenia_szybko_%C5%82aduj%C4%85cych_si%C4%99_stron_HTML +/pl/docs/Toolkit_API:Dokumentacje /pl/docs/Toolkit_API/Dokumentacje +/pl/docs/Toolkit_API:Oficjalne_dokumentacje /pl/docs/Toolkit_API/Oficjalne_dokumentacje +/pl/docs/Tools/Debugger/How_to /pl/docs/Narz%C4%99dzia/Debugger/How_to +/pl/docs/Tools/Debugger/How_to/Access_debugging_in_add-ons /pl/docs/Narz%C4%99dzia/Debugger/How_to/Access_debugging_in_add-ons +/pl/docs/Tools/Page_Inspector/How_to /pl/docs/Narz%C4%99dzia/Page_Inspector/How_to +/pl/docs/Tools/Page_Inspector/How_to/Open_the_Inspector /pl/docs/Narz%C4%99dzia/Page_Inspector/How_to/Open_the_Inspector +/pl/docs/Tools/Performance /pl/docs/Narz%C4%99dzia/Performance +/pl/docs/Tools/Performance/Flame_Chart /pl/docs/Narz%C4%99dzia/Performance/Flame_Chart +/pl/docs/Tools/WebIDE /pl/docs/Narz%C4%99dzia/WebIDE +/pl/docs/Tools/WebIDE/Troubleshooting /pl/docs/Narz%C4%99dzia/WebIDE/Troubleshooting +/pl/docs/Tools/Web_Console /pl/docs/Narz%C4%99dzia/Web_Console +/pl/docs/Tools/Web_Console/Pomocnik /pl/docs/Narz%C4%99dzia/Web_Console/Pomocnik +/pl/docs/Transformacje_XML_z_XSLT /pl/docs/Web/XSLT/Transformacje_XML_z_XSLT +/pl/docs/Transformacje_XML_z_XSLT/Dokumentacja_XSLT_XPath /pl/docs/Web/XSLT/Transformacje_XML_z_XSLT/Dokumentacja_XSLT_XPath +/pl/docs/Transformacje_XML_z_XSLT/Przeczytaj_wi%C4%99cej /pl/docs/Web/XSLT/Transformacje_XML_z_XSLT/Przeczytaj_wi%C4%99cej +/pl/docs/Transformacje_XML_z_XSLT:Dokumentacja_XSLT_XPath /pl/docs/Web/XSLT/Transformacje_XML_z_XSLT/Dokumentacja_XSLT_XPath +/pl/docs/Transformacje_XML_z_XSLT:Przeczytaj_wi%C4%99cej /pl/docs/Web/XSLT/Transformacje_XML_z_XSLT/Przeczytaj_wi%C4%99cej +/pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa:UUID /pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa/UUID +/pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa:Zaczynamy /pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa/Zaczynamy +/pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa:contents.rdf /pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa/contents.rdf +/pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa:install.rdf /pl/docs/Tworzenie_sk%C3%B3rek_dla_Firefoksa/install.rdf +/pl/docs/U%C5%BCycie_warto%C5%9Bci_URL_dla_w%C5%82asno%C5%9Bci_cursor /pl/docs/Web/CSS/cursor/U%C5%BCycie_warto%C5%9Bci_URL_dla_w%C5%82asno%C5%9Bci_cursor +/pl/docs/Web/API/Uint16Array /pl/docs/Web/JavaScript/Referencje/Obiekty/Uint16Array +/pl/docs/Web/API/WebGL_API/Getting_started_with_WebGL /pl/docs/Web/API/WebGL_API/Tutorial/Getting_started_with_WebGL +/pl/docs/Web/API/WindowBase64.atob /pl/docs/Web/API/WindowBase64/atob +/pl/docs/Web/API/WindowBase64.btoa /pl/docs/Web/API/WindowBase64/btoa +/pl/docs/Web/CSS/-moz-appearance /pl/docs/Web/CSS/appearance +/pl/docs/Web/CSS/-moz-background-clip /pl/docs/CSS/background-clip +/pl/docs/Web/CSS/-moz-background-inline-policy /pl/docs/Web/CSS/box-decoration-break +/pl/docs/Web/CSS/-moz-background-origin /pl/docs/Web/CSS/background-origin +/pl/docs/Web/CSS/-moz-border-radius /pl/docs/Web/CSS/border-radius +/pl/docs/Web/CSS/-moz-border-radius-bottomleft /pl/docs/Web/CSS/border-bottom-left-radius +/pl/docs/Web/CSS/-moz-border-radius-bottomright /pl/docs/Web/CSS/border-bottom-right-radius +/pl/docs/Web/CSS/-moz-border-radius-topleft /pl/docs/Web/CSS/border-top-left-radius +/pl/docs/Web/CSS/-moz-border-radius-topright /pl/docs/Web/CSS/border-top-right-radius +/pl/docs/Web/CSS/-moz-box-direction /pl/docs/Web/CSS/box-direction +/pl/docs/Web/CSS/-moz-box-sizing /pl/docs/Web/CSS/box-sizing +/pl/docs/Web/CSS/-moz-opacity /pl/docs/Web/CSS/opacity +/pl/docs/Web/CSS/-moz-outline-offset /pl/docs/Web/CSS/outline-offset +/pl/docs/Web/CSS/-moz-outline-style /pl/docs/Web/CSS/outline-style +/pl/docs/Web/CSS/:last-node /pl/docs/Web/CSS/%3A-moz-last-node +/pl/docs/Web/CSS/@-moz-document /pl/docs/Web/CSS/%40document +/pl/docs/Web/CSS/CSS_Reference/Rozszerzenia_Mozilli /pl/docs/Web/CSS/Mozilla_Extensions +/pl/docs/Web/CSS/Na_pocz%C4%85tek/Czym_jest_CSS? /pl/docs/Web/CSS/Na_pocz%C4%85tek/Czym_jest_CSS +/pl/docs/Web/CSS/Na_pocz%C4%85tek/Tre%C5%9B%C4%87 /pl/docs/Learn/CSS/Howto/Generated_content +/pl/docs/Web/CSS/Uzycie_zmiennych_CSS /pl/docs/Web/CSS/Using_CSS_custom_properties +/pl/docs/Web/CSS/transform-function/matrix /pl/docs/Web/CSS/transform-function/matrix() +/pl/docs/Web/Events/drag /pl/docs/Web/API/Document/drag_event +/pl/docs/Web/Events/languagechange /pl/docs/Web/API/Window/languagechange_event +/pl/docs/Web/Guide/CSS /pl/docs/Learn/CSS +/pl/docs/Web/Guide/HTML /pl/docs/Learn/HTML +/pl/docs/Web/Guide/HTML/Wprowadzenie /pl/docs/Learn/HTML/Introduction_to_HTML +/pl/docs/Web/HTML/Elementy /pl/docs/Web/HTML/Element +/pl/docs/Web/HTML/Elementy/a /pl/docs/Web/HTML/Element/a +/pl/docs/Web/HTML/Elementy/abbr /pl/docs/Web/HTML/Element/abbr +/pl/docs/Web/HTML/Elementy/acronym /pl/docs/Web/HTML/Element/acronym +/pl/docs/Web/HTML/Elementy/address /pl/docs/Web/HTML/Element/address +/pl/docs/Web/HTML/Elementy/area /pl/docs/Web/HTML/Element/area +/pl/docs/Web/HTML/Elementy/b /pl/docs/Web/HTML/Element/b +/pl/docs/Web/HTML/Elementy/big /pl/docs/Web/HTML/Element/big +/pl/docs/Web/HTML/Elementy/blink /pl/docs/Web/HTML/Element/blink +/pl/docs/Web/HTML/Elementy/blockquote /pl/docs/Web/HTML/Element/blockquote +/pl/docs/Web/HTML/Elementy/br /pl/docs/Web/HTML/Element/br +/pl/docs/Web/HTML/Elementy/code /pl/docs/Web/HTML/Element/code +/pl/docs/Web/HTML/Elementy/dd /pl/docs/Web/HTML/Element/dd +/pl/docs/Web/HTML/Elementy/dl /pl/docs/Web/HTML/Element/dl +/pl/docs/Web/HTML/Elementy/em /pl/docs/Web/HTML/Element/em +/pl/docs/Web/HTML/Elementy/hr /pl/docs/Web/HTML/Element/hr +/pl/docs/Web/HTML/Elementy/html /pl/docs/Web/HTML/Element/html +/pl/docs/Web/HTML/Elementy/i /pl/docs/Web/HTML/Element/i +/pl/docs/Web/HTML/Elementy/marquee /pl/docs/Web/HTML/Element/marquee +/pl/docs/Web/HTML/Elementy/s /pl/docs/Web/HTML/Element/s +/pl/docs/Web/HTML/Elementy/small /pl/docs/Web/HTML/Element/small +/pl/docs/Web/HTML/Elementy/strong /pl/docs/Web/HTML/Element/strong +/pl/docs/Web/HTML/The_Importance_of_Correct_Commenting /pl/docs/Web/HTML/Znaczenie_poprawnego_komentowania +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5 /pl/docs/Web/JavaScript/Referencje +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments/callee /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/callee +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments/caller /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/caller +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/arguments/length /pl/docs/Web/JavaScript/Referencje/Funkcje/arguments/length +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/decodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURI +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/decodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURIComponent +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/encodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURI +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/encodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURIComponent +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/isFinite /pl/docs/Web/JavaScript/Referencje/Obiekty/isFinite +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/isNaN /pl/docs/Web/JavaScript/Referencje/Obiekty/isNaN +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/parseFloat /pl/docs/Web/JavaScript/Referencje/Obiekty/parseFloat +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Funkcje/parseInt /pl/docs/Web/JavaScript/Referencje/Obiekty/parseInt +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Komentarze /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Komentarze/komentarz /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/LiveConnect /pl/docs/Web/JavaScript/Referencje/LiveConnect +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/LiveConnect/JSException /pl/docs/Web/JavaScript/Referencje/LiveConnect/JSException +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/LiveConnect/JSObject /pl/docs/Web/JavaScript/Referencje/LiveConnect/JSObject +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/O_tym_dokumencie /pl/docs/Web/JavaScript/Referencje/O_tym_dokumencie +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/O_tym_dokumencie/Konwencje_formatowania_tekstu /pl/docs/Web/JavaScript/Referencje/O_tym_dokumencie/Konwencje_formatowania_tekstu +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/concat /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/concat +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/every /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/every +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/filter /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/filter +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/forEach /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/forEach +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/index /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/index +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/indexOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/indexOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/input /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/input +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/join /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/join +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/lastIndexOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/lastIndexOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/length /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/length +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/map /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/map +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/pop /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/pop +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/prototype +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/push /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/push +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/reverse /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/reverse +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/shift /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/shift +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/slice /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/slice +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/some /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/some +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/sort /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/sort +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/splice /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/splice +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/toSource +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/unshift /pl/docs/Web/JavaScript/Referencje/Obiekty/Array/unshift +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Array/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/prototype +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/toSource +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Boolean/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/valueOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/UTC /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/UTC +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/constructor +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getDate +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getDay /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getDay +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getFullYear +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getHours +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMilliseconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMinutes +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getMonth +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getSeconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getTime /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getTime +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getTimezoneOffset /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getTimezoneOffset +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCDate +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCDay /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCDay +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCFullYear +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCHours +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMilliseconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMinutes +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCMonth +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getUTCSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getUTCSeconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/getYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/getYear +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/now /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/now +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/parse /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/parse +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/prototype +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setDate +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setFullYear +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setHours +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMilliseconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMinutes +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setMonth +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setSeconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setTime /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setTime +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCDate /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCDate +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCFullYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCFullYear +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCHours /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCHours +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCMilliseconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMilliseconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCMinutes /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMinutes +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCMonth /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCMonth +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setUTCSeconds /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setUTCSeconds +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/setYear /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/setYear +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toGMTString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toGMTString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toLocaleDateString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleDateString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toLocaleString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toLocaleTimeString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toLocaleTimeString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toSource +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/toUTCString /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/toUTCString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Date/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Date/valueOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaArray /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaArray/length /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray/length +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaArray/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaArray/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaClass /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaClass +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaObject /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaObject +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/JavaPackage /pl/docs/Web/JavaScript/Referencje/Obiekty/JavaPackage +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math /pl/docs/Web/JavaScript/Referencje/Obiekty/Math +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/E +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LN10 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LN10 +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LN2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LN2 +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LOG10E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LOG10E +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/LOG2E /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/LOG2E +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/PI /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/PI +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/SQRT1_2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/SQRT1_2 +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/SQRT2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/SQRT2 +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/abs /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/abs +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/acos /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/acos +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/asin /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/asin +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/atan /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/atan +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/atan2 /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/atan2 +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/ceil /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/ceil +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/cos /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/cos +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/exp /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/exp +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/floor /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/floor +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/log /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/log +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/max /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/max +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/min /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/min +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/pow /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/pow +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/random /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/random +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/round /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/round +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/sin /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/sin +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/sqrt /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/sqrt +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Math/tan /pl/docs/Web/JavaScript/Referencje/Obiekty/Math/tan +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/MAX_VALUE /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/MAX_VALUE +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/MIN_VALUE /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/MIN_VALUE +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/NEGATIVE_INFINITY /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/NEGATIVE_INFINITY +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/NaN +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/POSITIVE_INFINITY /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/POSITIVE_INFINITY +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/constructor +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toExponential /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toExponential +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toFixed /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toFixed +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toPrecision /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toPrecision +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Number/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Number/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/constructor +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/prototype +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/toLocaleString /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toLocaleString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toSource +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/unwatch /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/unwatch +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Object/watch /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/watch +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/java /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/java +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/nazwaKlasy /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/nazwaKlasy +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/netscape /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/netscape +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/Packages/sun /pl/docs/Web/JavaScript/Referencje/Obiekty/Packages/sun +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/exec /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/exec +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/global /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/global +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/ignoreCase /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/ignoreCase +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/prototype +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/source /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/source +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/test /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/test +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/toSource +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/RegExp/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/anchor /pl/docs/Web/JavaScript/Referencje/Obiekty/String/anchor +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/big /pl/docs/Web/JavaScript/Referencje/Obiekty/String/big +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/blink /pl/docs/Web/JavaScript/Referencje/Obiekty/String/blink +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/bold /pl/docs/Web/JavaScript/Referencje/Obiekty/String/bold +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/charAt /pl/docs/Web/JavaScript/Referencje/Obiekty/String/charAt +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/charCodeAt /pl/docs/Web/JavaScript/Referencje/Obiekty/String/charCodeAt +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/concat /pl/docs/Web/JavaScript/Referencje/Obiekty/String/concat +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fixed /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fixed +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fontcolor /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fontcolor +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fontsize /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fontsize +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/fromCharCode /pl/docs/Web/JavaScript/Referencje/Obiekty/String/fromCharCode +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/italics /pl/docs/Web/JavaScript/Referencje/Obiekty/String/italics +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/length /pl/docs/Web/JavaScript/Referencje/Obiekty/String/length +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/link /pl/docs/Web/JavaScript/Referencje/Obiekty/String/link +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/prototype /pl/docs/Web/JavaScript/Referencje/Obiekty/String/prototype +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/search /pl/docs/Web/JavaScript/Referencje/Obiekty/String/search +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/slice /pl/docs/Web/JavaScript/Referencje/Obiekty/String/slice +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/small /pl/docs/Web/JavaScript/Referencje/Obiekty/String/small +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/strike /pl/docs/Web/JavaScript/Referencje/Obiekty/String/strike +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/sub /pl/docs/Web/JavaScript/Referencje/Obiekty/String/sub +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/substr /pl/docs/Web/JavaScript/Referencje/Obiekty/String/substr +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/substring /pl/docs/Web/JavaScript/Referencje/Obiekty/String/substring +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/sup /pl/docs/Web/JavaScript/Referencje/Obiekty/String/sup +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toLowerCase /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toLowerCase +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toSource /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toSource +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toString /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toString +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/toUpperCase /pl/docs/Web/JavaScript/Referencje/Obiekty/String/toUpperCase +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/String/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/String/valueOf +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/java /pl/docs/Web/JavaScript/Referencje/Obiekty/java +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/netscape /pl/docs/Web/JavaScript/Referencje/Obiekty/netscape +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Obiekty/sun /pl/docs/Web/JavaScript/Referencje/Obiekty/sun +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_arytmetyczne /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_arytmetyczne +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_dzia%C5%82aj%C4%85ce_na_ci%C4%85gach_znak%C3%B3w /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_dzia%C5%82aj%C4%85ce_na_ci%C4%85gach_znak%C3%B3w +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_pami%C4%99ci /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_pami%C4%99ci +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_przypisania /pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_przypisania +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_delete /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_delete +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_function /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_function +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_in /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_in +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_instanceof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_instanceof +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_new /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_new +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_przecinkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_przecinkowy +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_typeof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_typeof +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_void /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_void +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Operatory_specjalne/Operator_warunkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_warunkowy +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Operatory/Pierwsze%C5%84stwo_operator%C3%B3w /pl/docs/Web/JavaScript/Referencje/Operatory/Pierwsze%C5%84stwo_operator%C3%B3w +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia /pl/docs/Web/JavaScript/Referencje/Polecenia +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/block /pl/docs/Web/JavaScript/Referencje/Polecenia/block +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/break /pl/docs/Web/JavaScript/Referencje/Polecenia/break +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/do...while /pl/docs/Web/JavaScript/Referencje/Polecenia/do...while +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/etykieta /pl/docs/Web/JavaScript/Referencje/Polecenia/etykieta +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/export /pl/docs/Web/JavaScript/Referencje/Polecenia/export +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/for /pl/docs/Web/JavaScript/Referencje/Polecenia/for +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/function /pl/docs/Web/JavaScript/Referencje/Polecenia/function +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/if...else /pl/docs/Web/JavaScript/Referencje/Polecenia/if...else +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/import /pl/docs/Web/JavaScript/Referencje/Polecenia/import +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/return /pl/docs/Web/JavaScript/Referencje/Polecenia/return +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/switch /pl/docs/Web/JavaScript/Referencje/Polecenia/switch +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/throw /pl/docs/Web/JavaScript/Referencje/Polecenia/throw +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/var /pl/docs/Web/JavaScript/Referencje/Polecenia/var +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/while /pl/docs/Web/JavaScript/Referencje/Polecenia/while +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Przestarza%C5%82e_w%C5%82asno%C5%9Bci_i_metody /pl/docs/Web/JavaScript/Referencje/Przestarza%C5%82e_w%C5%82asno%C5%9Bci_i_metody +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/S%C5%82owa_zarezerwowane /pl/docs/Web/JavaScript/Referencje/S%C5%82owa_zarezerwowane +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci/Infinity /pl/docs/Web/JavaScript/Referencje/Obiekty/Infinity +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci/NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/NaN +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bci/undefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/W%C5%82asno%C5%9Bciundefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Wyra%C5%BCenia /pl/docs/Web/JavaScript/Referencje/Polecenia +/pl/docs/Web/JavaScript/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Wyra%C5%BCenia/const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Czytanie_wyra%C5%BCenia_regularnego /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zapisywanie_wzorca_wyra%C5%BCenia_regularnego +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcja_p%C4%99tli /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcja_p%C4%99tli/Instrukcja_do_...while /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_do_...while +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continues /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Instrukcje_p%C4%99tli/Instrukcja_continue +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/J%C4%99zyki_oparte_na_klasach_vs._oparte_na_prototypach /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Nazywanie_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Wywo%C5%82anie_funkcji +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/O_tym_przewodniku +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_i_w%C5%82asno%C5%9Bci +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_logiczny /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_bitowe /pl/docs/Web/JavaScript/Guide/Expressions_and_Operators#Bitwise_operators +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnywania /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_por%C3%B3wnania +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operatory_string /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Operatory/Operacje_na_%C5%82a%C5%84cuchach +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Podgl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Globlne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciow%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Globalne_informacje_w_konstruktorach /pl/docs/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Globalne_informacje_w_konstruktorach +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82a%C5%9Bciwo%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Warto%C5%9Bci_lokalne_vs._dziedziczone +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Brak_wielokrotnego_dziedziczenia /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model#No_multiple_inheritance +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Powr%C3%B3t_dziedziczenia_w%C5%82asno%C5%9Bci/Okre%C5%9Blanie_wzajemnych_relacji_obiektu /pl/docs/Web/JavaScript/Guide/Details_of_the_Object_Model +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu/Dodawanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dodawanie_w%C5%82asno%C5%9Bci +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82a%C5%9Bciwo%C5%9Bci_obiektu/Dziedziczenie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_przyk%C5%82adem/W%C5%82asno%C5%9Bci_obiektu/Dziedziczenie_w%C5%82asno%C5%9Bci +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Praca_z_wyra%C5%BCeniami_regularnymi /pl/docs/Web/JavaScript/Guide/Regular_Expressions#Working_with_Regular_Expressions +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Przegl%C4%85d_JavaScriptu /pl/docs/JavaScript/Guide/Przeglad_JavaScript +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Definiowanie_w%C5%82asno%C5%9Bci_typu_obiektu +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82a%C5%9Bciowo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82a%C5%9Bciwo%C5%9Bci_obiektu /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Indeksowanie_w%C5%82asno%C5%9Bci_obiektu +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_'this'_do_obiektu_referencji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_'this'_do_obiektu_referencji +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiekt%C3%B3w /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_inicjacji_obiektu +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/U%C5%BCywanie_konstruktor%C3%B3w_funkcji /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Zastosowanie_konstruktor%C3%B3w_funkcji +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82a%C5%9Bciwo%C5%9Bci /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%C3%B3w/Usuwanie_w%C5%82asno%C5%9Bci +/pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/U%C5%BCywanie_argument%C3%B3w_tablicy /pl/docs/Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_j%C4%99zyku_JavaScript_1.5/Zastosowanie_obiektu_arguments +/pl/docs/Web/JavaScript/Reference/Global_Objects/Error /pl/docs/Web/JavaScript/Referencje/Obiekty/Error +/pl/docs/Web/JavaScript/Reference/Global_Objects/Error/message /pl/docs/Web/JavaScript/Referencje/Obiekty/Error/message +/pl/docs/Web/JavaScript/Reference/Global_Objects/Error/name /pl/docs/Web/JavaScript/Referencje/Obiekty/Error/name +/pl/docs/Web/JavaScript/Referencje/Funkcje /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Web/JavaScript/Referencje/Funkcje/Boolean /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Web/JavaScript/Referencje/Funkcje/Date /pl/docs/Web/JavaScript/Referencje/Obiekty/Date +/pl/docs/Web/JavaScript/Referencje/Funkcje/Number /pl/docs/Web/JavaScript/Referencje/Obiekty/Number +/pl/docs/Web/JavaScript/Referencje/Funkcje/Object /pl/docs/Web/JavaScript/Referencje/Obiekty/Object +/pl/docs/Web/JavaScript/Referencje/Funkcje/String /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Web/JavaScript/Referencje/Funkcje/decodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURI +/pl/docs/Web/JavaScript/Referencje/Funkcje/decodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/decodeURIComponent +/pl/docs/Web/JavaScript/Referencje/Funkcje/encodeURI /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURI +/pl/docs/Web/JavaScript/Referencje/Funkcje/encodeURIComponent /pl/docs/Web/JavaScript/Referencje/Obiekty/encodeURIComponent +/pl/docs/Web/JavaScript/Referencje/Funkcje/eval /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/eval +/pl/docs/Web/JavaScript/Referencje/Funkcje/isFinite /pl/docs/Web/JavaScript/Referencje/Obiekty/isFinite +/pl/docs/Web/JavaScript/Referencje/Funkcje/isNaN /pl/docs/Web/JavaScript/Referencje/Obiekty/isNaN +/pl/docs/Web/JavaScript/Referencje/Funkcje/parseFloat /pl/docs/Web/JavaScript/Referencje/Obiekty/parseFloat +/pl/docs/Web/JavaScript/Referencje/Funkcje/parseInt /pl/docs/Web/JavaScript/Referencje/Obiekty/parseInt +/pl/docs/Web/JavaScript/Referencje/Komentarze /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Web/JavaScript/Referencje/Komentarze/komentarz /pl/docs/Web/JavaScript/Referencje/Komentarz +/pl/docs/Web/JavaScript/Referencje/Obiekty/Array/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Array +/pl/docs/Web/JavaScript/Referencje/Obiekty/Array/valueOf /pl/docs/Web/JavaScript/Referencje/Obiekty/Object/valueOf +/pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Boolean +/pl/docs/Web/JavaScript/Referencje/Obiekty/Function/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/Function +/pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/RegExp +/pl/docs/Web/JavaScript/Referencje/Obiekty/String/constructor /pl/docs/Web/JavaScript/Referencje/Obiekty/String +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne /pl/docs/Web/JavaScript/Referencje/Operatory +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_delete /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_delete +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_function /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_function +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_in /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_in +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_instanceof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_instanceof +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_new /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_new +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_przecinkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_przecinkowy +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_typeof /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_typeof +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_void /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_void +/pl/docs/Web/JavaScript/Referencje/Operatory/Operatory_specjalne/Operator_warunkowy /pl/docs/Web/JavaScript/Referencje/Operatory/Operator_warunkowy +/pl/docs/Web/JavaScript/Referencje/W%C5%82asno%C5%9Bci /pl/docs/Web/JavaScript/Referencje/Obiekty +/pl/docs/Web/JavaScript/Referencje/W%C5%82asno%C5%9Bci/Infinity /pl/docs/Web/JavaScript/Referencje/Obiekty/Infinity +/pl/docs/Web/JavaScript/Referencje/W%C5%82asno%C5%9Bci/NaN /pl/docs/Web/JavaScript/Referencje/Obiekty/NaN +/pl/docs/Web/JavaScript/Referencje/W%C5%82asno%C5%9Bci/undefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Web/JavaScript/Referencje/W%C5%82asno%C5%9Bciundefined /pl/docs/Web/JavaScript/Referencje/Obiekty/undefined +/pl/docs/Web/JavaScript/Referencje/Wyra%C5%BCenia /pl/docs/Web/JavaScript/Referencje/Polecenia +/pl/docs/Web/JavaScript/Referencje/Wyra%C5%BCenia/const /pl/docs/Web/JavaScript/Referencje/Polecenia/const +/pl/docs/Web/WebGL /pl/docs/Web/API/WebGL_API +/pl/docs/Web/WebGL/Getting_started_with_WebGL /pl/docs/Web/API/WebGL_API/Tutorial/Getting_started_with_WebGL +/pl/docs/Web/XSLT/Elementy /pl/docs/Web/XSLT/Element +/pl/docs/Web/XSLT/Elementy/element /pl/docs/Web/XSLT/Element/element +/pl/docs/Web_Developer_-_rozszerzenie_Firefoksa_(link) https://addons.mozilla.org/extensions/moreinfo.php?id=60&application=firefox +/pl/docs/Web_Development:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/Web_Development/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/Wikipedysta/Ptak82 /en-US/docs/User:Ptak82 +/pl/docs/Wikipedysta:Ptak82 /en-US/docs/User:Ptak82 +/pl/docs/Wprowadzenie_do_XML-a /pl/docs/Web/XML/Wprowadzenie_do_XML-a +/pl/docs/Wprowadzenie_do_XMLa /pl/docs/Web/XML/Wprowadzenie_do_XML-a +/pl/docs/Wspracie_przegl%C4%85darek_dla_element%C3%B3w_HTML /pl/docs/Wsparcie_przegl%C4%85darek_dla_element%C3%B3w_HTML +/pl/docs/XML:Inne_zasoby /pl/docs/XML/Inne_zasoby +/pl/docs/XML_Introduction /pl/docs/Web/XML/Wprowadzenie_do_XML-a +/pl/docs/XPConnect:Podstawy_architektury /pl/docs/XPConnect/Podstawy_architektury +/pl/docs/XPath /pl/docs/Web/XPath +/pl/docs/XPath/Funkcje /pl/docs/Web/XPath/Funkcje +/pl/docs/XPath/Funkcje/boolean /pl/docs/Web/XPath/Funkcje/boolean +/pl/docs/XPath/Funkcje/ceiling /pl/docs/Web/XPath/Funkcje/ceiling +/pl/docs/XPath/Funkcje/concat /pl/docs/Web/XPath/Funkcje/concat +/pl/docs/XPath/Funkcje/contains /pl/docs/Web/XPath/Funkcje/contains +/pl/docs/XPath/Funkcje/count /pl/docs/Web/XPath/Funkcje/count +/pl/docs/XPath/Funkcje/current /pl/docs/Web/XPath/Funkcje/current +/pl/docs/XPath/Funkcje/document /pl/docs/Web/XPath/Funkcje/document +/pl/docs/XPath/Funkcje/element-available /pl/docs/Web/XPath/Funkcje/element-available +/pl/docs/XPath/Funkcje/false /pl/docs/Web/XPath/Funkcje/false +/pl/docs/XPath/Funkcje/floor /pl/docs/Web/XPath/Funkcje/floor +/pl/docs/XPath/Funkcje/format-number /pl/docs/Web/XPath/Funkcje/format-number +/pl/docs/XPath/Funkcje/function-available /pl/docs/Web/XPath/Funkcje/function-available +/pl/docs/XPath/Funkcje/generate-id /pl/docs/Web/XPath/Funkcje/generate-id +/pl/docs/XPath/Funkcje/id /pl/docs/Web/XPath/Funkcje/id +/pl/docs/XPath/Funkcje/key /pl/docs/Web/XPath/Funkcje/key +/pl/docs/XPath/Funkcje/lang /pl/docs/Web/XPath/Funkcje/lang +/pl/docs/XPath/Funkcje/last /pl/docs/Web/XPath/Funkcje/last +/pl/docs/XPath/Funkcje/local-name /pl/docs/Web/XPath/Funkcje/local-name +/pl/docs/XPath/Funkcje/name /pl/docs/Web/XPath/Funkcje/name +/pl/docs/XPath/Funkcje/namespace-uri /pl/docs/Web/XPath/Funkcje/namespace-uri +/pl/docs/XPath/Funkcje/normalize-space /pl/docs/Web/XPath/Funkcje/normalize-space +/pl/docs/XPath/Funkcje/not /pl/docs/Web/XPath/Funkcje/not +/pl/docs/XPath/Funkcje/number /pl/docs/Web/XPath/Funkcje/number +/pl/docs/XPath/Funkcje/position /pl/docs/Web/XPath/Funkcje/position +/pl/docs/XPath/Funkcje/round /pl/docs/Web/XPath/Funkcje/round +/pl/docs/XPath/Funkcje/starts-with /pl/docs/Web/XPath/Funkcje/starts-with +/pl/docs/XPath/Funkcje/string /pl/docs/Web/XPath/Funkcje/string +/pl/docs/XPath/Funkcje/string-length /pl/docs/Web/XPath/Funkcje/string-length +/pl/docs/XPath/Funkcje/substring /pl/docs/Web/XPath/Funkcje/substring +/pl/docs/XPath/Funkcje/substring-after /pl/docs/Web/XPath/Funkcje/substring-after +/pl/docs/XPath/Funkcje/substring-before /pl/docs/Web/XPath/Funkcje/substring-before +/pl/docs/XPath/Funkcje/sum /pl/docs/Web/XPath/Funkcje/sum +/pl/docs/XPath/Funkcje/system-property /pl/docs/Web/XPath/Funkcje/system-property +/pl/docs/XPath/Funkcje/translate /pl/docs/Web/XPath/Funkcje/translate +/pl/docs/XPath/Funkcje/true /pl/docs/Web/XPath/Funkcje/true +/pl/docs/XPath/Funkcje/unparsed-entity-url /pl/docs/Web/XPath/Funkcje/unparsed-entity-url +/pl/docs/XPath/Osie /pl/docs/Web/XPath/Osie +/pl/docs/XPath/Wyra%C5%BCenia /pl/docs/Web/XPath/Osie +/pl/docs/XPath/Wyra%C5%BCenia/ancestor /pl/docs/XPath/Osie/ancestor +/pl/docs/XPath/Wyra%C5%BCenia/ancestor-or-self /pl/docs/XPath/Osie/ancestor-or-self +/pl/docs/XPath/Wyra%C5%BCenia/attribute /pl/docs/XPath/Osie/attribute +/pl/docs/XPath/Wyra%C5%BCenia/child /pl/docs/XPath/Osie/child +/pl/docs/XPath/Wyra%C5%BCenia/descendant /pl/docs/XPath/Osie/descendant +/pl/docs/XPath/Wyra%C5%BCenia/descendant-or-self /pl/docs/XPath/Osie/descendant-or-self +/pl/docs/XPath/Wyra%C5%BCenia/following /pl/docs/XPath/Osie/following +/pl/docs/XPath/Wyra%C5%BCenia/following-sibling /pl/docs/XPath/Osie/following-sibling +/pl/docs/XPath/Wyra%C5%BCenia/namespace /pl/docs/XPath/Osie/namespace +/pl/docs/XPath/Wyra%C5%BCenia/parent /pl/docs/XPath/Osie/parent +/pl/docs/XPath/Wyra%C5%BCenia/preceding /pl/docs/XPath/Osie/preceding +/pl/docs/XPath/Wyra%C5%BCenia/preceding-sibling /pl/docs/XPath/Osie/preceding-sibling +/pl/docs/XPath/Wyra%C5%BCenia/self /pl/docs/XPath/Osie/self +/pl/docs/XPath:Funkcje /pl/docs/Web/XPath/Funkcje +/pl/docs/XPath:Funkcje:boolean /pl/docs/Web/XPath/Funkcje/boolean +/pl/docs/XPath:Funkcje:ceiling /pl/docs/Web/XPath/Funkcje/ceiling +/pl/docs/XPath:Funkcje:concat /pl/docs/Web/XPath/Funkcje/concat +/pl/docs/XPath:Funkcje:contains /pl/docs/Web/XPath/Funkcje/contains +/pl/docs/XPath:Funkcje:count /pl/docs/Web/XPath/Funkcje/count +/pl/docs/XPath:Funkcje:current /pl/docs/Web/XPath/Funkcje/current +/pl/docs/XPath:Funkcje:document /pl/docs/Web/XPath/Funkcje/document +/pl/docs/XPath:Funkcje:element-available /pl/docs/Web/XPath/Funkcje/element-available +/pl/docs/XPath:Funkcje:false /pl/docs/Web/XPath/Funkcje/false +/pl/docs/XPath:Funkcje:floor /pl/docs/Web/XPath/Funkcje/floor +/pl/docs/XPath:Funkcje:format-number /pl/docs/Web/XPath/Funkcje/format-number +/pl/docs/XPath:Funkcje:function-available /pl/docs/Web/XPath/Funkcje/function-available +/pl/docs/XPath:Funkcje:generate-id /pl/docs/Web/XPath/Funkcje/generate-id +/pl/docs/XPath:Funkcje:id /pl/docs/Web/XPath/Funkcje/id +/pl/docs/XPath:Funkcje:key /pl/docs/Web/XPath/Funkcje/key +/pl/docs/XPath:Funkcje:lang /pl/docs/Web/XPath/Funkcje/lang +/pl/docs/XPath:Funkcje:last /pl/docs/Web/XPath/Funkcje/last +/pl/docs/XPath:Funkcje:local-name /pl/docs/Web/XPath/Funkcje/local-name +/pl/docs/XPath:Funkcje:name /pl/docs/Web/XPath/Funkcje/name +/pl/docs/XPath:Funkcje:namespace-uri /pl/docs/Web/XPath/Funkcje/namespace-uri +/pl/docs/XPath:Funkcje:normalize-space /pl/docs/Web/XPath/Funkcje/normalize-space +/pl/docs/XPath:Funkcje:not /pl/docs/Web/XPath/Funkcje/not +/pl/docs/XPath:Funkcje:number /pl/docs/Web/XPath/Funkcje/number +/pl/docs/XPath:Funkcje:position /pl/docs/Web/XPath/Funkcje/position +/pl/docs/XPath:Funkcje:round /pl/docs/Web/XPath/Funkcje/round +/pl/docs/XPath:Funkcje:starts-with /pl/docs/Web/XPath/Funkcje/starts-with +/pl/docs/XPath:Funkcje:string /pl/docs/Web/XPath/Funkcje/string +/pl/docs/XPath:Funkcje:string-length /pl/docs/Web/XPath/Funkcje/string-length +/pl/docs/XPath:Funkcje:substring /pl/docs/Web/XPath/Funkcje/substring +/pl/docs/XPath:Funkcje:substring-after /pl/docs/Web/XPath/Funkcje/substring-after +/pl/docs/XPath:Funkcje:substring-before /pl/docs/Web/XPath/Funkcje/substring-before +/pl/docs/XPath:Funkcje:sum /pl/docs/Web/XPath/Funkcje/sum +/pl/docs/XPath:Funkcje:system-property /pl/docs/Web/XPath/Funkcje/system-property +/pl/docs/XPath:Funkcje:translate /pl/docs/Web/XPath/Funkcje/translate +/pl/docs/XPath:Funkcje:true /pl/docs/Web/XPath/Funkcje/true +/pl/docs/XPath:Funkcje:unparsed-entity-url /pl/docs/Web/XPath/Funkcje/unparsed-entity-url +/pl/docs/XPath:Osie /pl/docs/Web/XPath/Osie +/pl/docs/XPath:Osie:ancestor /pl/docs/XPath/Osie/ancestor +/pl/docs/XPath:Osie:ancestor-or-self /pl/docs/XPath/Osie/ancestor-or-self +/pl/docs/XPath:Osie:attribute /pl/docs/XPath/Osie/attribute +/pl/docs/XPath:Osie:child /pl/docs/XPath/Osie/child +/pl/docs/XPath:Osie:descendant /pl/docs/XPath/Osie/descendant +/pl/docs/XPath:Osie:descendant-or-self /pl/docs/XPath/Osie/descendant-or-self +/pl/docs/XPath:Osie:following /pl/docs/XPath/Osie/following +/pl/docs/XPath:Osie:following-sibling /pl/docs/XPath/Osie/following-sibling +/pl/docs/XPath:Osie:namespace /pl/docs/XPath/Osie/namespace +/pl/docs/XPath:Osie:parent /pl/docs/XPath/Osie/parent +/pl/docs/XPath:Osie:preceding /pl/docs/XPath/Osie/preceding +/pl/docs/XPath:Osie:preceding-sibling /pl/docs/XPath/Osie/preceding-sibling +/pl/docs/XPath:Osie:self /pl/docs/XPath/Osie/self +/pl/docs/XPath:Wyra%C5%BCenia /pl/docs/Web/XPath/Osie +/pl/docs/XPath:Wyra%C5%BCenia:ancestor /pl/docs/XPath/Osie/ancestor +/pl/docs/XPath:Wyra%C5%BCenia:ancestor-or-self /pl/docs/XPath/Osie/ancestor-or-self +/pl/docs/XPath:Wyra%C5%BCenia:attribute /pl/docs/XPath/Osie/attribute +/pl/docs/XPath:Wyra%C5%BCenia:child /pl/docs/XPath/Osie/child +/pl/docs/XPath:Wyra%C5%BCenia:descendant /pl/docs/XPath/Osie/descendant +/pl/docs/XPath:Wyra%C5%BCenia:descendant-or-self /pl/docs/XPath/Osie/descendant-or-self +/pl/docs/XPath:Wyra%C5%BCenia:following /pl/docs/XPath/Osie/following +/pl/docs/XPath:Wyra%C5%BCenia:following-sibling /pl/docs/XPath/Osie/following-sibling +/pl/docs/XPath:Wyra%C5%BCenia:namespace /pl/docs/XPath/Osie/namespace +/pl/docs/XPath:Wyra%C5%BCenia:parent /pl/docs/XPath/Osie/parent +/pl/docs/XPath:Wyra%C5%BCenia:preceding /pl/docs/XPath/Osie/preceding +/pl/docs/XPath:Wyra%C5%BCenia:preceding-sibling /pl/docs/XPath/Osie/preceding-sibling +/pl/docs/XPath:Wyra%C5%BCenia:self /pl/docs/XPath/Osie/self +/pl/docs/XSLT /pl/docs/Web/XSLT +/pl/docs/XSLT/Elementy /pl/docs/Web/XSLT/Element +/pl/docs/XSLT/apply-imports /pl/docs/Web/XSLT/apply-imports +/pl/docs/XSLT/apply-templates /pl/docs/Web/XSLT/apply-templates +/pl/docs/XSLT/attribute /pl/docs/Web/XSLT/attribute +/pl/docs/XSLT/attribute-set /pl/docs/Web/XSLT/attribute-set +/pl/docs/XSLT/call-template /pl/docs/Web/XSLT/call-template +/pl/docs/XSLT/choose /pl/docs/Web/XSLT/choose +/pl/docs/XSLT/comment /pl/docs/Web/XSLT/comment +/pl/docs/XSLT/copy /pl/docs/Web/XSLT/copy +/pl/docs/XSLT/copy-of /pl/docs/Web/XSLT/copy-of +/pl/docs/XSLT/decimal-format /pl/docs/Web/XSLT/decimal-format +/pl/docs/XSLT/element /pl/docs/Web/XSLT/Element/element +/pl/docs/XSLT/fallback /pl/docs/Web/XSLT/fallback +/pl/docs/XSLT/for-each /pl/docs/Web/XSLT/for-each +/pl/docs/XSLT/if /pl/docs/Web/XSLT/if +/pl/docs/XSLT/import /pl/docs/Web/XSLT/import +/pl/docs/XSLT/include /pl/docs/Web/XSLT/include +/pl/docs/XSLT/key /pl/docs/Web/XSLT/key +/pl/docs/XSLT/message /pl/docs/Web/XSLT/message +/pl/docs/XSLT/namespace-alias /pl/docs/Web/XSLT/namespace-alias +/pl/docs/XSLT/number /pl/docs/Web/XSLT/number +/pl/docs/XSLT/otherwise /pl/docs/Web/XSLT/otherwise +/pl/docs/XSLT/output /pl/docs/Web/XSLT/output +/pl/docs/XSLT/param /pl/docs/Web/XSLT/param +/pl/docs/XSLT/preserve-space /pl/docs/Web/XSLT/preserve-space +/pl/docs/XSLT/processing-instruction /pl/docs/Web/XSLT/processing-instruction +/pl/docs/XSLT/sort /pl/docs/Web/XSLT/sort +/pl/docs/XSLT/strip-space /pl/docs/Web/XSLT/strip-space +/pl/docs/XSLT/stylesheet /pl/docs/Web/XSLT/stylesheet +/pl/docs/XSLT/template /pl/docs/Web/XSLT/template +/pl/docs/XSLT/text /pl/docs/Web/XSLT/text +/pl/docs/XSLT/transform /pl/docs/Web/XSLT/transform +/pl/docs/XSLT/value-of /pl/docs/Web/XSLT/value-of +/pl/docs/XSLT/variable /pl/docs/Web/XSLT/variable +/pl/docs/XSLT/when /pl/docs/Web/XSLT/when +/pl/docs/XSLT/with-param /pl/docs/Web/XSLT/with-param +/pl/docs/XSLT:Elementy /pl/docs/Web/XSLT/Element +/pl/docs/XSLT:Inne_zasoby /pl/docs/XSLT/Inne_zasoby +/pl/docs/XSLT:Spo%C5%82eczno%C5%9B%C4%87 /pl/docs/XSLT/Spo%C5%82eczno%C5%9B%C4%87 +/pl/docs/XSLT:apply-imports /pl/docs/Web/XSLT/apply-imports +/pl/docs/XSLT:apply-templates /pl/docs/Web/XSLT/apply-templates +/pl/docs/XSLT:attribute /pl/docs/Web/XSLT/attribute +/pl/docs/XSLT:attribute-set /pl/docs/Web/XSLT/attribute-set +/pl/docs/XSLT:call-template /pl/docs/Web/XSLT/call-template +/pl/docs/XSLT:choose /pl/docs/Web/XSLT/choose +/pl/docs/XSLT:comment /pl/docs/Web/XSLT/comment +/pl/docs/XSLT:copy /pl/docs/Web/XSLT/copy +/pl/docs/XSLT:copy-of /pl/docs/Web/XSLT/copy-of +/pl/docs/XSLT:decimal-format /pl/docs/Web/XSLT/decimal-format +/pl/docs/XSLT:element /pl/docs/Web/XSLT/Element/element +/pl/docs/XSLT:fallback /pl/docs/Web/XSLT/fallback +/pl/docs/XSLT:for-each /pl/docs/Web/XSLT/for-each +/pl/docs/XSLT:if /pl/docs/Web/XSLT/if +/pl/docs/XSLT:import /pl/docs/Web/XSLT/import +/pl/docs/XSLT:include /pl/docs/Web/XSLT/include +/pl/docs/XSLT:key /pl/docs/Web/XSLT/key +/pl/docs/XSLT:message /pl/docs/Web/XSLT/message +/pl/docs/XSLT:namespace-alias /pl/docs/Web/XSLT/namespace-alias +/pl/docs/XSLT:number /pl/docs/Web/XSLT/number +/pl/docs/XSLT:otherwise /pl/docs/Web/XSLT/otherwise +/pl/docs/XSLT:output /pl/docs/Web/XSLT/output +/pl/docs/XSLT:param /pl/docs/Web/XSLT/param +/pl/docs/XSLT:preserve-space /pl/docs/Web/XSLT/preserve-space +/pl/docs/XSLT:processing-instruction /pl/docs/Web/XSLT/processing-instruction +/pl/docs/XSLT:sort /pl/docs/Web/XSLT/sort +/pl/docs/XSLT:strip-space /pl/docs/Web/XSLT/strip-space +/pl/docs/XSLT:stylesheet /pl/docs/Web/XSLT/stylesheet +/pl/docs/XSLT:template /pl/docs/Web/XSLT/template +/pl/docs/XSLT:text /pl/docs/Web/XSLT/text +/pl/docs/XSLT:transform /pl/docs/Web/XSLT/transform +/pl/docs/XSLT:value-of /pl/docs/Web/XSLT/value-of +/pl/docs/XSLT:variable /pl/docs/Web/XSLT/variable +/pl/docs/XSLT:when /pl/docs/Web/XSLT/when +/pl/docs/XSLT:with-param /pl/docs/Web/XSLT/with-param +/pl/docs/XSLT_w_Gecko:Zasoby /pl/docs/XSLT_w_Gecko/Zasoby +/pl/docs/Zarz%C4%85dzanie_fokusem_w_HTML /pl/docs/Web/HTML/Zarz%C4%85dzanie_fokusem_w_HTML +/pl/docs/Zasoby_j%C4%99zyka_JavaScript /pl/docs/Web/JavaScript/Zasoby_j%C4%99zyka_JavaScript +/pl/docs/Zasoby_offline_w_Firefoksie /pl/docs/Web/HTML/Zasoby_offline_w_Firefoksie +/pl/docs/Zdarzenia_online_i_offline /pl/docs/Web/API/NavigatorOnLine/Zdarzenia_online_i_offline +/pl/docs/Zmiany_XMLHttpRequest_dla_Gecko_1.8 /pl/docs/Zmiany_w_obiekcie_XMLHttpRequest_w_Gecko_1.8 +/pl/docs/appendChild /pl/docs/Web/API/Element/appendChild +/pl/docs/blur /pl/docs/Web/API/Element/blur +/pl/docs/cloneNode /pl/docs/Web/API/Element/clientNode +/pl/docs/en /en-US/ +/pl/docs/focus /pl/docs/Web/API/Element/focus +/pl/docs/getAttribute /pl/docs/Web/API/Element/getAttribute +/pl/docs/install.rdf /pl/docs/Manifesty_Instalacji +/pl/docs/mozilla-central /pl/docs/Mozilla/Developer_guide/mozilla-central +/pl/docs/setAttribute /pl/docs/Web/API/Element/setAttribute diff --git a/files/pl/_wikihistory.json b/files/pl/_wikihistory.json new file mode 100644 index 0000000000..84f1cae08e --- /dev/null +++ b/files/pl/_wikihistory.json @@ -0,0 +1,11772 @@ +{ + "API_dostępu_do_danych_z_kanałów": { + "modified": "2019-03-23T23:44:27.416Z", + "contributors": [ + "SphinxKnight", + "Bedi", + "gandalf", + "Ptak82" + ] + }, + "Aktualizacja_aplikacji_internetowych_dla_Firefoksa_3": { + "modified": "2019-03-23T23:59:55.485Z", + "contributors": [ + "wbamberg", + "Sheppy", + "zarat", + "gandalf", + "Mgjbot", + "Ptak82", + "Flaneur", + "Cardil" + ] + }, + "Aktualizacja_rozszerzeń_dla_Firefoksa_3": { + "modified": "2019-12-13T20:34:55.140Z", + "contributors": [ + "wbamberg", + "fscholz", + "Sheppy", + "zarat", + "Witia", + "Ptak82", + "Patryk Węgrzynek", + "Mgjbot", + "Bedi", + "Peyn", + "Diablownik", + "Proboszcz" + ] + }, + "Aktualizacja_rozszerzeń_do_Firefoksa_2": { + "modified": "2019-03-23T23:50:53.722Z", + "contributors": [ + "wbamberg", + "Mgjbot", + "Ptak82" + ] + }, + "Bezpieczeństwo_w_Firefoksie_2": { + "modified": "2019-03-23T23:54:28.429Z", + "contributors": [ + "wbamberg", + "Mgjbot", + "Ptak82", + "RafalRawicki" + ] + }, + "Chrome": { + "modified": "2019-03-23T23:44:52.281Z", + "contributors": [ + "Mgjbot", + "Ptak82" + ] + }, + "Co_nowego_w_Deer_Park_Alpha": { + "modified": "2019-03-23T23:46:10.418Z", + "contributors": [ + "wbamberg", + "SphinxKnight", + "pkubowicz", + "Ptak82", + "Staszyna", + "gandalf" + ] + }, + "DHTML": { + "modified": "2019-03-23T23:44:56.232Z", + "contributors": [ + "Mgjbot", + "gandalf", + "Ptak82", + "Dria" + ] + }, + "DOM": { + "modified": "2019-03-23T23:54:33.828Z", + "contributors": [ + "ethertank", + "Mgjbot", + "Bedi", + "Ptak82", + "Takenbot", + "Zwierz", + "gandalf", + "Jan Dudek", + "Anonymous", + "Dria" + ] + }, + "DOM/dispatchEvent_-_przykład": { + "modified": "2019-03-23T23:50:28.341Z", + "contributors": [ + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "DOM/element.onkeydown": { + "modified": "2019-03-23T23:46:41.310Z", + "contributors": [ + "AshfaqHossain", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "DOM_i_JavaScript": { + "modified": "2019-12-13T21:10:08.496Z", + "contributors": [ + "wbamberg", + "lukasz.jezierski", + "Re set", + "Diablownik", + "Rev", + "Ptak82", + "Bedi", + "Internauta1024A" + ] + }, + "Dodawanie_wyszukiwarek_z_poziomu_stron_WWW": { + "modified": "2019-01-16T15:27:45.981Z", + "contributors": [ + "Mgjbot", + "Killerowski", + "Diablownik", + "Marcoos", + "Ptak82" + ] + }, + "Dokumentacja_Gecko_DOM": { + "modified": "2019-01-16T16:05:36.652Z", + "contributors": [ + "Ptak82", + "Mgjbot", + "Takenbot", + "Jan Dudek" + ] + }, + "Dokumentacja_Gecko_DOM/Przedmowa": { + "modified": "2019-03-23T23:47:41.657Z", + "contributors": [ + "khalid32", + "safjanowski", + "Ranides", + "Mgjbot", + "Ptak82", + "Bedi", + "Akustyk" + ] + }, + "Dokumentacja_Gecko_DOM/Przykłady_użycia_DOM": { + "modified": "2019-03-23T23:50:20.825Z", + "contributors": [ + "pablovsky", + "mklkj", + "khalid32", + "Ptak82", + "Mgjbot", + "Bedi" + ] + }, + "Dokumentacja_Gecko_DOM/Wprowadzenie": { + "modified": "2019-03-23T23:46:08.857Z", + "contributors": [ + "fscholz", + "jsx", + "AshfaqHossain", + "Bedi", + "Ptak82", + "Diablownik", + "Mgjbot", + "Takenbot", + "Anonymous", + "Jan Dudek" + ] + }, + "Dostosowanie_aplikacji_XUL_do_Firefoksa_1.5": { + "modified": "2019-03-23T23:45:42.063Z", + "contributors": [ + "wbamberg", + "Diablownik", + "Ptak82", + "Bedi" + ] + }, + "Dynamiczne_zmiany_interfejsu_użytkownika_bazującego_na_XUL-u": { + "modified": "2019-03-23T23:46:45.617Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Bedi" + ] + }, + "Firefox_-_potrzeba_wolności": { + "modified": "2019-03-23T23:40:17.616Z", + "contributors": [ + "gandalf" + ] + }, + "Firefox_3_dla_programistów": { + "modified": "2019-03-23T23:59:01.747Z", + "contributors": [ + "Sebastianz", + "teoli", + "Ptak82", + "gandalf", + "Flaneur", + "Witia", + "Mgjbot", + "Diablownik", + "VooEak", + "Bedi", + "Szaloony", + "Internauta1024A" + ] + }, + "Games/Tutorials": { + "modified": "2020-03-25T16:16:50.290Z", + "contributors": [ + "Jacqbus" + ] + }, + "Games/Tutorials/2D_Breakout_game_pure_JavaScript": { + "modified": "2020-03-25T16:00:09.301Z", + "contributors": [ + "Jacqbus", + "JoeParrilla" + ] + }, + "Games/Tutorials/2D_Breakout_game_pure_JavaScript/Stworz_element_Canvas_i_rysuj_na_nim": { + "modified": "2020-03-26T16:17:46.952Z", + "contributors": [ + "Jacqbus" + ] + }, + "Games/Tutorials/2D_Breakout_game_pure_JavaScript/odbijanie_od_scian": { + "modified": "2020-03-30T18:30:10.443Z", + "contributors": [ + "Jacqbus" + ] + }, + "Games/Tutorials/2D_Breakout_game_pure_JavaScript/posusz_pilka": { + "modified": "2020-03-30T18:31:36.346Z", + "contributors": [ + "Jacqbus" + ] + }, + "Games/Tutorials/2D_Breakout_game_pure_JavaScript/wykrywanie_kolizji": { + "modified": "2020-03-30T17:04:11.415Z", + "contributors": [ + "Jacqbus" + ] + }, + "Glossary": { + "modified": "2020-10-07T11:12:59.105Z", + "contributors": [ + "peterbe", + "SphinxKnight", + "wbamberg", + "asbud", + "Jeremie" + ] + }, + "Glossary/404": { + "modified": "2019-07-15T09:45:26.682Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/API": { + "modified": "2020-12-01T17:59:12.054Z", + "contributors": [ + "jacekk", + "Miszau" + ] + }, + "Glossary/ASCII": { + "modified": "2020-02-10T11:45:57.036Z", + "contributors": [ + "Miszau" + ] + }, + "Glossary/Abstrakcja": { + "modified": "2019-03-18T21:25:50.244Z", + "contributors": [ + "lukasz-otowski" + ] + }, + "Glossary/Accessibility": { + "modified": "2019-07-21T11:36:59.438Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/Accessibility_tree": { + "modified": "2020-10-23T07:47:56.918Z", + "contributors": [ + "chrisdavidmills", + "SebastianKut" + ] + }, + "Glossary/Algorithm": { + "modified": "2019-06-22T08:20:29.496Z", + "contributors": [ + "Siudzi", + "lukasz-otowski" + ] + }, + "Glossary/Argument": { + "modified": "2019-04-24T10:13:47.746Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/Arpanet": { + "modified": "2019-06-22T07:37:45.420Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/Boolean": { + "modified": "2020-02-10T12:02:02.854Z", + "contributors": [ + "Miszau" + ] + }, + "Glossary/Chrome": { + "modified": "2020-01-21T09:14:45.360Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/Computer_Programming": { + "modified": "2019-03-18T21:25:55.882Z", + "contributors": [ + "lukasz-otowski" + ] + }, + "Glossary/Cookie": { + "modified": "2020-01-21T09:01:23.541Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/DOM": { + "modified": "2019-03-18T21:30:48.136Z", + "contributors": [ + "mitelak" + ] + }, + "Glossary/Doctype": { + "modified": "2019-05-29T10:35:52.320Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/Firefox_OS": { + "modified": "2019-07-15T09:24:31.316Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/HTML": { + "modified": "2019-05-29T11:22:07.074Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/Hipertekst": { + "modified": "2019-05-29T12:14:13.625Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/Hoisting": { + "modified": "2019-03-23T22:37:11.825Z", + "contributors": [ + "Sousuke", + "pkubowicz", + "Miras" + ] + }, + "Glossary/IETF": { + "modified": "2019-05-29T19:39:58.856Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/ISO": { + "modified": "2019-05-29T19:52:58.004Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/JavaScript": { + "modified": "2019-03-23T22:05:33.853Z", + "contributors": [ + "andrzejkrecicki" + ] + }, + "Glossary/Klasa": { + "modified": "2019-03-18T21:34:27.829Z", + "contributors": [ + "elipinska" + ] + }, + "Glossary/Kryptografia": { + "modified": "2020-08-25T20:29:24.011Z", + "contributors": [ + "duduindo", + "hencel", + "jam1985" + ] + }, + "Glossary/Metadata": { + "modified": "2019-05-29T20:16:08.939Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/Mozilla_Firefox": { + "modified": "2020-05-11T15:04:21.575Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/Obiekt": { + "modified": "2019-03-18T21:34:35.043Z", + "contributors": [ + "elipinska" + ] + }, + "Glossary/Przegladarka": { + "modified": "2019-05-29T09:55:44.088Z", + "contributors": [ + "DoctorLarva", + "JohnnyDevX" + ] + }, + "Glossary/Pusty_element": { + "modified": "2019-05-29T20:22:35.850Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/SGML": { + "modified": "2019-05-29T12:24:44.549Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/Semantyka": { + "modified": "2020-06-30T11:00:26.836Z", + "contributors": [ + "krupinskij" + ] + }, + "Glossary/Slug": { + "modified": "2019-03-18T21:25:57.892Z", + "contributors": [ + "lukasz-otowski" + ] + }, + "Glossary/Truthy": { + "modified": "2019-03-18T21:46:29.091Z", + "contributors": [ + "bibixx", + "asbud" + ] + }, + "Glossary/UTF-8": { + "modified": "2019-05-22T06:43:15.346Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/W3C": { + "modified": "2019-05-29T19:47:35.487Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/WebGL": { + "modified": "2019-12-08T09:56:48.779Z", + "contributors": [ + "drm404" + ] + }, + "Glossary/World_Wide_Web": { + "modified": "2019-05-29T12:08:22.052Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Glossary/array": { + "modified": "2019-04-24T10:50:16.218Z", + "contributors": [ + "Siudzi" + ] + }, + "Glossary/buffer": { + "modified": "2019-07-21T11:37:40.003Z", + "contributors": [ + "Siudzi" + ] + }, + "Gry": { + "modified": "2019-09-09T15:33:17.920Z", + "contributors": [ + "SphinxKnight", + "wbamberg", + "avllyx", + "nikkeh", + "pm093" + ] + }, + "HTML/HTML5": { + "modified": "2019-06-28T04:18:42.824Z", + "contributors": [ + "Moniaesz", + "teoli", + "Jacob99", + "Ptak82", + "Teo" + ] + }, + "Istotne_błędy_poprawione_w_Firefoksie_3": { + "modified": "2019-03-23T23:59:42.353Z", + "contributors": [ + "wbamberg", + "SphinxKnight", + "teoli", + "zarat", + "Bedi", + "Flaneur", + "Mgjbot" + ] + }, + "JSON": { + "modified": "2019-03-23T23:19:21.999Z", + "contributors": [ + "jpanasiuk" + ] + }, + "Learn": { + "modified": "2020-07-16T22:43:45.459Z", + "contributors": [ + "SphinxKnight", + "xd1010", + "ffipe", + "svarlamov", + "Annie-likes", + "Alka", + "eLGi", + "kscarfone" + ] + }, + "Learn/Accessibility": { + "modified": "2020-07-16T22:39:59.361Z", + "contributors": [ + "hadleyel" + ] + }, + "Learn/Accessibility/What_is_accessibility": { + "modified": "2020-07-16T22:40:06.189Z", + "contributors": [ + "rokthe888" + ] + }, + "Learn/CSS": { + "modified": "2020-07-16T22:25:36.473Z", + "contributors": [ + "dawidciesielski88", + "eqvt", + "Sabi_K", + "krzmaciek", + "james028" + ] + }, + "Learn/CSS/CSS_layout": { + "modified": "2020-07-16T22:26:32.489Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Learn/CSS/CSS_layout/Flexbox": { + "modified": "2020-10-15T15:57:16.870Z", + "contributors": [ + "sisel4", + "Martiego", + "mjankiewicz", + "szczepaniakmichal", + "swirek-marcin", + "IzaS", + "kkinnga1" + ] + }, + "Learn/CSS/Howto": { + "modified": "2020-07-16T22:25:43.200Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Learn/CSS/Howto/Generated_content": { + "modified": "2020-07-16T22:25:48.275Z", + "contributors": [ + "chrisdavidmills", + "teoli", + "Mgjbot", + "Delor", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Ruby", + "Witia", + "Anonymous" + ] + }, + "Learn/Common_questions": { + "modified": "2020-07-16T22:35:26.061Z", + "contributors": [ + "optimax", + "mat-bi", + "stephaniehobson" + ] + }, + "Learn/Common_questions/Jak_dziala_Internet": { + "modified": "2020-08-13T04:00:30.686Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Learn/Getting_started_with_the_web": { + "modified": "2020-08-11T17:21:51.146Z", + "contributors": [ + "DoctorLarva", + "ffipe", + "bernix", + "chrisdavidmills" + ] + }, + "Learn/Getting_started_with_the_web/CSS_basics": { + "modified": "2020-07-16T22:35:02.326Z", + "contributors": [ + "Sławek", + "aninde", + "mat-bi", + "Krzyku", + "ffipe" + ] + }, + "Learn/Getting_started_with_the_web/Dealing_with_files": { + "modified": "2020-07-16T22:34:36.749Z", + "contributors": [ + "Sławek", + "frankopolanin", + "mat-bi", + "ffipe" + ] + }, + "Learn/Getting_started_with_the_web/HTML_basics": { + "modified": "2020-12-07T19:00:46.636Z", + "contributors": [ + "lujidzi1", + "chrisdavidmills", + "Sławek", + "arkadiuszejsmont", + "ffipe" + ] + }, + "Learn/Getting_started_with_the_web/Installing_basic_software": { + "modified": "2020-08-12T09:00:52.859Z", + "contributors": [ + "DoctorLarva", + "Sławek", + "ffipe" + ] + }, + "Learn/Getting_started_with_the_web/Jak_dziala_Siec": { + "modified": "2020-08-11T19:23:21.916Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Learn/Getting_started_with_the_web/JavaScript_basics": { + "modified": "2020-07-16T22:35:13.964Z", + "contributors": [ + "Sławek", + "kocielnik", + "Iwanek08", + "mat-bi", + "kosanr2", + "tjasinski", + "modrym", + "kosanr1", + "AdrianaOlszak" + ] + }, + "Learn/Getting_started_with_the_web/Publishing_your_website": { + "modified": "2020-08-03T12:17:14.364Z", + "contributors": [ + "Margo1212" + ] + }, + "Learn/Getting_started_with_the_web/What_will_your_website_look_like": { + "modified": "2020-08-15T10:22:14.475Z", + "contributors": [ + "DoctorLarva", + "Ambuscade", + "mateuszsolakk", + "fecio", + "arkadiuszejsmont", + "ffipe", + "121ewelina." + ] + }, + "Learn/HTML": { + "modified": "2020-07-16T22:22:21.979Z", + "contributors": [ + "AleksCreative", + "Sabi_K", + "vistafan12", + "HynekMartin751", + "smile121" + ] + }, + "Learn/HTML/Howto": { + "modified": "2020-07-16T22:22:30.114Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Learn/HTML/Howto/Use_data_attributes": { + "modified": "2020-07-16T22:22:36.853Z", + "contributors": [ + "kanapka94", + "lotny" + ] + }, + "Learn/HTML/Introduction_to_HTML": { + "modified": "2020-07-16T22:22:51.535Z", + "contributors": [ + "Bartheus", + "Grineee", + "mat-bi" + ] + }, + "Learn/HTML/Introduction_to_HTML/Getting_started": { + "modified": "2020-07-16T22:23:05.148Z", + "contributors": [ + "Ambuscade" + ] + }, + "Learn/JavaScript": { + "modified": "2020-07-16T22:29:43.131Z", + "contributors": [ + "Sławek", + "Iwanek08", + "Errorino", + "robertgrzonka", + "Karol_Zixofred_Kowalewski" + ] + }, + "Learn/JavaScript/Asynchronous": { + "modified": "2020-12-04T16:35:32.081Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Learn/JavaScript/Asynchronous/Introducing": { + "modified": "2020-12-04T16:38:09.013Z", + "contributors": [ + "kkarol012" + ] + }, + "Learn/JavaScript/Building_blocks": { + "modified": "2020-07-16T22:31:09.926Z", + "contributors": [ + "Iwanek08", + "Davvidos" + ] + }, + "Learn/JavaScript/Client-side_web_APIs": { + "modified": "2020-07-16T22:32:41.416Z", + "contributors": [ + "Jrslw", + "gheakoala", + "asbud" + ] + }, + "Learn/JavaScript/Obiekty": { + "modified": "2020-10-10T09:26:19.271Z", + "contributors": [ + "Margo1212", + "quart", + "malu", + "mat-bi" + ] + }, + "Learn/JavaScript/Pierwsze_kroki": { + "modified": "2020-07-16T22:29:53.878Z", + "contributors": [ + "JWPB", + "Davvidos" + ] + }, + "Learn/JavaScript/Pierwsze_kroki/A_first_splash": { + "modified": "2020-07-16T22:30:20.788Z", + "contributors": [ + "JWPB", + "olo936", + "mat-bi" + ] + }, + "Learn/JavaScript/Pierwsze_kroki/Co_poszlo_nie_tak": { + "modified": "2020-07-16T22:30:35.448Z", + "contributors": [ + "mat-bi" + ] + }, + "Learn/JavaScript/Pierwsze_kroki/Math": { + "modified": "2020-09-03T15:45:26.516Z", + "contributors": [ + "marek-rzepka" + ] + }, + "Learn/JavaScript/Pierwsze_kroki/What_is_JavaScript": { + "modified": "2020-10-10T09:38:24.622Z", + "contributors": [ + "Margo1212", + "Kamieniu", + "mat-bi", + "asbud", + "maciej-w" + ] + }, + "Learn/JavaScript/Pierwsze_kroki/Zmienne": { + "modified": "2020-09-03T15:16:05.291Z", + "contributors": [ + "marek-rzepka", + "Majek", + "jakubjaros" + ] + }, + "Learn/Server-side": { + "modified": "2020-07-16T22:36:00.969Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Learn/Server-side/Django": { + "modified": "2020-07-16T22:36:34.472Z", + "contributors": [ + "kruschk" + ] + }, + "Learn/Server-side/Express_Nodejs": { + "modified": "2020-07-16T22:37:54.234Z", + "contributors": [ + "cs" + ] + }, + "Learn/Server-side/Express_Nodejs/Introduction": { + "modified": "2020-07-16T22:38:12.120Z", + "contributors": [ + "cs" + ] + }, + "Learn/Server-side/Express_Nodejs/Szkolenie_aplikacja_biblioteka": { + "modified": "2020-10-13T17:24:53.764Z", + "contributors": [ + "cs" + ] + }, + "Learn/Server-side/Express_Nodejs/development_environment": { + "modified": "2020-10-13T17:20:42.190Z", + "contributors": [ + "cs" + ] + }, + "Learn/Server-side/Express_Nodejs/skeleton_website": { + "modified": "2020-10-16T17:05:13.058Z", + "contributors": [ + "cs" + ] + }, + "Learn/Tools_and_testing": { + "modified": "2020-07-16T22:38:56.487Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Learn/Tools_and_testing/Client-side_JavaScript_frameworks": { + "modified": "2020-07-23T12:08:19.939Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Lista_komponentów_XPCOM": { + "modified": "2019-01-16T15:43:27.057Z", + "contributors": [ + "Mgjbot", + "Ptak82" + ] + }, + "Lokalizacja": { + "modified": "2019-03-23T23:54:20.898Z", + "contributors": [ + "teoli", + "Mgjbot", + "Verruckt", + "Bedi", + "Ptak82", + "Takenbot", + "Staszyna", + "gandalf" + ] + }, + "MDN": { + "modified": "2020-02-19T18:16:07.796Z", + "contributors": [ + "jswisher", + "SphinxKnight", + "wbamberg", + "Jeremie", + "ijohnnyjohnny", + "teoli", + "splewako", + "Sheppy" + ] + }, + "MDN/Contribute": { + "modified": "2020-12-07T17:30:11.840Z", + "contributors": [ + "wbamberg", + "Mars" + ] + }, + "MDN/Contribute/Feedback": { + "modified": "2020-09-30T17:52:07.531Z", + "contributors": [ + "chrisdavidmills", + "jswisher", + "SphinxKnight", + "kosanr2", + "wbamberg", + "AleksCreative", + "mwiecza", + "Dominik9522" + ] + }, + "MDN/Contribute/Getting_started": { + "modified": "2020-09-30T17:15:08.485Z", + "contributors": [ + "chrisdavidmills", + "wbamberg", + "PiotrMuskalski", + "zbrestoslavski", + "PawlakArtur", + "Pooler22", + "ziolek666", + "Leszek", + "Husaria", + "jembezmamy", + "eswues", + "teoli", + "splewako", + "marin_s" + ] + }, + "MDN/Contribute/Howto": { + "modified": "2020-12-07T19:29:57.557Z", + "contributors": [ + "wbamberg", + "klez" + ] + }, + "MDN/Contribute/Howto/Budowa_dany_edycja_artykuł": { + "modified": "2019-07-08T06:01:08.333Z", + "contributors": [ + "killaseo", + "ffipe", + "HeartbliT" + ] + }, + "MDN/Contribute/Howto/Create_an_MDN_account": { + "modified": "2019-01-16T21:13:56.739Z", + "contributors": [ + "wbamberg", + "Anan9492", + "kfrejlich", + "janciowodnik001" + ] + }, + "MDN/Contribute/Howto/Create_and_edit_pages": { + "modified": "2020-12-04T02:55:11.340Z", + "contributors": [ + "SphinxKnight", + "natusiala88", + "tomekgroos" + ] + }, + "MDN/Contribute/Howto/Do_a_technical_review": { + "modified": "2019-03-23T22:33:16.816Z", + "contributors": [ + "wbamberg", + "Freelancer.MK" + ] + }, + "MDN/Contribute/Howto/Set_the_summary_for_a_page": { + "modified": "2019-03-23T23:06:52.359Z", + "contributors": [ + "wbamberg", + "Anonymodous", + "mnowy41", + "Mlodyemoka", + "grunt666", + "przemekp1", + "jembezmamy" + ] + }, + "MDN/Contribute/Howto/Tag": { + "modified": "2019-03-23T22:48:19.207Z", + "contributors": [ + "wbamberg", + "apawliszak" + ] + }, + "MDN/Contribute/Howto/Tag_JavaScript_pages": { + "modified": "2019-05-23T16:54:47.884Z", + "contributors": [ + "Azkel" + ] + }, + "MDN/Contribute/Localize": { + "modified": "2019-01-16T19:49:14.469Z", + "contributors": [ + "wbamberg", + "JanLis", + "ijohnnyjohnny", + "Sheppy" + ] + }, + "MDN/Contribute/Localize/Localization_projects": { + "modified": "2019-05-03T00:34:42.222Z", + "contributors": [ + "wbamberg", + "ijohnnyjohnny" + ] + }, + "MDN/Contribute/Localize/Translating_pages": { + "modified": "2019-03-23T23:05:57.327Z", + "contributors": [ + "Rail01", + "wbamberg", + "SzymonDuda", + "BogdanMDN", + "kubutekf" + ] + }, + "MDN/Guidelines": { + "modified": "2020-09-30T15:31:06.666Z", + "contributors": [ + "chrisdavidmills", + "killaseo", + "wbamberg", + "Sheppy" + ] + }, + "MDN/Guidelines/Style_guide": { + "modified": "2020-09-30T15:31:07.174Z", + "contributors": [ + "chrisdavidmills", + "jswisher", + "killaseo", + "wbamberg", + "Arti", + "grunt666", + "Mlodyemoka", + "BogdanMDN", + "CYGAN" + ] + }, + "MDN/Kuma": { + "modified": "2019-09-09T15:53:30.248Z", + "contributors": [ + "SphinxKnight", + "tjasinski", + "wbamberg", + "lukaszwch" + ] + }, + "MDN/User_guide": { + "modified": "2019-01-16T20:46:53.090Z", + "contributors": [ + "wbamberg", + "Mlodyemoka" + ] + }, + "Moduły_JavaScript": { + "modified": "2019-01-16T15:32:24.451Z", + "contributors": [ + "Mgjbot", + "Flaneur" + ] + }, + "Mozilla": { + "modified": "2019-09-25T21:44:44.235Z", + "contributors": [ + "tauruss", + "kubutekf", + "teoli", + "splewako", + "ethertank", + "ziyunfei" + ] + }, + "Mozilla/Add-ons": { + "modified": "2019-09-09T13:10:46.200Z", + "contributors": [ + "SphinxKnight", + "kogigogi", + "katarzyna_oswald", + "kubutekf", + "hultaj909", + "pedro221992", + "Agaaaaa", + "Dawidpilus2985", + "Husaria", + "misio1973", + "mutaka", + "teoli", + "splewako", + "wbamberg" + ] + }, + "Mozilla/Add-ons/WebExtensions": { + "modified": "2019-04-13T16:18:49.889Z", + "contributors": [ + "jotes", + "angie94007", + "rebloor" + ] + }, + "Mozilla/Add-ons/WebExtensions/API": { + "modified": "2020-05-25T16:21:21.207Z", + "contributors": [ + "rebloor" + ] + }, + "Mozilla/Add-ons/WebExtensions/API/privacy": { + "modified": "2020-10-15T22:30:04.581Z", + "contributors": [ + "hugojavierduran9" + ] + }, + "Mozilla/Add-ons/WebExtensions/Pierwsze_kroki_z_web-ext": { + "modified": "2019-03-18T21:02:41.503Z", + "contributors": [ + "marsjaninzmarsa" + ] + }, + "Mozilla/Add-ons/WebExtensions/Twój_pierwszy_WebExtension": { + "modified": "2020-01-30T19:04:00.302Z", + "contributors": [ + "Sławek", + "Waterrail", + "oliwier1232", + "Ciepcin" + ] + }, + "Mozilla/Add-ons/WebExtensions/manifest.json": { + "modified": "2020-10-15T21:56:06.471Z", + "contributors": [ + "wbamberg", + "andrewtruongmoz" + ] + }, + "Mozilla/Add-ons/WebExtensions/manifest.json/description": { + "modified": "2020-10-15T21:56:07.961Z", + "contributors": [ + "wbamberg", + "Ciepcin" + ] + }, + "Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version": { + "modified": "2020-10-15T21:56:05.787Z", + "contributors": [ + "wbamberg", + "Ciepcin" + ] + }, + "Mozilla/Add-ons/WebExtensions/manifest.json/name": { + "modified": "2020-10-15T21:56:06.527Z", + "contributors": [ + "wbamberg", + "Ciepcin" + ] + }, + "Mozilla/Add-ons/WebExtensions/manifest.json/version": { + "modified": "2020-10-15T21:56:04.606Z", + "contributors": [ + "wbamberg", + "Ciepcin" + ] + }, + "Mozilla/Developer_guide": { + "modified": "2019-03-23T23:27:32.549Z", + "contributors": [ + "chrisdavidmills", + "Nimroot", + "kubutekf", + "teoli", + "splewako", + "bskari" + ] + }, + "Mozilla/Developer_guide/Source_Code": { + "modified": "2020-09-05T18:16:51.377Z", + "contributors": [ + "toi5354", + "c0d3rsyc", + "chrisdavidmills", + "7tm3ktm", + "Nimroot", + "kubutekf", + "teoli", + "splewako", + "jntesteves" + ] + }, + "Mozilla/Developer_guide/mozilla-central": { + "modified": "2019-03-23T22:56:22.710Z", + "contributors": [ + "chrisdavidmills", + "Maciejkajp_2" + ] + }, + "Mozilla/Firefox": { + "modified": "2019-09-10T15:00:57.432Z", + "contributors": [ + "SphinxKnight", + "wbamberg", + "Shadowman0983", + "Arekusandoru", + "dziubeq", + "BogdanMDN", + "Danios512", + "kubutekf", + "teoli", + "splewako", + "Yecril", + "mirekczechxmm", + "KesSelL", + "Timmi" + ] + }, + "Mozilla/Firefox/Releases": { + "modified": "2019-03-23T23:27:38.932Z", + "contributors": [ + "wbamberg", + "teoli", + "splewako", + "Sheppy" + ] + }, + "Mozilla/Firefox/Releases/1.5": { + "modified": "2019-03-23T23:51:02.457Z", + "contributors": [ + "wbamberg", + "teoli", + "Flaneur", + "Diablownik", + "Bedi", + "Emo9", + "Ptak82", + "Mgjbot", + "gandalf", + "Rudolf", + "Takenbot", + "DobryCzlowiek", + "Zwierz", + "Staszyna", + "Stanisław", + "Marcoos" + ] + }, + "Mozilla/Firefox/Releases/2": { + "modified": "2019-03-23T23:50:24.068Z", + "contributors": [ + "wbamberg", + "Sebastianz", + "teoli", + "Diablownik", + "Bedi", + "Mgjbot", + "Ptak82", + "gandalf", + "Filemon", + "KrucaFuks" + ] + }, + "Mozilla/Firefox/Releases/3": { + "modified": "2019-03-23T22:03:01.873Z", + "contributors": [ + "wbamberg", + "Sebastianz" + ] + }, + "Narzędzia": { + "modified": "2020-07-16T22:44:16.950Z", + "contributors": [ + "SphinxKnight", + "Katarzyna89", + "Arekusandoru", + "rolevicz", + "kasia725792", + "Zioberokr", + "Emerson2718", + "Bajerka86", + "alimar@poczta.onet.pl", + "Woren82", + "dawisko1", + "SCPD", + "teoli", + "Andrzej.Salata", + "Kosia90", + "splewako", + "mirekczechxmm", + "Diablownik", + "Ptak82", + "Mgjbot", + "Andreas Wuest", + "Listek", + "Dria" + ] + }, + "Narzędzia/Browser_Toolbox": { + "modified": "2020-07-16T22:35:55.742Z", + "contributors": [ + "Freelancer.MK" + ] + }, + "Narzędzia/Debugger": { + "modified": "2020-07-16T22:35:05.314Z", + "contributors": [ + "kaiga747", + "bassam", + "kuba1o3" + ] + }, + "Narzędzia/Debugger/How_to": { + "modified": "2020-07-16T22:35:08.058Z", + "contributors": [ + "jwhitlock", + "wbamberg" + ] + }, + "Narzędzia/Page_Inspector": { + "modified": "2020-07-16T22:34:28.762Z", + "contributors": [ + "kubutekf", + "Mlodyemoka" + ] + }, + "Narzędzia/Page_Inspector/How_to": { + "modified": "2020-07-16T22:34:31.602Z", + "contributors": [ + "jwhitlock", + "sidgan" + ] + }, + "Narzędzia/Page_Inspector/How_to/Open_the_Inspector": { + "modified": "2020-07-16T22:34:32.873Z", + "contributors": [ + "jwhitlock", + "kubutekf", + "Mlodyemoka" + ] + }, + "Narzędzia/Page_Inspector/Przewodnik_przez_UI": { + "modified": "2020-07-16T22:34:49.477Z", + "contributors": [ + "kubutekf" + ] + }, + "Narzędzia/Performance": { + "modified": "2020-07-16T22:36:13.164Z", + "contributors": [ + "jwhitlock", + "wbamberg" + ] + }, + "Narzędzia/Performance/Flame_Chart": { + "modified": "2020-07-16T22:36:20.612Z", + "contributors": [ + "jwhitlock", + "ozzbrain" + ] + }, + "Narzędzia/Profiler": { + "modified": "2020-07-16T22:35:28.987Z", + "contributors": [ + "iwona1111" + ] + }, + "Narzędzia/Storage_Inspector": { + "modified": "2020-07-16T22:36:10.011Z", + "contributors": [ + "edrjen" + ] + }, + "Narzędzia/Tools_Toolbox": { + "modified": "2020-07-16T22:35:27.779Z", + "contributors": [ + "vviruzz" + ] + }, + "Narzędzia/View_source": { + "modified": "2020-07-16T22:35:03.124Z", + "contributors": [ + "kryspinkras" + ] + }, + "Narzędzia/Walidatory": { + "modified": "2020-07-16T22:35:03.596Z", + "contributors": [ + "vviruzz", + "Mgjbot", + "Diablownik", + "Ptak82", + "Witia", + "Chlopczyk" + ] + }, + "Narzędzia/about:debugging": { + "modified": "2020-07-16T22:36:32.890Z", + "contributors": [ + "programistka", + "Jacob99", + "BajlandoKG" + ] + }, + "Narzędzia_clone": { + "modified": "2019-01-16T20:19:23.793Z", + "contributors": [ + "voodoo81-81" + ] + }, + "Nieprawidłowy_typ_MIME_plików_CSS": { + "modified": "2019-01-16T14:38:41.628Z", + "contributors": [ + "fscholz", + "Mgjbot", + "Ptak82", + "Takenbot", + "gandalf", + "Jan Dudek" + ] + }, + "O_modelu_obiektowym_dokumentu": { + "modified": "2019-01-16T14:38:39.407Z", + "contributors": [ + "fscholz", + "Mgjbot", + "Ptak82", + "Takenbot", + "Jan Dudek" + ] + }, + "Podaj_Dłoń_'kursorowi'": { + "modified": "2019-03-23T23:41:07.782Z", + "contributors": [ + "teoli", + "Ptak82", + "Mwd", + "gandalf", + "Dria" + ] + }, + "Poprawki_DOM_w_Firefoksie_3": { + "modified": "2019-03-23T23:50:53.479Z", + "contributors": [ + "wbamberg", + "Flaneur" + ] + }, + "Poprawki_SVG_w_Firefoksie_3": { + "modified": "2019-03-23T23:50:56.299Z", + "contributors": [ + "wbamberg", + "Flaneur" + ] + }, + "Poprawki_XUL_w_Firefoksie_3": { + "modified": "2019-03-24T00:02:36.017Z", + "contributors": [ + "wbamberg", + "SphinxKnight", + "teoli", + "splewako", + "fscholz", + "Ptak82", + "Bedi", + "Bobqu" + ] + }, + "Porady_odnośnie_tworzenia_szybko_ładujących_się_stron_HTML": { + "modified": "2019-03-23T23:51:58.812Z", + "contributors": [ + "Mgjbot", + "Janbil", + "Ptak82", + "Witia", + "Nerf", + "gandalf", + "Jan Dudek", + "StevenGarrity", + "Anonymous", + "Dria" + ] + }, + "Programowanie_Mozilli": { + "modified": "2019-03-23T23:58:48.549Z", + "contributors": [ + "gandalf", + "Mgjbot", + "Bedi", + "Verruckt", + "Ptak82", + "Dria" + ] + }, + "Programowanie_WWW": { + "modified": "2019-03-23T23:43:53.027Z", + "contributors": [ + "Mgjbot", + "Ptak82", + "gandalf", + "Anonymous", + "StevenGarrity", + "Dria" + ] + }, + "Przygotowanie_środowiska_programowania_rozszerzenia": { + "modified": "2019-03-23T23:54:18.210Z", + "contributors": [ + "teoli", + "Mgjbot", + "Flaneur" + ] + }, + "Rysowanie_tekstu_przy_użyciu_canvas": { + "modified": "2019-03-23T23:53:27.996Z", + "contributors": [ + "gandalf" + ] + }, + "Tutorial_lokalizacji_rozszerzeń_do_Firefoksa_i_Thunderbirda_dla_wersji_1.0_i_wyższych": { + "modified": "2019-01-16T15:58:24.402Z", + "contributors": [ + "Teo", + "Coldpeer", + "Ptak82" + ] + }, + "Tworzenie_wtyczek_OpenSearch_dla_Firefoksa": { + "modified": "2019-03-23T23:54:28.132Z", + "contributors": [ + "tregagnon", + "Mgjbot", + "Rodrigoknascimento", + "Ptak82", + "Citora", + "Marcoos" + ] + }, + "Tworzymy_rozszerzenie": { + "modified": "2019-03-23T23:59:43.298Z", + "contributors": [ + "fscholz", + "teoli", + "tregagnon", + "RLR", + "Adrianer", + "Bedi", + "Yozh88", + "Mgjbot", + "Sopel1000", + "Diablownik", + "Marcoos", + "Adriator", + "Ptak82", + "Verruckt", + "Kyllan", + "Kabar", + "Kjj2", + "gandalf", + "Indigo", + "Takenbot", + "Pbm", + "Emil" + ] + }, + "Web": { + "modified": "2019-03-23T23:30:00.154Z", + "contributors": [ + "mat-bi", + "wopolow", + "wowka123", + "marcind27", + "teoli", + "Rokuzo", + "JuMuS", + "manikus", + "splewako", + "Sheppy" + ] + }, + "Web/API": { + "modified": "2020-10-18T13:01:11.570Z", + "contributors": [ + "Karklik", + "juhtajuhta", + "iwona1111", + "teoli", + "Rokuzo", + "splewako", + "ethertank", + "Sheppy" + ] + }, + "Web/API/Attr": { + "modified": "2020-10-15T22:24:31.515Z", + "contributors": [ + "ja-pl" + ] + }, + "Web/API/AudioBuffer": { + "modified": "2019-03-23T22:27:58.311Z", + "contributors": [ + "drm404", + "mateuszdanek" + ] + }, + "Web/API/AudioContext": { + "modified": "2019-03-23T22:13:45.962Z", + "contributors": [ + "drm404" + ] + }, + "Web/API/AudioContext/createDynamicsCompressor": { + "modified": "2019-03-23T22:13:26.872Z", + "contributors": [ + "drm404" + ] + }, + "Web/API/AudioParam": { + "modified": "2019-03-23T22:13:33.465Z", + "contributors": [ + "jpmedley" + ] + }, + "Web/API/AudioParam/setValueAtTime": { + "modified": "2019-03-23T22:13:25.222Z", + "contributors": [ + "drm404" + ] + }, + "Web/API/CSSNumericValue": { + "modified": "2020-10-15T22:28:41.872Z", + "contributors": [ + "estelle" + ] + }, + "Web/API/CSSNumericValue/div": { + "modified": "2020-10-15T22:28:40.331Z", + "contributors": [ + "marcinkuran30" + ] + }, + "Web/API/CSSRule": { + "modified": "2019-03-23T23:45:23.663Z", + "contributors": [ + "teoli", + "khalid32", + "Bedi", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Cache": { + "modified": "2019-03-23T23:01:45.486Z", + "contributors": [ + "P0lip" + ] + }, + "Web/API/Canvas_API/Tutorial": { + "modified": "2019-03-23T22:35:51.922Z", + "contributors": [ + "bk20", + "dustinpaluch" + ] + }, + "Web/API/Canvas_API/Tutorial/Basic_usage": { + "modified": "2020-04-25T12:12:44.835Z", + "contributors": [ + "pewuel", + "mterczynski", + "km4", + "sebastianbando" + ] + }, + "Web/API/Canvas_API/Tutorial/Optymalizacja_canvas": { + "modified": "2019-03-18T21:12:08.144Z", + "contributors": [ + "Ovkorz" + ] + }, + "Web/API/Canvas_API/Tutorial/rysowanie_ksztaltow": { + "modified": "2019-03-23T22:35:47.920Z", + "contributors": [ + "km4", + "Kratak", + "sebastianbando", + "Miras" + ] + }, + "Web/API/ChildNode": { + "modified": "2020-01-17T16:06:19.710Z", + "contributors": [ + "pefbrute", + "arronei" + ] + }, + "Web/API/ChildNode/remove": { + "modified": "2020-10-15T21:53:18.455Z", + "contributors": [ + "SphinxKnight", + "Fidosek", + "griter", + "krystian71115" + ] + }, + "Web/API/Console": { + "modified": "2019-03-23T23:09:41.834Z", + "contributors": [ + "pat36", + "Scarface91" + ] + }, + "Web/API/Console/log": { + "modified": "2020-10-15T21:39:57.222Z", + "contributors": [ + "trusohamn", + "AgnieszkaPanek" + ] + }, + "Web/API/Document": { + "modified": "2019-04-08T07:32:25.930Z", + "contributors": [ + "Bartosz_Adamski", + "teoli", + "khalid32", + "Crash", + "Mgjbot", + "Bedi", + "Ptak82", + "gandalf", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Document/URL": { + "modified": "2019-03-23T23:46:53.749Z", + "contributors": [ + "teoli", + "khalid32", + "DR", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/activeElement": { + "modified": "2019-03-23T23:53:13.275Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Flaneur" + ] + }, + "Web/API/Document/alinkColor": { + "modified": "2019-03-23T23:46:52.586Z", + "contributors": [ + "teoli", + "khalid32", + "DR", + "Jan Dudek" + ] + }, + "Web/API/Document/anchors": { + "modified": "2020-04-27T14:17:36.934Z", + "contributors": [ + "jkosiaty", + "teoli", + "khalid32", + "Ptak82", + "DR", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Document/applets": { + "modified": "2019-03-23T23:46:50.771Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Document/bgColor": { + "modified": "2019-03-23T23:46:49.050Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Internauta1024A", + "Ptak82", + "DR", + "Jan Dudek" + ] + }, + "Web/API/Document/body": { + "modified": "2019-09-23T05:30:09.078Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "DR", + "Jan Dudek" + ] + }, + "Web/API/Document/characterSet": { + "modified": "2019-03-23T23:46:53.146Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "DR", + "Jan Dudek" + ] + }, + "Web/API/Document/clear": { + "modified": "2019-03-23T23:40:54.577Z", + "contributors": [ + "teoli", + "jsx", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/close": { + "modified": "2019-03-23T23:40:56.546Z", + "contributors": [ + "teoli", + "arunpandianp", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/compatMode": { + "modified": "2019-03-23T23:40:06.844Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek" + ] + }, + "Web/API/Document/cookie": { + "modified": "2019-03-23T23:46:52.193Z", + "contributors": [ + "kanapka94", + "teoli", + "AshfaqHossain", + "DR", + "Jan Dudek" + ] + }, + "Web/API/Document/createAttribute": { + "modified": "2019-03-23T23:41:42.200Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82", + "Takenbot", + "Filemon" + ] + }, + "Web/API/Document/createDocumentFragment": { + "modified": "2019-03-23T23:42:17.514Z", + "contributors": [ + "elszczepano", + "teoli", + "khalid32", + "Diablownik", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/createElement": { + "modified": "2019-11-19T12:43:51.177Z", + "contributors": [ + "svantetic", + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Takenbot", + "Sp", + "Anonymous", + "Jan Dudek" + ] + }, + "Web/API/Document/createEvent": { + "modified": "2019-03-23T23:53:29.430Z", + "contributors": [ + "teoli", + "khalid32", + "safjanowski", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/createRange": { + "modified": "2019-03-23T23:53:58.762Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Diablownik", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Document/createTextNode": { + "modified": "2019-03-23T23:53:29.008Z", + "contributors": [ + "Miras", + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Takenbot", + "Jan Dudek" + ] + }, + "Web/API/Document/defaultView": { + "modified": "2019-03-23T23:46:22.957Z", + "contributors": [ + "teoli", + "khalid32", + "Bedi", + "Internauta1024A" + ] + }, + "Web/API/Document/designMode": { + "modified": "2020-10-15T22:17:27.531Z", + "contributors": [ + "bartosz-bieniek" + ] + }, + "Web/API/Document/doctype": { + "modified": "2019-03-23T23:40:08.493Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek" + ] + }, + "Web/API/Document/documentElement": { + "modified": "2019-07-01T06:22:54.142Z", + "contributors": [ + "Cagestrike", + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/domain": { + "modified": "2019-03-23T23:40:08.387Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek" + ] + }, + "Web/API/Document/drag_event": { + "modified": "2019-04-30T13:52:16.811Z", + "contributors": [ + "wbamberg", + "fscholz", + "malecki-se" + ] + }, + "Web/API/Document/embeds": { + "modified": "2019-03-23T23:47:42.954Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Bedi", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/execCommand": { + "modified": "2020-08-24T07:38:53.201Z", + "contributors": [ + "Lukortech", + "ja-pl" + ] + }, + "Web/API/Document/fgColor": { + "modified": "2019-03-23T23:40:08.011Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek" + ] + }, + "Web/API/Document/firstChild": { + "modified": "2019-03-23T23:53:15.004Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Document/forms": { + "modified": "2019-03-23T23:43:19.295Z", + "contributors": [ + "teoli", + "basemnassar11", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/getElementById": { + "modified": "2019-03-23T23:45:59.363Z", + "contributors": [ + "xmentor", + "teoli", + "khalid32", + "Ptak82", + "Mgjbot", + "Takenbot", + "Jan Dudek" + ] + }, + "Web/API/Document/getElementsByClassName": { + "modified": "2019-03-18T21:37:45.960Z", + "contributors": [ + "wioladys" + ] + }, + "Web/API/Document/getElementsByName": { + "modified": "2019-03-23T23:43:51.751Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/getElementsByTagName": { + "modified": "2019-03-23T23:50:35.608Z", + "contributors": [ + "SphinxKnight", + "teoli", + "mimzi_fahia", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/Document/hasFocus": { + "modified": "2019-03-23T23:53:17.459Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Flaneur" + ] + }, + "Web/API/Document/head": { + "modified": "2019-03-23T22:40:15.808Z", + "contributors": [ + "maciejmarczak" + ] + }, + "Web/API/Document/height": { + "modified": "2019-03-23T23:42:16.598Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/images": { + "modified": "2019-03-24T00:04:17.670Z", + "contributors": [ + "teoli", + "jsx", + "RAP1D", + "Ptak82", + "Takenbot", + "Jan Dudek" + ] + }, + "Web/API/Document/implementation": { + "modified": "2019-03-23T23:40:09.680Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek" + ] + }, + "Web/API/Document/importNode": { + "modified": "2019-03-23T23:49:15.469Z", + "contributors": [ + "wbamberg", + "SphinxKnight", + "PawelekS", + "teoli", + "khalid32", + "Sheppy", + "Mgjbot", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/Document/lastModified": { + "modified": "2019-03-23T23:40:08.879Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek" + ] + }, + "Web/API/Document/linkColor": { + "modified": "2019-03-23T23:42:42.094Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/links": { + "modified": "2019-03-23T23:51:18.977Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Document/location": { + "modified": "2019-03-23T23:40:07.769Z", + "contributors": [ + "wojtekmaj", + "starsep", + "teoli", + "jsx", + "Jan Dudek" + ] + }, + "Web/API/Document/namespaceURI": { + "modified": "2019-03-23T23:44:00.886Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/open": { + "modified": "2019-03-23T23:45:36.121Z", + "contributors": [ + "teoli", + "Mgjbot", + "Takenbot", + "Jan Dudek" + ] + }, + "Web/API/Document/plugins": { + "modified": "2019-03-23T23:40:08.263Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek" + ] + }, + "Web/API/Document/querySelector": { + "modified": "2019-09-25T05:40:56.515Z", + "contributors": [ + "kotlarza", + "drm404", + "wkamel" + ] + }, + "Web/API/Document/referrer": { + "modified": "2019-03-23T23:40:08.156Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek" + ] + }, + "Web/API/Document/releaseCapture": { + "modified": "2019-03-23T22:51:58.125Z", + "contributors": [ + "wkamel" + ] + }, + "Web/API/Document/styleSheets": { + "modified": "2019-03-23T23:48:20.614Z", + "contributors": [ + "teoli", + "jsx", + "Robson", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Document/title": { + "modified": "2019-03-23T23:46:33.369Z", + "contributors": [ + "teoli", + "khalid32", + "Diablownik", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/vlinkColor": { + "modified": "2019-03-23T23:40:08.777Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek" + ] + }, + "Web/API/Document/width": { + "modified": "2019-03-23T23:42:18.267Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/write": { + "modified": "2019-03-23T23:45:33.486Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Takenbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Document/writeln": { + "modified": "2019-03-23T23:45:33.593Z", + "contributors": [ + "teoli", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element": { + "modified": "2019-03-23T23:59:45.799Z", + "contributors": [ + "pablovsky", + "fscholz", + "teoli", + "jsx", + "zarat", + "Spawnm", + "Artstk", + "Internauta1024A", + "Mgjbot", + "Ptak82", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Element/addEventListener": { + "modified": "2019-03-24T00:08:51.040Z", + "contributors": [ + "teoli", + "khalid32", + "Kuzirashi", + "wojtiku", + "jarekps", + "pim", + "dj100", + "Mgjbot", + "Ptak82", + "Jaki", + "Internauta1024A", + "Bedi" + ] + }, + "Web/API/Element/appendChild": { + "modified": "2019-03-24T00:09:45.110Z", + "contributors": [ + "Miras", + "teoli", + "jsx", + "eryk.piast", + "Mgjbot", + "Ptak82", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Element/attributes": { + "modified": "2019-03-23T23:59:14.981Z", + "contributors": [ + "teoli", + "khalid32", + "lukasz.jezierski", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/blur": { + "modified": "2019-03-23T23:47:16.796Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/childNodes": { + "modified": "2019-03-23T23:42:38.458Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/classList": { + "modified": "2019-03-23T22:13:21.685Z", + "contributors": [ + "sunpietro", + "drm404" + ] + }, + "Web/API/Element/className": { + "modified": "2019-03-24T00:13:14.914Z", + "contributors": [ + "teoli", + "arunpandianp", + "ethertank", + "dextra", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/click": { + "modified": "2019-03-23T23:47:17.142Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/clientHeight": { + "modified": "2019-03-23T23:43:28.841Z", + "contributors": [ + "teoli", + "basemnassar11", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/clientNode": { + "modified": "2019-03-23T23:50:53.176Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/clientWidth": { + "modified": "2019-03-23T23:46:23.455Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/dir": { + "modified": "2019-03-24T00:13:13.769Z", + "contributors": [ + "teoli", + "jsx", + "ethertank", + "dextra", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/dispatchEvent": { + "modified": "2019-04-01T06:05:09.437Z", + "contributors": [ + "piotrgredowski", + "teoli", + "xuancanh", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/firstChild": { + "modified": "2020-10-29T05:55:32.180Z", + "contributors": [ + "dk333", + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/focus": { + "modified": "2019-03-23T23:47:17.621Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/getAttribute": { + "modified": "2019-03-23T23:53:09.147Z", + "contributors": [ + "lotny", + "teoli", + "jsx", + "fx4waldi", + "Mgjbot", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Element/getAttributeNS": { + "modified": "2019-03-23T23:53:11.173Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/getAttributeNode": { + "modified": "2019-03-23T23:53:09.037Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/getAttributeNodeNS": { + "modified": "2019-03-23T23:54:11.116Z", + "contributors": [ + "SphinxKnight", + "teoli", + "khalid32", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Element/getBoundingClientRect": { + "modified": "2020-02-24T10:38:00.432Z", + "contributors": [ + "mstaniuk", + "SphinxKnight", + "hckr", + "JCichon" + ] + }, + "Web/API/Element/getElementsByTagNameNS": { + "modified": "2019-03-18T21:15:14.964Z", + "contributors": [ + "SphinxKnight", + "teoli", + "khalid32", + "Mgjbot", + "Bedi", + "Ptak82" + ] + }, + "Web/API/Element/hasAttribute": { + "modified": "2019-03-23T23:53:12.029Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/hasAttributeNS": { + "modified": "2019-03-23T23:53:19.883Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/hasAttributes": { + "modified": "2019-03-23T23:51:23.885Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/hasChildNodes": { + "modified": "2019-03-23T23:54:18.316Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/id": { + "modified": "2019-03-23T23:43:21.777Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/innerHTML": { + "modified": "2019-03-23T23:45:15.352Z", + "contributors": [ + "Kitsune", + "teoli", + "khalid32", + "Ptak82", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/insertAdjacentHTML": { + "modified": "2020-10-15T22:19:49.806Z", + "contributors": [ + "RetupK" + ] + }, + "Web/API/Element/insertBefore": { + "modified": "2019-03-23T23:53:18.476Z", + "contributors": [ + "Suiseki", + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "gandalf" + ] + }, + "Web/API/Element/lang": { + "modified": "2019-03-23T23:46:43.485Z", + "contributors": [ + "teoli", + "xuancanh", + "Mgjbot", + "WadimdD", + "Ptak82" + ] + }, + "Web/API/Element/lastChild": { + "modified": "2019-03-23T23:54:13.899Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/length": { + "modified": "2019-03-23T23:43:22.970Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/localName": { + "modified": "2019-03-23T23:46:58.657Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/name": { + "modified": "2019-03-24T00:13:13.340Z", + "contributors": [ + "teoli", + "khalid32", + "dextra", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/namespaceURI": { + "modified": "2019-03-23T23:46:57.209Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/nextSibling": { + "modified": "2019-03-23T23:53:02.853Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/nodeName": { + "modified": "2019-03-23T23:50:31.981Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/nodeType": { + "modified": "2019-03-23T23:49:33.390Z", + "contributors": [ + "teoli", + "jsx", + "ethertank", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/nodeValue": { + "modified": "2019-03-24T00:13:13.193Z", + "contributors": [ + "teoli", + "arunpandianp", + "ethertank", + "dextra", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/normalize": { + "modified": "2019-03-23T23:47:08.491Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Element/offsetHeight": { + "modified": "2019-03-23T23:47:13.144Z", + "contributors": [ + "fscholz", + "teoli", + "khalid32", + "Mgjbot", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/Element/offsetLeft": { + "modified": "2019-03-23T23:49:30.218Z", + "contributors": [ + "SphinxKnight", + "teoli", + "khalid32", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/API/Element/offsetParent": { + "modified": "2019-03-23T23:47:41.365Z", + "contributors": [ + "teoli", + "xuancanh", + "Ptak82", + "Tomekperlak", + "Mgjbot", + "Internauta1024A" + ] + }, + "Web/API/Element/offsetWidth": { + "modified": "2019-03-24T00:18:05.704Z", + "contributors": [ + "SphinxKnight", + "teoli", + "AshfaqHossain", + "Sprintserwis", + "Maciekp", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Element/onclick": { + "modified": "2019-03-24T00:04:00.144Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "fscholz", + "Bedi", + "Jan Dudek" + ] + }, + "Web/API/Element/onkeypress": { + "modified": "2019-03-23T23:41:39.155Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek" + ] + }, + "Web/API/Element/onkeyup": { + "modified": "2019-03-23T23:46:25.129Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/onmousedown": { + "modified": "2019-03-23T23:47:20.727Z", + "contributors": [ + "teoli", + "jsx", + "Bedi", + "Mgjbot", + "Ptak82" + ] + }, + "Web/API/Element/onmousemove": { + "modified": "2019-03-24T00:00:26.392Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Hasilt", + "mwysinski", + "Bedi" + ] + }, + "Web/API/Element/ownerDocument": { + "modified": "2019-03-23T23:53:12.643Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/parentNode": { + "modified": "2019-03-23T23:53:27.343Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Element/prefix": { + "modified": "2019-03-23T23:47:17.259Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/previousSibling": { + "modified": "2019-03-23T23:53:06.046Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Pitoutompoilu", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/querySelector": { + "modified": "2019-03-23T22:10:41.126Z", + "contributors": [ + "jdrobiecki" + ] + }, + "Web/API/Element/removeAttribute": { + "modified": "2019-03-23T23:53:07.027Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/removeAttributeNS": { + "modified": "2019-03-23T23:54:13.414Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/removeAttributeNode": { + "modified": "2019-03-23T23:53:09.733Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/removeChild": { + "modified": "2019-03-23T23:59:03.482Z", + "contributors": [ + "teoli", + "khalid32", + "azrael_valedhel", + "Mgjbot", + "Uryga", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/replaceChild": { + "modified": "2019-03-23T23:54:13.730Z", + "contributors": [ + "teoli", + "xuancanh", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/scrollLeft": { + "modified": "2019-03-23T23:47:12.548Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Radek", + "Ptak82" + ] + }, + "Web/API/Element/scrollTop": { + "modified": "2019-03-23T23:47:13.917Z", + "contributors": [ + "fscholz", + "teoli", + "khalid32", + "Wladimir_Palant", + "Mgjbot", + "Ptak82", + "Diablownik", + "Radek" + ] + }, + "Web/API/Element/scrollWidth": { + "modified": "2019-03-23T23:47:16.382Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Element/setAttribute": { + "modified": "2019-03-23T23:53:08.874Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Element/setAttributeNS": { + "modified": "2019-03-23T23:53:02.997Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Element/setAttributeNode": { + "modified": "2019-03-23T23:53:19.350Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/setAttributeNodeNS": { + "modified": "2019-03-23T23:54:17.865Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Element/style": { + "modified": "2019-03-23T23:56:38.082Z", + "contributors": [ + "lotny", + "SphinxKnight", + "teoli", + "jsx", + "obelyx", + "Ptak82", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Element/tabIndex": { + "modified": "2019-03-24T00:13:11.171Z", + "contributors": [ + "teoli", + "arunpandianp", + "ethertank", + "dextra", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/tagName": { + "modified": "2019-03-23T23:53:27.472Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Element/textContent": { + "modified": "2019-03-23T23:47:17.523Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Event": { + "modified": "2020-03-06T04:03:57.947Z", + "contributors": [ + "dkarski", + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek", + "Takenbot" + ] + }, + "Web/API/Event/altKey": { + "modified": "2019-03-23T23:48:10.716Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/bubbles": { + "modified": "2019-03-23T23:50:27.106Z", + "contributors": [ + "teoli", + "xuancanh", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/button": { + "modified": "2019-03-23T23:48:07.041Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/cancelBubble": { + "modified": "2019-03-23T23:41:11.564Z", + "contributors": [ + "teoli", + "basemnassar11", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/cancelable": { + "modified": "2019-09-16T10:39:42.766Z", + "contributors": [ + "Sturmpl", + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/charCode": { + "modified": "2019-03-23T23:41:15.040Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/clientX": { + "modified": "2019-03-23T23:41:14.486Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/clientY": { + "modified": "2019-03-23T23:41:13.474Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/ctrlKey": { + "modified": "2019-03-23T23:41:13.226Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/currentTarget": { + "modified": "2019-03-23T23:41:15.144Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/eventPhase": { + "modified": "2019-03-23T23:41:12.078Z", + "contributors": [ + "teoli", + "Hasilt", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/initEvent": { + "modified": "2019-03-23T23:53:19.999Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/initMouseEvent": { + "modified": "2019-03-23T23:50:26.012Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Event/initUIEvent": { + "modified": "2019-03-23T23:47:13.003Z", + "contributors": [ + "teoli", + "jsx", + "Bedi", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/isChar": { + "modified": "2019-03-23T23:41:13.381Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/keyCode": { + "modified": "2019-03-23T23:41:14.121Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/layerX": { + "modified": "2019-03-23T23:41:12.332Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/layerY": { + "modified": "2019-03-23T23:41:12.787Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/metaKey": { + "modified": "2019-03-23T23:54:16.778Z", + "contributors": [ + "teoli", + "khalid32", + "Dabear", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/pageX": { + "modified": "2019-03-23T23:42:37.418Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/pageY": { + "modified": "2019-03-23T23:41:13.568Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/relatedTarget": { + "modified": "2019-03-23T23:41:15.246Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/screenX": { + "modified": "2019-03-23T23:41:13.675Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/screenY": { + "modified": "2019-03-23T23:41:13.789Z", + "contributors": [ + "teoli", + "khalid32", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/shiftKey": { + "modified": "2019-03-23T23:41:14.937Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/stopPropagation": { + "modified": "2019-03-23T23:53:29.225Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Event/target": { + "modified": "2019-03-23T23:41:14.765Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/timeStamp": { + "modified": "2019-03-23T23:43:52.115Z", + "contributors": [ + "teoli", + "Hasilt", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Event/type": { + "modified": "2019-03-23T23:41:14.851Z", + "contributors": [ + "teoli", + "jsx", + "Jan Dudek", + "Ptak82" + ] + }, + "Web/API/Event/view": { + "modified": "2019-03-23T23:41:50.711Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/File": { + "modified": "2020-10-15T22:09:34.281Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Web/API/File/File": { + "modified": "2020-10-15T22:09:35.051Z", + "contributors": [ + "mat-bi" + ] + }, + "Web/API/Geolocation_API": { + "modified": "2020-10-28T03:32:31.226Z", + "contributors": [ + "SphinxKnight", + "FILIP", + "Justyna1709" + ] + }, + "Web/API/GlobalEventHandlers": { + "modified": "2019-03-18T21:40:36.589Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Web/API/GlobalEventHandlers/onblur": { + "modified": "2020-10-15T22:17:26.802Z", + "contributors": [ + "mateuszpigula", + "bartosz-bieniek" + ] + }, + "Web/API/GlobalEventHandlers/onfocus": { + "modified": "2020-10-15T22:17:27.888Z", + "contributors": [ + "bartosz-bieniek" + ] + }, + "Web/API/HTMLCanvasElement": { + "modified": "2020-10-15T22:04:15.653Z", + "contributors": [ + "JKarkosza" + ] + }, + "Web/API/HTMLCanvasElement/captureStream": { + "modified": "2020-10-15T22:04:15.570Z", + "contributors": [ + "JKarkosza" + ] + }, + "Web/API/HTMLCanvasElement/getContext": { + "modified": "2020-10-15T22:04:15.391Z", + "contributors": [ + "mfijas", + "JKarkosza" + ] + }, + "Web/API/HTMLCanvasElement/height": { + "modified": "2020-10-15T22:04:14.436Z", + "contributors": [ + "JKarkosza" + ] + }, + "Web/API/HTMLCanvasElement/width": { + "modified": "2020-10-15T22:04:14.229Z", + "contributors": [ + "JKarkosza" + ] + }, + "Web/API/HTMLElement": { + "modified": "2019-03-23T22:20:54.754Z", + "contributors": [ + "fscholz" + ] + }, + "Web/API/HTMLElement/dataset": { + "modified": "2020-10-15T22:07:00.382Z", + "contributors": [ + "flakboy", + "lotny" + ] + }, + "Web/API/HTMLFormElement": { + "modified": "2019-03-23T23:45:33.731Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Internauta1024A", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/HTMLFormElement/acceptCharset": { + "modified": "2019-03-23T23:45:22.103Z", + "contributors": [ + "teoli", + "Hasilt", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/HTMLFormElement/action": { + "modified": "2019-03-23T23:45:18.298Z", + "contributors": [ + "teoli", + "jsx", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/HTMLFormElement/elements": { + "modified": "2019-03-23T23:43:17.456Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/HTMLFormElement/encoding": { + "modified": "2019-03-23T23:47:01.703Z", + "contributors": [ + "teoli", + "khalid32", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/HTMLFormElement/enctype": { + "modified": "2019-03-23T23:45:16.218Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/HTMLFormElement/length": { + "modified": "2019-03-23T23:45:16.769Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/HTMLFormElement/method": { + "modified": "2019-03-23T23:59:17.843Z", + "contributors": [ + "teoli", + "Hasilt", + "drry", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/HTMLFormElement/name": { + "modified": "2019-03-23T23:45:22.472Z", + "contributors": [ + "teoli", + "soumya", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/HTMLFormElement/reset": { + "modified": "2019-03-23T23:46:56.417Z", + "contributors": [ + "teoli", + "Jeremie", + "Internauta1024A", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/HTMLFormElement/submit": { + "modified": "2019-03-23T23:46:56.512Z", + "contributors": [ + "teoli", + "khalid32", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/HTMLFormElement/target": { + "modified": "2019-03-23T23:47:01.275Z", + "contributors": [ + "teoli", + "basemnassar11", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/HTMLIFrameElement": { + "modified": "2019-07-30T13:30:29.361Z", + "contributors": [ + "wbamberg", + "KubaKaszycki" + ] + }, + "Web/API/HTMLSelectElement": { + "modified": "2020-10-15T22:29:38.928Z", + "contributors": [ + "Loadmaster" + ] + }, + "Web/API/HTMLTableElement": { + "modified": "2019-03-23T23:46:11.801Z", + "contributors": [ + "teoli", + "khalid32", + "ethertank", + "Mgjbot", + "Ptak82", + "WadimdD" + ] + }, + "Web/API/HTMLTableElement/caption": { + "modified": "2019-03-23T23:44:50.983Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "WadimdD", + "Ptak82" + ] + }, + "Web/API/HTMLTableElement/tFoot": { + "modified": "2019-03-23T23:42:17.839Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82" + ] + }, + "Web/API/HTMLTableElement/tHead": { + "modified": "2019-03-23T23:42:32.260Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82" + ] + }, + "Web/API/Location": { + "modified": "2020-10-15T22:10:01.975Z", + "contributors": [ + "mfuji09" + ] + }, + "Web/API/Location/reload": { + "modified": "2020-10-15T22:10:04.816Z", + "contributors": [ + "kanapka94" + ] + }, + "Web/API/MIDIAccess": { + "modified": "2020-10-15T21:59:50.243Z", + "contributors": [ + "bershanskiy", + "skoczy" + ] + }, + "Web/API/MediaElementAudioSourceNode": { + "modified": "2020-10-15T22:28:39.656Z", + "contributors": [ + "dawidos2017r" + ] + }, + "Web/API/MouseScrollEvent": { + "modified": "2019-03-18T21:09:03.294Z", + "contributors": [ + "fscholz", + "teoli", + "iwona1111" + ] + }, + "Web/API/Navigator": { + "modified": "2019-03-23T23:01:33.543Z", + "contributors": [ + "wbamberg", + "teoli" + ] + }, + "Web/API/Navigator/appCodeName": { + "modified": "2019-03-23T23:49:13.430Z", + "contributors": [ + "teoli", + "xuancanh", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Navigator/appName": { + "modified": "2019-03-23T23:49:12.926Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/appVersion": { + "modified": "2019-03-23T23:49:23.089Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Diablownik", + "Internauta1024A" + ] + }, + "Web/API/Navigator/buildID": { + "modified": "2019-03-23T23:49:19.070Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/cookieEnabled": { + "modified": "2019-03-23T23:49:23.555Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/javaEnabled": { + "modified": "2019-03-23T23:49:40.467Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Navigator/language": { + "modified": "2019-03-23T23:49:32.556Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Navigator/mimeTypes": { + "modified": "2019-03-23T23:49:33.278Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/onLine": { + "modified": "2019-03-23T23:48:52.481Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Navigator/oscpu": { + "modified": "2019-03-23T23:49:31.983Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/platform": { + "modified": "2019-03-23T23:49:28.729Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/plugins": { + "modified": "2019-03-23T23:49:34.992Z", + "contributors": [ + "sheldarr", + "teoli", + "jsx", + "AshfaqHossain", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/product": { + "modified": "2019-03-23T23:49:35.115Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/productSub": { + "modified": "2019-03-23T23:49:31.506Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Diablownik" + ] + }, + "Web/API/Navigator/registerContentHandler": { + "modified": "2019-03-23T23:51:33.038Z", + "contributors": [ + "teoli", + "khalid32", + "Diablownik", + "Mgjbot", + "Marcoos", + "Ptak82" + ] + }, + "Web/API/Navigator/registerProtocolHandler": { + "modified": "2019-03-23T23:52:37.570Z", + "contributors": [ + "teoli", + "jsx", + "Marcoos", + "Flaneur", + "Mgjbot" + ] + }, + "Web/API/Navigator/registerProtocolHandler/Web-based_protocol_handlers": { + "modified": "2019-03-23T23:52:41.449Z", + "contributors": [ + "chrisdavidmills", + "Witia", + "Marcoos", + "Flaneur" + ] + }, + "Web/API/NavigatorLanguage": { + "modified": "2019-03-23T23:01:34.390Z", + "contributors": [ + "maniekbarty", + "teoli" + ] + }, + "Web/API/NavigatorOnLine": { + "modified": "2019-03-23T23:01:33.822Z", + "contributors": [ + "teoli" + ] + }, + "Web/API/NavigatorOnLine/Zdarzenia_online_i_offline": { + "modified": "2019-01-16T15:46:42.070Z", + "contributors": [ + "chrisdavidmills", + "Ptak82", + "Mgjbot", + "Flaneur" + ] + }, + "Web/API/NavigatorPlugins": { + "modified": "2019-03-23T23:01:33.358Z", + "contributors": [ + "teoli" + ] + }, + "Web/API/ParentNode": { + "modified": "2020-10-15T22:19:13.921Z" + }, + "Web/API/ParentNode/childElementCount": { + "modified": "2020-10-15T22:19:13.324Z", + "contributors": [ + "kaka0204", + "SurmaAa" + ] + }, + "Web/API/ParentNode/children": { + "modified": "2020-10-29T07:01:42.075Z", + "contributors": [ + "dk333" + ] + }, + "Web/API/Push_API": { + "modified": "2019-03-23T22:08:29.784Z", + "contributors": [ + "prograamer" + ] + }, + "Web/API/Range": { + "modified": "2019-03-23T23:45:35.004Z", + "contributors": [ + "SphinxKnight", + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Response": { + "modified": "2020-10-15T22:26:26.518Z", + "contributors": [ + "ZaneHannanAU" + ] + }, + "Web/API/Screen": { + "modified": "2019-03-23T23:01:31.157Z", + "contributors": [ + "teoli" + ] + }, + "Web/API/Screen/colorDepth": { + "modified": "2019-03-23T23:50:21.916Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Diablownik", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Screen/width": { + "modified": "2019-03-18T21:45:10.635Z", + "contributors": [ + "kasztan" + ] + }, + "Web/API/Selection": { + "modified": "2019-03-23T23:48:09.616Z", + "contributors": [ + "SphinxKnight", + "teoli", + "khalid32", + "Mgjbot", + "Gocio", + "DR", + "Diablownik", + "Rev", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Selection/addRange": { + "modified": "2019-03-23T23:46:47.578Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/anchorNode": { + "modified": "2019-03-23T23:47:25.872Z", + "contributors": [ + "teoli", + "khalid32", + "Gocio", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/anchorOffset": { + "modified": "2019-03-23T23:46:54.375Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Rev" + ] + }, + "Web/API/Selection/collapse": { + "modified": "2019-03-23T23:46:59.083Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/collapseToEnd": { + "modified": "2019-03-23T23:46:58.778Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/collapseToStart": { + "modified": "2019-03-23T23:47:02.825Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/containsNode": { + "modified": "2019-03-23T23:46:53.862Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/deleteFromDocument": { + "modified": "2019-03-23T23:46:48.061Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/extend": { + "modified": "2019-03-23T23:46:50.880Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/focusNode": { + "modified": "2019-03-23T23:46:47.086Z", + "contributors": [ + "teoli", + "jsx", + "DR", + "Ptak82", + "Rev" + ] + }, + "Web/API/Selection/focusOffset": { + "modified": "2019-03-23T23:46:50.243Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Mgjbot", + "DR", + "Ptak82", + "Rev" + ] + }, + "Web/API/Selection/getRangeAt": { + "modified": "2019-03-23T23:46:47.678Z", + "contributors": [ + "teoli", + "khalid32", + "DR", + "Diablownik", + "Rev" + ] + }, + "Web/API/Selection/isCollapsed": { + "modified": "2019-03-23T23:46:51.749Z", + "contributors": [ + "teoli", + "khalid32", + "DR", + "Ptak82", + "Rev" + ] + }, + "Web/API/Selection/rangeCount": { + "modified": "2019-03-23T23:46:49.626Z", + "contributors": [ + "teoli", + "jsx", + "DR", + "Diablownik", + "Rev" + ] + }, + "Web/API/Selection/removeAllRanges": { + "modified": "2019-03-23T23:46:51.877Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/removeRange": { + "modified": "2019-03-23T23:46:49.730Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Rev" + ] + }, + "Web/API/Selection/selectAllChildren": { + "modified": "2019-03-23T23:46:48.182Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/Selection/toString": { + "modified": "2019-03-23T23:47:22.838Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "DR", + "Rev" + ] + }, + "Web/API/SpeechRecognition": { + "modified": "2020-10-15T22:25:11.426Z", + "contributors": [ + "malarium" + ] + }, + "Web/API/Storage": { + "modified": "2019-03-23T23:50:43.254Z", + "contributors": [ + "rudol", + "teoli", + "AshfaqHossain", + "Mgjbot", + "Ptak82", + "Rev", + "Bedi", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet": { + "modified": "2019-03-23T23:45:14.267Z", + "contributors": [ + "teoli", + "jsx", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/cssRules": { + "modified": "2019-03-23T23:48:42.200Z", + "contributors": [ + "teoli", + "khalid32", + "Bedi", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/deleteRule": { + "modified": "2019-03-23T23:45:22.762Z", + "contributors": [ + "teoli", + "jsx", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/disabled": { + "modified": "2019-03-23T23:45:18.937Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/href": { + "modified": "2019-03-23T23:45:21.729Z", + "contributors": [ + "teoli", + "jsx", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/Stylesheet/insertRule": { + "modified": "2019-03-24T00:00:18.477Z", + "contributors": [ + "SphinxKnight", + "teoli", + "AshfaqHossain", + "Gompka", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/media": { + "modified": "2019-03-23T23:45:22.570Z", + "contributors": [ + "teoli", + "jsx", + "Ptak82", + "Internauta1024A", + "Diablownik" + ] + }, + "Web/API/Stylesheet/ownerRule": { + "modified": "2019-03-23T23:45:18.103Z", + "contributors": [ + "teoli", + "xuancanh", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/parentStyleSheet": { + "modified": "2019-03-23T23:45:16.498Z", + "contributors": [ + "teoli", + "mimzi_fahia", + "Diablownik", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/title": { + "modified": "2019-03-23T23:45:22.666Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Stylesheet/type": { + "modified": "2019-03-23T23:45:20.725Z", + "contributors": [ + "teoli", + "khalid32", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/WebGL_API": { + "modified": "2019-03-23T22:58:02.050Z", + "contributors": [ + "dloranc", + "fscholz", + "michaldudak", + "odfdoodokdoudos", + "Dawid_Chmura_JWE", + "Trebor" + ] + }, + "Web/API/WebGL_API/Tutorial": { + "modified": "2019-03-23T22:48:53.045Z", + "contributors": [ + "fscholz" + ] + }, + "Web/API/Web_Audio_API": { + "modified": "2019-03-23T22:11:02.259Z", + "contributors": [ + "drm404" + ] + }, + "Web/API/Window": { + "modified": "2019-03-24T00:01:49.075Z", + "contributors": [ + "SphinxKnight", + "teoli", + "khalid32", + "Crash", + "Spawnm", + "Ptak82", + "Internauta1024A", + "Mgjbot", + "Diablownik", + "Takenbot", + "Jan Dudek" + ] + }, + "Web/API/Window/alert": { + "modified": "2019-03-23T23:50:36.690Z", + "contributors": [ + "Sheppy", + "teoli", + "AshfaqHossain", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Window/applicationCache": { + "modified": "2019-03-23T22:47:53.352Z", + "contributors": [ + "Rafal2228" + ] + }, + "Web/API/Window/clearInterval": { + "modified": "2019-03-24T00:10:08.372Z", + "contributors": [ + "teoli", + "khalid32", + "ethertank", + "qfel13" + ] + }, + "Web/API/Window/clearTimeout": { + "modified": "2019-03-24T00:10:09.180Z", + "contributors": [ + "teoli", + "khalid32", + "qfel13" + ] + }, + "Web/API/Window/closed": { + "modified": "2019-03-23T23:49:15.119Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Rev", + "Internauta1024A" + ] + }, + "Web/API/Window/content": { + "modified": "2019-03-23T23:49:47.503Z", + "contributors": [ + "SphinxKnight", + "teoli", + "AshfaqHossain", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Window/controllers": { + "modified": "2019-03-23T23:49:47.613Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Internauta1024A" + ] + }, + "Web/API/Window/crypto": { + "modified": "2019-03-23T23:49:51.057Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/API/Window/defaultStatus": { + "modified": "2019-03-23T23:49:46.875Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Internauta1024A", + "Diablownik" + ] + }, + "Web/API/Window/directories": { + "modified": "2019-03-23T23:49:52.705Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Internauta1024A" + ] + }, + "Web/API/Window/document": { + "modified": "2019-03-23T23:49:48.901Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Internauta1024A", + "Jan Dudek" + ] + }, + "Web/API/Window/dump": { + "modified": "2019-03-23T23:47:00.449Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Marcoos", + "Jan Dudek" + ] + }, + "Web/API/Window/focus": { + "modified": "2019-03-23T23:50:59.887Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Robson" + ] + }, + "Web/API/Window/frameElement": { + "modified": "2019-03-23T23:49:48.399Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "Mgjbot", + "Diablownik", + "Internauta1024A" + ] + }, + "Web/API/Window/frames": { + "modified": "2019-03-23T23:49:53.479Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/API/Window/getSelection": { + "modified": "2019-03-23T23:48:14.523Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Witia", + "Ptak82", + "Rev" + ] + }, + "Web/API/Window/localStorage": { + "modified": "2019-03-23T22:47:52.730Z", + "contributors": [ + "marcinru", + "Rafal2228" + ] + }, + "Web/API/Window/name": { + "modified": "2019-03-23T23:49:59.062Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Robson" + ] + }, + "Web/API/Window/navigator": { + "modified": "2019-03-23T23:49:11.084Z", + "contributors": [ + "SphinxKnight", + "teoli", + "AshfaqHossain", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/API/Window/onload": { + "modified": "2019-03-24T00:18:31.426Z", + "contributors": [ + "SphinxKnight", + "teoli", + "AshfaqHossain", + "wojciech.fornal", + "Ptak82" + ] + }, + "Web/API/Window/open": { + "modified": "2019-03-23T23:13:16.656Z", + "contributors": [ + "SphinxKnight", + "jigs12", + "fscholz", + "teoli", + "khalid32", + "Gompka", + "GT", + "Elwiz", + "Mgjbot", + "Ptak82", + "Jan Dudek" + ] + }, + "Web/API/Window/openDialog": { + "modified": "2019-03-24T00:04:19.879Z", + "contributors": [ + "teoli", + "khalid32", + "damien.flament", + "Ptak82" + ] + }, + "Web/API/Window/opener": { + "modified": "2020-10-15T21:16:48.672Z", + "contributors": [ + "michal037", + "kanapka94", + "teoli", + "khalid32", + "Mgjbot", + "Ptak82" + ] + }, + "Web/API/Window/prompt": { + "modified": "2019-03-23T23:50:37.097Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "castus", + "Mgjbot", + "Diablownik", + "Ptak82", + "Robson" + ] + }, + "Web/API/Window/requestAnimationFrame": { + "modified": "2019-03-23T22:44:30.377Z", + "contributors": [ + "pl86", + "oskarszura", + "belfz", + "michal.fita" + ] + }, + "Web/API/Window/resizeBy": { + "modified": "2019-03-23T23:51:10.757Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Robson" + ] + }, + "Web/API/Window/resizeTo": { + "modified": "2019-03-23T23:51:08.562Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Robson", + "Ptak82" + ] + }, + "Web/API/Window/scroll": { + "modified": "2019-03-23T23:51:20.238Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Ptak82", + "Bedi" + ] + }, + "Web/API/Window/scrollByLines": { + "modified": "2019-03-23T23:51:36.326Z", + "contributors": [ + "teoli", + "jsx", + "Mgjbot", + "Bedi", + "Ptak82" + ] + }, + "Web/API/Window/scrollByPages": { + "modified": "2019-03-23T23:51:38.748Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82" + ] + }, + "Web/API/Window/scrollTo": { + "modified": "2019-03-23T23:51:36.818Z", + "contributors": [ + "teoli", + "khalid32", + "Mgjbot", + "Ptak82", + "Bedi" + ] + }, + "Web/API/Window/setInterval": { + "modified": "2019-03-24T00:10:09.408Z", + "contributors": [ + "Bajdzis", + "teoli", + "khalid32", + "qfel13", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Window/setTimeout": { + "modified": "2019-03-24T00:10:06.439Z", + "contributors": [ + "teoli", + "AshfaqHossain", + "qfel13", + "Ceth", + "Mgjbot", + "Jan Dudek" + ] + }, + "Web/API/Window/sidebar": { + "modified": "2019-03-23T22:02:59.356Z", + "contributors": [ + "IsaacSchemm" + ] + }, + "Web/API/WindowBase64": { + "modified": "2019-03-23T23:01:35.375Z", + "contributors": [ + "teoli" + ] + }, + "Web/API/WindowBase64/atob": { + "modified": "2019-03-23T23:09:12.984Z", + "contributors": [ + "teoli", + "Eltu" + ] + }, + "Web/API/WindowBase64/btoa": { + "modified": "2019-03-23T23:09:14.333Z", + "contributors": [ + "teoli", + "Eltu" + ] + }, + "Web/API/Zdarzenia_dotykowe": { + "modified": "2020-10-15T22:21:40.615Z", + "contributors": [ + "jangromko" + ] + }, + "Web/API/powiadomienie": { + "modified": "2019-03-23T22:47:47.817Z", + "contributors": [ + "archdevil666pl", + "teoli", + "Arfphis" + ] + }, + "Web/Accessibility/ARIA": { + "modified": "2020-08-22T12:01:29.841Z", + "contributors": [ + "lordBN", + "Dzordzu", + "Tigt" + ] + }, + "Web/Accessibility/ARIA/Aplikacje_internetowe_i_ARIA_FAQ": { + "modified": "2019-03-23T22:15:44.866Z", + "contributors": [ + "konradluka" + ] + }, + "Web/Bezpieczeństwo": { + "modified": "2019-11-16T15:40:23.627Z", + "contributors": [ + "drm404" + ] + }, + "Web/Bezpieczeństwo/Certificate_Transparency": { + "modified": "2019-11-16T15:16:54.228Z", + "contributors": [ + "drm404" + ] + }, + "Web/Bezpieczeństwo/Podstawy_bezpieczenstwa_informacji": { + "modified": "2019-11-16T15:41:44.248Z", + "contributors": [ + "drm404" + ] + }, + "Web/Bezpieczeństwo/Same-origin_policy": { + "modified": "2019-11-23T14:30:59.726Z", + "contributors": [ + "drm404" + ] + }, + "Web/Bezpieczeństwo/Subresource_Integrity": { + "modified": "2020-10-15T22:24:54.815Z", + "contributors": [ + "drm404" + ] + }, + "Web/CSS": { + "modified": "2019-09-11T03:38:26.790Z", + "contributors": [ + "SphinxKnight", + "mitelak", + "teoli", + "Rokuzo", + "splewako", + "mirekczechxmm", + "ethertank", + "yecril71pl", + "Bedi", + "Mgjbot", + "Ptak82", + "Takenbot", + "gandalf", + "Zwierz", + "Jan Dudek", + "Anonymous", + "Dria", + "Justdave" + ] + }, + "Web/CSS/-moz-box-align": { + "modified": "2019-03-23T23:46:56.187Z", + "contributors": [ + "teoli", + "Bedi", + "Mgjbot", + "Witia", + "Ptak82" + ] + }, + "Web/CSS/-moz-box-flex": { + "modified": "2019-03-23T23:46:57.781Z", + "contributors": [ + "teoli", + "Bedi", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/-moz-box-orient": { + "modified": "2019-03-23T23:45:19.839Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/-moz-box-pack": { + "modified": "2019-03-23T23:45:20.022Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Witia" + ] + }, + "Web/CSS/-moz-image-region": { + "modified": "2019-03-23T23:59:50.714Z", + "contributors": [ + "teoli", + "Filemon", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/-moz-outline-color": { + "modified": "2019-01-16T13:39:33.289Z", + "contributors": [ + "teoli", + "FredB", + "Mgjbot", + "Ptak82", + "Witia" + ] + }, + "Web/CSS/-moz-outline-radius": { + "modified": "2019-03-23T23:45:24.765Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/-moz-outline-radius-bottomleft": { + "modified": "2019-03-23T23:12:35.081Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/-moz-outline-radius-bottomright": { + "modified": "2019-03-23T23:29:51.587Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/-moz-outline-radius-topleft": { + "modified": "2019-03-23T22:49:53.395Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/:-moz-last-node": { + "modified": "2019-03-23T23:46:40.975Z", + "contributors": [ + "teoli", + "Abc" + ] + }, + "Web/CSS/:active": { + "modified": "2019-03-23T22:13:14.805Z", + "contributors": [ + "devMike" + ] + }, + "Web/CSS/:after": { + "modified": "2019-03-23T23:59:14.262Z", + "contributors": [ + "OnufryKlaczynski", + "Gut6", + "teoli", + "lukasz.jezierski", + "Mgjbot", + "Ptak82", + "Abc" + ] + }, + "Web/CSS/:before": { + "modified": "2019-03-23T23:59:14.388Z", + "contributors": [ + "RudyPL", + "teoli", + "lukasz.jezierski", + "Mgjbot", + "Ptak82", + "Abc" + ] + }, + "Web/CSS/:empty": { + "modified": "2019-03-23T23:51:52.904Z", + "contributors": [ + "wbamberg", + "teoli", + "Mgjbot", + "Abc", + "Marcoos" + ] + }, + "Web/CSS/:first-child": { + "modified": "2019-01-16T15:50:56.106Z", + "contributors": [ + "teoli", + "Mgjbot", + "Abc" + ] + }, + "Web/CSS/:first-letter": { + "modified": "2020-10-22T10:28:54.773Z", + "contributors": [ + "Maciej_Grycz", + "teoli", + "Abc" + ] + }, + "Web/CSS/:first-node": { + "modified": "2019-03-23T23:46:41.088Z", + "contributors": [ + "teoli", + "Abc" + ] + }, + "Web/CSS/:hover": { + "modified": "2020-10-15T22:02:36.417Z", + "contributors": [ + "darqoo" + ] + }, + "Web/CSS/:lang": { + "modified": "2019-03-23T23:46:41.214Z", + "contributors": [ + "teoli", + "Abc" + ] + }, + "Web/CSS/:last-child": { + "modified": "2019-01-16T15:59:53.475Z", + "contributors": [ + "teoli", + "Mgjbot", + "Abc" + ] + }, + "Web/CSS/:link": { + "modified": "2019-03-23T22:16:42.626Z", + "contributors": [ + "PolskiSwir345" + ] + }, + "Web/CSS/:not": { + "modified": "2020-09-11T05:10:49.171Z", + "contributors": [ + "gyzamaz", + "teoli", + "Abc", + "Ptak82" + ] + }, + "Web/CSS/:root": { + "modified": "2019-03-23T23:46:39.020Z", + "contributors": [ + "teoli", + "Abc" + ] + }, + "Web/CSS/@document": { + "modified": "2019-03-23T22:42:17.895Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Witia", + "Bedi" + ] + }, + "Web/CSS/@import": { + "modified": "2019-03-23T23:43:24.900Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/@media": { + "modified": "2019-03-23T23:45:53.850Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/@supports": { + "modified": "2019-03-23T23:11:14.907Z", + "contributors": [ + "fscholz", + "kamil09875", + "P0lip" + ] + }, + "Web/CSS/Attribute_selectors": { + "modified": "2020-10-15T22:29:59.639Z", + "contributors": [ + "n.lobodzinski" + ] + }, + "Web/CSS/CSS_Colors": { + "modified": "2019-03-23T22:10:25.437Z", + "contributors": [ + "Krenair" + ] + }, + "Web/CSS/CSS_Colors/Narzedzie_doboru_kolorow": { + "modified": "2020-10-30T23:18:14.820Z", + "contributors": [ + "makabeus", + "olkaboch" + ] + }, + "Web/CSS/CSS_Flexible_Box_Layout": { + "modified": "2019-03-18T21:39:51.689Z", + "contributors": [ + "andrzejkrecicki" + ] + }, + "Web/CSS/CSS_Grid_Layout": { + "modified": "2020-04-30T03:28:17.468Z", + "contributors": [ + "taboritis", + "Miszau", + "CreateWWW" + ] + }, + "Web/CSS/CSS_Grid_Layout/Auto-placement_in_CSS_Grid_Layout": { + "modified": "2020-03-02T06:06:47.611Z", + "contributors": [ + "Miszau" + ] + }, + "Web/CSS/CSS_Grid_Layout/Realizacja_typowych_ukladow_za_pomoca_ukladu_siatki_CSS": { + "modified": "2019-05-22T06:37:48.964Z", + "contributors": [ + "DominikKowalczyk", + "vbert" + ] + }, + "Web/CSS/CSS_Reference": { + "modified": "2019-03-24T00:14:16.483Z", + "contributors": [ + "teoli", + "lucasgrzella", + "ethertank", + "tregagnon", + "yecril71pl", + "zag19922", + "Witia", + "Mgjbot", + "Abc", + "Bedi", + "Killerowski", + "Ptak82" + ] + }, + "Web/CSS/CSS_Selectors": { + "modified": "2020-06-02T17:26:22.713Z", + "contributors": [ + "ramiy" + ] + }, + "Web/CSS/CSS_Selectors/Użycie_pseudoklasy_:target_w_selektorach": { + "modified": "2020-06-02T17:26:27.575Z", + "contributors": [ + "zuzabrzozowska" + ] + }, + "Web/CSS/Częste_pytania_o_CSS": { + "modified": "2020-07-16T22:25:45.500Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Witia", + "Ruby", + "gandalf", + "Listek", + "Zen" + ] + }, + "Web/CSS/Dziedziczenie": { + "modified": "2019-01-16T15:34:17.593Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia", + "Ptak82", + "Godlark", + "Bedi", + "Killerowski", + "Diablownik" + ] + }, + "Web/CSS/ID_selectors": { + "modified": "2019-03-23T22:16:24.379Z", + "contributors": [ + "ahdarpl", + "PolskiSwir345" + ] + }, + "Web/CSS/Inne_zasoby": { + "modified": "2019-01-16T16:10:29.072Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "gandalf", + "Dria" + ] + }, + "Web/CSS/Margin": { + "modified": "2020-10-15T21:09:12.393Z", + "contributors": [ + "trusohamn", + "wbamberg", + "Terite", + "fscholz", + "teoli", + "yecril71pl", + "hADeSik", + "Wasiqs" + ] + }, + "Web/CSS/Media_Queries": { + "modified": "2019-03-23T22:42:34.065Z", + "contributors": [ + "teoli" + ] + }, + "Web/CSS/Media_Queries/Using_media_queries": { + "modified": "2019-10-10T16:46:21.792Z", + "contributors": [ + "powelski", + "Hymtos", + "Sebastianz", + "mrstork", + "malayaleecoder", + "Asqan" + ] + }, + "Web/CSS/Mozilla_Extensions": { + "modified": "2019-03-24T00:14:13.075Z", + "contributors": [ + "ExE-Boss", + "SphinxKnight", + "teoli", + "tregagnon", + "fscholz", + "Filemon", + "Mgjbot", + "Ptak82", + "Bedi", + "Witia" + ] + }, + "Web/CSS/Na_początek": { + "modified": "2019-03-23T23:43:32.380Z", + "contributors": [ + "teoli", + "thebodzio", + "Ptak82", + "Verruckt", + "Mgjbot", + "gandalf", + "Takenbot", + "Zwierz", + "Witia", + "Anonymous", + "Marcoos", + "Dria" + ] + }, + "Web/CSS/Na_początek/Bloki": { + "modified": "2019-03-23T23:59:15.814Z", + "contributors": [ + "teoli", + "lukasz.jezierski", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Przemys", + "Anonymous", + "Witia" + ] + }, + "Web/CSS/Na_początek/Czym_jest_CSS": { + "modified": "2019-03-23T23:43:31.084Z", + "contributors": [ + "bazilazi", + "teoli", + "Verruckt", + "Mgjbot", + "gandalf", + "Takenbot", + "Ptak82", + "Taken", + "Witia", + "Anonymous", + "Marcoos", + "Dria" + ] + }, + "Web/CSS/Na_początek/Czytelny_CSS": { + "modified": "2019-03-23T23:47:41.199Z", + "contributors": [ + "teoli", + "Mgjbot", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Ruby", + "Sheppy", + "Anonymous", + "Witia" + ] + }, + "Web/CSS/Na_początek/Grafika_SVG": { + "modified": "2019-03-23T23:43:36.279Z", + "contributors": [ + "teoli", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Witia" + ] + }, + "Web/CSS/Na_początek/Jak_działa_CSS": { + "modified": "2019-03-23T23:43:25.888Z", + "contributors": [ + "teoli", + "Verruckt", + "Ptak82", + "Zibek", + "Mgjbot", + "gandalf", + "Takenbot", + "Ruby", + "Anonymous", + "Witia", + "Marcoos", + "Dria" + ] + }, + "Web/CSS/Na_początek/JavaScript": { + "modified": "2019-03-23T23:43:40.283Z", + "contributors": [ + "teoli", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Anonymous", + "Witia" + ] + }, + "Web/CSS/Na_początek/Kaskadowość_i_dziedziczenie": { + "modified": "2019-03-23T23:43:24.400Z", + "contributors": [ + "teoli", + "Verruckt", + "Mgjbot", + "gandalf", + "Takenbot", + "Ptak82", + "Sheppy", + "Witia", + "Anonymous" + ] + }, + "Web/CSS/Na_początek/Kolor": { + "modified": "2019-03-23T23:48:35.027Z", + "contributors": [ + "teoli", + "Mgjbot", + "Verruckt", + "Ptak82", + "gandalf", + "Takenbot", + "Ruby", + "Anonymous", + "Mikolaj" + ] + }, + "Web/CSS/Na_początek/Listy": { + "modified": "2019-03-23T23:44:37.412Z", + "contributors": [ + "teoli", + "Sheppy", + "Delor", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Anonymous", + "Witia" + ] + }, + "Web/CSS/Na_początek/Media": { + "modified": "2019-03-23T23:43:37.766Z", + "contributors": [ + "teoli", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Anonymous", + "Witia" + ] + }, + "Web/CSS/Na_początek/Po_co_używać_CSS": { + "modified": "2019-03-23T23:43:30.892Z", + "contributors": [ + "teoli", + "Verruckt", + "Mgjbot", + "gandalf", + "Takenbot", + "Ptak82", + "Taken", + "Ruby", + "Witia", + "Anonymous", + "Marcoos", + "Dria" + ] + }, + "Web/CSS/Na_początek/Selektory": { + "modified": "2019-03-23T23:59:17.263Z", + "contributors": [ + "Miras", + "teoli", + "lukasz.jezierski", + "Mgjbot", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Ruby", + "Cleriic", + "Witia", + "Anonymous" + ] + }, + "Web/CSS/Na_początek/Style_tekstowe": { + "modified": "2019-03-23T23:47:47.884Z", + "contributors": [ + "teoli", + "Mgjbot", + "Verruckt", + "Ptak82", + "Psz", + "gandalf", + "Takenbot", + "Sheppy", + "Witia", + "Anonymous" + ] + }, + "Web/CSS/Na_początek/Tables": { + "modified": "2019-03-23T23:43:41.150Z", + "contributors": [ + "teoli", + "ethertank", + "Verruckt", + "gandalf", + "Takenbot", + "Ptak82", + "Ruby", + "Anonymous", + "Witia" + ] + }, + "Web/CSS/Na_początek/Układ": { + "modified": "2019-03-23T23:44:36.876Z", + "contributors": [ + "teoli", + "Sheppy", + "Delor", + "Verruckt", + "Witia", + "gandalf", + "Takenbot", + "Ptak82", + "Anonymous" + ] + }, + "Web/CSS/Prywatnosc_i_znacznik_:visited": { + "modified": "2019-11-18T18:19:32.622Z", + "contributors": [ + "drm404" + ] + }, + "Web/CSS/Rozszerzenia_WebKit": { + "modified": "2019-03-23T22:13:44.275Z", + "contributors": [ + "drm404" + ] + }, + "Web/CSS/Selektor_klasy": { + "modified": "2019-03-18T21:17:20.719Z", + "contributors": [ + "PolskiSwir345" + ] + }, + "Web/CSS/Selektor_uniwersalny": { + "modified": "2020-10-15T22:09:36.180Z", + "contributors": [ + "ahdarpl" + ] + }, + "Web/CSS/Selektory_typu": { + "modified": "2020-10-15T21:17:26.155Z", + "contributors": [ + "ahdarpl", + "teoli", + "Witia", + "Abc" + ] + }, + "Web/CSS/Skrócone_deklaracje_CSS": { + "modified": "2019-01-16T16:16:14.250Z", + "contributors": [ + "teoli", + "gandalf", + "Ptak82" + ] + }, + "Web/CSS/Using_CSS_custom_properties": { + "modified": "2020-03-20T12:27:19.253Z", + "contributors": [ + "Andrzej_Gierszewski", + "chrisdavidmills", + "maciekpastuszka", + "Miras" + ] + }, + "Web/CSS/Wartość_początkowa": { + "modified": "2019-01-16T15:33:31.155Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Witia", + "Killerowski", + "Bedi" + ] + }, + "Web/CSS/appearance": { + "modified": "2019-03-23T23:34:43.549Z", + "contributors": [ + "ExE-Boss", + "teoli", + "Mgjbot", + "Rev", + "Witia" + ] + }, + "Web/CSS/background": { + "modified": "2019-03-24T00:08:43.942Z", + "contributors": [ + "fatherJS", + "LuciusLuWroc", + "teoli", + "SphinxKnight", + "Yuichiro", + "Witia", + "Mgjbot", + "Kjj2", + "Ptak82" + ] + }, + "Web/CSS/background-attachment": { + "modified": "2019-03-23T23:52:22.214Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/CSS/background-color": { + "modified": "2019-03-24T00:02:14.396Z", + "contributors": [ + "LuciusLuWroc", + "SphinxKnight", + "teoli", + "Yuichiro", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/CSS/background-image": { + "modified": "2019-03-23T23:52:27.446Z", + "contributors": [ + "teoli", + "SphinxKnight", + "Witia", + "ethertank", + "Sennin", + "Mgjbot", + "Ptak82" + ] + }, + "Web/CSS/background-origin": { + "modified": "2019-03-23T23:53:08.644Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Witia" + ] + }, + "Web/CSS/background-position": { + "modified": "2019-03-23T23:52:26.514Z", + "contributors": [ + "mrstork", + "teoli", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/CSS/background-size": { + "modified": "2020-10-15T22:05:20.506Z", + "contributors": [ + "krzmaciek" + ] + }, + "Web/CSS/border": { + "modified": "2019-03-24T00:08:45.150Z", + "contributors": [ + "wbamberg", + "Sebastianz", + "fscholz", + "teoli", + "Yuichiro", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-bottom": { + "modified": "2019-03-24T00:08:42.492Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Yuichiro", + "Witia", + "Ptak82", + "Mgjbot" + ] + }, + "Web/CSS/border-bottom-color": { + "modified": "2019-03-24T00:08:41.085Z", + "contributors": [ + "wbamberg", + "Sebastianz", + "fscholz", + "teoli", + "Yuichiro", + "Witia", + "Mgjbot" + ] + }, + "Web/CSS/border-bottom-left-radius": { + "modified": "2019-03-24T00:13:32.442Z", + "contributors": [ + "teoli", + "FredB", + "Yuichiro", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-bottom-right-radius": { + "modified": "2019-03-23T22:00:34.638Z", + "contributors": [ + "teoli", + "Yuichiro", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-bottom-style": { + "modified": "2019-03-23T23:07:16.600Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Yuichiro", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/CSS/border-bottom-width": { + "modified": "2019-04-09T10:53:28.059Z", + "contributors": [ + "kamilpikula", + "wbamberg", + "fscholz", + "teoli", + "Yuichiro", + "Witia", + "Mgjbot" + ] + }, + "Web/CSS/border-collapse": { + "modified": "2019-03-23T23:52:40.166Z", + "contributors": [ + "wbamberg", + "teoli", + "Witia", + "Ptak82", + "Mgjbot", + "Godlark" + ] + }, + "Web/CSS/border-color": { + "modified": "2019-03-24T00:08:39.388Z", + "contributors": [ + "wbamberg", + "Sebastianz", + "fscholz", + "teoli", + "Yuichiro", + "Ptak82", + "Mgjbot", + "Bedi", + "Witia" + ] + }, + "Web/CSS/border-left": { + "modified": "2019-03-24T00:08:40.071Z", + "contributors": [ + "fscholz", + "teoli", + "Yuichiro", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-left-color": { + "modified": "2019-03-24T00:08:42.040Z", + "contributors": [ + "wbamberg", + "teoli", + "Yuichiro", + "Ptak82", + "Peyn", + "Bedi", + "Mgjbot" + ] + }, + "Web/CSS/border-left-style": { + "modified": "2019-01-16T14:12:55.502Z", + "contributors": [ + "teoli", + "Yuichiro", + "Ptak82", + "Killerowski" + ] + }, + "Web/CSS/border-left-width": { + "modified": "2019-01-16T15:56:40.902Z", + "contributors": [ + "teoli", + "Killerowski" + ] + }, + "Web/CSS/border-radius": { + "modified": "2019-03-24T00:08:41.749Z", + "contributors": [ + "teoli", + "Yuichiro", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-right": { + "modified": "2019-03-24T00:08:37.527Z", + "contributors": [ + "fscholz", + "teoli", + "Yuichiro", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-right-color": { + "modified": "2019-01-17T10:27:47.472Z", + "contributors": [ + "teoli", + "Yuichiro", + "Mgjbot", + "Ptak82", + "Bedi" + ] + }, + "Web/CSS/border-right-style": { + "modified": "2019-01-16T14:13:03.482Z", + "contributors": [ + "teoli", + "Yuichiro", + "Ptak82", + "Killerowski" + ] + }, + "Web/CSS/border-right-width": { + "modified": "2019-01-16T14:12:36.775Z", + "contributors": [ + "teoli", + "Yuichiro", + "Ptak82", + "Killerowski" + ] + }, + "Web/CSS/border-spacing": { + "modified": "2019-03-23T23:52:36.355Z", + "contributors": [ + "wbamberg", + "teoli", + "Witia", + "Ptak82", + "Mgjbot", + "Peyn", + "Killerowski" + ] + }, + "Web/CSS/border-style": { + "modified": "2020-05-16T15:18:40.832Z", + "contributors": [ + "filip-rybczynski", + "wbamberg", + "teoli", + "Yuichiro", + "Ptak82", + "Mgjbot", + "Diablownik", + "Witia" + ] + }, + "Web/CSS/border-top": { + "modified": "2019-03-24T00:08:37.828Z", + "contributors": [ + "fscholz", + "teoli", + "Yuichiro", + "Witia", + "Mgjbot" + ] + }, + "Web/CSS/border-top-color": { + "modified": "2019-03-24T00:08:37.915Z", + "contributors": [ + "teoli", + "Yuichiro", + "Ptak82", + "Killerowski" + ] + }, + "Web/CSS/border-top-left-radius": { + "modified": "2019-03-24T00:13:33.183Z", + "contributors": [ + "teoli", + "FredB", + "Yuichiro", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-top-right-radius": { + "modified": "2019-03-24T00:13:34.878Z", + "contributors": [ + "teoli", + "FredB", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/border-top-style": { + "modified": "2019-01-16T14:13:03.908Z", + "contributors": [ + "teoli", + "Yuichiro", + "Killerowski", + "Ptak82" + ] + }, + "Web/CSS/border-top-width": { + "modified": "2019-01-16T14:12:55.405Z", + "contributors": [ + "teoli", + "Yuichiro", + "Killerowski" + ] + }, + "Web/CSS/border-width": { + "modified": "2019-03-24T00:08:40.511Z", + "contributors": [ + "wbamberg", + "mrstork", + "teoli", + "Yuichiro", + "Witia", + "Mgjbot", + "Killerowski" + ] + }, + "Web/CSS/bottom": { + "modified": "2019-03-23T23:52:36.650Z", + "contributors": [ + "fscholz", + "teoli", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/CSS/box-decoration-break": { + "modified": "2019-03-23T22:46:10.684Z", + "contributors": [ + "teoli" + ] + }, + "Web/CSS/box-direction": { + "modified": "2019-03-23T23:45:19.080Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/box-shadow": { + "modified": "2019-03-23T23:02:53.881Z", + "contributors": [ + "Saganowsky", + "Sebastianz", + "Prinz_Rana", + "JJay" + ] + }, + "Web/CSS/box-sizing": { + "modified": "2019-03-23T23:45:18.849Z", + "contributors": [ + "zly", + "teoli", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/clear": { + "modified": "2019-03-23T23:52:37.948Z", + "contributors": [ + "wbamberg", + "teoli", + "Witia", + "Tomekperlak", + "Ptak82", + "Earthcitizen", + "Rev", + "Mgjbot" + ] + }, + "Web/CSS/clip": { + "modified": "2019-03-23T23:52:26.202Z", + "contributors": [ + "wbamberg", + "mrstork", + "teoli", + "Witia", + "Ptak82" + ] + }, + "Web/CSS/color": { + "modified": "2019-01-16T15:32:14.428Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia", + "Elwiz", + "Killerowski", + "Bedi" + ] + }, + "Web/CSS/content": { + "modified": "2019-03-23T23:52:52.547Z", + "contributors": [ + "wbamberg", + "Guillaume-Heras", + "mrstork", + "malayaleecoder", + "teoli", + "Witia" + ] + }, + "Web/CSS/counter-increment": { + "modified": "2019-03-18T21:16:08.292Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "PablO", + "Ptak82" + ] + }, + "Web/CSS/counter-reset": { + "modified": "2019-03-23T23:52:36.024Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "PablO", + "Ptak82" + ] + }, + "Web/CSS/cursor": { + "modified": "2019-03-23T23:52:40.510Z", + "contributors": [ + "wbamberg", + "teoli", + "Ptak82", + "Witia", + "Mgjbot", + "Rev" + ] + }, + "Web/CSS/cursor/Użycie_wartości_URL_dla_własności_cursor": { + "modified": "2019-03-23T23:44:57.406Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "gandalf", + "Dria" + ] + }, + "Web/CSS/direction": { + "modified": "2019-01-17T08:07:54.772Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/display": { + "modified": "2019-03-23T23:36:34.292Z", + "contributors": [ + "wbamberg", + "mlewand", + "teoli", + "Witia", + "Mgjbot" + ] + }, + "Web/CSS/empty-cells": { + "modified": "2019-03-23T23:52:53.684Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Witia" + ] + }, + "Web/CSS/float": { + "modified": "2019-03-23T23:52:54.130Z", + "contributors": [ + "wbamberg", + "teoli", + "Witia" + ] + }, + "Web/CSS/font": { + "modified": "2019-03-23T23:53:26.482Z", + "contributors": [ + "wbamberg", + "emce", + "teoli", + "Mgjbot", + "Witia", + "Diablownik" + ] + }, + "Web/CSS/font-family": { + "modified": "2019-03-23T23:52:40.043Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Witia", + "Mgjbot", + "Diablownik" + ] + }, + "Web/CSS/font-size": { + "modified": "2020-10-15T21:15:42.947Z", + "contributors": [ + "SphinxKnight", + "teoli", + "splewako", + "Acrobot", + "Witia", + "Mgjbot", + "Killerowski" + ] + }, + "Web/CSS/font-size-adjust": { + "modified": "2019-03-23T23:52:53.150Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Witia" + ] + }, + "Web/CSS/font-stretch": { + "modified": "2019-03-24T00:00:16.636Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Gompka", + "Witia" + ] + }, + "Web/CSS/font-style": { + "modified": "2019-03-23T23:54:11.416Z", + "contributors": [ + "wbamberg", + "teoli", + "Witia" + ] + }, + "Web/CSS/font-variant": { + "modified": "2019-03-23T23:54:14.120Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Witia" + ] + }, + "Web/CSS/font-weight": { + "modified": "2019-03-23T23:54:14.828Z", + "contributors": [ + "SphinxKnight", + "fscholz", + "teoli", + "Witia" + ] + }, + "Web/CSS/grid": { + "modified": "2020-11-09T10:13:26.650Z", + "contributors": [ + "Miszau" + ] + }, + "Web/CSS/height": { + "modified": "2019-03-23T23:54:00.860Z", + "contributors": [ + "wbamberg", + "teoli", + "Witia" + ] + }, + "Web/CSS/ime-mode": { + "modified": "2019-03-24T00:00:40.496Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/CSS/initial": { + "modified": "2019-03-23T22:25:07.597Z", + "contributors": [ + "Miras" + ] + }, + "Web/CSS/letter-spacing": { + "modified": "2019-03-24T00:13:38.740Z", + "contributors": [ + "wbamberg", + "Jakubem", + "mrstork", + "fscholz", + "teoli", + "FredB", + "Witia" + ] + }, + "Web/CSS/list-style-image": { + "modified": "2019-03-18T21:16:09.927Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Witia", + "Mgjbot", + "Ptak82", + "PablO" + ] + }, + "Web/CSS/list-style-position": { + "modified": "2019-03-23T23:52:40.630Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Witia", + "Mgjbot", + "Ptak82", + "PablO" + ] + }, + "Web/CSS/list-style-type": { + "modified": "2019-03-23T23:52:39.653Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Witia", + "ethertank", + "Mgjbot", + "Ptak82", + "Diablownik", + "KrucaFuks", + "PablO" + ] + }, + "Web/CSS/opacity": { + "modified": "2019-03-24T00:11:58.397Z", + "contributors": [ + "teoli", + "gsc" + ] + }, + "Web/CSS/outline": { + "modified": "2019-03-24T00:13:39.485Z", + "contributors": [ + "teoli", + "ethertank", + "FredB", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/outline-offset": { + "modified": "2019-03-24T00:13:39.168Z", + "contributors": [ + "teoli", + "FredB", + "Mgjbot", + "Witia" + ] + }, + "Web/CSS/page-break-after": { + "modified": "2019-03-24T00:13:40.804Z", + "contributors": [ + "wbamberg", + "teoli", + "ethertank", + "yecril71pl" + ] + }, + "Web/CSS/right": { + "modified": "2020-10-15T22:20:49.762Z", + "contributors": [ + "miaumere" + ] + }, + "Web/CSS/text-transform": { + "modified": "2019-03-23T23:53:56.581Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "Witia" + ] + }, + "Web/CSS/transform-function": { + "modified": "2019-03-23T22:13:49.043Z", + "contributors": [ + "draccicgeb" + ] + }, + "Web/CSS/transform-function/matrix()": { + "modified": "2020-11-16T09:00:02.174Z", + "contributors": [ + "chrisdavidmills", + "drm404" + ] + }, + "Web/CSS/vertical-align": { + "modified": "2019-01-16T15:39:06.888Z", + "contributors": [ + "teoli", + "Witia", + "Diablownik", + "Ptak82", + "Mgjbot" + ] + }, + "Web/CSS/white-space": { + "modified": "2019-03-23T23:54:00.593Z", + "contributors": [ + "wbamberg", + "fscholz", + "teoli", + "SphinxKnight", + "Witia", + "FredB" + ] + }, + "Web/CSS/width": { + "modified": "2020-10-15T22:10:57.316Z", + "contributors": [ + "krezka", + "SphinxKnight", + "alien8923" + ] + }, + "Web/CSS/word-spacing": { + "modified": "2019-03-24T00:13:45.112Z", + "contributors": [ + "wbamberg", + "mrstork", + "fscholz", + "teoli", + "FredB", + "Witia" + ] + }, + "Web/CSS/z-index": { + "modified": "2020-10-15T21:15:56.356Z", + "contributors": [ + "kamilpikula", + "teoli", + "Witia", + "Bedi", + "Ptak82", + "Mgjbot" + ] + }, + "Web/Dostępność": { + "modified": "2019-09-09T14:17:31.130Z", + "contributors": [ + "SphinxKnight", + "rokthe888", + "teoli", + "Mgjbot", + "Ptak82", + "gandalf", + "Marcoos", + "Dria" + ] + }, + "Web/Dostępność/An_overview_of_accessible_web_applications_and_widgets": { + "modified": "2019-03-18T21:27:40.893Z", + "contributors": [ + "lukasz-otowski" + ] + }, + "Web/Dostępność/Keyboard-navigable_JavaScript_widgets": { + "modified": "2019-11-11T08:36:35.618Z", + "contributors": [ + "kamilbusko" + ] + }, + "Web/EXSLT": { + "modified": "2019-01-16T15:40:19.089Z", + "contributors": [ + "ExE-Boss", + "Flaneur", + "Ptak82", + "Ementos" + ] + }, + "Web/Guide": { + "modified": "2019-03-23T23:26:00.482Z", + "contributors": [ + "asbud", + "teoli", + "eswues", + "fejkfix", + "splewako", + "Sheppy" + ] + }, + "Web/Guide/AJAX": { + "modified": "2019-01-16T14:36:25.111Z", + "contributors": [ + "chrisdavidmills", + "Zwierz", + "Mgjbot", + "Ptak82", + "Staszyna", + "gandalf", + "Dria", + "Anonymous" + ] + }, + "Web/Guide/AJAX/Na_początek": { + "modified": "2019-03-23T23:54:17.192Z", + "contributors": [ + "chrisdavidmills", + "Mgjbot", + "Koder", + "Witekg", + "Ptak82", + "Taken", + "Staszyna", + "gandalf", + "Takenbot", + "Zwierz", + "Diskostu", + "Anonymous" + ] + }, + "Web/Guide/API": { + "modified": "2019-03-23T23:16:39.369Z", + "contributors": [ + "asbud", + "Sheppy" + ] + }, + "Web/Guide/CSS/Kolumny_CSS3": { + "modified": "2019-03-23T23:43:23.375Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Staszyna", + "gandalf" + ] + }, + "Web/Guide/CSS/Sprawdzanie_media_queries": { + "modified": "2019-03-23T23:13:56.266Z", + "contributors": [ + "P0lip" + ] + }, + "Web/Guide/Graphics": { + "modified": "2019-03-23T23:26:03.623Z", + "contributors": [ + "teoli", + "Rokuzo", + "splewako", + "jswisher" + ] + }, + "Web/Guide/HTML/Editable_content": { + "modified": "2019-03-23T22:02:03.451Z", + "contributors": [ + "chrisdavidmills" + ] + }, + "Web/Guide/Liczniki_CSS": { + "modified": "2019-03-23T23:43:40.448Z", + "contributors": [ + "Kuzirashi", + "teoli", + "Mgjbot", + "Ptak82", + "PablO" + ] + }, + "Web/Guide/Performance": { + "modified": "2019-03-23T23:11:21.113Z", + "contributors": [ + "Sheppy" + ] + }, + "Web/HTML": { + "modified": "2019-03-18T20:58:20.320Z", + "contributors": [ + "xd1010", + "plx5", + "dodekx", + "teoli", + "ethertank", + "DavidWalsh", + "Mgjbot", + "Ptak82", + "Zwierz", + "gandalf", + "Emil", + "Nerf", + "Dria", + "Anonymous", + "Justdave" + ] + }, + "Web/HTML(PL)": { + "modified": "2020-10-30T23:56:43.120Z", + "contributors": [ + "makabeus", + "SphinxKnight", + "DoctorLarva", + "SaviPrograms" + ] + }, + "Web/HTML(PL)/Tryb_Zgodnosci_oraz_Tryb_Standardow": { + "modified": "2019-05-22T10:42:54.513Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Web/HTML/Canvas": { + "modified": "2019-03-24T00:16:14.952Z", + "contributors": [ + "teoli", + "ethertank", + "dextra", + "fscholz", + "Mgjbot", + "Bedi", + "Ptak82" + ] + }, + "Web/HTML/Element": { + "modified": "2019-07-03T17:47:56.855Z", + "contributors": [ + "miaumere", + "xd1010", + "SphinxKnight", + "teoli", + "Ptak82", + "Mgjbot", + "Chrisraven", + "Witia", + "PablO", + "VooEak", + "Sullei" + ] + }, + "Web/HTML/Element/Heading_Elements": { + "modified": "2020-10-15T22:34:48.886Z", + "contributors": [ + "Martech42" + ] + }, + "Web/HTML/Element/Input": { + "modified": "2019-03-23T22:58:57.333Z", + "contributors": [ + "pkuczynski" + ] + }, + "Web/HTML/Element/Input/button": { + "modified": "2020-10-15T22:31:02.305Z", + "contributors": [ + "alanos101198" + ] + }, + "Web/HTML/Element/a": { + "modified": "2020-10-15T21:11:09.186Z", + "contributors": [ + "DoctorLarva", + "teoli", + "Ptak82", + "Flaneur", + "Mgjbot", + "Diablownik", + "Miczek", + "Witia", + "Chlopczyk" + ] + }, + "Web/HTML/Element/abbr": { + "modified": "2020-10-15T21:11:07.075Z", + "contributors": [ + "mweclaw", + "DoctorLarva", + "teoli", + "Ptak82", + "Witia", + "PablO" + ] + }, + "Web/HTML/Element/acronym": { + "modified": "2020-10-15T21:18:53.517Z", + "contributors": [ + "DoctorLarva", + "teoli", + "Witia", + "PablO", + "Ptak82", + "VooEak" + ] + }, + "Web/HTML/Element/address": { + "modified": "2020-10-15T21:18:19.318Z", + "contributors": [ + "DoctorLarva", + "teoli", + "Wimmer", + "Witia", + "PablO", + "Ptak82", + "Taken" + ] + }, + "Web/HTML/Element/applet": { + "modified": "2019-01-22T18:16:53.745Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Witia" + ] + }, + "Web/HTML/Element/aside": { + "modified": "2019-03-23T22:52:23.279Z", + "contributors": [ + "bzajcev", + "Royserg", + "buli", + "dianafa" + ] + }, + "Web/HTML/Element/b": { + "modified": "2019-03-24T00:12:35.612Z", + "contributors": [ + "ckyambitny", + "piecioshka", + "teoli", + "DD0101", + "Ptak82", + "Witia", + "PablO" + ] + }, + "Web/HTML/Element/base": { + "modified": "2020-10-15T21:18:53.027Z", + "contributors": [ + "DoctorLarva", + "teoli", + "Ptak82", + "Witia" + ] + }, + "Web/HTML/Element/basefont": { + "modified": "2019-01-22T18:17:17.900Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/bdo": { + "modified": "2019-03-18T21:12:41.027Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/bgsound": { + "modified": "2019-03-18T21:12:41.505Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/big": { + "modified": "2019-03-18T21:12:41.356Z", + "contributors": [ + "teoli", + "ethertank", + "Witia", + "PablO", + "Ptak82" + ] + }, + "Web/HTML/Element/blink": { + "modified": "2019-03-18T21:12:46.854Z", + "contributors": [ + "teoli", + "ethertank", + "Oskarre", + "Witia", + "Marcoos", + "PablO", + "Ptak82" + ] + }, + "Web/HTML/Element/blockquote": { + "modified": "2019-03-18T21:12:41.202Z", + "contributors": [ + "teoli", + "ethertank", + "Witia", + "Ptak82", + "PablO", + "VooEak" + ] + }, + "Web/HTML/Element/body": { + "modified": "2020-10-15T22:04:09.245Z", + "contributors": [ + "DoctorLarva", + "TheViolence" + ] + }, + "Web/HTML/Element/br": { + "modified": "2020-05-17T12:48:05.344Z", + "contributors": [ + "chrisdavidmills", + "teoli", + "ethertank", + "Chrisraven", + "Witia", + "PablO", + "Ptak82" + ] + }, + "Web/HTML/Element/center": { + "modified": "2019-03-18T21:12:43.021Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/cite": { + "modified": "2019-03-18T21:12:43.234Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/code": { + "modified": "2019-03-18T21:12:48.188Z", + "contributors": [ + "teoli", + "ethertank", + "xaky", + "Ptak82", + "Witia", + "PablO" + ] + }, + "Web/HTML/Element/comment": { + "modified": "2019-03-18T21:12:42.382Z", + "contributors": [ + "mklkj", + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/dd": { + "modified": "2019-01-22T18:16:58.770Z", + "contributors": [ + "teoli", + "Witia", + "PablO", + "Ptak82" + ] + }, + "Web/HTML/Element/details": { + "modified": "2019-03-23T22:08:06.664Z", + "contributors": [ + "PawelekS" + ] + }, + "Web/HTML/Element/div": { + "modified": "2020-10-15T22:05:09.972Z", + "contributors": [ + "Vactraj" + ] + }, + "Web/HTML/Element/dl": { + "modified": "2019-03-23T23:43:11.633Z", + "contributors": [ + "riren", + "teoli", + "Witia", + "PablO", + "Ptak82", + "VooEak" + ] + }, + "Web/HTML/Element/dt": { + "modified": "2019-01-22T18:16:54.805Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/em": { + "modified": "2019-01-22T18:16:58.767Z", + "contributors": [ + "teoli", + "Witia", + "PablO", + "VooEak", + "Ptak82" + ] + }, + "Web/HTML/Element/head": { + "modified": "2020-10-15T22:13:05.849Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Web/HTML/Element/hr": { + "modified": "2019-03-18T21:12:44.154Z", + "contributors": [ + "mmiszy", + "teoli", + "Chrisraven", + "Witia", + "DeyV", + "PablO", + "VooEak", + "Ptak82" + ] + }, + "Web/HTML/Element/html": { + "modified": "2020-10-15T21:18:49.847Z", + "contributors": [ + "DoctorLarva", + "teoli", + "Witia", + "PablO", + "Ptak82" + ] + }, + "Web/HTML/Element/i": { + "modified": "2019-03-18T21:12:48.359Z", + "contributors": [ + "teoli", + "lukasz.jezierski", + "Ptak82", + "Witia", + "PablO" + ] + }, + "Web/HTML/Element/iframe": { + "modified": "2020-10-15T22:25:26.006Z", + "contributors": [ + "drm404" + ] + }, + "Web/HTML/Element/kbd": { + "modified": "2019-03-18T21:12:41.856Z", + "contributors": [ + "teoli", + "Witia", + "Ptak82" + ] + }, + "Web/HTML/Element/li": { + "modified": "2019-01-22T18:16:42.410Z", + "contributors": [ + "teoli", + "Ptak82", + "Witia" + ] + }, + "Web/HTML/Element/link": { + "modified": "2020-10-15T21:16:11.088Z", + "contributors": [ + "DoctorLarva", + "teoli", + "Ptak82", + "Mgjbot", + "Witia" + ] + }, + "Web/HTML/Element/marquee": { + "modified": "2019-03-18T21:12:40.898Z", + "contributors": [ + "teoli", + "ethertank", + "Witia", + "PablO", + "Ptak82", + "VooEak" + ] + }, + "Web/HTML/Element/meta": { + "modified": "2020-10-15T22:33:44.945Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Web/HTML/Element/ol": { + "modified": "2019-03-18T21:12:42.613Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/p": { + "modified": "2019-03-23T23:43:14.955Z", + "contributors": [ + "riren", + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/q": { + "modified": "2019-03-18T21:12:43.446Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/ruby": { + "modified": "2020-10-15T22:17:22.321Z", + "contributors": [ + "gawronskijakub0" + ] + }, + "Web/HTML/Element/s": { + "modified": "2019-01-22T18:17:00.050Z", + "contributors": [ + "teoli", + "Ptak82", + "Witia", + "PablO", + "VooEak" + ] + }, + "Web/HTML/Element/samp": { + "modified": "2019-03-18T21:12:42.806Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/section": { + "modified": "2020-10-15T21:57:30.404Z", + "contributors": [ + "0ctothorp", + "PaG" + ] + }, + "Web/HTML/Element/small": { + "modified": "2019-03-18T21:12:40.707Z", + "contributors": [ + "teoli", + "Witia", + "PablO", + "Ptak82" + ] + }, + "Web/HTML/Element/span": { + "modified": "2019-03-18T20:55:12.696Z", + "contributors": [ + "makidenio", + "xd1010", + "teoli", + "EURO-DOM" + ] + }, + "Web/HTML/Element/strong": { + "modified": "2019-03-18T21:12:41.689Z", + "contributors": [ + "teoli", + "Witia", + "ethertank", + "Ptak82", + "PablO", + "VooEak" + ] + }, + "Web/HTML/Element/title": { + "modified": "2020-10-15T22:13:08.106Z", + "contributors": [ + "DoctorLarva" + ] + }, + "Web/HTML/Element/tt": { + "modified": "2019-03-18T21:12:41.995Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/ul": { + "modified": "2019-03-18T21:12:42.250Z", + "contributors": [ + "teoli", + "Witia" + ] + }, + "Web/HTML/Element/video": { + "modified": "2019-03-23T22:58:24.967Z", + "contributors": [ + "wbamberg", + "Trebor" + ] + }, + "Web/HTML/Elementy_blokowe": { + "modified": "2019-01-16T15:48:57.413Z", + "contributors": [ + "teoli", + "Mgjbot", + "Bedi", + "Ptak82", + "PablO" + ] + }, + "Web/HTML/Elementy_liniowe": { + "modified": "2019-01-16T15:48:50.807Z", + "contributors": [ + "teoli", + "Mgjbot", + "Witia", + "PablO" + ] + }, + "Web/HTML/Global_attributes": { + "modified": "2019-03-23T22:13:55.813Z", + "contributors": [ + "HynekMartin751", + "sideshowbarker" + ] + }, + "Web/HTML/Global_attributes/pisownia": { + "modified": "2020-10-15T22:28:58.291Z", + "contributors": [ + "jacobsfly" + ] + }, + "Web/HTML/Global_attributes/tabindex": { + "modified": "2019-03-23T22:14:07.727Z", + "contributors": [ + "drm404" + ] + }, + "Web/HTML/Kontrola_sprawdzania_pisowni_w_formularzach_HTML": { + "modified": "2019-03-23T23:54:20.997Z", + "contributors": [ + "teoli", + "Mgjbot", + "Bedi", + "Ptak82", + "VooEak" + ] + }, + "Web/HTML/Zarządzanie_fokusem_w_HTML": { + "modified": "2019-01-16T15:45:12.939Z", + "contributors": [ + "teoli", + "Flaneur" + ] + }, + "Web/HTML/Znaczenie_poprawnego_komentowania": { + "modified": "2019-03-23T23:53:28.126Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Nerf", + "Dria" + ] + }, + "Web/HTTP": { + "modified": "2019-11-25T15:44:56.508Z", + "contributors": [ + "drm404", + "sideshowbarker" + ] + }, + "Web/HTTP/Authentication": { + "modified": "2020-10-01T05:02:44.386Z", + "contributors": [ + "dannyplaster21" + ] + }, + "Web/HTTP/Ciasteczka": { + "modified": "2020-02-28T13:56:04.514Z", + "contributors": [ + "pgs-hszalwinski" + ] + }, + "Web/HTTP/HTTP_wiadomosci_ogólne": { + "modified": "2020-11-17T11:03:42.774Z", + "contributors": [ + "flp.tomczak", + "drm404" + ] + }, + "Web/HTTP/Headers": { + "modified": "2019-03-18T21:37:58.840Z", + "contributors": [ + "Alpha" + ] + }, + "Web/HTTP/Headers/Cache-Control": { + "modified": "2020-10-15T22:03:23.970Z", + "contributors": [ + "myhau", + "stopsopa" + ] + }, + "Web/HTTP/Headers/Data": { + "modified": "2020-10-15T22:11:47.444Z", + "contributors": [ + "kazek228" + ] + }, + "Web/HTTP/Headers/Referrer-Policy": { + "modified": "2020-10-15T22:25:31.082Z", + "contributors": [ + "drm404" + ] + }, + "Web/JavaScript": { + "modified": "2020-03-12T19:36:18.888Z", + "contributors": [ + "SphinxKnight", + "SuperMaksio", + "JWPB", + "mitelak", + "Errorino", + "mptak", + "asbud", + "Miras", + "teoli", + "Rokuzo", + "safjanowski", + "ggolebio", + "ethertank", + "kartofelek007", + "grzegorz", + "Mgjbot", + "Ptak82", + "Wilq32", + "Internauta1024A", + "Verruckt", + "gandalf", + "Marcoos", + "Ruby", + "Dria" + ] + }, + "Web/JavaScript/Domkniecia": { + "modified": "2020-06-02T12:29:00.476Z", + "contributors": [ + "PaulinaLL", + "iwonapiotrowska", + "pawelk92", + "dkarski", + "JWPB", + "kasiejro", + "mat-bi", + "Jakubem", + "Bx.", + "dodekx", + "lboratynski", + "ppuzio", + "kosanr1", + "ewape" + ] + }, + "Web/JavaScript/EventLoop": { + "modified": "2020-03-12T19:42:17.470Z", + "contributors": [ + "Qba91", + "przemdz", + "mieszczans", + "kpastuszka", + "cocafin" + ] + }, + "Web/JavaScript/Guide": { + "modified": "2020-03-12T19:38:33.908Z", + "contributors": [ + "malu", + "fscholz", + "teoli", + "splewako", + "gieerzetka", + "rakowaty" + ] + }, + "Web/JavaScript/Guide/Control_flow_and_error_handling": { + "modified": "2020-03-12T19:43:07.742Z", + "contributors": [ + "Konrad007", + "AndrzejSala", + "lukasz-jakub-adamczuk", + "Mateusz", + "maciejmarczak" + ] + }, + "Web/JavaScript/Guide/Funkcje": { + "modified": "2020-03-12T19:42:14.765Z", + "contributors": [ + "quart", + "andbroz", + "konradovsky", + "przemokon", + "pm093", + "thekyeZ", + "marekjedrzejewski" + ] + }, + "Web/JavaScript/Guide/Introduction": { + "modified": "2020-03-12T19:41:24.970Z", + "contributors": [ + "Alka", + "xolir", + "Mlodyemoka" + ] + }, + "Web/JavaScript/Guide/Iterators_and_Generators": { + "modified": "2020-03-12T19:45:59.758Z", + "contributors": [ + "ThinCan", + "CreateWWW", + "starsep", + "labs4apps" + ] + }, + "Web/JavaScript/Guide/Loops_and_iteration": { + "modified": "2020-03-12T19:42:57.032Z", + "contributors": [ + "Patryk-Holody", + "SphinxKnight", + "AndrzejSala", + "thekyeZ" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages": { + "modified": "2019-01-16T17:47:38.082Z", + "contributors": [ + "teoli", + "Sheppy" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5": { + "modified": "2019-03-24T00:00:51.351Z", + "contributors": [ + "fscholz", + "teoli", + "atlavis", + "Ptak82", + "Bedi", + "Marcoos", + "Diablownik", + "Mgjbot", + "Grzybu", + "Takenbot", + "gandalf" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Blok_instrukcji": { + "modified": "2019-01-16T16:17:02.444Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Definiowanie_funkcji": { + "modified": "2019-03-24T00:10:24.919Z", + "contributors": [ + "teoli", + "ethertank", + "szymie", + "Ptak82", + "Mgjbot", + "Tmk" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Dodawanie_obiektom_nowej_funkcjonalności.": { + "modified": "2019-03-24T00:08:07.633Z", + "contributors": [ + "teoli", + "bronek" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane": { + "modified": "2019-01-16T16:09:54.790Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_eval": { + "modified": "2019-01-16T16:11:30.514Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isFinite": { + "modified": "2019-01-16T16:17:02.297Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane/Funkcja_isNaN": { + "modified": "2019-01-16T16:17:02.471Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_Number_i_String": { + "modified": "2019-01-16T16:08:15.532Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_escape_i_unescape": { + "modified": "2019-01-16T16:02:25.853Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Funkcje_predefiniowane/Funkcje_parseInt_i_parseFloat": { + "modified": "2019-01-16T16:02:33.260Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_komentarzy": { + "modified": "2019-01-16T16:07:38.682Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_manipulacji_obiektem": { + "modified": "2019-03-23T23:58:58.242Z", + "contributors": [ + "teoli", + "Sheppy", + "diabelb", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_obsługi_wyjątków": { + "modified": "2019-03-23T23:45:52.366Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_obsługi_wyjątków/Instrukcja_throw": { + "modified": "2019-03-23T23:47:38.807Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_obsługi_wyjątków/Instrukcja_try...catch": { + "modified": "2019-03-23T23:45:58.480Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli": { + "modified": "2019-01-16T16:07:51.369Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "gandalf" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_break": { + "modified": "2019-03-23T23:41:40.626Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_continue": { + "modified": "2019-03-23T23:41:38.008Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_do_...while": { + "modified": "2019-03-23T23:41:39.022Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "gandalf" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_for": { + "modified": "2019-03-23T23:41:39.333Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Anonymous", + "gandalf" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_label": { + "modified": "2019-03-23T23:41:38.410Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_while": { + "modified": "2019-03-23T23:41:40.447Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_warunkowe": { + "modified": "2019-01-16T15:30:59.621Z", + "contributors": [ + "teoli", + "Internauta1024A", + "Kazio", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Literały": { + "modified": "2019-01-16T15:28:47.167Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82", + "Bedi", + "KrucaFuks", + "Takenbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/O_tym_przewodniku": { + "modified": "2019-03-23T23:53:44.039Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Sheppy", + "Toni555", + "Bedi", + "Killerowski", + "Diablownik", + "Ptak82", + "Internauta1024A", + "Marcoos", + "Markgo", + "Mgjbot", + "Takenbot", + "Ruby" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_i_własności": { + "modified": "2019-01-16T16:04:02.144Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Sheppy" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane": { + "modified": "2019-01-16T16:07:28.346Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array": { + "modified": "2019-03-23T23:59:36.858Z", + "contributors": [ + "teoli", + "Ptak82", + "Killerowski", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean": { + "modified": "2019-03-23T23:44:45.069Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date": { + "modified": "2019-03-23T23:46:16.814Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math": { + "modified": "2019-03-23T23:44:43.728Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number": { + "modified": "2019-03-23T23:46:03.097Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp": { + "modified": "2019-03-23T23:45:49.618Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String": { + "modified": "2019-03-23T23:47:58.296Z", + "contributors": [ + "teoli", + "Killerowski", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function": { + "modified": "2019-03-23T23:46:16.512Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory": { + "modified": "2019-01-16T15:45:03.435Z", + "contributors": [ + "teoli", + "Ptak82", + "Re set", + "Internauta1024A", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operacje_na_łańcuchach": { + "modified": "2019-01-16T15:45:18.599Z", + "contributors": [ + "teoli", + "Re set", + "Ptak82", + "Uryga", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operatory_arytmetyczne": { + "modified": "2019-01-16T15:45:06.608Z", + "contributors": [ + "teoli", + "Re set", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operatory_logiczne": { + "modified": "2019-01-16T15:45:11.361Z", + "contributors": [ + "teoli", + "Ptak82", + "Re set", + "Mgjbot", + "Anonymous" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operatory_porównania": { + "modified": "2019-01-16T15:45:08.791Z", + "contributors": [ + "teoli", + "Ptak82", + "Re set", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operatory_przypisania": { + "modified": "2019-03-23T23:54:17.982Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Re set" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operatory_specjalne": { + "modified": "2019-01-16T15:44:56.049Z", + "contributors": [ + "teoli", + "Re set", + "Stefan.power", + "Ptak82", + "Internauta1024A", + "Mgjbot", + "Grzybu" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Podgląd_klas_LiveConnect": { + "modified": "2019-01-16T16:02:33.640Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Powrót_dziedziczenia_własności": { + "modified": "2019-01-16T16:02:28.093Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Powrót_dziedziczenia_własności/Wartości_lokalne_vs._dziedziczone": { + "modified": "2019-01-16T15:51:13.285Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem": { + "modified": "2019-03-23T23:46:18.276Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Tworzenie_hierarchii": { + "modified": "2019-03-23T23:46:16.062Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Własności_obiektu": { + "modified": "2019-03-23T23:46:19.345Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Własności_obiektu/Dodawanie_własności": { + "modified": "2019-03-23T23:46:18.377Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Własności_obiektu/Dziedziczenie_własności": { + "modified": "2019-03-23T23:46:16.618Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_wyrażeniami_regularnymi/Globalne_wyszukiwanie,_wielkość_znaków,_wieloliniowe_wejście": { + "modified": "2019-01-16T15:31:49.852Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_wyrażeniami_regularnymi/Przykłady_wyrażeń_regularnych": { + "modified": "2019-03-23T23:45:59.795Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_zamknięciami": { + "modified": "2019-03-24T00:00:51.657Z", + "contributors": [ + "SphinxKnight", + "teoli", + "atlavis" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Stałe": { + "modified": "2019-01-16T14:49:38.955Z", + "contributors": [ + "teoli", + "Sheppy", + "falka", + "Ptak82", + "Re set", + "Mgjbot", + "KrucaFuks", + "Takenbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów": { + "modified": "2019-03-23T23:45:59.897Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Definiowanie_metod": { + "modified": "2019-03-23T23:46:15.620Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Definiowanie_własności_typu_obiektu": { + "modified": "2019-03-23T23:46:18.038Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Indeksowanie_własności_obiektu": { + "modified": "2019-03-23T23:46:17.556Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82", + "Takenbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Usuwanie_własności": { + "modified": "2019-03-23T23:46:19.791Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Anonymous" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Używanie_inicjacji_obiektu": { + "modified": "2019-03-24T00:04:36.846Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Sheppy", + "mi5tic", + "Mgjbot", + "Ptak82", + "Garbus" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Zastosowanie_'this'_do_obiektu_referencji": { + "modified": "2019-03-23T23:46:17.678Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Zastosowanie_konstruktorów_funkcji": { + "modified": "2019-03-23T23:46:18.156Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_wyrażenia_regularnego": { + "modified": "2019-03-23T23:50:53.064Z", + "contributors": [ + "teoli", + "Re set", + "Ptak82", + "Uryga", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Unicode": { + "modified": "2019-01-16T15:45:06.657Z", + "contributors": [ + "teoli", + "Re set", + "Mgjbot", + "Bedi", + "Internauta1024A", + "Ptak82", + "Leoniq" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Wartości": { + "modified": "2019-01-16T15:28:38.496Z", + "contributors": [ + "teoli", + "Mgjbot", + "Re set", + "Ptak82", + "KrucaFuks", + "Takenbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Wyrażenia": { + "modified": "2019-01-16T15:45:05.450Z", + "contributors": [ + "teoli", + "Ptak82", + "Re set", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Wywołanie_funkcji": { + "modified": "2019-03-23T23:59:05.678Z", + "contributors": [ + "Mikad", + "teoli", + "Sheppy", + "diabelb", + "Ptak82", + "Bedi", + "Mgjbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Zapisywanie_wzorca_wyrażenia_regularnego": { + "modified": "2019-03-23T23:50:55.709Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Ptak82", + "Re set", + "Uryga", + "Diablownik", + "Takenbot", + "Keicam", + "Marcin Otorowski" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Zastosowanie_obiektu_arguments": { + "modified": "2019-03-23T23:44:05.766Z", + "contributors": [ + "teoli", + "Ptak82", + "Sheppy", + "Mgjbot", + "Takenbot" + ] + }, + "Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Zmienne": { + "modified": "2019-01-16T14:50:00.178Z", + "contributors": [ + "teoli", + "Sheppy", + "falka", + "Mgjbot", + "Re set", + "Ptak82", + "Internauta1024A", + "Bratmn", + "KrucaFuks", + "Takenbot" + ] + }, + "Web/JavaScript/Guide/Składnia_i_typy": { + "modified": "2020-03-12T19:42:17.279Z", + "contributors": [ + "danrakh", + "Konrad007", + "cybor0", + "lukasz-jakub-adamczuk", + "Miras", + "AndrzejSala", + "xolir", + "dolphugly", + "KamilDuda01", + "marekjedrzejewski" + ] + }, + "Web/JavaScript/Guide/o_tym_przewodniku": { + "modified": "2019-05-16T15:03:06.854Z", + "contributors": [ + "wbamberg", + "teoli", + "gieerzetka" + ] + }, + "Web/JavaScript/Na_początek": { + "modified": "2019-03-23T23:54:32.221Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/O_JavaScript": { + "modified": "2020-03-12T19:46:50.697Z", + "contributors": [ + "pa-uli-na" + ] + }, + "Web/JavaScript/Ponowne_wprowadzenie_do_JavaScript": { + "modified": "2020-03-12T19:47:50.546Z", + "contributors": [ + "kanapka94", + "edgyFAT", + "xbravadox", + "r0v", + "joanna-by", + "Poftorek", + "JKarkosza" + ] + }, + "Web/JavaScript/Reference/Classes": { + "modified": "2020-10-29T06:45:58.471Z", + "contributors": [ + "michalmarchewczyk", + "Ojdana11", + "freszyk", + "MichalKarbownik", + "artmiron", + "labs4apps", + "gavinhungry" + ] + }, + "Web/JavaScript/Reference/Classes/Konstruktor": { + "modified": "2020-10-15T21:53:33.839Z", + "contributors": [ + "michalmarchewczyk", + "Anonymous", + "km4", + "devMike" + ] + }, + "Web/JavaScript/Reference/Classes/Private_class_fields": { + "modified": "2020-10-22T08:52:10.875Z", + "contributors": [ + "michalmarchewczyk" + ] + }, + "Web/JavaScript/Reference/Classes/Public_class_fields": { + "modified": "2020-10-15T22:35:06.679Z", + "contributors": [ + "michalmarchewczyk" + ] + }, + "Web/JavaScript/Reference/Classes/extends": { + "modified": "2020-10-15T22:35:04.841Z", + "contributors": [ + "michalmarchewczyk" + ] + }, + "Web/JavaScript/Reference/Classes/static": { + "modified": "2020-10-21T19:35:52.117Z", + "contributors": [ + "michalmarchewczyk", + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors": { + "modified": "2020-03-12T19:45:52.052Z", + "contributors": [ + "devMike", + "Sheppy" + ] + }, + "Web/JavaScript/Reference/Errors/Brakujący_średnik_po_własności_id": { + "modified": "2020-03-12T19:47:17.965Z", + "contributors": [ + "BrittleHeart" + ] + }, + "Web/JavaScript/Reference/Errors/Invalid_array_length": { + "modified": "2020-03-12T19:49:38.261Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/Invalid_date": { + "modified": "2020-11-22T22:16:46.988Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/JSON_bad_parse": { + "modified": "2020-03-12T19:49:40.890Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/Missing_curly_after_function_body": { + "modified": "2020-11-22T22:43:32.569Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/Missing_initializer_in_const": { + "modified": "2020-03-12T19:49:39.699Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/Missing_parenthesis_after_argument_list": { + "modified": "2020-11-22T22:32:16.181Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/Missing_semicolon_before_statement": { + "modified": "2020-03-31T15:55:43.969Z", + "contributors": [ + "kepka7044", + "Comandorekk" + ] + }, + "Web/JavaScript/Reference/Errors/More_arguments_needed": { + "modified": "2020-03-12T19:46:20.545Z", + "contributors": [ + "krzmig", + "saulgajda" + ] + }, + "Web/JavaScript/Reference/Errors/Not_a_function": { + "modified": "2020-03-12T19:46:20.885Z", + "contributors": [ + "Vvitek" + ] + }, + "Web/JavaScript/Reference/Errors/Not_defined": { + "modified": "2020-03-12T19:45:53.813Z", + "contributors": [ + "saulgajda", + "szopenkrk" + ] + }, + "Web/JavaScript/Reference/Errors/Property_access_denied": { + "modified": "2020-10-26T12:04:59.811Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Errors/Unexpected_type": { + "modified": "2020-03-12T19:46:02.310Z", + "contributors": [ + "devMike" + ] + }, + "Web/JavaScript/Reference/Functions": { + "modified": "2020-03-12T19:45:21.066Z", + "contributors": [ + "wilfreddesert" + ] + }, + "Web/JavaScript/Reference/Functions/Funkcje_strzalkowe": { + "modified": "2020-10-15T21:59:06.310Z", + "contributors": [ + "piotrjanczak", + "jangromko", + "ppuzio" + ] + }, + "Web/JavaScript/Reference/Functions/Parametry_domyślne": { + "modified": "2020-10-15T22:15:13.631Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Reference/Functions/get": { + "modified": "2020-03-12T19:45:32.396Z", + "contributors": [ + "Rednaxela700", + "pawelk92", + "lukaszewczak", + "pkubowicz", + "broslukasz" + ] + }, + "Web/JavaScript/Reference/Functions/set": { + "modified": "2020-10-15T22:11:19.769Z", + "contributors": [ + "jedzej" + ] + }, + "Web/JavaScript/Referencje": { + "modified": "2020-03-12T19:37:41.078Z", + "contributors": [ + "asbud", + "teoli", + "Mgjbot", + "Internauta1024A", + "Diablownik", + "Ptak82", + "Takenbot", + "gandalf", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Funkcje/arguments": { + "modified": "2019-01-16T15:45:04.595Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Marcoos", + "Sheppy", + "telendt", + "Internauta1024A", + "Ptak82", + "Bamber" + ] + }, + "Web/JavaScript/Referencje/Funkcje/arguments/callee": { + "modified": "2019-01-16T15:40:18.334Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82", + "Marcoos", + "gandalf" + ] + }, + "Web/JavaScript/Referencje/Funkcje/arguments/length": { + "modified": "2019-01-16T15:41:27.370Z", + "contributors": [ + "teoli", + "Mgjbot", + "Marcoos", + "Diablownik", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Komentarz": { + "modified": "2019-03-23T23:46:42.565Z", + "contributors": [ + "teoli", + "Sheppy", + "ElKreciko", + "Mgjbot", + "Internauta1024A", + "Marcoos", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/O_tym_dokumencie": { + "modified": "2020-10-29T15:16:04.046Z", + "contributors": [ + "michalmarchewczyk", + "asbud", + "teoli", + "Mgjbot", + "Odder", + "WalkerPL", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/O_tym_dokumencie/Konwencje_formatowania_tekstu": { + "modified": "2019-03-24T00:03:10.475Z", + "contributors": [ + "teoli", + "fscholz", + "Marcoos", + "Ptak82", + "Mgjbot", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty": { + "modified": "2020-03-12T19:37:39.285Z", + "contributors": [ + "mitelak", + "asbud", + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array": { + "modified": "2020-03-03T12:48:14.352Z", + "contributors": [ + "1MrHous1", + "SurmaAa", + "wbamberg", + "stuniel", + "SlaWitDev", + "krawieck", + "Tidu", + "RadekRo", + "zpantalyku", + "teoli", + "splewako", + "mirekczechxmm", + "KrzysztofKruk", + "Chrisraven", + "Ptak82", + "tybulewicz", + "Staszyna", + "Internauta1024A", + "Mgjbot", + "gandalf", + "VooEak", + "Marcoos", + "Anonymous" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/Reduce": { + "modified": "2019-11-09T19:25:57.362Z", + "contributors": [ + "apiczkens", + "the0ffh", + "sqeeswy", + "kamce", + "thigrand" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/ReduceRight": { + "modified": "2020-10-15T22:28:04.989Z", + "contributors": [ + "martraw", + "mayacode" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/concat": { + "modified": "2019-03-23T23:47:21.906Z", + "contributors": [ + "teoli", + "Mgjbot", + "Marcoos", + "Staszyna", + "Internauta1024A", + "Sheppy", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/copyWithin": { + "modified": "2020-10-26T11:54:47.946Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/entries": { + "modified": "2020-10-15T22:07:30.753Z", + "contributors": [ + "kucharzgotuje" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/every": { + "modified": "2019-03-23T23:49:40.637Z", + "contributors": [ + "tomabr", + "teoli", + "Mgjbot", + "telendt", + "Marcoos", + "Ptak82", + "Sheppy", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/fill": { + "modified": "2019-03-23T22:50:50.966Z", + "contributors": [ + "emero", + "PawelPapuli", + "SphinxKnight", + "quim" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/filter": { + "modified": "2019-03-18T20:34:27.512Z", + "contributors": [ + "KamilaWalkowiak", + "romprzy", + "kanapka94", + "tues", + "zpantalyku", + "krzosik", + "robadev", + "alexfluger", + "teoli", + "michail_w", + "Krzysiek6", + "Mgjbot", + "Marcoos", + "telendt", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/find": { + "modified": "2020-09-25T21:17:08.283Z", + "contributors": [ + "jangromko", + "SphinxKnight", + "TeoTN", + "gpluta", + "kdex", + "svantetic", + "karol-f", + "thigrand" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/findIndex": { + "modified": "2019-03-23T22:07:32.543Z", + "contributors": [ + "Snieezy" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/flat": { + "modified": "2020-10-15T22:19:13.003Z", + "contributors": [ + "KonradLinkowski", + "raszta" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/forEach": { + "modified": "2019-09-23T06:35:11.871Z", + "contributors": [ + "OJezu", + "zibra", + "teoli", + "Mgjbot", + "ethertank", + "Robson", + "telendt", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/from": { + "modified": "2019-03-23T22:31:40.624Z", + "contributors": [ + "kdex", + "Maciej_Grycz", + "kamce", + "aquz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/includes": { + "modified": "2020-10-15T21:41:30.374Z", + "contributors": [ + "Nux", + "wbamberg", + "DzikiChrzan" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/indexOf": { + "modified": "2019-03-23T23:46:42.451Z", + "contributors": [ + "teoli", + "telendt", + "Ptak82", + "Mgjbot", + "Sheppy" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/isArray": { + "modified": "2019-03-23T22:54:42.353Z", + "contributors": [ + "kwarpechowski", + "tomabr" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/join": { + "modified": "2019-03-23T23:48:50.993Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Internauta1024A", + "Staszyna", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/keys": { + "modified": "2019-03-23T22:15:56.755Z", + "contributors": [ + "buoto" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/lastIndexOf": { + "modified": "2019-03-23T23:47:29.921Z", + "contributors": [ + "teoli", + "Mgjbot", + "telendt", + "Marcoos", + "Sheppy", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/length": { + "modified": "2019-03-23T23:47:25.247Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Ptak82", + "Sheppy" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/map": { + "modified": "2019-03-23T23:49:38.387Z", + "contributors": [ + "michalwarda", + "halicki", + "cojack", + "Miras", + "nix1", + "teoli", + "Mgjbot", + "Ptak82", + "tybulewicz", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/of": { + "modified": "2020-10-15T22:10:00.043Z", + "contributors": [ + "mat-bi" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/pop": { + "modified": "2019-03-23T23:47:25.069Z", + "contributors": [ + "asikora", + "teoli", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/prototype": { + "modified": "2019-07-11T20:14:55.409Z", + "contributors": [ + "kleyu", + "teoli", + "fscholz", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/push": { + "modified": "2019-03-23T23:47:25.462Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "telendt", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/reverse": { + "modified": "2019-03-23T23:47:24.313Z", + "contributors": [ + "teoli", + "Mgjbot", + "Marcoos", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/shift": { + "modified": "2019-06-30T05:28:38.117Z", + "contributors": [ + "Krysik", + "teoli", + "tomecko", + "Mgjbot", + "telendt", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/slice": { + "modified": "2019-03-23T23:47:22.485Z", + "contributors": [ + "malu", + "teoli", + "michalmarkowski", + "Mgjbot", + "Ptak82", + "telendt", + "Internauta1024A", + "Sheppy" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/some": { + "modified": "2019-03-23T23:49:40.896Z", + "contributors": [ + "getup10g", + "Bjornskjald", + "alexfluger", + "teoli", + "Mgjbot", + "Internauta1024A", + "Ptak82", + "tybulewicz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/sort": { + "modified": "2019-03-23T23:47:26.710Z", + "contributors": [ + "Bx.", + "el-dide", + "teoli", + "Mgjbot", + "tybulewicz", + "Internauta1024A", + "Diablownik", + "Sheppy", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/splice": { + "modified": "2019-03-23T23:47:26.002Z", + "contributors": [ + "emero", + "Wayofthesin", + "kaczor1984", + "achwedyk", + "teoli", + "Mgjbot", + "telendt", + "Ptak82", + "Internauta1024A", + "Sheppy" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/toLocaleString": { + "modified": "2020-11-11T13:31:59.409Z", + "contributors": [ + "szczerski", + "kwarpechowski" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/toSource": { + "modified": "2019-03-23T23:49:50.954Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/toString": { + "modified": "2019-03-23T23:47:24.621Z", + "contributors": [ + "kwarpechowski", + "teoli", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/unshift": { + "modified": "2019-03-23T23:47:27.035Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Internauta1024A", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Array/values": { + "modified": "2020-10-15T22:00:51.518Z", + "contributors": [ + "kasztan" + ] + }, + "Web/JavaScript/Referencje/Obiekty/ArrayBuffer": { + "modified": "2019-03-23T22:14:05.315Z", + "contributors": [ + "drm404" + ] + }, + "Web/JavaScript/Referencje/Obiekty/BigInt": { + "modified": "2020-10-15T22:27:46.176Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/BigInt/asIntN": { + "modified": "2020-10-15T22:29:22.063Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/BigInt/asUintN": { + "modified": "2020-10-15T22:29:21.176Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/BigInt/toString": { + "modified": "2020-10-15T22:29:27.321Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/BigInt/valueOf": { + "modified": "2020-10-15T22:30:01.749Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Boolean": { + "modified": "2019-03-23T23:51:54.713Z", + "contributors": [ + "kanapka94", + "wbamberg", + "teoli", + "Diablownik", + "Internauta1024A", + "Ptak82", + "Mgjbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Boolean/prototype": { + "modified": "2019-03-23T23:58:08.032Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Diablownik", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Boolean/toSource": { + "modified": "2019-03-23T23:58:05.520Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Ptak82", + "telendt", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Boolean/toString": { + "modified": "2019-03-23T23:58:09.826Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Boolean/valueOf": { + "modified": "2019-03-23T23:58:19.030Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/DataView": { + "modified": "2020-10-15T21:57:36.691Z", + "contributors": [ + "meron1122" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date": { + "modified": "2019-06-11T10:18:58.847Z", + "contributors": [ + "wojexe", + "dkoprowski", + "wbamberg", + "teoli", + "Witia", + "Internauta1024A", + "telendt", + "Mgjbot", + "Ptak82", + "Jfkpl", + "VooEak", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/UTC": { + "modified": "2019-03-23T23:58:12.265Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "telendt", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/constructor": { + "modified": "2019-01-16T14:55:06.466Z", + "contributors": [ + "teoli", + "Witia", + "Marcoos", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getDate": { + "modified": "2019-03-18T20:39:59.605Z", + "contributors": [ + "teoli", + "Mgjbot", + "telendt", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getDay": { + "modified": "2019-03-23T23:47:14.453Z", + "contributors": [ + "dloranc", + "teoli", + "Mgjbot", + "telendt", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getFullYear": { + "modified": "2019-03-23T23:58:09.308Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getHours": { + "modified": "2019-03-23T23:58:08.740Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getMilliseconds": { + "modified": "2019-03-23T23:58:07.015Z", + "contributors": [ + "teoli", + "Witia", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getMinutes": { + "modified": "2019-03-23T23:58:11.611Z", + "contributors": [ + "teoli", + "Niewiado", + "ethertank", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getMonth": { + "modified": "2019-03-23T23:58:11.021Z", + "contributors": [ + "teoli", + "Niewiado", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getSeconds": { + "modified": "2019-03-23T23:58:07.116Z", + "contributors": [ + "dloranc", + "teoli", + "Niewiado", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getTime": { + "modified": "2019-03-23T23:58:10.392Z", + "contributors": [ + "teoli", + "Niewiado", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getTimezoneOffset": { + "modified": "2019-03-23T23:58:10.620Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCDate": { + "modified": "2019-03-18T20:40:45.398Z", + "contributors": [ + "kdragowski", + "Vrq", + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCDay": { + "modified": "2019-03-23T23:58:06.532Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCFullYear": { + "modified": "2019-03-23T23:58:11.153Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCHours": { + "modified": "2019-03-23T23:58:11.930Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCMilliseconds": { + "modified": "2019-03-23T23:58:11.828Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCMinutes": { + "modified": "2019-03-23T23:58:11.716Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCMonth": { + "modified": "2019-03-23T23:58:09.067Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getUTCSeconds": { + "modified": "2019-03-23T23:58:13.586Z", + "contributors": [ + "teoli", + "Niewiado", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/getYear": { + "modified": "2019-03-23T23:58:08.162Z", + "contributors": [ + "teoli", + "Niewiado", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/now": { + "modified": "2019-03-23T23:51:17.289Z", + "contributors": [ + "mibac", + "teoli", + "Diablownik", + "ethertank", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/parse": { + "modified": "2019-03-18T20:39:59.791Z", + "contributors": [ + "teoli", + "Niewiado", + "Mgjbot", + "Internauta1024A", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/prototype": { + "modified": "2019-03-23T23:53:54.438Z", + "contributors": [ + "teoli", + "Mgjbot", + "Internauta1024A", + "Taken", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setDate": { + "modified": "2019-03-18T20:39:59.968Z", + "contributors": [ + "teoli", + "Niewiado", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setFullYear": { + "modified": "2019-03-23T23:58:07.348Z", + "contributors": [ + "teoli", + "gandalf", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setHours": { + "modified": "2019-08-28T16:11:14.990Z", + "contributors": [ + "radamuspl", + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setMilliseconds": { + "modified": "2019-03-23T23:43:30.096Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setMinutes": { + "modified": "2019-03-23T23:43:25.746Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setMonth": { + "modified": "2019-03-23T23:43:31.314Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setSeconds": { + "modified": "2019-03-23T23:43:26.818Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setTime": { + "modified": "2019-03-23T23:43:26.218Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCDate": { + "modified": "2019-03-23T23:43:19.551Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCFullYear": { + "modified": "2019-03-23T23:43:22.591Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCHours": { + "modified": "2019-03-23T23:43:27.771Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCMilliseconds": { + "modified": "2019-03-23T23:43:32.840Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCMinutes": { + "modified": "2019-03-23T23:43:24.515Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCMonth": { + "modified": "2019-03-23T23:43:31.194Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setUTCSeconds": { + "modified": "2019-03-23T23:43:28.708Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/setYear": { + "modified": "2019-03-23T23:43:29.991Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toGMTString": { + "modified": "2019-03-23T23:43:24.162Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toJSON": { + "modified": "2020-10-15T22:09:56.845Z", + "contributors": [ + "chlebek" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toLocaleDateString": { + "modified": "2019-03-18T20:39:59.044Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toLocaleString": { + "modified": "2019-03-18T20:39:59.243Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toLocaleTimeString": { + "modified": "2019-03-23T23:43:29.100Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toSource": { + "modified": "2019-03-23T23:43:26.646Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toString": { + "modified": "2019-03-23T23:46:38.804Z", + "contributors": [ + "teoli", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/toUTCString": { + "modified": "2019-03-23T23:43:28.172Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Date/valueOf": { + "modified": "2019-03-23T23:43:28.602Z", + "contributors": [ + "teoli", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error": { + "modified": "2020-10-15T21:37:48.928Z", + "contributors": [ + "ZiomaleQ", + "mitelak", + "fscholz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/Stack": { + "modified": "2020-10-15T22:30:56.297Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/columnNumber": { + "modified": "2019-03-23T22:50:40.876Z", + "contributors": [ + "teoli", + "fscholz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/fileName": { + "modified": "2020-10-15T22:30:02.676Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/lineNumber": { + "modified": "2020-10-15T22:30:02.665Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/message": { + "modified": "2019-03-23T22:51:09.554Z", + "contributors": [ + "fscholz", + "adam-tokarski" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/name": { + "modified": "2019-03-23T22:51:10.374Z", + "contributors": [ + "fscholz", + "adam-tokarski" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/prototype": { + "modified": "2020-10-15T21:37:55.917Z", + "contributors": [ + "mitelak", + "fscholz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/toSource": { + "modified": "2020-10-15T22:32:18.167Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Error/toString": { + "modified": "2020-10-15T22:32:18.562Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/EvalError": { + "modified": "2020-10-15T22:33:25.487Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function": { + "modified": "2019-03-23T22:57:36.964Z", + "contributors": [ + "pkubowicz", + "thigrand", + "teoli" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/apply": { + "modified": "2019-03-23T22:26:19.022Z", + "contributors": [ + "jangromko", + "pceuropa" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/arguments": { + "modified": "2019-03-23T23:51:16.714Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/bind": { + "modified": "2020-11-29T17:45:12.082Z", + "contributors": [ + "derekqq", + "RobertGelu" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/caller": { + "modified": "2019-03-23T23:54:03.104Z", + "contributors": [ + "teoli", + "Mgjbot", + "Marcoos", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/displayName": { + "modified": "2019-03-23T22:33:56.919Z", + "contributors": [ + "teoli", + "sefel" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/length": { + "modified": "2019-03-23T23:53:59.423Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Function/toString": { + "modified": "2019-03-23T23:54:00.212Z", + "contributors": [ + "teoli", + "ethertank", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Generator": { + "modified": "2019-03-23T22:15:20.748Z", + "contributors": [ + "labs4apps" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Infinity": { + "modified": "2020-03-12T19:37:41.172Z", + "contributors": [ + "gaazkam", + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/JSON": { + "modified": "2020-10-15T22:24:07.363Z", + "contributors": [ + "krupinskij" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map": { + "modified": "2020-09-01T10:21:27.914Z", + "contributors": [ + "struginskij", + "KonradLinkowski", + "108adams", + "Asek90", + "xgarrett", + "broslukasz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/clear": { + "modified": "2020-10-15T22:01:01.515Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/delete": { + "modified": "2020-10-15T22:01:01.152Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/entries": { + "modified": "2019-03-18T21:42:37.088Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/forEach": { + "modified": "2020-10-15T22:01:04.417Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/get": { + "modified": "2020-10-15T22:01:06.016Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/has": { + "modified": "2020-10-15T22:01:05.981Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/keys": { + "modified": "2020-10-15T22:01:06.126Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/set": { + "modified": "2020-10-15T22:01:06.173Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/size": { + "modified": "2020-10-15T22:17:26.741Z", + "contributors": [ + "tipakA" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Map/values": { + "modified": "2020-10-15T22:01:06.933Z", + "contributors": [ + "MarekHuckmann" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math": { + "modified": "2019-11-16T16:52:10.805Z", + "contributors": [ + "Iicytower", + "teoli", + "Mgjbot", + "Balon", + "Ptak82", + "Faxe", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/E": { + "modified": "2019-03-23T23:47:55.039Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/LN10": { + "modified": "2019-03-23T23:47:54.538Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/LN2": { + "modified": "2019-03-23T23:47:52.019Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/LOG10E": { + "modified": "2019-03-23T23:47:59.792Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/LOG2E": { + "modified": "2019-03-23T23:47:53.913Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/PI": { + "modified": "2019-03-23T23:47:56.906Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/SQRT1_2": { + "modified": "2019-03-23T23:47:57.323Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/SQRT2": { + "modified": "2019-03-23T23:47:59.037Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/abs": { + "modified": "2019-03-23T23:47:55.610Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/acos": { + "modified": "2019-03-23T23:47:58.749Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/asin": { + "modified": "2019-03-23T23:47:52.375Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/atan": { + "modified": "2019-03-23T23:47:58.908Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/atan2": { + "modified": "2019-03-23T23:48:00.596Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/ceil": { + "modified": "2019-03-23T23:47:58.042Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/cos": { + "modified": "2019-03-23T23:48:06.241Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/exp": { + "modified": "2019-03-23T23:48:06.373Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/floor": { + "modified": "2019-03-23T23:48:01.006Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/log": { + "modified": "2019-03-23T23:48:08.846Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/max": { + "modified": "2019-03-23T23:48:02.936Z", + "contributors": [ + "ppasieka", + "teoli", + "safjanowski", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/min": { + "modified": "2019-03-23T23:48:05.366Z", + "contributors": [ + "SphinxKnight", + "zdolny", + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/pow": { + "modified": "2019-03-23T23:48:05.015Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/random": { + "modified": "2020-10-15T21:17:12.658Z", + "contributors": [ + "Sqrcz", + "kanapka94", + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/round": { + "modified": "2019-03-23T23:48:04.166Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/sign": { + "modified": "2019-03-23T23:13:52.324Z", + "contributors": [ + "SphinxKnight", + "teoli", + "PawelDudek" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/sin": { + "modified": "2019-03-23T23:48:09.765Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/sqrt": { + "modified": "2019-03-23T23:48:04.728Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Math/tan": { + "modified": "2019-03-23T23:48:02.693Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/NaN": { + "modified": "2020-03-12T19:37:38.834Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number": { + "modified": "2019-03-23T23:50:26.634Z", + "contributors": [ + "Piterunihongo", + "teoli", + "fscholz", + "Diablownik", + "Chrisraven", + "Mgjbot", + "Ptak82", + "Marcoos", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/EPSILON": { + "modified": "2020-10-15T22:24:18.127Z", + "contributors": [ + "krupinskij" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/MAX_VALUE": { + "modified": "2019-03-23T23:46:06.341Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/MIN_VALUE": { + "modified": "2019-03-23T23:47:03.042Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/NEGATIVE_INFINITY": { + "modified": "2019-03-23T23:47:08.730Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/NaN": { + "modified": "2019-03-23T23:45:44.372Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/POSITIVE_INFINITY": { + "modified": "2019-03-23T23:47:06.877Z", + "contributors": [ + "teoli", + "Ptak82", + "Diablownik", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/constructor": { + "modified": "2019-01-16T16:01:19.654Z", + "contributors": [ + "teoli", + "Marcoos", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/isInteger": { + "modified": "2020-10-15T21:56:18.899Z", + "contributors": [ + "PaG", + "morthan" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/isNaN": { + "modified": "2020-10-15T22:24:16.707Z", + "contributors": [ + "krupinskij" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/toExponential": { + "modified": "2019-03-23T23:47:01.823Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/toFixed": { + "modified": "2019-03-23T23:24:37.690Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/toLocaleString": { + "modified": "2020-10-15T21:57:55.583Z", + "contributors": [ + "narghar", + "eLGi" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/toPrecision": { + "modified": "2019-03-23T23:46:55.576Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Number/toString": { + "modified": "2019-03-23T23:49:39.505Z", + "contributors": [ + "teoli", + "Diablownik", + "Mgjbot", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object": { + "modified": "2019-03-23T23:51:13.882Z", + "contributors": [ + "JacobDesight", + "teoli", + "fscholz", + "Diablownik", + "Ptak82", + "Mgjbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/assign": { + "modified": "2019-08-15T08:41:27.590Z", + "contributors": [ + "oddehh", + "tkitynski", + "belfz", + "kkowalczuk", + "drzazga", + "JacobDesight" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/constructor": { + "modified": "2019-03-23T23:50:18.166Z", + "contributors": [ + "teoli", + "Sheppy", + "Wookieb", + "Marcoos", + "Mgjbot", + "Ptak82", + "Takenbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/freeze": { + "modified": "2020-10-15T21:49:25.848Z", + "contributors": [ + "PiosDamian", + "Arkej", + "kdex", + "piecioshka", + "aquz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/getOwnPropertyDescriptor": { + "modified": "2020-10-15T21:51:58.332Z", + "contributors": [ + "fscholz", + "piecioshka", + "andersz-artur", + "mateusz-pietruch" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/hasOwnProperty": { + "modified": "2020-10-15T21:37:23.621Z", + "contributors": [ + "JB1905", + "kanapka94", + "s1awek", + "dianafa" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/proto": { + "modified": "2019-03-23T22:15:34.204Z", + "contributors": [ + "JacobDesight" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/prototype": { + "modified": "2019-03-23T23:53:56.350Z", + "contributors": [ + "macborowy", + "rwa_kulszowa", + "dianafa", + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/seal": { + "modified": "2019-03-23T22:50:09.394Z", + "contributors": [ + "arturkulig", + "piecioshka", + "MichalZalecki", + "mhadas" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/toLocaleString": { + "modified": "2019-03-23T23:44:51.103Z", + "contributors": [ + "kwarpechowski", + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/toSource": { + "modified": "2019-03-23T23:53:51.317Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/toString": { + "modified": "2019-03-23T23:48:38.071Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Object/valueOf": { + "modified": "2019-03-23T23:50:47.663Z", + "contributors": [ + "teoli", + "ethertank", + "Mgjbot", + "Internauta1024A", + "Ptak82", + "Takenbot", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Promise": { + "modified": "2020-11-11T08:51:14.847Z", + "contributors": [ + "r2kode", + "mich_cz", + "SkillGG", + "szopenkrk" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Proxy": { + "modified": "2020-10-15T22:01:30.452Z", + "contributors": [ + "0ctothorp", + "andrzejkrecicki" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Proxy/handler": { + "modified": "2020-10-15T22:01:32.237Z", + "contributors": [ + "andrzejkrecicki" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Proxy/handler/apply": { + "modified": "2020-10-15T22:18:47.930Z", + "contributors": [ + "magmast" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RangeError": { + "modified": "2019-03-23T22:51:19.492Z", + "contributors": [ + "adam-tokarski" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RangeError/prototype": { + "modified": "2019-03-23T22:51:15.660Z", + "contributors": [ + "adam-tokarski" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp": { + "modified": "2019-03-23T23:59:43.766Z", + "contributors": [ + "wbamberg", + "lunesco", + "kisiiel", + "morthan", + "tomash18r", + "teoli", + "Nux", + "Mysz", + "Ptak82", + "Mgjbot", + "Marcoos", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/exec": { + "modified": "2019-03-23T23:47:09.516Z", + "contributors": [ + "kowal.alek", + "teoli", + "Ptak82", + "Mgjbot", + "Bedi" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/global": { + "modified": "2019-03-23T23:47:12.777Z", + "contributors": [ + "teoli", + "Diablownik", + "Internauta1024A", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/ignoreCase": { + "modified": "2019-03-23T23:47:14.670Z", + "contributors": [ + "teoli", + "Diablownik", + "Internauta1024A", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/lastMatch": { + "modified": "2020-10-15T22:02:47.225Z", + "contributors": [ + "xShadow" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/prototype": { + "modified": "2019-03-23T23:44:47.433Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/source": { + "modified": "2019-03-23T23:44:52.062Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/test": { + "modified": "2019-03-23T23:47:41.762Z", + "contributors": [ + "teoli", + "Chrisraven", + "Ptak82", + "Nux", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/toSource": { + "modified": "2019-03-23T23:47:09.941Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/RegExp/toString": { + "modified": "2019-03-23T23:47:08.946Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Set": { + "modified": "2019-03-23T22:07:58.875Z", + "contributors": [ + "PiosDamian", + "klusaktomasz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Set/Set.prototype.add()": { + "modified": "2019-03-23T22:07:51.409Z", + "contributors": [ + "klusaktomasz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Set/Set.prototype.clear()": { + "modified": "2019-03-23T22:08:01.977Z", + "contributors": [ + "klusaktomasz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Set/Set.prototype.delete()": { + "modified": "2020-10-15T21:56:04.971Z", + "contributors": [ + "trusohamn", + "klusaktomasz" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String": { + "modified": "2020-12-07T03:40:21.998Z", + "contributors": [ + "SphinxKnight", + "matipicia", + "wbamberg", + "teoli", + "grzegorz", + "Ptak82", + "Internauta1024A", + "Mgjbot", + "JasonSpiro", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/anchor": { + "modified": "2019-03-23T23:48:21.565Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/big": { + "modified": "2019-03-23T23:48:11.354Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/blink": { + "modified": "2019-03-23T23:48:18.653Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/bold": { + "modified": "2019-03-23T23:48:19.144Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/charAt": { + "modified": "2019-03-23T23:48:20.523Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/charCodeAt": { + "modified": "2019-03-23T23:48:21.451Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/concat": { + "modified": "2019-05-14T05:09:36.210Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/fontcolor": { + "modified": "2019-03-23T23:47:08.399Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/fontsize": { + "modified": "2019-03-23T23:47:17.415Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/fromCharCode": { + "modified": "2019-03-23T23:48:13.561Z", + "contributors": [ + "tomasz-janicki", + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/fromCodePoint": { + "modified": "2020-10-15T22:35:16.217Z", + "contributors": [ + "Lukasz257" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/italics": { + "modified": "2019-03-23T23:48:17.339Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/link": { + "modified": "2019-03-23T23:48:15.378Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/prototype": { + "modified": "2019-03-18T20:37:36.182Z", + "contributors": [ + "ktxc", + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/repeat": { + "modified": "2019-03-23T22:21:59.718Z", + "contributors": [ + "kamce" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/search": { + "modified": "2019-03-23T23:48:27.010Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/slice": { + "modified": "2019-09-04T05:49:33.261Z", + "contributors": [ + "huberts", + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/small": { + "modified": "2019-03-24T00:07:45.142Z", + "contributors": [ + "teoli", + "Krzysiek6", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/strike": { + "modified": "2019-03-23T23:48:13.069Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/sub": { + "modified": "2019-03-23T23:48:16.934Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/substr": { + "modified": "2019-03-23T23:59:55.346Z", + "contributors": [ + "dzek69", + "KonradKubiec", + "teoli", + "Julien.stuby", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/substring": { + "modified": "2019-03-18T20:35:08.725Z", + "contributors": [ + "Rafiki", + "teoli", + "Mgjbot", + "Nux", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/sup": { + "modified": "2019-03-18T21:16:52.805Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/toLowerCase": { + "modified": "2019-03-23T23:48:17.530Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/toSource": { + "modified": "2019-03-23T23:45:16.121Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/toString": { + "modified": "2019-03-23T23:48:31.894Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/toUpperCase": { + "modified": "2019-03-23T23:48:18.924Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Obiekty/String/valueOf": { + "modified": "2019-03-23T23:48:27.633Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Symbol": { + "modified": "2020-10-15T22:02:20.124Z", + "contributors": [ + "kjarmicki" + ] + }, + "Web/JavaScript/Referencje/Obiekty/SyntaxError": { + "modified": "2020-10-15T22:30:06.264Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Obiekty/Uint16Array": { + "modified": "2019-03-23T23:21:49.403Z", + "contributors": [ + "teoli", + "Kuzirashi" + ] + }, + "Web/JavaScript/Referencje/Obiekty/decodeURI": { + "modified": "2020-03-12T19:37:41.064Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/decodeURIComponent": { + "modified": "2020-03-12T19:37:32.361Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/encodeURI": { + "modified": "2020-03-12T19:37:30.589Z", + "contributors": [ + "teoli", + "Mgjbot", + "Quest-88", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/encodeURIComponent": { + "modified": "2020-03-12T19:37:35.220Z", + "contributors": [ + "teoli", + "Mgjbot", + "Quest-88", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/escape": { + "modified": "2020-03-12T19:43:04.815Z", + "contributors": [ + "kamce" + ] + }, + "Web/JavaScript/Referencje/Obiekty/isFinite": { + "modified": "2020-03-12T19:37:33.636Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Internauta1024A", + "Marcoos", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/isNaN": { + "modified": "2020-03-12T19:37:31.060Z", + "contributors": [ + "teoli", + "Mgjbot", + "Marcoos", + "Sheppy", + "Ptak82", + "Internauta1024A", + "Takenbot" + ] + }, + "Web/JavaScript/Referencje/Obiekty/null": { + "modified": "2020-03-12T19:45:50.208Z", + "contributors": [ + "JacobDesight" + ] + }, + "Web/JavaScript/Referencje/Obiekty/parseFloat": { + "modified": "2020-03-12T19:37:26.647Z", + "contributors": [ + "teoli", + "Mgjbot", + "Internauta1024A", + "Marcoos", + "Staszyna", + "Sheppy", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/parseInt": { + "modified": "2020-03-12T19:37:29.845Z", + "contributors": [ + "teoli", + "Mgjbot", + "Marcoos", + "Ptak82", + "VooEak" + ] + }, + "Web/JavaScript/Referencje/Obiekty/undefined": { + "modified": "2020-03-12T19:37:31.553Z", + "contributors": [ + "itsfaint", + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Operatory": { + "modified": "2020-03-12T19:36:59.316Z", + "contributors": [ + "ewelinakrawczak", + "teoli", + "Mgjbot", + "Ptak82", + "Bedi", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Operatory/Bitwise_Operators": { + "modified": "2020-10-15T22:25:46.843Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Operatory/Destructuring_assignment": { + "modified": "2020-12-07T05:10:17.259Z", + "contributors": [ + "LukaszFormela", + "Saalin", + "danielrakoczy", + "kdex", + "grzim" + ] + }, + "Web/JavaScript/Referencje/Operatory/Grouping": { + "modified": "2020-10-15T22:13:17.987Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Operatory/Logical_Operators": { + "modified": "2020-10-15T22:08:04.815Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Operatory/Nullish_coalescing_operator": { + "modified": "2020-10-15T22:31:22.874Z", + "contributors": [ + "brightdogs" + ] + }, + "Web/JavaScript/Referencje/Operatory/Object_initializer": { + "modified": "2020-03-12T19:44:27.454Z", + "contributors": [ + "mateuszkrzak", + "JacobDesight", + "bouzlibop" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_delete": { + "modified": "2020-03-12T19:37:39.689Z", + "contributors": [ + "gebi", + "teoli", + "Internauta1024A", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_function": { + "modified": "2019-03-23T23:48:46.411Z", + "contributors": [ + "Miras", + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_in": { + "modified": "2019-03-23T23:45:55.097Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_instanceof": { + "modified": "2020-10-15T21:16:54.657Z", + "contributors": [ + "PawelPapuli", + "SphinxKnight", + "mmiarecki", + "teoli", + "Mgjbot", + "Ipluta", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_new": { + "modified": "2020-10-26T06:11:51.853Z", + "contributors": [ + "szymonb", + "michal100032", + "SphinxKnight", + "teoli", + "splewako", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_potoku": { + "modified": "2020-10-15T22:08:04.976Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_przecinkowy": { + "modified": "2020-08-18T11:17:02.737Z", + "contributors": [ + "CodyKobe", + "teoli", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_typeof": { + "modified": "2019-03-23T23:48:37.240Z", + "contributors": [ + "9739654", + "Moniaesz", + "Maciej_Grycz", + "teoli", + "Mgjbot", + "Ptak82", + "Sheppy" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_void": { + "modified": "2019-03-23T23:48:45.984Z", + "contributors": [ + "jamOne-", + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operator_warunkowy": { + "modified": "2020-03-12T19:36:21.149Z", + "contributors": [ + "teoli", + "bronek", + "Mgjbot", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operatory_arytmetyczne": { + "modified": "2020-03-12T19:36:55.090Z", + "contributors": [ + "AndrzejSala", + "teoli", + "Niewiado", + "Ptak82", + "Kc604", + "Mgjbot", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operatory_działające_na_ciągach_znaków": { + "modified": "2019-01-16T19:21:07.446Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Anonymous", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operatory_pamięci": { + "modified": "2020-03-12T19:36:58.666Z", + "contributors": [ + "JacobDesight", + "teoli", + "ethertank", + "zarat", + "Mgjbot", + "Abc", + "Internauta1024A", + "Ptak82" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operatory_porównania": { + "modified": "2020-03-12T19:37:40.853Z", + "contributors": [ + "marcinpgit", + "teoli", + "Ptak82", + "Internauta1024A", + "Mgjbot" + ] + }, + "Web/JavaScript/Referencje/Operatory/Operatory_przypisania": { + "modified": "2020-03-12T19:37:41.089Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Operatory/Pierwszeństwo_operatorów": { + "modified": "2020-07-11T12:40:07.488Z", + "contributors": [ + "Emploxard", + "jangromko", + "teoli", + "Mgjbot", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Operatory/Składnia_rozwinięcia": { + "modified": "2020-10-15T22:13:18.819Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Operatory/Spread_operator": { + "modified": "2020-03-12T19:44:36.805Z", + "contributors": [ + "Konrad007", + "greg606", + "artus9033", + "kdex", + "kamce", + "grzim" + ] + }, + "Web/JavaScript/Referencje/Operatory/function*": { + "modified": "2020-10-15T22:17:45.458Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Operatory/new.target": { + "modified": "2020-03-12T19:45:06.300Z", + "contributors": [ + "ssuperczynski" + ] + }, + "Web/JavaScript/Referencje/Operatory/super": { + "modified": "2020-10-15T22:29:09.089Z", + "contributors": [ + "michalmarchewczyk", + "jabedek" + ] + }, + "Web/JavaScript/Referencje/Operatory/this": { + "modified": "2020-03-12T19:40:39.396Z", + "contributors": [ + "Majek", + "koczas" + ] + }, + "Web/JavaScript/Referencje/Operatory/yield": { + "modified": "2020-03-12T19:45:57.099Z", + "contributors": [ + "labs4apps" + ] + }, + "Web/JavaScript/Referencje/Operatory/yield*": { + "modified": "2020-03-12T19:45:54.936Z", + "contributors": [ + "108adams", + "labs4apps" + ] + }, + "Web/JavaScript/Referencje/Polecenia": { + "modified": "2020-10-15T21:14:48.479Z", + "contributors": [ + "SphinxKnight", + "teoli", + "splewako", + "Gompka", + "Mgjbot", + "Ptak82", + "Diablownik", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/Empty": { + "modified": "2020-10-15T22:33:29.682Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Polecenia/block": { + "modified": "2020-10-15T21:16:48.113Z", + "contributors": [ + "pawelk92", + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Polecenia/break": { + "modified": "2019-01-16T15:52:46.901Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/class": { + "modified": "2020-10-15T22:23:12.456Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Polecenia/const": { + "modified": "2019-01-16T15:50:46.419Z", + "contributors": [ + "teoli", + "Internauta1024A", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/continue": { + "modified": "2020-10-15T22:21:31.132Z", + "contributors": [ + "Xupi", + "JB1905", + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Polecenia/debugger": { + "modified": "2020-03-12T19:46:20.726Z", + "contributors": [ + "antoni" + ] + }, + "Web/JavaScript/Referencje/Polecenia/default": { + "modified": "2020-10-15T22:19:18.627Z", + "contributors": [ + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Polecenia/do...while": { + "modified": "2019-01-16T15:52:54.601Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/etykieta": { + "modified": "2019-01-16T15:52:24.751Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/export": { + "modified": "2019-01-16T15:46:36.049Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Polecenia/for": { + "modified": "2019-01-16T15:52:32.477Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik", + "Kjj2" + ] + }, + "Web/JavaScript/Referencje/Polecenia/for...in": { + "modified": "2020-10-15T22:24:07.320Z", + "contributors": [ + "whpac", + "jangromko" + ] + }, + "Web/JavaScript/Referencje/Polecenia/function": { + "modified": "2019-01-16T15:52:26.032Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Polecenia/function*": { + "modified": "2020-03-12T19:45:57.895Z", + "contributors": [ + "AndrzejSala", + "labs4apps" + ] + }, + "Web/JavaScript/Referencje/Polecenia/funkcja_async": { + "modified": "2020-10-15T22:24:48.218Z", + "contributors": [ + "drm404" + ] + }, + "Web/JavaScript/Referencje/Polecenia/if...else": { + "modified": "2019-01-16T15:55:18.475Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/import": { + "modified": "2019-01-16T15:46:37.420Z", + "contributors": [ + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82", + "Internauta1024A" + ] + }, + "Web/JavaScript/Referencje/Polecenia/return": { + "modified": "2019-01-16T15:53:40.686Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Polecenia/switch": { + "modified": "2020-10-15T21:17:02.196Z", + "contributors": [ + "1MrHous1", + "SphinxKnight", + "teoli", + "Rokuzo", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Polecenia/throw": { + "modified": "2020-10-15T21:16:56.629Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Rokuzo", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Polecenia/var": { + "modified": "2019-01-16T15:49:48.835Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/JavaScript/Referencje/Polecenia/while": { + "modified": "2019-03-23T23:49:29.695Z", + "contributors": [ + "teoli", + "Mgjbot", + "Ptak82", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Przestarzałe_własności_i_metody": { + "modified": "2020-03-12T19:37:30.978Z", + "contributors": [ + "SphinxKnight", + "teoli", + "Bedi", + "Mgjbot", + "Diablownik", + "Ptak82", + "Koziolek", + "Marcoos" + ] + }, + "Web/JavaScript/Referencje/Słowa_zarezerwowane": { + "modified": "2019-01-16T14:51:07.291Z", + "contributors": [ + "teoli", + "Ptak82", + "Mgjbot", + "Marcoos" + ] + }, + "Web/JavaScript/Shells": { + "modified": "2020-03-12T19:48:00.854Z", + "contributors": [ + "PiotrMuskalski" + ] + }, + "Web/JavaScript/Typed_arrays": { + "modified": "2020-03-12T19:39:10.889Z", + "contributors": [ + "teoli", + "Kuzirashi" + ] + }, + "Web/JavaScript/Wprowadzenie_do_programowania_obiektowego_w_jezyku_JavaScript": { + "modified": "2019-03-23T23:13:29.216Z", + "contributors": [ + "Xelix196", + "matewka" + ] + }, + "Web/JavaScript/Zasoby_języka_JavaScript": { + "modified": "2019-01-16T16:04:32.529Z", + "contributors": [ + "teoli", + "Diablownik", + "Ptak82", + "Mgjbot" + ] + }, + "Web/JavaScript/dziedziczenie_lancuch_prototypow": { + "modified": "2020-03-12T19:43:36.110Z", + "contributors": [ + "hyvyys", + "binarysailor", + "RudyPL", + "mat-bi", + "vonsko", + "labs4apps", + "pceuropa" + ] + }, + "Web/JavaScript/typy_oraz_struktury_danych": { + "modified": "2020-06-14T13:44:23.074Z", + "contributors": [ + "AvantaR" + ] + }, + "Web/MathML": { + "modified": "2019-03-24T00:03:16.756Z", + "contributors": [ + "tjasinski", + "teoli", + "fred.wang", + "Bedi", + "Ptak82", + "gandalf" + ] + }, + "Web/Progressive_web_apps": { + "modified": "2020-03-21T20:07:05.090Z", + "contributors": [ + "abes21111984" + ] + }, + "Web/SVG": { + "modified": "2019-03-23T23:48:48.350Z", + "contributors": [ + "KateSturmey", + "teoli", + "Bedi", + "Ptak82", + "Verruckt", + "Mgjbot", + "Takenbot", + "gandalf", + "Dria" + ] + }, + "Web/SVG/Element": { + "modified": "2019-03-23T22:14:00.084Z", + "contributors": [ + "Jeremie" + ] + }, + "Web/SVG/Element/a": { + "modified": "2019-03-23T22:13:56.546Z", + "contributors": [ + "devMike" + ] + }, + "Web/SVG/Element/animateTransform": { + "modified": "2020-10-15T21:53:46.335Z", + "contributors": [ + "SphinxKnight", + "devMike" + ] + }, + "Web/SVG/Element/okrąg": { + "modified": "2020-10-15T22:12:21.905Z", + "contributors": [ + "webcarrot", + "SphinxKnight", + "Rafal76" + ] + }, + "Web/SVG/Inne_zasoby": { + "modified": "2019-01-16T15:45:05.453Z", + "contributors": [ + "teoli", + "Ptak82", + "Sullei", + "gandalf" + ] + }, + "Web/SVG/Przewodnik": { + "modified": "2019-03-20T10:58:52.573Z", + "contributors": [ + "pan-rzeznik", + "teoli", + "Bedi" + ] + }, + "Web/SVG/Przewodnik/SVG_w_XHTML_-_Wprowadzenie": { + "modified": "2019-01-16T16:17:00.898Z", + "contributors": [ + "chrisdavidmills", + "Ptak82", + "gandalf", + "Takenbot", + "Dria", + "Marcoos" + ] + }, + "Web/Security/Securing_your_site": { + "modified": "2019-11-23T17:31:47.688Z", + "contributors": [ + "mfuji09" + ] + }, + "Web/Security/Securing_your_site/Konfiguracja_MIME_na_serwerze": { + "modified": "2020-07-16T22:36:04.529Z", + "contributors": [ + "drm404" + ] + }, + "Web/Tutorials": { + "modified": "2019-03-23T23:07:22.234Z", + "contributors": [ + "mat-bi", + "RafalDe", + "heretyk52", + "Tomek+" + ] + }, + "Web/XML": { + "modified": "2020-10-12T08:15:16.866Z", + "contributors": [ + "SphinxKnight", + "adrianpiatkiewicz280", + "MattMaestro123", + "ExE-Boss" + ] + }, + "Web/XML/Wprowadzenie_do_XML-a": { + "modified": "2019-05-01T21:53:56.163Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Bedi", + "Iorlef", + "Ptak82", + "Marcoos", + "Takenbot", + "Gjaryczewski", + "Anonymous" + ] + }, + "Web/XPath": { + "modified": "2019-01-16T14:32:59.084Z", + "contributors": [ + "ExE-Boss", + "fscholz", + "Mgjbot", + "Flaneur", + "Bedi", + "Ptak82", + "Marcoos", + "gandalf" + ] + }, + "Web/XPath/Funkcje": { + "modified": "2019-03-23T23:54:13.300Z", + "contributors": [ + "ExE-Boss", + "teoli", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/boolean": { + "modified": "2019-01-16T15:50:21.080Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/ceiling": { + "modified": "2019-01-16T15:50:29.009Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/concat": { + "modified": "2019-01-16T15:50:21.356Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/contains": { + "modified": "2019-01-16T15:50:22.632Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/count": { + "modified": "2019-01-16T15:50:18.931Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/current": { + "modified": "2019-01-16T15:54:07.231Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/document": { + "modified": "2019-01-16T15:54:08.509Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/element-available": { + "modified": "2019-01-16T15:54:24.632Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "KRZ", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/false": { + "modified": "2019-01-16T15:50:11.644Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/floor": { + "modified": "2019-01-16T15:50:15.420Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/format-number": { + "modified": "2019-01-16T15:54:05.462Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/function-available": { + "modified": "2019-01-16T15:54:33.591Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/generate-id": { + "modified": "2019-01-16T15:54:20.993Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/id": { + "modified": "2019-01-16T15:50:05.440Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/key": { + "modified": "2019-01-16T15:54:07.018Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/lang": { + "modified": "2019-01-16T15:50:00.856Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82", + "Bedi" + ] + }, + "Web/XPath/Funkcje/last": { + "modified": "2019-01-16T15:50:13.769Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/XPath/Funkcje/local-name": { + "modified": "2019-01-16T15:50:08.618Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/name": { + "modified": "2019-01-16T15:50:11.434Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/namespace-uri": { + "modified": "2019-01-16T15:50:11.817Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/normalize-space": { + "modified": "2019-01-16T15:50:17.331Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/not": { + "modified": "2019-01-16T15:50:09.345Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/number": { + "modified": "2019-01-16T15:49:59.758Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/position": { + "modified": "2019-01-16T15:50:06.660Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Ptak82", + "Diablownik", + "Bedi" + ] + }, + "Web/XPath/Funkcje/round": { + "modified": "2019-01-16T15:50:04.322Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Ptak82", + "Diablownik" + ] + }, + "Web/XPath/Funkcje/starts-with": { + "modified": "2019-01-16T15:50:02.374Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/string": { + "modified": "2019-01-16T15:50:13.315Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/string-length": { + "modified": "2019-01-16T15:50:11.197Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/substring": { + "modified": "2019-01-16T15:50:11.854Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/substring-after": { + "modified": "2019-01-16T15:50:08.478Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/substring-before": { + "modified": "2019-01-16T15:50:03.131Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/sum": { + "modified": "2019-01-16T15:50:11.203Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Bedi", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/system-property": { + "modified": "2019-01-16T15:54:07.335Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/translate": { + "modified": "2019-03-23T23:49:24.212Z", + "contributors": [ + "ExE-Boss", + "AndrewPopenko", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/true": { + "modified": "2019-01-16T15:50:14.395Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XPath/Funkcje/unparsed-entity-url": { + "modified": "2019-01-16T15:54:07.524Z", + "contributors": [ + "ExE-Boss", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XPath/Osie": { + "modified": "2019-01-16T15:28:45.164Z", + "contributors": [ + "ExE-Boss", + "Mgjbot", + "Diablownik", + "Ptak82" + ] + }, + "Web/XSLT": { + "modified": "2019-01-16T14:32:05.636Z", + "contributors": [ + "chrisdavidmills", + "lukasz.jezierski", + "Verruckt", + "Ptak82", + "Mgjbot", + "gandalf", + "Jan Dudek", + "Anonymous", + "Dria" + ] + }, + "Web/XSLT/Element": { + "modified": "2019-03-23T23:47:58.568Z", + "contributors": [ + "ExE-Boss", + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/Element/element": { + "modified": "2019-01-16T16:02:07.174Z", + "contributors": [ + "ExE-Boss", + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/Transformacje_XML_z_XSLT": { + "modified": "2019-03-23T23:43:19.830Z", + "contributors": [ + "SphinxKnight", + "chrisdavidmills", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/Transformacje_XML_z_XSLT/Dokumentacja_XSLT_XPath": { + "modified": "2019-01-16T16:12:39.198Z", + "contributors": [ + "chrisdavidmills", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/Transformacje_XML_z_XSLT/Przeczytaj_więcej": { + "modified": "2019-03-23T23:48:25.932Z", + "contributors": [ + "SphinxKnight", + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/apply-imports": { + "modified": "2019-01-16T16:04:10.129Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/apply-templates": { + "modified": "2019-01-16T15:56:15.770Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/attribute": { + "modified": "2019-01-16T16:04:08.328Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/attribute-set": { + "modified": "2019-01-16T16:04:06.202Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/call-template": { + "modified": "2019-01-16T16:04:02.137Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/choose": { + "modified": "2019-01-16T15:43:24.557Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/comment": { + "modified": "2019-01-16T16:04:07.126Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/copy": { + "modified": "2019-01-16T16:04:06.489Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/copy-of": { + "modified": "2019-01-16T15:56:06.624Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/decimal-format": { + "modified": "2019-01-16T16:04:06.645Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/fallback": { + "modified": "2019-01-16T16:04:02.164Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/for-each": { + "modified": "2019-01-16T16:03:48.737Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/if": { + "modified": "2019-03-23T23:46:04.423Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/import": { + "modified": "2019-01-16T16:04:02.775Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/include": { + "modified": "2019-01-16T16:04:00.167Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/key": { + "modified": "2019-01-16T16:04:00.126Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82", + "Bedi" + ] + }, + "Web/XSLT/message": { + "modified": "2019-01-16T15:55:54.853Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/namespace-alias": { + "modified": "2019-01-16T16:03:46.013Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/number": { + "modified": "2019-03-23T23:47:56.436Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/otherwise": { + "modified": "2019-01-16T16:04:00.381Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/output": { + "modified": "2019-01-16T16:04:00.215Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82", + "Bedi", + "Michal borek pl" + ] + }, + "Web/XSLT/param": { + "modified": "2019-01-16T16:04:00.223Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/preserve-space": { + "modified": "2019-01-16T16:04:00.228Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/processing-instruction": { + "modified": "2019-01-16T16:04:00.064Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/sort": { + "modified": "2019-01-16T16:02:15.902Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/strip-space": { + "modified": "2019-01-16T16:04:00.187Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/stylesheet": { + "modified": "2019-01-16T14:50:04.672Z", + "contributors": [ + "chrisdavidmills", + "Filemon", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/template": { + "modified": "2019-01-16T15:56:09.826Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82", + "Michal borek pl" + ] + }, + "Web/XSLT/text": { + "modified": "2019-03-23T23:45:58.964Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/transform": { + "modified": "2019-01-16T15:56:10.001Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/value-of": { + "modified": "2019-03-23T23:46:05.049Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Michal borek pl", + "Ptak82" + ] + }, + "Web/XSLT/variable": { + "modified": "2019-01-16T16:03:49.132Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/when": { + "modified": "2019-01-16T16:03:46.040Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "Web/XSLT/with-param": { + "modified": "2019-01-16T16:03:44.076Z", + "contributors": [ + "chrisdavidmills", + "Diablownik", + "Mgjbot", + "Ptak82" + ] + }, + "WebAssembly": { + "modified": "2020-05-12T10:24:52.590Z", + "contributors": [ + "mbiesiad", + "AndrzejSala" + ] + }, + "WebSockets": { + "modified": "2019-04-12T05:40:44.038Z", + "contributors": [ + "sunpietro", + "DawidNowak", + "Jacqbus" + ] + }, + "Wsparcie_przeglądarek_dla_elementów_HTML": { + "modified": "2019-03-23T23:50:15.322Z", + "contributors": [ + "Mgjbot", + "Ptak82", + "Emil" + ] + }, + "XHTML": { + "modified": "2019-03-23T23:46:31.012Z", + "contributors": [ + "Diablownik", + "Ptak82", + "gandalf" + ] + }, + "XMLHttpRequest": { + "modified": "2019-03-23T23:55:55.505Z", + "contributors": [ + "fnevgeny", + "Flaneur", + "Bedi", + "Mgjbot", + "Ptak82", + "Ziombka", + "gandalf" + ] + }, + "XMLHttpRequest/Using_XMLHttpRequest": { + "modified": "2019-03-23T23:07:00.318Z", + "contributors": [ + "sopi" + ] + }, + "dziesiec_lat_mdn": { + "modified": "2019-03-23T22:43:45.633Z", + "contributors": [ + "RemigiuszBrzebrzycki", + "kamilcios" + ] + }, + "nsIInputStream": { + "modified": "2019-04-20T03:56:57.732Z", + "contributors": [ + "wbamberg", + "Bedi", + "Ptak82" + ] + }, + "nsIXULAppInfo": { + "modified": "2019-04-20T00:22:03.815Z", + "contributors": [ + "wbamberg", + "Diablownik", + "Bedi", + "Joeaccord" + ] + } +} \ No newline at end of file diff --git a/files/pl/aktualizacja_aplikacji_internetowych_dla_firefoksa_3/index.html b/files/pl/aktualizacja_aplikacji_internetowych_dla_firefoksa_3/index.html new file mode 100644 index 0000000000..65742220e4 --- /dev/null +++ b/files/pl/aktualizacja_aplikacji_internetowych_dla_firefoksa_3/index.html @@ -0,0 +1,93 @@ +--- +title: Aktualizacja aplikacji internetowych dla Firefoksa 3 +slug: Aktualizacja_aplikacji_internetowych_dla_Firefoksa_3 +tags: + - Firefox 3 +translation_of: Mozilla/Firefox/Releases/3/Updating_web_applications +--- +
{{FirefoxSidebar}}
+ +

{{ Fx_minversion_header(3) }} W przygotowywanym wydaniu programu Firefox w wersji 3 dokonano wielu zmian, które mogą wpłynąć na działanie witryn lub aplikacji internetowych. Wprowadzono także nowe funkcje, które mogą być przydatne dla autorów tych witryn lub aplikacji. Ten artykuł zawiera informacje na temat przystosowania serwisów internetowych do Firefoksa 3 w celu jak najpełniejszego wykorzystania możliwości nowej przeglądarki.

+ +

Zmiany w obsłudze DOM

+ +

Przed włączeniem węzłów pochodzących z zewnętrznych dokumentów do bieżącego dokumentu konieczne jest ich sklonowanie za + pomocą metody document.importNode() (lub zaadaptowanie przy użyciu metody document.adoptNode()). Więcej informacji na temat własności + Node.ownerDocument znajduje się na liście najczęściej zadawanych pytań na temat + DOM w witrynie W3C.

+ +

Aktualnie Firefox nie wymusza tej reguły (robił to przez pewien czas podczas cykli rozwojowych Firefoksa 3, ale zbyt + dużo stron przestawało działać po wymuszeniu tej reguły). Zachęcamy autorów stron do poprawienia ich kodu dla lepszej + kompatybilności w przyszłości.

+ +

Zmiany w obsłudze HTML

+ +

Zmiany w dziedziczeniu zestawu znaków

+ +

W programie Firefox 3 naprawiono lukę w zabezpieczeniach, w wyniku której ramki (elementy frame i iframe) dziedziczyły ustawienia kodowania znaków elementu nadrzędnego, co w określonych przypadkach powodowało problemy. Obecnie ramki mogą dziedziczyć ustawienia kodowania znaków elementu nadrzędnego jedynie wówczas, gdy zarówno ramka, jak i element nadrzędny znajdują się na tym samym serwerze. W przypadku korzystania z ramek, których zawartość pobierana jest z zewnętrznego serwera, należy określić właściwe kodowanie znaków dla ramki w kodzie HTML elementu frame.

+ +

Zmiana w elemencie SCRIPT

+ +

Element <script> w dokumentach text/html wymaga teraz domknięcia </script> w dokumentach HTML, nawet jeśli nie wpisujesz żadnej treści do środka. Podczas gdy w poprzednich wersjach Firefoksa mogłeś zrobić:

+ +
<script ... />
+
+ +

Teraz składnia musi być zgodna ze specyfikacją HTML (jeśli jest to dokument HTML), zatem trzeba domknąć ten znacznik tak:

+ +
<script ...></script>
+
+ +

Poprawia to zarówno kompatbilność jak i spójność.

+ +

Zmiany w interpretatorze CSS

+ +

Change to font-size based on em, ex units

+ +

font-size values in em and ex units used to be affected by the user's minimum font size setting: if a font was displayed larger due to the minimum font size, the em and ex units for font-size settings based on this one would be enlarged accordingly. This was inconsistent with the way percentage-based font sizes behaved.

+ +

font-size values in em and ex units are now based on an "intended font size" that is not affected by the user's minimum font size. In other words, font sizes are always calculated according to the designer's intention and are adjusted for minimum font size afterwards.

+ +

See https://bugzilla.mozilla.org/attachment.cgi?id=322943 for a demonstration (must be watched with a minimum font size >= 6 to see the difference: the two box cascades behave differently in Firefox 2, because the em-based font-size "bounces" off the minimum font size).

+ +

Zmiany bezpieczeństwa

+ +

Dostęp poprzez chrome

+ +

W poprzednich wersjach Firefox, każda strona internetowa mogła załadować skrypty lub obrazy poprzez chrome, używając protokołu chrome://. Dzięki temu, strony m.in. mogły wykrywać obecność dodatków - co niestety bywało używane do omijania wtyczek, które zwiększały bezpieczeństwo użytkownika.

+ +

Firefox 3 umożliwia użycie jedynie następujących przestrzeni: chrome://browser/ oraz chrome://toolkit/. Pliki w tych katalogach są dostępne dla stron internetowych, natomiast cała reszta zawartości chrome jest zabezpieczona przed ingerencją.

+ +

Mimo to, istnieje możliwość odbezpieczania innych miejsc chrome poprzez rozszerzenia. Wtyczki mogą ustawić specjalną flagę w pliku chrome.manifest:

+ +
content mypackage location/ contentaccessible=yes
+
+ +

Ta opcja nie powinna być zbyt często potrzebna, ale jest dostępna w rzadkich, wymagających jej wypadkach. Zauważ, że Firefox może zaalarmować użytkownika, jeśli twoje rozszerzenie używa flagi contentaccessible, z powodu ewentualnego zagrożenia bezpieczeństwa.

+ +
Uwaga: Ponieważ Firefox 2 ignoruje linie z flagą contentaccessible, jeśli chcesz by twoja wtyczka była kompatybilna z Firefox 2 i Firefox 3, muisz napisać: + +
content mypackage location/
+content mypackage location/ contentaccessible=yes
+
+
+ +

Pola wrzucania plików

+ +

In prior versions of Firefox, there were cases in which when the user submitted a file for uploading, the entire path of the file was available to the web application. This privacy concern has been resolved in Firefox 3; now only the filename itself is available to the web application.

+ +

Zmiany w obsłudze JavaScript

+ +

Program Firefox 3 obsługuje język JavaScript w wersji 1.8. Istotną zmianą, która może wymagać aktualizacji witryn lub aplikacji internetowych, jest wyłączenie obsługi przestarzałych i niestandardowych obiektów Script. Ze względu na niezgodność tych obiektów ze standardami nie były one jednak często wykorzystywane, więc zmiana ta w większości przypadków nie powinna sprawiać problemów.

+ +

Zobacz także

+ + + +

 

+ +

{{ languages( { "en": "en/Updating_web_applications_for_Firefox_3", "es": "es/Actualizar_aplicaciones_web_para_Firefox_3", "fr": "fr/Mise_\u00e0_jour_des_applications_Web_pour_Firefox_3", "ja": "ja/Updating_web_applications_for_Firefox_3" } ) }}

diff --git "a/files/pl/aktualizacja_rozszerze\305\204_dla_firefoksa_3/index.html" "b/files/pl/aktualizacja_rozszerze\305\204_dla_firefoksa_3/index.html" new file mode 100644 index 0000000000..225437339b --- /dev/null +++ "b/files/pl/aktualizacja_rozszerze\305\204_dla_firefoksa_3/index.html" @@ -0,0 +1,145 @@ +--- +title: Aktualizacja rozszerzeń dla Firefoksa 3 +slug: Aktualizacja_rozszerzeń_dla_Firefoksa_3 +tags: + - Firefox 3 +--- +

W tym artykule znajdują się informacje dla deweloperów chcących dostosować swoje rozszerzenia do pracy w Firefox 3.

+ +

Zanim przejdziemy dalej, chcemy przedstawić jedną pomocną wskazówkę: jeśli jedyną zmianą, której wymaga twoje rozszerzenie, jest zmiana pola maxVersion w jego manifeście instalacji, i przechowujesz rozszerzenie na addons.mozilla.org, nie potrzebujesz teraz wgrywać nowej wersji swojego rozszerzenia. Po prostu użyj Developer Control Panel na AMO, by ustawić maxVersion. W ten sposób możesz uniknąć konieczności ponownego zrecenzowania rozszerzenia.

+ +

Krok 1: Zaaktualizuj manifest instalacji

+ +

Pierwszym krokiem - dla wielu rozszerzeń jedynym, jaki będzie potrzebny - jest aktualizacja pliku manifestu instalacji, install.rdf.

+ +

Wystarczy znaleźć linię wskazującą maksymalną kompatybilną wersję Firefoksa (która dla Firefoksa 2, może wyglądać podobnie jak linia poniżej):

+ +
 <em:maxVersion>2.0.0.*</em:maxVersion>
+
+ +

Zmieniamy ją, wskazując kompatybilność z Firefoksem w wersji 3:

+ +
 <em:maxVersion>3.0.*</em:maxVersion>
+
+ +

Następnie ponownie instalujemy rozszerzenie.

+ +

Zauważ, że program Firefox 3 nie potrzebuje dodatkowego ".0" w numerze wersji, tak więc zamiast "3.0.0.* możesz używać tylko "3.0.*".

+ +
Uwaga: Zauważ, że Firefox 3 nadal zmienia się. Te zmiany mogą spowodować nieprawidłowe działanie niektórych rozszerzeń, więc nie powinieneś udostępniać użytkownikom rozszerzenia z maxVersion 3.0.* zanim Firefox 3 w wersji RC nie zostanie wypuszczony. W okresie Firefox 3 Beta powinieneś używać3.0b3 jako maxVersion.
+ +

Pewne zmiany API nadal będą wprowadzane. Zmiany te prawdopodobnie zmienią działanie niektórych rodzajów rozszerzeń. Nadal pracujemy nad kompilacją kompletnej listy tychże zmian.

+ +
Uwaga: Jeżeli twoje rozszerzenia nadal używają skryptu Install.js zamiast manifestu instalacyjnego (ang. install manifest), musisz natychmiast przekompilować swoje rozszerzenia do manifestu instalacyjnego. Firefox 3 nie obsługuje już skryptów install.js w plikach XPI.
+ +

Dodawanie lokalizacji do manifestu instalacji

+ +

Firefox 3 obsługuje nowe własności w manifeście instalacji do wskazujących zlokalizowanych opisów. Stare metody nadal będą działać, jednakże nowe pozwolą Firefoksowi zebrać lokalizacje nawet gdy opcja dodatków jest wyłączona i oczekuje na instalację. Zobacz artykuł nt. lokalizacji opisu rozszerzenia, aby uzyskać więcej informacji.

+ +

Krok 2: Upewnij się, że dostarczasz bezpiecznych aktualizacji

+ +

Jeśli trzymasz rozszerzenie na własnym serwerze i nie jest to bezpieczny dostawca hostingu tak jak na przykład addons.mozilla.org to musisz zapewnić bezpieczną metodę aktualizacji Twojego dodatku. This will either involve hosting your updates on an SSL website, or using cryptographic keys to sign the update information. Przeczytaj artykuł Securing Updates, aby zdobyć więcej informacji.

+ +

Krok 3: Uporaj się ze zmianami w API

+ +

Kilka API zostało zmienione w znaczny sposób. Najbardziej zmienione, które najprawdopodobniej będą miały wpływ na duża liczbę rozszerzeń, to:

+ +

DOM

+ + +

Przed włączeniem węzłów pochodzących z zewnętrznych dokumentów do bieżącego dokumentu konieczne jest ich sklonowanie za + pomocą metody document.importNode() (lub zaadaptowanie przy użyciu metody document.adoptNode()). Więcej informacji na temat własności + Node.ownerDocument znajduje się na liście najczęściej zadawanych pytań na temat + DOM w witrynie W3C.

+ +

Aktualnie Firefox nie wymusza tej reguły (robił to przez pewien czas podczas cykli rozwojowych Firefoksa 3, ale zbyt + dużo stron przestawało działać po wymuszeniu tej reguły). Zachęcamy autorów stron do poprawienia ich kodu dla lepszej + kompatybilności w przyszłości.

+ +

Zakładki & Historia

+ +

Jeśli twoje rozszerzenie w jakikolwiek sposób dotyczy listy Zakładek lub Historii, będzie ono wymagało dodatkowych zmian, aby poprawnie działać z Firefoksem 3. Stare API dla tych list zostało zastąpione nową architekturą Miejsca. Zobacz Migration Guide for Places, by uzyskać szczegóły aktualizacji.

+ +

Menadżer pobierania

+ +

API Menedżera pobierania zmieniło się nieznacznie ze względu na przejście z RDF do przechowywania danych za pomocą Storage API. To powinno być dość łatwe do przejścia. Interfejs API do monitorowania postępu pobierania został zmieniony w celu wspierania wielu czytników Menedżera pobierania. W celu zdobycia większej liczby informacji, idź do nsIDownloadManager, nsIDownloadProgressListener i Monitoring downloads.

+ +

Menadżer haseł

+ +

Jeśli twoje rozszerzenie wykorzystuje Menadżer haseł do logowania użytkownika, konieczne będzie dostosowanie się do nowego API Menedżera logowania.

+ + + +

Popups (menu, menu kontekstowe, podpowiedzi i paneli)

+ +

XUL Popup system został mocno zmodyfikowany w Firefoksie 3. Popup System zawiera główne menu, menu kontekstowego i pop-panele. Przewodnik za pomocą Popups została utworzona, dowiedzą się jak działa system. Jedną rzeczą jest, aby zapamiętać, że using Popups popup.showPopup popup.został wycofany na rzecz nowychopenPopup i popup.openPopupAtScreen.

+ +

Usunięte interfejsy

+ +

Następujące interfejsy zostały usunięte z Gecko 1.9. Jeśli rozszerzenie korzysta z któregoś z podanych, musisz zaaktualizować kod:

+ + + +

Krok 4: Kilka istotnych zmian chrome

+ +

Nastąpiły niewielkie zmiany w chrome, które mogą wymagać zmian w kodzie. Nowy vbox został dodany, tak zwany " bottombox przeglądarki", który załącza się w pasku górnym i pasku stanu na dole okna przeglądarki. Chociaż nie ma to wpływu na wygląd wyświetlacza, może wpłynąć na rozszerzenie czy chrome nakładki w stosunku do tych elementów.

+ +

Na przykład, jeśli wcześniej pokrył niektóre chrome sprzed pasku stanu, w taki sposób:

+ +
<window id="main-window">
+  <something insertbefore="status-bar" />
+</window>
+
+ +


+ Teraz nakładka powinna wyglądać w taki sposób:

+ +
<vbox id="browser-bottombox">
+  <something insertbefore="status-bar" />
+</vbox>
+
+ +
Uwaga: Zmiana została wprowadzona w Firefox w wersjach beta 3 i 4 pre-beta 4 nightlies.
+ +

Inne zmiany

+ + + +

Dotyczy to rozszerzenia, które zapewniają nowe URI.(błąd 337746)

+ + + +

element nie jest już częścią "narzędzi" (błąd 339964). Oznacza to, że ten element nie jest już dostępny w aplikacjach XUL i rozszerzeniach. To nadal jest używany w oknie głównym programu Firefox (browser.xul).

+ + + +

i ewentualnie do gwintowania związanych interfejsów muszą być udokumentowane.

+ + diff --git "a/files/pl/aktualizacja_rozszerze\305\204_do_firefoksa_2/index.html" "b/files/pl/aktualizacja_rozszerze\305\204_do_firefoksa_2/index.html" new file mode 100644 index 0000000000..7b5a22de8b --- /dev/null +++ "b/files/pl/aktualizacja_rozszerze\305\204_do_firefoksa_2/index.html" @@ -0,0 +1,46 @@ +--- +title: Aktualizacja rozszerzeń do Firefoksa 2 +slug: Aktualizacja_rozszerzeń_do_Firefoksa_2 +translation_of: Mozilla/Firefox/Releases/2/Updating_extensions +--- +
{{FirefoxSidebar}}
+ +

{{ Draft() }}

+ +

Ten artykuł dostarcza informacji na temat, w jaki sposób należy zmodyfikować rozszerzenia, aby działały właściwie pod Firefoksem 2. Ten artykuł będzie przydatny dla programistów, posiadających już utworzone rozszerzenia i chcą, aby działały poprawnie w wersji drugiej Firefoksa.

+ +

Krok 1: Aktualizacja manifestu instalacji

+ +

Pierwszym krokiem -- i w przypadku części rozszerzeń jedynym, jaki będzie potrzebny -- jest aktualizacja pliku manifestu instalacji <tt>install.rdf</tt>, aby wskazać kompatybilność z Firefoksem 2.

+ +

Szybko znajdź linie wskazującą maksymalną wersje kompatybilności Firefoksa, która dla Firefoksa 1.5, mogła by wyglądać jak poniżej:

+ +
 <em:maxVersion>1.5.0.*</em:maxVersion>
+
+ +

Zmień ją wskazując na kompatybilność z Firefoksem 2:

+ +
 <em:maxVersion>2.0.0.*</em:maxVersion>
+
+ +

Następnie przeinstaluj swoje rozszerzenie.

+ +

Krok 2: Aktualizacja nakładek XUL

+ +

Firefox 2 wprowadza zmiany w domyślnym motywie. Dodatkowo, niektóre elementy interfejsu użytkownika zostały zmienione lub przeniesione. Możliwe jest, że Twoje rozszerzenie zostało dotknięte tymi zmianami i zależy to od tego, co zrobią Twoje nakładki XUL.

+ +

Przeczytaj artykuł Zmiany w motywie graficznym w Firefoksie 2, aby dowiedzieć się, jakie zmiany zostały wprowadzone, które mogą mieć wpływ na nakładki XUL Twoich rozszerzeń.

+ +

Krok 3: Test

+ +

Upewnij się poprzez sprawdzenie swojego rozszerzenia w Firefoksie 2, czy aby na pewno działa poprawnie, zanim udostępnisz publicznie wersję ostateczną. Ostatnią rzeczą, jaką chcesz dla swojej nowej wersji rozszerzenia to problemy, jakie może ono powodować po podjęciu pochopnej decyzji ze świeżo wydaną wersją Firefoksa!

+ +

Krok 4: Wersja ukończona

+ +

Zaktualizuj swoje rozszerzenie wprowadzając zmiany na http://addons.mozilla.org. Zagwarantuje to, że użytkownicy będą mogli znaleźć nową wersję rozszerzenia.

+ +

W dodatku, jeśli Twoje rozszerzenie dostarcza updateURL w manifeście instalacji, możesz być pewien, że aktualizacja manifestu wywoła automatyczną aktualizację rozszerzenia, które zostanie znalezione przez Firefoksa. Stanie się to przy pierwszym uruchomieniu Firefoksa po aktualizacji, gdyż Firefox może zaoferować automatyczną instalację dla tych rozszerzeń.

+ +
 
+ +

{{ languages( { "en": "en/Updating_extensions_for_Firefox_2", "fr": "fr/Mise_\u00e0_jour_des_extensions_pour_Firefox_2", "ja": "ja/Updating_extensions_for_Firefox_2", "ko": "ko/Updating_extensions_for_Firefox_2" } ) }}

diff --git "a/files/pl/api_dost\304\231pu_do_danych_z_kana\305\202\303\263w/index.html" "b/files/pl/api_dost\304\231pu_do_danych_z_kana\305\202\303\263w/index.html" new file mode 100644 index 0000000000..6bcc84bba1 --- /dev/null +++ "b/files/pl/api_dost\304\231pu_do_danych_z_kana\305\202\303\263w/index.html" @@ -0,0 +1,170 @@ +--- +title: API dostępu do danych z kanałów +slug: API_dostępu_do_danych_z_kanałów +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +--- +

 

+

Firefox 2 oraz Thunderbird 2 wprowadzają serię interfejsów, które pozwalają programistom rozszerzeń w łatwy sposób uzyskiwać dostęp do kanałów RSS i Atom.

+

Interfejsy kanałów

+
+
+ nsIFeed
+
+ Reprezentuje kanał RSS lub Atom.
+
+ nsIFeedContainer
+
+ Bazowa klasa, z której dziedziczy kilka interfejsów związanych z kanałami.
+
+ nsIFeedElementBase
+
+ Bazowa klasa, z której dziedziczy kilka interfejsów związanych z kanałami.
+
+ nsIFeedEntry
+
+ Reprezentuje pojedynczy wpis kanału RSS lub Atom.
+
+ nsIFeedGenerator
+
+ Opisuje software, za pomocą którego wygenerowano kanał RSS lub Atom.
+
+ nsIFeedPerson
+
+ Reprezentuje osobę. Zawiera imię oraz nazwisko osoby, jej adres email oraz adres jej strony domowej.
+
+ nsIFeedProcessor
+
+ Parsuje kanały RSS oraz Atom.
+
+ nsIFeedProgressListener
+
+ Zaimplementowane przez program chcący parsować kanały RSS lub Atom w celu otrzymywania wiadomości podczas procesu parsowania.
+
+ nsIFeedResult
+
+ Opisuje rezultat parsowania kanału.
+
+ nsIFeedResultListener
+
+ Zaimplementowane przez program chcący parsować kanały RSS lub Atom w celu otrzymywania potwierdzenia ukończenia procesu prasowania.
+
+ nsIFeedTextConstruct
+
+ Reprezentuje tekst w wątku; zawiera funkcje pozwalające na pobranie danego tekstu wyłącznie jako tekst lub HTML.
+
+ nsIScriptableUnescapeHTML
+
+ Klasa użytkowa przywracająca ciągi znaków HTML.
+
+

Przykład: Czytanie kanału z sieci

+

Bardzo łatwo można odczytać oraz parsować kanał. Użyj XMLHttpRequest by pobrać kanał, potem przekaż jego łańcuch do nsIFeedProcessor w celu przetworzenia.

+

Pobieranie kanału oraz wysyłanie go do parsowania może zostać zrobione za pomocą kodu podobnego do przedstawionego poniżej:

+
  fetch: function(feedUrl)
+  {
+    var httpRequest = null;
+
+    function infoReceived() {
+      var data = httpRequest.responseText;
+
+      var ioService = Components.classes['@mozilla.org/network/io-service;1']
+                                         .getService(Components.interfaces.nsIIOService);
+      var uri = ioService.newURI(feedUrl, null, null);
+
+      if (data.length) {
+        var parser = Components.classes["@mozilla.org/feed-processor;1"]
+                                        .createInstance(Components.interfaces.nsIFeedProcessor);
+        var listener = new FeedTestResultListener();
+        try {
+          parser.listener = listener;
+          parser.parseFromString(data, uri);
+        }
+        catch(e) {
+          alert("Error parsing feed.");
+        }
+      }
+    }
+
+    httpRequest = new XMLHttpRequest();
+
+    httpRequest.open("GET", feedUrl, true);
+    try {
+      httpRequest.onload = infoReceived;
+      httpRequest.send(null);
+    }
+    catch(e) {
+      alert(e);
+    }
+  }
+
+

Interfejs nsIFeedProcessor pozwala na parsowanie danych kanału z kilku możliwych źródeł; w tym przypadku ładujemy dokument do łańcucha, a następnie parsujemy go za pomocą metody parseFromString(). Można też parsować go z pliku za pomocą parseFromStream(), lub też bezpośrednio z adresu za pomocą parseAsync().

+

Właściwe parsowanie kanału dokonywane jest za pomocą metody nazywanej handleResult() na obiekcie FeedTestResultListener. Kod wygląda następująco:

+
    FeedTestResultListener.prototype = {
+      handleResult: function(result) {
+        var feed = result.doc;
+
+        feed.QueryInterface(Components.interfaces.nsIFeed);
+
+        // Otwórz nowe okno
+
+        var win = window.open("", "FeedTest_Window");
+        var doc = win.document;
+
+        doc.open();
+
+        // Zapisz nagłówek HTML oraz tytuł strony
+
+        doc.write("<html><head><title>Feed: " + feed.title.text + "</title></head><body>");
+        doc.write("<h1>" + feed.title.text + "</h1><p>");
+
+        var itemArray = feed.items;
+        var numItems = itemArray.length;
+
+        // Zapisz informacje zawartą w artykule
+
+        if (!numItems) {
+          doc.write("<i>No news is good news!</i>");
+        }
+        else {
+          var i;
+          var theEntry;
+          var theUrl;
+          var info;
+
+          for (i=0; i<numItems; i++) {
+            theEntry = itemArray.queryElementAt(i, Components.interfaces.nsIFeedEntry);
+
+            if (theEntry) {
+              theUrl =
+              doc.write('<b><a href="' + theEntry.link.resolve("") + '">' + theEntry.title.text + '</a></b><br>');
+              if (theEntry.summary) {
+                info = theEntry.summary.text + "<p><hr><p>";
+              }
+              else {
+                info = theEntry.content.text + "<p><hr><p>";
+              }
+              doc.write("<blockquote>" + info);
+              doc.write("</blockquote><p>");
+            }
+          }
+        }
+
+        // Zamknij dokument
+
+        doc.write("</body></html>");
+        doc.close();
+      }
+    }
+
+

Funkcja handleResult() otrzymuje jako argumenty obiekt typu nsIFeedResult opisujący kanał, oraz doc typu nsIFeed zawierające wszystkie dane kanału.

+

W celu uzyskania tytułu kanału należy spojrzeć na właściwość feed.title. Tytuł jest nsIFeedTextConstruct reprezentujący tekst zapisany w rożnych formatach; używając właściwości text uzyskamy tytuł kanału w formacie HTML. Można również użyć metody plainText() by uzyskać kopię jako zwykły tekst.

+

Następnie można przejrzeć uszeregowanie kanału za pomocą feed.items nsIArray. Uszeregowanie to zawiera obiekty nsIFeedEntry opisujące każdy składnik kanału.

+

Tworzenie zawartości dokumentu następuje poprzez pobranie tytułu, linka, podsumowania oraz zawartości własności poszczególnych składników. Pełny adres linka może zostać pobrany za pomocą metody linka resolve().

+

W celu rozpoczęcia pobierania kanału wywołujemy po prostu fetch( + + url + ). Otwierane jest wtedy nowe okno zawierające składniki kanału, których linki pozwalają na bezpośrednie odczytanie artykułu.

+

Szczegóły dostępu do poszczególnych interfejsów dostępowych kanału można znaleźć klikając w poniższe odnośniki.

+

{{ languages( { "es": "es/API_de_acceso_a_canales", "fr": "fr/Feed_content_access_API", "ja": "ja/Feed_content_access_API", "en": "en/Feed_content_access_API" } ) }}

diff --git a/files/pl/api_preferencji/index.html b/files/pl/api_preferencji/index.html new file mode 100644 index 0000000000..e90da0dced --- /dev/null +++ b/files/pl/api_preferencji/index.html @@ -0,0 +1,23 @@ +--- +title: API Preferencji +slug: API_Preferencji +tags: + - Dodatki + - Rozszerzenia + - System_preferencji + - Wszystkie_kategorie + - XUL +translation_of: Mozilla/Tech/Preferences_API +--- +

+

API preferencji pozwala na zapisywanie oraz odczytywanie łańcuchów, liczb, wartości logicznych oraz odnośników do plików zapisanych w preferencjach. Jest łatwe w użyciu dostarczając dodatkowo dużą liczbę przydatnych programistom oraz użytkownikom opcji włącznie ze wsparciem własności domyślnych, możliwością ręcznego sterowania przez użytkowników poprzez user.js oraz blokowaniem. +

Można również stworzyć okno opcji bazujących na XUL-u, aby pozwolić użytkownikowi na modyfikacje niektórych preferencji. Wiele aplikacji włącznie z Firefoksem i Thunderbirdem zawiera dodatkowe narzędzia dla zaawansowanych użytkowników about:config, których można użyć w celu dostosowania preferencji bez zmiany interfejsu użytkownika. +

+

Interfejsy

+

API preferencji jest widoczne jako zbiór zamrożonych komponentów oraz interfejsów XPCOM: nsIPrefService, nsIPrefBranch, nsIPrefBranch2. +

... +

+

Zobacz również

+ diff --git a/files/pl/archive/add-ons/add-on_sdk/tools/index.html b/files/pl/archive/add-ons/add-on_sdk/tools/index.html new file mode 100644 index 0000000000..7ce4fa6d2f --- /dev/null +++ b/files/pl/archive/add-ons/add-on_sdk/tools/index.html @@ -0,0 +1,158 @@ +--- +title: Tools +slug: Archive/Add-ons/Add-on_SDK/Tools +tags: + - Add-on SDK + - CFX + - JPM + - NeedsTranslation + - TopicStub +translation_of: Archive/Add-ons/Add-on_SDK/Tools +--- +

Add-ons using the techniques described in this document are considered a legacy technology in Firefox. Don't use these techniques to develop new add-ons. Use WebExtensions instead. If you maintain an add-on which uses the techniques described here, consider migrating it to use WebExtensions.

Starting from Firefox 53, no new legacy add-ons will be accepted on addons.mozilla.org (AMO) for desktop Firefox and Firefox for Android.

Starting from Firefox 57, only extensions developed using WebExtensions APIs will be supported on Desktop Firefox and Firefox for Android.

Even before Firefox 57, changes coming up in the Firefox platform will break many legacy extensions. These changes include multiprocess Firefox (e10s), sandboxing, and multiple content processes. Legacy extensions that are affected by these changes should migrate to use WebExtensions APIs if they can. See the "Compatibility Milestones" document for more information.

A wiki page containing resources, migration paths, office hours, and more, is available to help developers transition to the new technologies.

+ +

Articles listed here provide a reference for the SDK's tools:

+ +

+
cfx
Enables you to test, run, and package add-ons. cfx is is no longer supported as of Firefox 44 and no longer accepted for add-on submission, jpm should now be used instead.
cfx to jpm
A guide to working with jpm if you're already familiar with cfx.
console
Enables your add-on to log error, warning or informational messages.
jpm
jpm is a command-line tool that enables you to test, run, and package add-ons.
jpm-mobile
The Node-based replacement for cfx --force-mobile. Enables you to run and test add-ons for Firefox Mobile (aka Fennec).
+
jpmignore
Use .jpmignore to ignore files from your XPI builds created via jpm.
package.json
The package.json file contains manifest data for your add-on, providing not only descriptive information about the add-on for presentation in the Add-ons Manager, but other metadata required of add-ons.
+

diff --git a/files/pl/archive/add-ons/add-on_sdk/tools/jpm/index.html b/files/pl/archive/add-ons/add-on_sdk/tools/jpm/index.html new file mode 100644 index 0000000000..853afb805a --- /dev/null +++ b/files/pl/archive/add-ons/add-on_sdk/tools/jpm/index.html @@ -0,0 +1,883 @@ +--- +title: jpm +slug: Archive/Add-ons/Add-on_SDK/Tools/jpm +translation_of: Archive/Add-ons/Add-on_SDK/Tools/jpm +--- +
+
+

Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

+ +

Add-ons using the techniques described in this document are considered a legacy technology in Firefox. Don't use these techniques to develop new add-ons. Use WebExtensions instead. If you maintain an add-on which uses the techniques described here, consider migrating it to use WebExtensions.

+ +

Starting from Firefox 53, no new legacy add-ons will be accepted on addons.mozilla.org (AMO) for desktop Firefox and Firefox for Android.

+ +

Starting from Firefox 57, only extensions developed using WebExtensions APIs will be supported on Desktop Firefox and Firefox for Android.

+ +

Even before Firefox 57, changes coming up in the Firefox platform will break many legacy extensions. These changes include multiprocess Firefox (e10s), sandboxing, and multiple content processes. Legacy extensions that are affected by these changes should migrate to use WebExtensions APIs if they can. See the "Compatibility Milestones" document for more information.

+ +

A wiki page containing resources, migration paths, office hours, and more, is available to help developers transition to the new technologies.

+
+ + +
+ +

jpm is a command-line tool that enables you to test, run, and package add-ons.

+ +

This is the reference page for jpm. See also jpm tutorial for getting started.

+ +

jpm użyj go :

+ +
jpm [command] [options]
+
+ +

jpm obsługuje następujące opcje globalne :

+ +
-h, --help        - show a help message and exit
+-V, --version     - print the jpm version number
+--addon-dir       - directory for your source code,
+                    defaulting to the current directory
+
+ +

Instalacja

+ +

jpm is distributed with the node package manager npm.

+ +

Instalowanie  npm

+ +

  Istnieją dwa sposoby uzyskania npm.

+ + + +

Aby przetestować instalację, uruchom:

+ +
/usr/bin/env node -v
+ +

Jeśli pojawi się komunikat o błędzie z informacją  /usr/bin/env: node: No such file or directory and you have installed nodejs through a package manager, nodejs mógł zostać zainstalowany pod inną nazwą wykonywalną. Aby zapewnić zgodność z jpmjednak musi znajdować się w Twoim PATH pod nazwą node. W Debianie i Ubuntu można temu zaradzić, zapewniając zainstalowanie pakietu zgodności, nodejs-legacy:

+ +
sudo apt-get install nodejs-legacy
+ +

W innych dystrybucjach konieczne może być ręczne utworzenie lokalnego dowiązania symbolicznego do nodejs:

+ +
sudo ln -s "$(which nodejs)" /usr/local/bin/node
+ +

Instalowanie jpm

+ +

After you have npm installed and node on your PATH, install jpm just as you would any other npm package.

+ +

Installing jpm globally

+ +
npm install jpm --global
+ +

Depending on your setup, you might need to run this as an administrator: sudo npm install jpm --global

+ +

Installing jpm locally

+ +

If you do not wish to, or are unable to, install jpm globally, you may instead install it locally:

+ +
cd $HOME && npm install jpm
+ +

To run jpm from a terminal when installed locally, you must add the directory "$HOME/node_modules/.bin/" to your terminal's PATH first. Add the following line to the end of the file $HOME/.profile to add it to your PATH permanently (as the file .profile is executed every time a new terminal is opened):

+ +
export PATH="$HOME/node_modules/.bin/:$PATH"
+ +

Installing jpm from git

+ +

Alternatively, you can also get the latest version of jpm using git:

+ +
git clone https://github.com/mozilla-jetpack/jpm.git
+cd jpm
+npm install
+npm link
+
+ +

After installing jpm

+ +

After installation, at the command prompt, type:

+ +
jpm
+ +

You should see a screen summarizing the available jpm commands. Note that unlike cfx, jpm is available in every command prompt you start, as long as you installed it with the --global flag.

+ +

Install a different version of Firefox

+ +

As of Firefox 48, it is not possible to use unsigned add-ons (i.e. any add-on which you are in the process of developing) in the branded release or beta versions of Firefox. Thus, you will need to download and install a different version of Firefox. Assuming you don't want an old version of Firefox, your options are Firefox Developer Edition, Firefox Nightly, Unbranded Beta, or Unbranded Release.

+ +

When testing your add-on, you will need to use the -b option to jpm run. See Selecting a browser version.

+ +

Problems?

+ +

If you do not see this, ask for help. SDK users and project team members discuss problems and proposals on the project mailing list. Someone else may have had the same problem you do, so try searching the list. You are welcome to post a question, too. You can also chat with other SDK users in #jetpack on Mozilla's IRC network.

+ +

Command reference

+ +

jpm supports the following commands:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
jpm initCreate a skeleton add-on as a starting point for your add-on.
jpm runLaunch an instance of Firefox with your add-on installed.
jpm testRuns your add-on's unit tests.
jpm xpiPackage your add-on as an XPI file, which is the install file format for Firefox add-ons.
jpm postPackage your add-on as an XPI file, and then post it to some URL.
jpm watchpostPackage your add-on as an XPI file whenever there is a file change and post that to some URL.
jpm signPackage your add-on as an XPI file, and then retrieve a new XPI signed by Mozilla.
+ +

jpm init

+ +

This command initializes a new add-on from scratch.

+ +

Create a new directory, change into it, and run jpm init.

+ +
mkdir my-addon
+cd my-addon
+jpm init
+ +

You'll then be asked to supply some information about your add-on: this will be used to create your add-on's package.json file.

+ + + +

Most of these fields have a default, which is shown in brackets after the question. If you just press Enter, your add-on gets the default value.

+ +

Once you've supplied a value or accepted the default for these properties, you'll be shown the complete contents of "package.json" and asked to accept it.

+ +

Then jpm creates a skeleton add-on, as a starting point for your add-on development, with the following file structure:

+ + + +

jpm run

+ +

This command runs a new instance of Firefox with the add-on installed:

+ +
jpm run
+ +

jpm run accepts the following options:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
-b --binary BINARY +

Use the version of Firefox specified in BINARY. BINARY may be specified as a full path or as a path relative to the current directory.

+ +
+jpm run -b /path/to/Firefox/Nightly
+ See Selecting a browser version.
--binary-args CMDARGS +

Pass extra arguments to Firefox.

+ +

For example, to pass the -jsconsole argument to Firefox and launch the Browser Console, try the following:

+ +
+jpm run --binary-args -jsconsole
+ +

To pass multiple arguments, or arguments containing spaces, quote them:

+ +
+jpm run --binary-args '-url mzl.la -jsconsole'
+
--debugRun the Add-on Debugger attached to the add-on.
-o --overload PATH +

Rather than use the SDK modules built into Firefox, use the modules found at PATH. If -o is specified and PATH is omitted, jpm looks for the JETPACK_ROOT environment variable and use its value as the path.

+ +

See Overloading the built-in modules for more information.

+
-p --profile= PROFILE +

By default, jpm uses a clean temporary Firefox profile each time you call jpm run. Use the --profile option to instruct jpm to launch Firefox with an existing profile.

+ +

The PROFILE value may be a profile name or the path to the profile.

+ +

See Using profiles for more information.

+
-v --verboseVerbose operation.
--no-copy +
Use with caution because jpm run|test changes many preferences, never use with your main profile.
+ +
This only applies when --profile is used.
+ Disables the copying of the profile used, which allows one to reuse a profile.
+ +

jpm test

+ +

Use this command to run an add-on's unit tests. The command:

+ + + +
jpm test
+
+ +

See the tutorial on unit testing and the reference documentation for the assert module for more details on this.

+ +

jpm test accepts the following options:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
-b --binary BINARY +

Use the version of Firefox specified in BINARY. BINARY may be specified as a full path or as a path relative to the current directory.

+ +
+jpm test -b /path/to/Firefox/Nightly
+ +

See Selecting a browser version.

+
--binary-args CMDARGS +

Pass extra arguments to Firefox.

+ +

For example, to pass the -jsconsole argument to Firefox, which will launch the Browser Console, try the following:

+ +
+jpm test --binary-args -jsconsole
+ +

To pass multiple arguments, or arguments containing spaces, quote them:

+ +
+jpm test --binary-args '-url mzl.la -jsconsole'
+
--debugRun the Add-on Debugger attached to the add-on.
-f --filter FILE[:TEST] +

Only run tests whose filenames match FILE and optionally match TEST, both regexps.

+ +
+jpm test --filter base64:btoa
+ +

The above command only runs tests in files whose names contain "base64", and in those files only runs tests whose names contain "btoa".

+
-o --overload PATH +

Rather than use the SDK modules built into Firefox, use the modules found at PATH. If -o is specified and PATH is omitted, jpm will look for the JETPACK_ROOT environment variable and use its value as the path.

+ +

See Overloading the built-in modules for more information.

+
-p --profile PROFILE +

By default, jpm uses a clean temporary Firefox profile each time you call jpm run. Use the --profile option to instruct jpm to launch Firefox with an existing profile.

+ +

The PROFILE value may be a profile name or the path to the profile.

+ +

See Using profiles for more information.

+
--stop-on-error +

By default, jpm test keeps running tests even after tests fail. Specify --stop-on-error to stop running tests after the first failure:

+ +
+jpm test --stop-on-error
+
--tbplPrint test output in Treeherder format
--times NUMBER +

Run tests NUMBER of times:

+ +
+jpm test --times 2
+
-v --verboseVerbose operation.
--no-copy +
Use with caution because jpm run|test changes many preferences, never use with your main profile.
+ +
This only applies when --profile is used.
+ Disables the copying of the profile used, which allows one to reuse a profile.
+ +

jpm xpi

+ +

This command packages the add-on as an XPI file, which is the install file format for Mozilla add-ons.

+ +
jpm xpi
+ +

It looks for a file called package.json in the current directory (or --addon-dir) and creates the corresponding XPI file. It ignores any ZIPs or XPIs in the add-on's root, and any test files. It includes all other files. If you want to exclude extra files, see the .jpmignore file.

+ +

Once you have built an XPI file, you can distribute your add-on by submitting it to addons.mozilla.org.

+ +

jpm xpi accepts the following option:

+ + + + + + + + + + + + +
--dest-dir +

Optional destination directory for the generated XPI file. The current working directory is the default destination.

+
-v --verbose +

Verbose operation:

+ +
+jpm xpi -v
+
+ +

jpm post

+ +

This command packages the add-on as an XPI file then posts it to some URL.

+ +
jpm post
+ +

It looks for a file called package.json in the current directory (or --addon-dir) and creates an XPI file with which to post to the --post-url.

+ +

jpm post accepts the following options:

+ + + + + + + + + + + + +
--post-url URL +

The URL to post the extension to after creating an XPI.

+ +
+jpm post --post-url http://localhost:8888/
+ +

See Using Post and Watchpost for more information.

+
-v --verbose +

Verbose operation:

+ +
+jpm post --post-url http://localhost:8888/ -v
+
+ +

jpm watchpost

+ +

This command packages the add-on as an XPI file then posts it to some URL whenever a file in the current working directory changes.

+ +
jpm watchpost
+ +

Creates an XPI whenever a file changes in the current working directory (or --addon-dir) and posts that to the --post-url.

+ +

jpm watchpost accepts the following options:

+ + + + + + + + + + + + +
--post-url URL +

The URL to post the extension to after creating an XPI.

+ +
+jpm watchpost --post-url http://localhost:8888/
+ +

See Using Post and Watchpost for more information.

+
-v --verbose +

Verbose operation:

+ +
+jpm watchpost --post-url http://localhost:8888/ -v
+
+ +

jpm sign

+ +
+

This feature is only supported from jpm 1.0.4 onwards.

+
+ +

This command retrieves a new XPI for your add-on signed by Mozilla. This allows you to self-host your add-on so that users can install it without error when signed add-ons are required.

+ +

You can sign an XPI you've already generated by passing the XPI file in the --xpi argument, like this:

+ +
jpm sign --api-key ${JWT_ISSUER} --api-secret ${JWT_SECRET} --xpi <xpi file>
+ +

Alternatively, you can omit the --xpi argument, in which case jpm sign will generate an XPI from the current directory (or --addon-dir).

+ +
jpm sign --api-key ${JWT_ISSUER} --api-secret ${JWT_SECRET}
+ +

This submits an XPI it to the addons.mozilla.org signing API, then downloads a signed XPI to the working directory if it passes validation.

+ +

To get values for --api-key and --api-secret, you will need to create API credentials on addons.mozilla.org. On the AMO key management page, these values are labeled "JWT_Issuer" and "JWT_Secret".

+ +

Here are some possible outcomes of running the sign command:

+ + + +

Under the hood, jpm sign creates an unlisted add-on inside addons.mozilla.org, which means you must distribute the XPI file yourself for your users to install it. If you need to create a listed add-on, just submit it directly to addons.mozilla.org where it is signed automatically. See the debugging section if you are experiencing difficulty installing a signed add-on.

+ +

jpm sign accepts the following options:

+ + + + + + + + + + + + + + + + + + + + +
--api-key=JWT_ISSUER +

API access key (string) generated on the addons.mozilla.org key management page.

+ +

On the AMO key management page, this value is labeled "JWT Issuer".

+
--api-secret=JWT_SECRET +

API access secret (string) generated on the addons.mozilla.org key management page. This value should be guarded with care and never checked into version control. If your secret is compromised, another developer could upload add-ons to your account. You should revoke and regenerate compromised API credentials immediately.

+ +

On the AMO key management page, this value is labeled "JWT Secret".

+
--api-url-prefix=http://.../api +

An optional API URL prefix in case you'd like to use a pre-production signing API.

+ +

For example, you could pass https://addons-dev.allizom.org/api/v3 to use the dev instance of addons.mozilla.org.

+
--xpi=/path/to/file.xpi +

An XPI file to sign. When no file is specified, a new XPI will be generated from the current directory (or --addon-dir).

+
+ +

Techniques

+ +

Selecting a browser version

+ +

By default, jpm run and jpm test runs the release version of Firefox. You can instruct jpm to use a different version in one of two ways:

+ + + +

Using .jpmignore to ignore files

+ +

Using .jpmignore is similar to using .gitignore with git, .hgignore with Mercurial, or .npmignore with npm. By using this file, you can let jpm know which files you would like it to ignore when building a .xpi file with jpm xpi.

+ +

Here is an example:

+ +
# Ignore .DS_Store files created by mac
+.DS_Store
+
+# Ignore any zip or xpi files
+*.zip
+*.xpi
+
+ +

A .jpmignore file with the above contents would ignore all zip files and .DS_Store files from the xpi generated by jpm xpi.

+ +

Using profiles

+ +

By default, jpm run uses a new profile each time it is executed. This means that any profile-specific data entered from one run of jpm is not, by default, available in the next run.

+ +

This includes, for example, any extra add-ons you installed, or your history, or any data stored using the simple-storage API.

+ +

To make jpm use a specific profile, pass the --profile option, specifying the name of the profile you wish to use, or the path to the profile.

+ +
jpm run --profile boogaloo
+
+ +
jpm run --profile path/to/boogaloo
+ +

Use the profile manager to create a new profile if needed.

+ +

If you need changes to the profile to persist, add the --no-copy argument. However beware that jpm might also apply changes to the profile, setting some preferences that will make it unusable for daily usage.

+ +

Developing without browser restarts

+ +

Because jpm run restarts the browser each time you invoke it, it can be a little cumbersome if you are making very frequent changes to an add-on. An alternative development model is to use the Extension Auto-Installer add-on: this listens for new XPI files on a specified port and installs them automatically. That way you can test new changes without needing to restart the browser:

+ + + +

You could even automate this workflow with a simple script. For example:

+ +
jpm watchpost --post-url http://localhost:8888/
+
+ +

Note that the logging level defined for the console is different when you use this method, compared to the logging level used when an add-on is run using jpm run. This means that if you want to see the output from console.log() messages, you have to tweak a setting. See the documentation on logging levels for the details on this.

+ +

Overloading the built-in modules

+ +

The SDK modules you use to implement your add-on are built into Firefox. When you run or package an add-on using jpm run or jpm xpi, the add-on uses the versions of the modules in the version of Firefox that hosts it.

+ +

As an add-on developer, this is usually what you want. But if you're developing the SDK modules themselves, of course, it isn't. In this case you need to:

+ + + +
jpm run -o
+
+ +

This instructs jpm to use the local copies of the SDK modules, not the ones in Firefox. If you do not want to set the JETPACK_ROOT environment variable, you can pass the location of your copy of the SDK modules along with -o:

+ +
jpm run -o "/path/to/addon-sdk/"
+ +

The path must be an absolute path and point to the SDK's root (not addon-sdk/sdk or addon-sdk/sdk/lib, for instance).

+ +

Supporting updates for self-hosted add-ons

+ +
+

This feature is only supported from jpm 1.0.3 onwards.

+
+ +

When you make updates to your add-on to add features or fix bugs, you'll want any previously installed versions of the add-on to update themselves to the new version.

+ +

If you list your add-on on addons.mozilla.org, then all you have to do here is submit the new version; add-ons default to checking addons.mozilla.org for new versions of themselves. You can stop reading this section.

+ +

If you do not list your add-on on addons.mozilla.org, you need to generate a Mozilla-signed XPI and tell Firefox where it can find new versions of your add-on. The way this works is:

+ + + +

To do this, include two extra keys in package.json:

+ + + +

+ +

If you include updateURL and updateLink (and also updateKey in case updateURL is not HTTPS), then jpm xpi will:

+ + + +

You then host the update manifest at updateURL, and host new versions of the XPI at updateLink.

+ +

For some more details on this, see Automatic Add-on Update Checking.

diff --git a/files/pl/archive/add-ons/api_przechowywania_sesji/index.html b/files/pl/archive/add-ons/api_przechowywania_sesji/index.html new file mode 100644 index 0000000000..ec38997ac2 --- /dev/null +++ b/files/pl/archive/add-ons/api_przechowywania_sesji/index.html @@ -0,0 +1,85 @@ +--- +title: API przechowywania sesji +slug: Archive/Add-ons/API_przechowywania_sesji +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Session_store_API +--- +

+

Firefox 2 wprowadza mechanizm przechowywania sesji który umożliwia rozszerzeniom łatwo zapisywać i przywracać dane pomiędzy sesjami Firefoksa. Istnieje też proste API, które umożliwia rozszerzeniom łatwy dostęp do zapisanych sesji. +

Przykładem sytuacji, w której wsparcie dla tej funkcji może być kluczowe: Firefox 2 pozwala użytkownikom przywrócić uprzednio zamknięte karty. W celu prawidłowego przechowania stanu Twojego rozszerzenia kiedy karta zostaje przywrócona, musi ono skorzystać z metody API przechowywania sesji setTabValue(), aby zachować wszelkie dane, które potem będzie należało przywrócić, a następnie, podczas przywracania karty, wywołać getTabValue(), aby odzyskać uprzednio zachowane ustawienia. +

API przechowywania sesji jest zaimplementowane przy użyciu interfejsu nsISessionStore. +

+

Skąd wiedzieć kiedy przywracać?

+

Za każdym razem kiedy Firefox ma przywrócić uprzednio zamkniętą kartę, zostaje wysłane zdarzenie SSTabRestoring. Jeżeli chcesz, aby Twoje rozszerzenie mogło przywracać dane podczas przywracania karty, wystarczy, że ustawisz nasłuch (listener) na to zdarzenie: +

+
function myExtensionHandleRestore(aEvent) {
+  Components.classes["@mozilla.org/consoleservice;1"].
+             getService(Components.interfaces.nsIConsoleService).
+             logStringMessage("przywracanie kart");
+};
+
+document.addEventListener("SSTabRestoring", myExtensionHandleRestore, false);
+
+

Po prostu zastąp treść funkcji myExtensionHandleRestore() swoim własnym kodem. W powyższym przykładzie został użyty serwis (service) nsIConsoleService, do wyświetlenia wiadomość w konsoli. +

Zdarzenie jest wysyłane tuż przed przywróceniem karty. Zdarzenie typu SSTabRestored jest wysyłane po przywróceniu ostatniej karty. +

+

Proces przywracania sesji

+

Dokładna sekwencja zdarzeń, która jest wykonywana podczas przywracania sesji wygląda tak: +

+
  1. Stan sesji ma zostać przywrócony. Może się to zdarzyć podczas startu przeglądarki, albo w wyniku akcji Przywróć Zamkniętą Kartę, ponieważ zamknięte karty są przywracane jako sesje pojedyńczych kart. +
  2. Nowe okna są otwierane zgodnie z kolejnością (jedno na każde okno, które zostało zachowane), następnie przywracane są ciastka oraz ostatnio zamknięte karty. +
+

Po tym, dla każdej przywracanej karty, zostają podjęte następujące kroki: +

+
  1. Albo wykorzystywana jest istniejąca karta, albo tworzona nowa. W drugim przypadku, wysyłane jest zdarzenie TabOpen. +
  2. Przywracane są przechowywane stałe atrybuty XUL (ang. persistent attributes) (te zapisane poprzez odwołania do persistTabAttribute()) oraz uprawnienia. +
  3. Wysyłane jest zdarzenie SSTabRestoring. +
  4. Karta zaczyna pobierać URL, który ma wyświetlić. +
  5. Po zakończeniu ładowania strony, przywracane są stany pól tekstowych i przewijania. +
  6. Na końcu, wysyłane jest zdarzenie SSTabRestored. +
+

Jeżeli chcesz ustawić uprawnienia lub w inny sposób zmieniać przywracaną kartę przed załadowaniem strony, powinieneś obserwować SSTabRestoring. Jeżeli chcesz zrobić coś po załadowaniu strony, należy obserwować SSTabRestored. +

Oba zdarzenia są zawsze wysyłane dla każdej, przywracanej, karty. Możesz określić, która karta jest przywracana przez sprawdzenie pola originalTarget z obiektu zdarzenia. +

Właściwie nie istnieje metoda na określenie kiedy ostatnia karta została przywrócona, chyba, że określisz ile kart ma zostać przywróconych, a następnie policzysz zdarzenia SSTabRestored. +

+

Wykorzystanie API przechowywania sesji

+

Tutaj opisujemy kilka prostych przykładów wykorzystania API przechowywania sesji. +

+

Zachowywanie wartości dla karty

+

Poniższy kod dołączy do karty parę klucz/wartość. Po przywróceniu karty, ta para będzie z nią powiązana. +

+
 var ss = Components.classes["@mozilla.org/browser/sessionstore;1"].
+                             getService(Components.interfaces.nsISessionStore);
+ var currentTab = getBrowser().selectedTab;
+ var dataToAttach = "Chcę to przyłączyć";
+ ss.setTabValue(currentTab, "key-name-here", dataToAttach);
+
+

Ten kod ustawia wartość klucza "key-name-here" na <var>dataToAttach</var>. Możesz tu użyć dowolnego obiektu JavaScript jako danych. +

+

Pobieranie zachowanej wartości

+

W dowolnym momencie możesz pobrać wartość powiązaną z kartą (niezależnie czy karta jest w takcie przywracania czy nie), używając takiego kodu: +

+
 var ss = Components.classes["@mozilla.org/browser/sessionstore;1"].
+                             getService(Components.interfaces.nsISessionStore);
+ var currentTab = getBrowser().selectedTab;
+ var retrievedData = ss.getTabValue(currentTab, "key-name-here");
+
+

Po wykonaniu tego kodu, zmienna <var>retrivedData</var> zawiera zachowaną wartość dla klucza "key-name-here". <var>retrievedData</var> pozostanie jako undefined jeśli nie została zachowana żadna wartość dla tego klucza. +

+

Usuwanie wartości powiązanej z kartą

+

Aby usunąć wartość z karty, możesz skorzystać z poniższego kodu: +

+
 var ss = Components.classes["@mozilla.org/browser/sessionstore;1"].
+                             getService(Components.interfaces.nsISessionStore);
+ var currentTab = getBrowser().selectedTab;
+ ss.deleteTabValue(currentTab, "key-name-here");
+
+

Uwagi

+

Funkcje zachowywania i przywracania dla okien działają tak samo jak te dla kart (z uwzględnieniem zmian w nazwach). +

+

Zobacz też

+

nsISessionStore +

{{ languages( { "es": "es/API_de_restauraci\u00f3n_de_sesi\u00f3n", "fr": "fr/API_de_restauration_de_session", "ja": "ja/Session_store_API", "en": "en/Session_store_API" } ) }} diff --git a/files/pl/archive/add-ons/index.html b/files/pl/archive/add-ons/index.html new file mode 100644 index 0000000000..caac45ae4c --- /dev/null +++ b/files/pl/archive/add-ons/index.html @@ -0,0 +1,8 @@ +--- +title: Add-ons +slug: Archive/Add-ons +translation_of: Archive/Add-ons +--- +

In progress. Archived add-ons documentation.

+ +

{{SubpagesWithSummaries}}

diff --git a/files/pl/archive/add-ons/wsparcie_dla_podpowiedzi_wyszukiwania_w_wyszukiwarkach/index.html b/files/pl/archive/add-ons/wsparcie_dla_podpowiedzi_wyszukiwania_w_wyszukiwarkach/index.html new file mode 100644 index 0000000000..abea49f93b --- /dev/null +++ b/files/pl/archive/add-ons/wsparcie_dla_podpowiedzi_wyszukiwania_w_wyszukiwarkach/index.html @@ -0,0 +1,58 @@ +--- +title: Wsparcie dla podpowiedzi wyszukiwania w wyszukiwarkach +slug: Archive/Add-ons/Wsparcie_dla_podpowiedzi_wyszukiwania_w_wyszukiwarkach +tags: + - Dodatki + - Wszystkie_kategorie + - Wtyczki_wyszukiwarek +translation_of: Archive/Add-ons/Supporting_search_suggestions_in_search_plugins +--- +

+

MozSearch wspiera podpowiedzi wyszukiwania; gdy użytkownik wprowadza dane w panelu wyszukiwania, Firefox 2 przesyła zapytanie do adresu URL określonego przez wtyczkę wyszukiwarki, aby dostarczyć dynamiczne podpowiedzi wyszukiwania. +

Gdy lista zostanie dostarczona, może ona być wyświetlona w wyskakującym okienku (popup), które pojawia się pod panelem wyszukiwania i pozwala użytkownikowi wybrać jeden z sugerowanych wyników. Jeśli użytkownik będzie kontynuował wpisywanie, zażądany zostanie nowy zestaw podpowiedzi z silnika wyszukiwarki i zastąpi on obecnie wyświetlaną listę. +

Wtyczki wyszukiwania Yahoo i Google dołączone z Firefoksem 2 obsługują podpowiedzi wyszukiwania. +

+

Implementowanie obsługi podpowiedzi we wtyczkach wyszukiwarek

+

Aby obsługiwać podpowiedzi wyszukiwania, wtyczka musi posiadać zdefiniowany dodatkowy element <Url> wraz z atrybutem type ustawionym na "application/x-suggestions+json" (oznacza to, że wtyczka wyszukiwarki obsługująca podpowiedzi będzie mieć dwa elementy <Url>, z których jeden jest głównym adresem URL typu text/html i odpowiada za wyszukiwarkę). +

Na przykład, wtyczka wyszukiwarki Yahoo posiada taki wpis <Url>: +

+
<Url type="application/x-suggestions+json" template="http://ff.search.yahoo.com/gossip?output=fxjson&command={searchTerms}"/>
+
+

Jeśli użytkownik wprowadzi "fir" w panelu wyszukiwania, po czym się zatrzyma, Firefox umieści "fir" w miejsce {searchTerms} i wyśle zapytanie do takiego adresu URL: +

+
<Url type="application/x-suggestions+json" template="http://ff.search.yahoo.com/gossip?output=fxjson&command=fir"/>
+
+

Wyniki są używane do stworzenia okienka z listą podpowiedzi. +

Zobacz Tworzenie wtyczek MozSearch, aby dowiedzieć się więcej o tym, jak zaimplementować wtyczkę wyszukiwarki. +

+

Implementowanie obsługi podpowiedzi na serwerze

+

Większość z obsługi podpowiedzi wyszukiwania jest obecnie implementowane po stronie serwera. Jeśli jesteś projektantem strony internetowej i chcesz wspierać podpowiedzi wyszukiwania, musisz zaimplementować obsługę zwracania podpowiedzi w Notacji Obiektu JavaScript (JavaScript Object Notation - JSON). +

Gdy przeglądarka chce otrzymać możliwe wyniki dla szukanego wyrażenia, wysyła ona żądanie HTTP GET do adresu URL określonego w elemencie <Url>. +

Wtedy Twój serwer powinien wybrać podpowiedzi, które jego zdaniem pasują do określonych warunków wyszukiwania i stworzyć JSON, który składa się z co najmniej dwóch i co najwyżej z czterech elementów: +

+
łańcuch zapytania +
Pierwszy element w JSON jest oryginalnym łańcuchem znaków zapytania. Pozwala to Firefoksowi zweryfikować czy podpowiedzi odpowiadają obecnym warunkom wyszukiwania. +
+
lista dopełnienia +
Tablica sugerowanych warunków wyszukiwania. Tablica powinna być ograniczona nawiasami kwadratowymi. Na przykład: <tt>{{ mediawiki.external('\"warunek 1\", \"warunek 2\", \"warunek 3\", \"warunek 4\"') }}</tt> +
+
opisy +
Ten opcjonalny element jest tablicą, składającą się z opisów dla każdej podpowiedzi określonej w elemencie lista dopełnienia. Mogą to być dodatkowe informacje, które silnik wyszukiwarki może zwrócić do wyświetlenia przez przeglądarkę, jak na przykład ilość wyników dostępnych dla tego wyszukiwania. +
+
Opisy nie są obsługiwane w Firefoksie 2 i w przypadku ich zdefiniowania są one ignorowane.
+
adresy URL zapytania +
Ten opcjonalny element jest tablicą alternatywnych adresów URL dla każdej podpowiedzi w elemencie lista dopełnienia. Na przykład, jeśli chcesz zaproponować mapę odnośników zamiast strony z wynikami wyszukiwania dla podanej podpowiedzi, możesz w tej tablicy zwrócić adres URL do mapy. +
+
Jeśli nie określisz adresu URL zapytania, użyte zostanie domyślne zapytanie oparte na wyszukiwarce opisanej przez element <Url> w opisie XML wtyczki wyszukiwania. +
+
Element "adresy URL zapytania" nie jest obsługiwany w Firefoksie 2 i jest ignorowany.
+

Na przykład, jeśli wyrażeniem wyszukiwania jest "fir" i nie zwracasz opisów i alternatywnych adresów URL zapytania, możesz zwrócić następujący JSON: +

+
["fir", ["firefox", "first choice", "mozilla firefox"]]
+
+

Zauważ, że w tym przykładzie określony jest tylko łańcuch zapytania i lista dopełnienia, z pominięciem elementów opcjonalnych. +

Twoja lista dopełnienia może zawierać tyle wiele podpowiedzi, ile tylko chcesz, jednak powinna ona być łatwa w obsłudze, zwłaszcza że będzie ona dynamicznie uaktualniana podczas wpisywania przez użytkownika słów do wyszukania. Ponadto metoda, której będziesz używał do wyboru podpowiedzi, zależy wyłącznie od Ciebie. +

+
+
+{{ languages( { "ca": "ca/Implementaci\u00f3_de_suggeriments_en_els_connectors_de_cerca", "en": "en/Supporting_search_suggestions_in_search_plugins", "es": "es/Permitir_sugerencias_en_los_plugins_de_b\u00fasqueda", "fr": "fr/Gestion_de_suggestions_dans_les_plugins_de_recherche", "it": "it/Supportare_i_suggerimenti_nei_plugin_di_ricerca", "ja": "ja/Supporting_search_suggestions_in_search_plugins", "zh-tw": "zh_tw/\u8b93\u641c\u5c0b\u6a21\u7d44\u652f\u63f4\u641c\u5c0b\u5efa\u8b70" } ) }} diff --git a/files/pl/archive/b2g_os/add-ons/index.html b/files/pl/archive/b2g_os/add-ons/index.html new file mode 100644 index 0000000000..7fe91371cd --- /dev/null +++ b/files/pl/archive/b2g_os/add-ons/index.html @@ -0,0 +1,58 @@ +--- +title: Firefox OS add-ons +slug: Archive/B2G_OS/Add-ons +translation_of: Archive/B2G_OS/Add-ons +--- +

Firefox OS 2.5 introduces support for add-ons, a feature that desktop users have known and loved since the beginning of Firefox.  Add-ons on Firefox OS are even more powerful and can customize not only the browser, but the whole phone experience, including tweaks to the homescreen and system apps like E-Mail and Messages. This page tells you everything you need to know to get started with creating Firefox OS add-ons and get involved with the add-ons community.

+ +
+

Note: Firefox OS add-ons are based on the WebExtensions API, which is also supported in Firefox desktop starting with version 42 and is based on the extension APIs used in Chrome and Opera.

+
+ +

Prerequisites

+ +

You should follow the below steps to get set up to start developing extensions.

+ +

1. Flash your phone to Firefox OS 2.5

+ +

Firefox OS add-ons are only supported on Firefox OS 2.5 and later.  Here’s a list of supported devices and how to update them (this list is incomplete, and will be added to as time goes on.)

+ + + +

2. Enable USB Debugging

+ +

In the Settings app on the device, select Developer > Debugging via USB > ADB and Devtools.  You should now be able to debug installed apps using WebIDE, either via a USB cable, and over Wifi (no USB cable required.)

+ +

3. Set up WebIDE

+ +

The WebIDE tool is part of Firefox and can be used to install add-ons on your phone during development — see Testing your add-on using WebIDE for more information.

+ +

See also

+ +

Developing

+ + + +

Distributing

+ + + +

Get involved

+ + diff --git "a/files/pl/archive/b2g_os/firefox_os_wst\304\231pne_budowanie/index.html" "b/files/pl/archive/b2g_os/firefox_os_wst\304\231pne_budowanie/index.html" new file mode 100644 index 0000000000..f9e294568c --- /dev/null +++ "b/files/pl/archive/b2g_os/firefox_os_wst\304\231pne_budowanie/index.html" @@ -0,0 +1,381 @@ +--- +title: Firefox OS wstępne budowanie +slug: Archive/B2G_OS/Firefox_OS_wstępne_budowanie +translation_of: Archive/B2G_OS/B2G_OS_build_prerequisites +--- +
+

Before obtaining the code to build Firefox OS, you need a properly configured build system — this page shows you how. You can currently build on 64-bit Linux distributions and OS X.

+
+
+

Note: To build Firefox OS onto a phone, begin with your phone NOT connected to your computer. We'll tell you when to plug it in.

+
+

Posiadaj kompatybilne urządzenie/emulator

+

You need to have a compatible device to build onto, or to use an emulator. Though we support several phones, some have multiple variations. We currently support specific variations and some devices have better support than others.

+
+

Note: Mozilla's B2G source code effectively is the reference implementation of B2G, but phone vendors are free to add patches or make changes. When you buy an Alcatel One Touch for example, it contains the vendor's version. This doesn't make a difference for the installed apps, but it can at the platform level. The Nexus 4 port is maintained directly by Mozilla; so it's a lot more likely to work with our version of Gecko out of the box than other tier 3 devices.

+
+

Krok 1

+

Tier 1 devices represent a primary target for development and will typically be the first to receive bug fixes and feature updates.

+
+
+ Keon
+
+ Keon is the Geeksphone Keon device, which was one of the initial developer phones. Note that builds for this device are provided by Geeksphone.
+
+ Inari
+
+ Inari is another testing device. Use this configuration to build for the ZTE Open device. Warning: newer builds of Firefox OS may have trouble booting on the ZTE Open's default boot partition.
+
+ Emulator (ARM and x86)
+
+ There are two emulators available: one emulates ARM code and the other runs everything in x86 code. Learn more about installing and using the emulators.
+
+ Note that you shouldn't use the x86 emulator — it is hard to install and not well supported.
+
+ Desktop
+
+ You can also build a desktop version of Firefox OS; this runs Gecko in a XULRunner application, and you then use the Gaia user experience inside it.
+
+

You can, of course, build the desktop client or one of the emulators without a phone.

+

Krok 2

+

Tier 2 devices are generally functional and many developers (especially app developers) are using them, so they tend to pick up changes secondarily.

+
+
+ Samsung Nexus S
+
+ The known working model numbers of Nexus S devices are GT-I9020A and GT-I9023. Others may work.
+
+ Samsung Nexus S 4G
+
+ The SPH-D720 is supported as a tier 2 device.
+
+

Krok 3

+

Firefox OS can be built for these devices, but they are not being actively worked on a regular basis by core developers. Their reliability and feature set may lag noticeably behind tier 1 and even tier 2 devices.

+
+
+ Samsung Galaxy S2
+
+ The only model that works is the i9100; no other variants are officially compatible. (i9100P might work, since the only change is a NFC chip added)
+
+ Samsung Galaxy Nexus
+
+ We are not currently aware of any variations that are not compatible.
+
+ Nexus 4
+
+ Some users on IRC have tested this successfully. May or may not require reflashing to Android 4.3 first if was running 4.4 (Android images available from Google)
+
+ Nexus 5
+
+ Some users on IRC have tested this successfully.
+
+ Tara
+
+ Tara is another testing device. Manifest of Tara is in master branch only. The script of getting Tara code is "BRANCH=master ./config.sh tara".
+
+ Unagi
+
+ Unagi is a phone being used as a test and development platform as a low-to-midrange smartphone. Many core Firefox OS developers are working on Unagi.
+
+ Pandaboard
+
+ The Pandaboard is a development board based on the OMAP 4 architecture, used to do development work on mobile platforms.
+
+
+ Important: Only devices running at least Android 4 (aka Ice Cream Sandwich) are supported. If your device is listed above but running an older version of Android, please update it before doing anything.
+
+

Note: Tier 2 and Tier 3 devices have a software home button instead of a hardware home button

+

All Tier 1 devices have a hardware Home button which returns the user to the home screen. Most current ICS based Android devices use onscreen touch buttons for navigation. We have a virtual home button for the devices without hardware home button now. If it's not automatically enabled, open the Settings app, go to the Developer settings, and then toggle on the Enable software home button preference.

+

In 1.4 there is also a developer option for "Home gesture enabled"; enabling that will remove the on-screen home button in favor of swiping up from the bottom of the screen.

+
+

Wymagania dla systemu GNU/Linux

+

To build on Linux, you'll need:

+ +

This is more than the bare minimum, but sometimes building fails just because it's missing resources. A typical error in this case is "arm-linux-androideabi-g++: Internal error: Killed (program cc1plus)".

+

You will also need the following tools installed:

+ +

Emulator build issues

+

If you are making an emulator build, you need to pay attention to these issues:

+
+

First, note that you shouldn't use the x86 emulator — it is hard to install and not well supported.

+
+

Next, the build-system for the emulator builds both 32bit and 64bit versions of the emulator. As the emulator depends on OpenGL, this means that you need to have both 32bit and 64bit versions of OpenGL libraries installed on your system. See the discussion in bug 897727.

+

There are two ways that you can solve this problem:

+ +

If your linux distro has multilib packages for OpenGL libraries, you can attempt installing them. You might then have to manually create some symlinks.

+

For example, here is the situation on Ubuntu 12.04 LTS x86-64. On this distribution, the libgl1-mesa-dev package cannot be installed simultaneously in x86-64 and i386 versions, but you can have the following combination of packages simultaneously installed:

+
sudo apt-get install libgl1-mesa-dev libglapi-mesa:i386 libgl1-mesa-glx:i386
+

After having run this command, you will still have to manually create some symlinks for the emulator build to succeed:

+
sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
+sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
+

Solution #2: just patch the emulator so it only builds 64bit

+

Just apply this patch to the sdk/ git repository under the B2G repo. This will cause the B2G emulator to only attempt to build the 64bit emulator if you're on a 64bit system, thus avoiding any multilib issues. The 32bit emulator is unused anyway on a 64bit system. This is the simplest solution, until this patch eventually bit-rots.

+

64 bit requirement installation

+

This section lists the commands you need to run in different Linux distributions to install all the requirements for building Firefox OS.

+

Ubuntu 12.04 / Linux Mint 13 / Debian 6

+

Run the following command in Terminal:

+
sudo apt-get update
+sudo apt-get install autoconf2.13 bison bzip2 ccache curl flex gawk gcc g++ g++-multilib git ia32-libs lib32ncurses5-dev lib32z1-dev libgl1-mesa-dev libx11-dev make zip
+

If you'll build for the "Flame" reference device or Nexus 5, run the following command in Terminal:

+
sudo apt-get install libxml2-utils 
+

And see the above comments about emulator build issues!

+

Ubuntu 12.10

+

Run the following command in Terminal:

+
sudo apt-get install autoconf2.13 bison bzip2 ccache curl flex gawk gcc g++ g++-multilib gcc-4.6 g++-4.6 g++-4.6-multilib git ia32-libs lib32ncurses5-dev lib32z1-dev libgl1-mesa-dev libx11-dev make zip
+

In addition to the emulator build issues discussed above, the compiler will default to gcc-4.7, which will fail to build with an error along the following lines:

+

"KeyedVector.h:193:31: error: indexOfKey was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation"

+

To fix this, you will need to specify GCC 4.6 as the default host compiler after having retrieved the B2G sources: Read Changing the default host compiler to find out how to do it.

+

In a fresh Ubuntu 12.10 install, you'll get an error about unmet dependencies for ia32-libs. The following commands fix it:

+
sudo dpkg --add-architecture i386
+sudo apt-get update
+sudo apt-get install ia32-libs
+

Ubuntu 13.04

+

Run the following command in Terminal:

+
sudo apt-get install --no-install-recommends autoconf2.13 bison bzip2 ccache curl flex gawk gcc g++ g++-multilib gcc-4.6 g++-4.6 g++-4.6-multilib git ia32-libs lib32ncurses5-dev lib32z1-dev zlib1g:amd64 zlib1g-dev:amd64 zlib1g:i386 zlib1g-dev:i386 libgl1-mesa-dev libx11-dev make zip
+

In addition to the emulator build issues discussed above, the compiler will default to gcc-4.7, which will fail to build with an error along the following lines:

+

"KeyedVector.h:193:31: error: indexOfKey was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation"

+

To fix this, you will need to specify GCC 4.6 as the default host compiler after having retrieved the B2G sources: Read Changing the default host compiler to find out how to do it.

+

Ubuntu 13.10

+

With Ubuntu 13.10, multi-arch packages are now the main way to support multiple architectures (e.g. 32-bit on a 64-bit install).  You must tell your Ubuntu system that you want to support 32-bit packages as well:
+  

+
sudo dpkg --add-architecture i386
+sudo apt-get update
+

Once you've completed that, then you can install the necessary packages:

+
sudo apt-get install --no-install-recommends autoconf2.13 bison bzip2 ccache curl flex gawk gcc g++ g++-multilib gcc-4.6 g++-4.6 g++-4.6-multilib git lib32ncurses5-dev lib32z1-dev zlib1g:amd64 zlib1g-dev:amd64 zlib1g:i386 zlib1g-dev:i386 libgl1-mesa-dev libx11-dev make zip libxml2-utils
+
+sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 1
+
+sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 2
+
+sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 1
+
+sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 2
+
+sudo update-alternatives --set gcc "/usr/bin/gcc-4.6"
+
+sudo update-alternatives --set g++ "/usr/bin/g++-4.6" 
+


+ Fedora 17/18/19/20

+

Run the following command in Terminal:

+
sudo yum install autoconf213 bison bzip2 ccache curl flex gawk gcc-c++ git glibc-devel glibc-static libstdc++-static libX11-devel make mesa-libGL-devel ncurses-devel patch zlib-devel ncurses-devel.i686 readline-devel.i686 zlib-devel.i686 libX11-devel.i686 mesa-libGL-devel.i686 glibc-devel.i686 libstdc++.i686 libXrandr.i686 zip perl-Digest-SHA wget
+

In addition to the above you will need GCC 4.6.x in order to compile the project:

+ +

Download the right version for your Fedora installation, then install it to /opt, with the following command on Fedora 17/18:

+
curl -O http://people.mozilla.org/~gsvelto/gcc-4.6.4-fc18.tar.xz
+sudo tar -x -a -C /opt -f gcc-4.6.4-fc18.tar.xz
+
+

And with the following command for Fedora 19/20:

+
curl -O http://people.mozilla.org/~gsvelto/gcc-4.6.4-fc19.tar.xz
+sudo tar -x -a -C /opt -f gcc-4.6.4-fc19.tar.xz
+
+

You will need to specify GCC 4.6.x as the default host compiler after having retrieved the B2G sources: Read Changing the default host compiler to find out how to do it.

+

If build fails with the compiler complaining about not finding libmpc.so.2, install the package compat-libmpc

+

Arch Linux

+

Run the following command in Terminal:

+
sudo pacman -S --needed alsa-lib autoconf2.13 bison ccache curl firefox flex gcc-multilib git gperf libnotify libxt libx11 mesa multilib-devel wget wireless_tools yasm zip lib32-mesa lib32-mesa-libgl lib32-ncurses lib32-readline lib32-zlib
+

To install the lib32-* packages you need to have the multilib repository enabled.

+

B2G can only be compiled with gcc4.6.4, and because Arch Linux always has bleeding edge software you will need to install gcc46-multilib from AUR. Note that you will have to edit the PKGBUILD and add staticlibs to the options array, or gcc will be unable to compile B2G and give you a cannot find -lgcc error when compiling. You will also need to add the following to your .userconfig file:

+
export CC=gcc-4.6.4
+export CXX=g++-4.6.4
+

By default, Arch Linux uses Python3. You'll have to force it to use the old python2. You can do that by linking the python2 executable to python but this is discouraged and considered error-prone. This will also break python 3 if it is installed on your system. A better way is to use virtualenv/virtualenvwrapper:

+
sudo pacman -S python-virtualenvwrapper
+source /usr/bin/virtualenvwrapper.sh
+mkvirtualenv -p `which python2` firefoxos
+workon firefoxos
+
+

Android will complain that you need make 3.81 or make 3.82 instead of 4.0. You can download make 3.81 from AUR.  This will install the make-3.81 binary on your path, you need to create a symlink named make to a location earlier in the PATH variable for the build to use the correct version.

+
mkdir -p ~/bin
+ln -s `which make-3.81` ~/bin/make
+export PATH=~/bin:$PATH
+
+

Android also needs the Java6 SDK and Arch only has Java7.  Unfortunately the aur build is broken, but you can still download the Java 6 SDK and install it manually.  You will then need to put it in your path.

+
cp ~/Downloads/jdk-6u45-linux-x64.bin /opt
+su
+cd /opt
+chmod +x jdk-6u45-linux-x64.bin
+./jdk-6u45-linux-x64.bin
+exit
+ln -s /opt/jdk1.6.0_45/bin/java ~/bin/java
+
+
+

Gentoo Linux

+
Installing ccache
+

You will need to install ccache, a tool for caching partial builds.

+
# emerge -av ccache
+
+

Because ccache is known to frequently cause support issues, Gentoo encourages you to use it explicitly and sparingly.

+

To enable the required use of ccache, on the subsequent step of this guide where the ./build.sh script is called, Gentoo users should instead run the command with an explicitly extended path, ie.

+
PATH=/usr/lib64/ccache/bin:$PATH ./build.sh
+
+
Generating Partition Images
+

If you are building B2G for actual physical hardware, then you may at some point also wish to generate some partition images for upload to your device. (For example, to restore backed up files to the device via the fastboot utility)

+

The filesystem image format used in this case is YAFFS2 (Yet Another Filesystem 2). Gentoo has support for the very latest (ie. git HEAD) yaffs2-utils userland package in portage. (Note: You will also need kernel patches if you want to mount YAFFS2 images, but this is not really required since you can deconstruct and rebuild them instead.)

+
# emerge --autounmask-write yaffs2-utils; etc-update; emerge -av yaffs2-utils
+

In order to generate such an image, simply change to the parent directory of the partition filesystem tree you wish to package, and issue a command like this:

+
mkyaffs2image system/ system.img
+

Wymagania dla systemu Mac OS X

+

To build Firefox OS on Mac OS X, there are a number of prequisite steps you need to follow, which are detailed below. We also discuss common errors you might come across in particular situations, and solutions to those.

+
+

Note: Configuring and Building B2G for Keon WON'T WORK on a Mac. You'll need to use Linux to build B2G for this device.

+
+

Install XCode Command Line Utilities

+

You need to install Xcode's Command Line Utilities. You can download just the Command Line Utilities from Apple's developer downloads page for your particular version of OS X, however if you would like the entire Xcode suite of applications, you can install Xcode through the Mac App Store. 

+

Xcode 4.3.1 (OS X 10.7 "Lion") and other newer versions such as 4.4.1+ (that is, Mac OS X 10.8 "Mountain Lion"), won't necessarily include the required Command Line Utilities. When you install Xcode, make sure to go into Preferences, then the Downloads panel, and install the Command Line Utilities. In addition, make sure you have at least 20 GB of free disk space.

+

Screenshot of Xcode Downloads Command Line Tools

+
+ Note: The Firefox OS emulator requires a Core 2 Duo processor or later; that is, a system that is compatible with Mac OS X 10.7 "Lion". You do not actually have to be running Lion, you just have to be compatible with it. You can, however, build any Firefox OS build on many older Macs.
+

Run Firefox OS Mac Bootstrap

+

Next, open a terminal and run the following command:

+
curl -fsSL https://raw.github.com/mozilla-b2g/B2G/master/scripts/bootstrap-mac.sh | bash
+

This will pull and run a bootstrap script that makes sure you have all the prerequisites met to build the emulator. It will also prompt you for permission to install anything you're missing, and provide warnings and suggested fixes to problems. The script will check for and install the following items:

+ +

Xcode wrangling

+

If you have already upgraded to Xcode 4.4+ and get the message that Xcode is outdated, check the Xcode path with:

+
xcode-select -print-path
+

If it still points to /Developer you can update the path with:

+
sudo xcode-select -switch /Applications/Xcode.app
+

Making the Mac OS X 10.6 SDK available

+

You also need to have the Mac OS X 10.6 SDK available. The SDK needs to be available at

+
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
+

If it cannot be found there you will need to extract and copy it from Xcode 4.3. To do this:

+
    +
  1. Download the XCode 4.3 .dmg file from the Apple Developer portal (you'll need an Apple Developer account).
  2. +
  3. Download the utility Pacifist and use it to extract the 10.6 SDK from the XCode 4.3 .dmg file. Click on the "Extract Package" button, find the SDK by searching for 10.6 in the search box, then Ctrl + click on the MacOSX10.6.sdk directory and Extract it to a suitable location.
  4. +
  5. Add a symlink from the 10.6 SDK location to the /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/ directory. For example, if you put the 10.6 SDK on your desktop, the comment would be
  6. +
+
ln -s /Users/<yourusername>/Desktop/MacOSX10.6.sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
+

Be aware of Mac file system case sensitivity

+

By default, Mac OS X ships with a case-insensitive file system.  This is problematic because the Linux kernel has a number of files with the same name, but different case.  For example, see the header files xt_CONNMARK.h and xt_connmark.h.  This results in a number of files appearing to be modified in /kernel after a fresh ./config.sh.

+

In many cases you can run the build just fine; for some platforms, however, you may encounter the following error:

+
ERROR: You have uncommited changes in kernel
+You may force overwriting these changes
+with |source build/envsetup.sh force|
+
+ERROR: Patching of kernel/ failed.
+

Please see bug 867259 for more discussion and possible fixes for this problem.

+

Alternatively, it will always be safest to build on a case sensitive file system.  The easiest way to do this is to create a separate, mountable disk image with case-sensitivity enabled.  You can do this using Apple's Disk Utility application or from the command line:

+
hdiutil create -volname 'firefoxos' -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 40g ~/firefoxos.sparseimage
+

Mount the drive with:

+
open ~/firefoxos.sparseimage
+

Change into the mounted drive with:

+
cd /Volumes/firefoxos/
+

You can then check out the code and compile from this location without worrying about case-sensitivity problems.

+

Mountain Lion homebrew gotcha

+
+
+ If you are on Mountain Lion and you receive an error during the installation of the dependencies via homebrew, such as:
+
+
+
clang: error: unable to execute command: Segmentation fault: 11
+ ... try reinstalling the dependency manually adding the --use-gcc flag, for example: +
brew install mpfr --use-gcc
+
+

Follow Samsung Galaxy S2 extra steps

+

If you plan to build for the Samsung Galaxy S2, you will also need to install heimdall. See {{ anch("Installing heimdall") }} for details. This is not done for you by the bootstrap script!

+
+ Note: If you have installed the Samsung Kies tool, which is used to manage the contents of many Samsung phones, you will have to remove it before you can flash Firefox OS onto your device. You can use the standard application removal process on Windows; on Mac, the Kies install disk image has a utility to fully remove Kies from your system. Flashing will not work if you have Kies installed. If you forget to remove Kies, the build system will detect it and remind you to uninstall it. Note also that the uninstall tool does not correctly remove the folder ~/Library/Application Support/.FUS, and leaves a reference to a utility there in your user startup items list. You will want to remove these manually.
+

Fix libmpc dependency if broken

+

gcc 4.6 was built with libmpc 0.9; if you then use homebrew to update packages, libmpc gets updated to version 1.0, but homebrew doesn't rebuild gcc 4.6 after the library version changes. So you need to create a symlink to make things work again, like this:

+
cd /usr/local/lib/
+ln -s libmpc.3.dylib libmpc.2.dylib
+

Optional: Install HAX

+

Intel provides a special driver that lets the B2G emulator run its code natively on your Mac instead of being emulated, when you're using the x86 emulator. If you wish to use this, you can download and install it. It's not required, but it can improve emulation performance and stability.  

+

Before you install HAX you will need to install the Android SDK.

+

Instalacja adb

+

The build process needs to pull binary blobs from the Android installation on the phone before building B2G (unless you're building the emulator, of course).  For this, you will need adb, the Android Debug Bridge. Our Installing ADB article explains how to get adb installed.

+
+

Note for future when you start to use adb: adb needs the phone's lock screen to be unlocked in order to see your phone (at least in later versions of Firefox OS). You'll probably want to disable the lock screen (we'll get to how later in the build instructions).

+
+

Instalacja heimdall

+

Heimdall is a utility for flashing the Samsung Galaxy S2. It's used by the Boot to Gecko flash utility to replace the contents of the phone with Firefox OS, as well as to flash updated versions of B2G and Gaia onto the device. You'll need it if you want to install Firefox OS on a Galaxy S2; it is not needed for any other device. For other devices, we build and use the fastboot utility instead.

+
+ Note: Again, it's important to note that this is only required for installing Firefox OS on the Samsung Galaxy S2.
+

There are two ways to install heimdall:

+ +

Konfiguracja ccache

+

The B2G build process uses ccache. The default cache size for ccache is 1GB, but the B2G build easily saturates this; around 3GB is recommended. You can configure your cache by running the following command inside terminal:

+
$ ccache --max-size 3GB
+

Dla systemu Linux: konfigurowanie reguł udev dla telefonu

+
+

Note: This section is specific to Linux; Mac OS X has the necessary device permissions set up already.

+
+

Next, you need to confingure the udev rule for your phone,

+

You can get the USB vendor ID by running lsusb with your phone plugged in, but typically it's Google 18d1, Samsung 04e8, ZTE 19d2, Geeksphone/Qualcomm 05c6. Add this line in your /etc/udev/rules.d/android.rules file (replacing XXXX with the ID for your device):

+
SUBSYSTEM=="usb", ATTR{idVendor}=="XXXX", MODE="0666", GROUP="plugdev"
+

Take ZTE for example, the content in android.rules will be

+
SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0666", GROUP="plugdev"
+
+

If the file doesn't exist, create it. The rules.d directory is usually read only by default, so you may have to use chmod to make the directory writeable, or the file, or both.

+
+

Once you've saved the file, and closed it,  make the file readable:

+
sudo chmod a+r /etc/udev/rules.d/android.rules
+
+

Now that the udev rules have been updated, restart the udev daemon. For ubuntu:

+
sudo service udev restart
+

Finally, unplug and the USB cable but don't replug it in because we need to enable remote debugging on the phone first.

+

Enable remote debugging

+

Before you plug your phone back into your USB port, put it USB developer mode. This allows you to debug and flash the phone. To enable developer mode, on your phone enable Remote Debugging in Developer settings (this was called Developer mode on older versions.) Once the option is checked, remote debugging is enabled, and you are ready to go.

+

At this point, connect your phone to your computer via a USB cable (if you created the udev rule before, this will trigger udev to detect the phone and create the device node with the right permissions). Now you can check if you can list your device via the adb devices command (remember that adb can only see your phone when the lock screen is unlocked). If everything has worked ok, you should see an output similar to this (the following is for a Geeksphone Keon):

+
$ adb devices
+List of devices attached
+full_keon       device
+

If the device did not list as expect, check the file name and the script are all correct (see previous section), then restart the computer and retype the command again. Note also that if your device uses fastboot, the bootloader may identify itself with a different vendor ID than the one you see when the device boots normally.

+

Backup the phone system partition

+
+

Note: You have to do this before you build your device if you do not have an existing system backup, because some libraries will be referenced in build time. These library might be proprietary so we can't provide in our code base.

+
+

It is recommended that you back up the entire Android system partition on your phone.

+

You can use this copy of the binary blobs for Android in case you later delete your B2G tree. To do this, run:

+
adb pull /system <backup target dir>/system
+
+

 Depending on the phone, you may also need to pull the /data and/or /vendor directories:

+
adb pull /data <backup target dir>/data
+adb pull /vendor <backup target dir>/vendor
+
+

If the pull commands fail with an "insufficient permission" message, try the following:

+ +

On to the next step

+

At this point, you should be ready to fetch the Firefox OS code!

diff --git a/files/pl/archive/b2g_os/index.html b/files/pl/archive/b2g_os/index.html new file mode 100644 index 0000000000..7ed185db02 --- /dev/null +++ b/files/pl/archive/b2g_os/index.html @@ -0,0 +1,86 @@ +--- +title: B2G OS +slug: Archive/B2G_OS +tags: + - B2G + - Firefox OS + - Gaia + - Początek FirefoxOS + - Początkujący + - Przegląd + - Łatwe +translation_of: Archive/B2G_OS +--- +

Firefox OS jest obecnie w trakcie intensywnego rozwoju; Stale pracujemy nad ułatwieniami w używaniu i bezpieczeństwie Gaia, i tworzeniu aplikacji. Jakkolwiek, potrzebujesz wiedzy o systemach na jakich jest zbudowany stos Firefox OS lub  telefon z Firefox OS. Linki poniżej są przeznaczone dla programistów sieciowych zainteresowanych uruchamianiem i tworzeniem zmian do Gaia lub tworzeniem i rozwijaniem aplikacji na urządzenia z systemem Firefox OS.

+ + + + + + + + +
+

Dokumentacja Firefox OS

+ +
+
Wprowadzenie do Firefox OS
+
Informacje wprowadzające czym jest Firefox OS i jak on działa.
+
Pisanie aplikacji dla Firefox OS
+
Tutorial opisujący jak tworzyć aplikacje działające na urządzeniach z Firefox OS.
+
Kompilacja i instalacja Firefox OS
+
Przewodnik jak skompilować Firefox OS i zainstalować go na swoim urządzeniu. Ten przewodnik obejmuje również kompilację emulatora Firefox OS dla uruchamiania Firefox OS na komputerze.
+
Gaia
+
Dokumentacja Gaia, aplikacji interfejsu użytkownika dla urządzeń z Firefox OS. Jest to internetowa aplikacja uruchamiana na szczycie stosu oprogramowania Firefox OS.
+
Gonk
+
Dokumentacja Gonk, warstwy systemu operacyjnego poniżej Gaia. Składa się on z jądra Linuxa i warstwy abstakcyjnej sprzętu, z którym łączy się Gecko.
+
Gecko
+
Gecko jest warstwą  Firefox OS która zapewnia taką samą implementację otwartych standardów internetowych, jakiej używają Firefox i Thunderbird, a także wiele innych aplikacji.
+
Bezpieczeństwo
+
Dokumentacja zabezpieczeń w Firefox OS. Ten zawierający tematy o bezpieczeństwie urządzeń z każdej perspektywy: dla programistów aplikacji, integratorów urządzeń, itd. 
+
Wydajność
+
Artykuły o optymalizacji aplikacji dla Firefox OS.
+
Przegląd architektury Firefox OS
+
Przegląd jak zbudowany jest Firefox OS.
+
Rozwiązywanie problemów
+
Przewodnik wspólnego rozwiązywania problemów z Firefox OS.
+
Testowanie Firefox OS
+
Przewodnik testowania Firefox OS, zawierający informacje o tworzeniu testów automatycznych.
+
Debugowanie w Firefox OS
+
Przewodnik debugowania twoich aplikacji mobilnych i samego Firefox OS.
+
Przewodnik telefonu dla programisty Firefox OS
+
Przewodnik po telefonie programisty Firefox OS, który Mozilla zapewnia niektórym programistom. Ten przewodnikma zastosowanie również wtedy, gdy ktoś zainstalował Firefox OS na twoim telefonie za ciebie.
+
Przenoszenie Firefox OS
+
Informacja o tym jak przenieść Firefox OS na nowe urządzenie.
+
+ +

Zobacz wszystko...

+
+

Jak dostać pomoc od społeczności

+ +

Jeśli pracujesz z Firefox OS lub tworzysz aplikacje, które chcesz uruchomić na urządzeniach z Firefox OS, tutaj są wspólne zasoby, aby ci pomóc!

+ +
    +
  • Zadawaj swoje pytania na kanale IRC Mozilli do spraw Gecko: #b2g
  • +
+ +

Nie zapominaj o netykiecie...

+ + + + + + +

Zasoby

+ + +
diff --git a/files/pl/archive/b2g_os/instalacja_firefox_os/index.html b/files/pl/archive/b2g_os/instalacja_firefox_os/index.html new file mode 100644 index 0000000000..792927987e --- /dev/null +++ b/files/pl/archive/b2g_os/instalacja_firefox_os/index.html @@ -0,0 +1,72 @@ +--- +title: Instalacja Firefox OS +slug: Archive/B2G_OS/Instalacja_Firefox_OS +tags: + - Android + - Firefox + - Firefox OS + - FirefoxOS + - Gaia + - OS + - dual boot + - instalacja + - konfiguracja + - sgs2 + - system +translation_of: Archive/B2G_OS/Building_and_installing_B2G_OS +--- +

Ponieważ Firefox OS jest aktualnie w fazie ciągłego rozwoju (przedpremierowa wersja) najlepszą drogą do upewnienia się, że posiadamy jego aktualną wersję jest instalcja ręczna. Poniższe artykuły pomogą Ci przejść przez proces przygotowania i instalacji Firefox OS na emulatorze, kompatybilnym urządzeniu lub w interfejsie użytkownika Gaia przeglądarki Firefox.

+ + + + + + + +
+

Pobieranie i konfiguracja Firefox OS

+
+
+ Wymagania Firefox OS
+
+ Co potrzebujesz(oraz co musisz zrobić) zanim skonfigurujesz Firefox OS po raz pierwszy.
+
+ Przygotowanie do konfiguracji Firefox OS
+
+ Zanim będzie można konfigurować Firefox OS, trzeba sklonować repozytorium. W tym artykule opisano, jak to zrobić.
+
+ Konfiguracja Firefox OS
+
+ Jak skonfigurować Firefox OS.
+
+

Więcej...

+
+

Instalacja Firefox OS i/lub Gaia

+
+
+ Sposób uruchamiania interfejsu Gaia lub Firefox OS
+
+ Możesz używać interfejsu Gaia w Firefoxie lub uruchamiać Firefox OS na urządzeniu mobilnym lub w symulatorze okienkowym na komputerze. Ten przewodnik pomoże wybrać odpowiednie rozwiązanie dla Ciebie.
+
+ Używanie intefejsu Gaia w Firefoxie
+
+ Jak używać interfejsu Gaia w przeglądarce Firefox na komputerze.
+
+ Używanie klienta okienkowego Firefox OS
+
+ Artykuł poświęcony używaniu klienta okienkowego Firefox Os; Symuluje interfejs Gaia w oknie aplikacji. Jest to lepsze rozwiązanie od pracy w oknie przeglądarki, ale gorsze od używania emulatorów.
+
+ Używanie emulatorów Firefox OS
+
+ Artykuł dotyczący wyboru wersji emulatora Firefox Os, jego konfiguracji i instalacji.
+
+ Instalacja Firefox OS na urządzeniu mobilnym
+
+ Jak zainstalować system Firefox OS na urządzeniu mobilnym.
+
+ Dual boot Firefox OS oraz Androida na SGS2
+
+ Jak przygotować Firefox OS/ Androida do dual boot'a na Samsungu Galaxy S2
+
+
+

 

diff --git a/files/pl/archive/b2g_os/instalacja_firefox_os/streszczenie_procesu_budowania_firefox_os/index.html b/files/pl/archive/b2g_os/instalacja_firefox_os/streszczenie_procesu_budowania_firefox_os/index.html new file mode 100644 index 0000000000..3666a7ded4 --- /dev/null +++ b/files/pl/archive/b2g_os/instalacja_firefox_os/streszczenie_procesu_budowania_firefox_os/index.html @@ -0,0 +1,149 @@ +--- +title: Streszczenie procesu kompilowania Firefox OS +slug: Archive/B2G_OS/Instalacja_Firefox_OS/Streszczenie_procesu_budowania_Firefox_OS +tags: + - Firefox OS + - Kompilowanie + - instalacja + - install +translation_of: Archive/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_build_process_summary +--- +
+

Kompilowanie i instalowanie systemu Firefox OS wymaga dużo wolnego czasu, szybkiego łącza internetowego i wysokiej mocy obliczeniowej komputera. Niestety podczas tak długiego procesu coś może pójść nie tak. Na tej stronie znajdują się  informacje, które pomogą przebyć tę długą drogę.

+
+ +
+

Notatka: Podczas czytania artykułów dotyczących kompilowania Firefox OS natkniesz się na określenia "B2G", lub "Boot2Gecko". "Boot2Gecko" jest oficjalną nazwą kodową systemu Firefox OS.

+
+ +

Główny cel: uzyskanie czterech plików .img

+ +

 

+ + + + + + + + + + + + + + + + + + + + +
boot.imgZawiera rdzeń Linuxa, system plików i podstawowe narzędzia Unixowe.
system.imgZnajduje się tam główny rdzeń systemu Firefox OS, czyli Gonk, Gecko i plik wykonywalny b2g.
userdata.imgTutaj zawarty jest profil Gecko i aplikacje Gaia.
recovery.imgTak samo jak boot.img, zawiera rdzeń Linuxa i system plików, ale odpowiada za udostępnienie użytkownikowi narzędzi do naprawy uszkodzonego urządzenia.
+ +

Kiedy te cztery obrazy zostaną stworzone, mogą zostać przesłane do urządzenia.

+ +

Firefox OS jest tworzony na podstawie Android Open Source Project (AOSP). Narzędzia AOSP takie jak adb lub fastboot pozwalają na zaawansowane zarządzanie urządzeniem. Przykładem może być komenda adb reboot-bootloader, która sprawia, że urządzenie zrestartuje się i zatrzyma rozruch systemu na wczesnym etapie, co umożliwi przesłanie obrazu systemu poprzez wpisanie komendy fastboot flash $partition $image.

+ +

Pierwszy obraz: boot.img

+ +

Zawiera rdzeń Linuxa, odpowiadający za uruchamianie podstawowych programów i wykonywanie skryptów. Zostanie przesłany na partycję "boot" i dostęp do niego będzie możliwy poprzez użycie komendy adb shell. Ponieważ jest najważniejszą częścią systemu, aby go modyfikować, potrzeba uprawnień root.

+ +

Możliwe jest również modyfikowanie istniejącego już obrazu boot.img, poprzez przeglądanie, kopiowanie,  ponowne kompilowanie jego elementów. Takie operacje zostały opisane na tej stronie: Alcatel One Touch Fire Hacking (Mini) Guide.

+ +

Obrazy boot.img mogą zostać przetestowane przed przesłaniem ich. Gdy urządzenie będzie w trybie bootloadera, wystarczy użyć narzędzia fastboot do uruchomienia obrazu boot.img. Nie trzeba wtedy instalować obrazu na urządzeniu, tak, jak miałoby to miejsce w przypadku komendy fastboot boot /ścieżka/do/boot.img.

+ +

Drugi obraz: system.img

+ +

Obraz systemu (system.img) zawiera główne elementy systemu Firefox OS:

+ + + +
+

Więcej informacji o budowie systemu znajdziesz na stronie Firefox OS platform.

+
+ +

Obraz systemu zostanie przesłany na główną partycję urządzenia (utworzoną przez obraz boot.img), a wszystkie pliki systemowe będą znajdowały się w folderze /system/.

+ +
+

Notatka: Obraz systemu zawiera również plamy binarne (binary blobs), które mogą zostać wykorzystane przez urządzenie do kontrolowania radia komórkowego.

+
+ +

Trzeci obraz: userdata.img

+ +

Obraz z danymi użytkownika zawiera aplikacje Gaia, które są wykorzystywane podczas pracy systemu.

+ +

Obraz userdata.img zostanie umieszczony na partycji userdata, a jego zawartość będzie widoczna w folderze /data/ wtedy, gdy system plików urządzenia będzie z niego korzystał. Trzeba również wspomnieć, że folder /data/b2g/ zawiera profil platformy Gecko, a zawartością folderu /data/local/webapps/ są wszystkie aplikacje, które znajdują się w pamięci urządzenia.

+ +

Czwarty obraz: recovery.img

+ +

Obraz przywracania systemu zawiera taki sam rdzeń, jaki ma obraz boot.img. Różnicą jest sposób wykonywania skryptu, co pozwala użytkownikowi na aktywowanie skryptu przywracającego system poprzez użycie fizycznych przycisków na urządzeniu.

+ +

Obraz recovery.img zostanie umieszczony na partycji recovery i nie może on zostać zmodyfikowany podczas działania systemu.

+ +

Proces kompilacji

+ +

Cały proces kompilacji systemu Firefox OS składa się z następujących etapów:

+ + + + + + + + + + + + + + + + + + + + +
PrzygotowaniaUzyskanie wszystkich programów potrzebnych do przeprowadzenia procesu kompilacji. Do tych programów zaliczają się kompilatory, biblioteki itp.
KonfiguracjiPobranie kodu źródłowego i utworzenie pliku .configure, w którym zawarte będą zmiennie, ścieżki i inne wartości, które zostaną wykorzystane w procesie kompilacji.
TworzeniaTworzenie profili platformy Gecko i aplikacji Gaia dla urządzenia.
InstalowaniaZainstalowanie na urządzeniu wcześniej przygotowanych plików.
+ +

 

+ +

Przygotowanie

+ +

Należy przeprowadzić konfigurację wstępną, aby upewnić się, że komputer ma wszystkie narzędzia, potrzebne do skompilowania systemu. Do takich narzędzi zalicza się m.in. kompilator.

+ +

Ten krok można wykonać przy użyciu skryptu. Szczegóły zostały omówione na tej stronie.

+ +
+

Notatka: Na Unixowych systemach można sprawdzić obecność wymaganego oprogramowania, poprzez komendę which. Parametrem komendy which jest sprawdzany program.

+
+ +

Konfiguracja

+ +

Aktualny krok zaczyna się wraz z uzyskaniem plików systemu Firefox OS. W uzyskaniu tych plików może pomóc narzędzie git. Konfiguracja obejmie cały kod źródłowy i utworzy plik .config, w którym znajdą się zmienne dla kompilowanego systemu.

+ +

Konfiguracja rozpocznie się po uruchomieniu skryptu config.sh. Szczegóły zostały omówione na stronie Preparing for your first B2G build.

+ +

Skrypt konfiguracyjny potrzebuje parametrów urządzenia, na którym ma zostać zainstalowany system Firefox OS. Nazwa tworzonego systemu jest nazwą kodową powiązaną z architekturą CPU, a nie z konkretnym urządzeniem. Lista nazw kodowych znajduje się tutaj.

+ +

Podczas konfiguracji używane jest również narzędzie Android Open Source Project repo. Pozwala ono na pobranie lub zaktualizowanie kodu używanego podczas procesu kompilacji.

+ +

Kompilacja

+ +

W tym kroku zaczyna się kompilacja kodu źródłowego i uzyskanie czterech obrazów.

+ +

Kompilacja uruchomi się po aktywowaniu skryptu build.sh. Szczegóły zostały omówione na stronie Building Firefox OS.

+ +

Możliwe jest skompilowanie tylko części systemu Firefox OS. Można to zrobić poprzez dodanie do skryptu kompilującego jednego parametru. Na przykład, jeżeli chcemy uzyskać tylko element gaia, to dodajemy parametr gaia.

+ +

Możliwe jest również skompilowanie obrazów omówionych na początku tej strony. Jeżeli chcemy skompilować obraz system.img, możemy to zrobić komendą ./build.sh out/platform/$target/system.img (parametr $target jest taki sam, jak w procesie konfiguracji).

+ +

Instalacja

+ +

Należy uruchomić skrypt flash.sh, aby nowo skompilowany kod trafił do pamięci urządzenia.

+ +

Możliwe jest zainstalowanie tylko poszczególnych części systemu. Żeby to zrobić, trzeba dodać parametr do skryptu flash.sh. Na przykład, żeby zainstalować tylko aplikacje Gaia, wystarczy wpisać ./flash.sh gaia.

diff --git a/files/pl/archive/b2g_os/phone_guide/index.html b/files/pl/archive/b2g_os/phone_guide/index.html new file mode 100644 index 0000000000..d90e90d259 --- /dev/null +++ b/files/pl/archive/b2g_os/phone_guide/index.html @@ -0,0 +1,53 @@ +--- +title: Firefox OS developer phone guide +slug: Archive/B2G_OS/Phone_guide +tags: + - B2G + - Firefox OS + - Landing + - NeedsTranslation + - Phones + - TopicStub +translation_of: Archive/B2G_OS/Phone_guide +--- +
+

This section contains developer information relevant to specific phones that run Firefox OS. We have general information available on Building and installing Firefox OS and Hacking Firefox OS, so please go there for information about building and installing the platform from scratch. Developers with specific phones in their possession may however find the following articles useful.

+
+

Specific device information

+
+
+ Firefox OS phone data
+
+ In this article we list the various available Firefox OS phones along with information such as their code names, availability, and specific hardware features.
+
+ Flame
+
+ Information on Mozilla's high-end Firefox OS reference phone, codenamed the Flame, and produced in partnership with T2Mobile.
+
+ Geeksphone
+
+ In this article we cover some basic tips on how to keep your Geeksphone up-to-date and how to tweak the system Gaia applications.
+
+ ZTE OPEN
+
+ This article contains information on the ZTE OPEN Firefox OS device.
+
+ ZTE OPEN C
+
+ The ZTE Open C is an updated ZTE-produced Firefox OS device, with higher end hardware and newer software.
+
+

General Firefox OS information

+
+
+ General device features
+
+ This page lists typical Firefox OS hardware features and minimum hardware requirements.
+
+ Troubleshooting
+
+ This article provides tips for resolving common problems you may have while using Firefox OS.
+
+ Best practices for open reference devices
+
+ A set of best practices that we believe should come highly recommended for any widely available open reference devices. All of the recent Firefox OS reference devices have followed these practices.
+
diff --git "a/files/pl/archive/b2g_os/phone_guide/p\305\202omie\305\204/index.html" "b/files/pl/archive/b2g_os/phone_guide/p\305\202omie\305\204/index.html" new file mode 100644 index 0000000000..ab4c222e60 --- /dev/null +++ "b/files/pl/archive/b2g_os/phone_guide/p\305\202omie\305\204/index.html" @@ -0,0 +1,384 @@ +--- +title: płomień +slug: Archive/B2G_OS/Phone_guide/płomień +translation_of: Archive/B2G_OS/Phone_guide/Flame +--- +
+

Updates on your Flame: We encourage you to join the following mailing list to receive periodic updates on software builds and other news affecting your Flame device: https://mail.mozilla.org/listinfo/flamenews

+
+ +

A picture of the Flame device, showing the Firefox OS homescreen containing several app icons.

+ +

Available to order

+ +

The Flame developer reference phone is a milestone in Firefox OS device releases. The Flame hardware offers a representative set of specs — including FWVGA display and dual-core processor — to help developers build great content and experiences. A single hardware platform is also good for testers, making it easier to test and address specific software issues without having to worry about device model-specific bugs, etc.

+ +

If you have your phone in hand and want to start playing with it, developing and distributing apps, or contributing to the Firefox platform, the following links will get you where you need to go:

+ + + +

If you’d like to find out more about updating the operating system, recovering it, pushing apps to it, or phone specs, you’ll find the information you need below.

+ +

Purchasing a device

+ +

Our device manufacturer partner has made the device available to order on everbuying.com, for US$170 including global shipping (device cost is $145, shipping is $25 and custom fees may still apply, depending on the destination country). The device is bootloader- and carrier-unlocked, and it utilizes a quad-band GSM+UMTS radio so that it can work with a wide variety of operators/carriers.

+ +

Important steps to follow first

+ +

There are a couple of steps you should make sure you follow for your particular operating system, before you start trying to update your device, for example by updating your Flame's version of Firefox OS, or pushing apps to your phone (both are covered below.)

+ +

All operating systems

+ +

You need to install ADB and Fastboot on your computer — these are applications that allow you to interact with your phone from your computer when the two are connected via the phone's USB charger cable. They are needed for Flashing your phone to a new version of Firefox OS, recovering from an unresponsive state, pushing apps to your phone, etc.

+ +
+

Note: If you are on Ubuntu you can install ADB and Fastboot simply by using sudo apt-get install android-tools-adb android-tools-fastboot on the command line.

+
+ +

ADB and Fastboot are available in the Android Developer Toolkit:

+ +
    +
  1. Go to the above link.
  2. +
  3. Press the Download Eclipse ADT button.
  4. +
  5. Agree to the license conditions.
  6. +
  7. Choose between the 32-bit and 64-bit version (32-bit will do if you are not sure).
  8. +
  9. Click the final Download Eclipse ADT with the Android SDK... button.
  10. +
  11. Once the download is complete, unzip the zip file's contents onto your computer's desktop.
  12. +
  13. The folder name is a bit complicated; rename it to just adt.
  14. +
+ +

ADB is a tool that you run from the command line. If you open your terminal/command prompt, go to adt/sdk/platform-tools and run the adb command, you should see a load of information thrown back at you about what you can do with ADB. Running adb devices should return the line List of devices attached, and nothing else, because you haven't got any devices attached yet.

+ +

But at this point, you need to set the PATH variable to point to the ADB tool, so you can run it from anywhere, not just when you are in the exact directory that ADB is in.

+ +

To do this on Windows 8 (Windows 7 will be very similar, but with slightly different menu options):

+ + + +

On Mac/Linux:

+ + + +

Extra steps for Linux and Mac

+ +

No additional steps should be required if you are using a Linux or Mac system, although depending on your Linux distro, you might need to add a udev rule for your phone.

+ +

The udev rule for the Flame should look something like the following:

+ +
SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9025", GROUP="users", MODE="0666"
+ +

Make sure to --reload-rules, then unplug and replug and your device before continuing.

+ +

Extra steps for Windows

+ +

To access the Flame device with the ADB and Mozilla dev tools like App Manager/WebIDE, a USB driver is required. Follow the steps outlined in the below sections to install it.

+ +

Downloading the driver

+ +

Download the Windows driver from this location. Once downloaded, extract the contents of the ZIP file to a suitable place on your hard drive.

+ +
+

Note: The Android Debug Bridge (ADB) must be installed first: see instructions above if you've not already done this.

+
+ +

Installing the USB Driver

+ +

At this point, connect your Flame device to your computer using a USB cable.

+ +

To install the driver, open the Alcatel_USB_Driver_Q_4.0.0_2013_11_11_noinstall directory within the extracted ZIP file and double click on the DriverInstaller.exe executable. You may receive a warning at this point that the executable is from an unknown publisher. If so, select the Yes button and the executable will be launched.

+ +

Simple dialog box showing a picture of a phone along with install and uninstall buttons.

+ +

Click on the Install button to install the driver.

+ +

After the driver installs, you can check that it is working by opening a command line window and typing adb devices. This should list the connected device with an output something like:

+ +
List of devices attached
+3561d02a          device
+ +

If your device is not showing up here, check in the Windows Device Manager. Your Flame may be showing up as "ACER ADB Interface". You can confirm this by unplugging the device and seeing if it disappears from the device manager. Uninstall the driver software by right-clicking on "ACER ADB Interface" and clicking uninstall.  Be sure to check the box in the dialog to delete the driver software.  Now re-run the installer above. It is advisable to set the screen timeout on your Flame to something high (Settings > Display > Screen timeout) as Windows sometimes appears to reinstall the default drivers when the screen turns off.

+ +

Updating your Flame's software

+ +

We will have two main "channels" of Firefox OS software version releases for the Flame phone:

+ + + +

You can get recovery files and tools at the following storage location:

+ + + +
+

Note: Firefox OS images v180 and above are based on Android KK (Kitkat, 4.4); JB (Jellybean, 4.1–4.3) builds have now been discontinued and are no longer supported, so don't use anything older than v180.

+
+ +
+

Important: When running a shallow or full flash, your phone data will be overwritten: you should therefore back up your data before updating! See the {{anch("Backing up and restoring your Flame data")}} section for more details.

+
+ +

To install the base image on your device:

+ +
    +
  1. Make sure remote debugging is enabled on your Flame, using the Remote debugging/Debugging via USB option in the device's Developer settings (the option is different, depending on whether you have Firefox 1.3 and under, or Firefox 1.4+ installed).
  2. +
  3. Connect your Flame to your computer via a USB cable if it isn't already. Verify that the computer is connected to the device by running the adb devices command in a terminal.
  4. +
  5. Download the .zip file referenced above. Unzip it onto your Desktop.
  6. +
  7. Go into the directory you extracted the software into and run it: +
      +
    • On Windows, enter the directory in your command prompt, then run the flash.bat script using flash.bat (or double click the file in explorer.)
      + Note: If flash.bat is missing, simply rename the flash.sh file to flash.bat, then run that. Make sure you have adb and fastboot installed and available on PATH.
    • +
    • On Linux / OSX, enter the directory in your terminal, then run the flash.sh script using sudo ./flash.sh (if you don't run it using sudo, the flash script may fail to see your device, and it won't work).
    • +
    +
  8. +
+ +
+

Note: You are also welcome to build your own builds to install on the Flame: see Building and installing Firefox OS.

+
+ +

Updating your Flame to a nightly build

+ +
+

Note: For this current build, Nightly development builds of Firefox OS do not support A-GPS, which may lead to slow performance of GPS functionality. We plan to resolve this in an updated future Nightly channel.

+
+ +
+

Important: When running a shallow or full flash, your phone data will be overwritten: you should therefore back up your data before updating! See the {{anch("Backing up and restoring your Flame data")}} section for more details.

+
+ +
    +
  1. Before updating your phone to a Nightly build you should flash the latest base image to make sure the underlying systems are up to date. Download a base image and use it to update your device's software, as explained above.
  2. +
  3. Because the above step installs a fresh operating system on your device, you'll need to enable remote debugging on your Flame again, using the Remote debugging option in the device's Developer settings.
  4. +
  5. Next, choose a build to install (found on http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/.) You'll want one of the following: + +
  6. +
  7. Pick a version and download both the b2g-XX.XX.en-US.android-arm.tar.gz and gaia.zip files. Save them inside a directory on your Desktop called something like fxos.
  8. +
  9. Download the shallow flash script and save it in  the same directory as the above two files: follow the link, press the Raw button, then use your browser's save functionality to save the page directly as shallow_flash.sh.
  10. +
  11. For Windows users: Also download the shallow_flash.bat windows script and install Cygwin, which provides a Linux-like environment on Windows. You will need to install the default Cygwin base category plus the unzip package (on the installer, type unzip in the search box and click skip).
  12. +
  13. +

    In your Terminal, cd into the directory you saved the files in and Flash the builds to your phone using the following:

    + +

    Linux:

    + +
    ./shallow_flash.sh -ggaia.zip -Gb2g-XX.XX.en-US.android-arm.tar.gz
    +
    + +

    Mac:

    + +
    ./shallow_flash.sh -g gaia.zip -G b2g-XX.XX.en-US.android-arm.tar.gz
    + +

    Windows:

    + +

    Double click shallow_flash.bat (with cogs icon) or run it from a command shell. It will flash gaia.zip and a single b2g-XX.XX.en-US.android-arm.tar.gz file.

    +
  14. +
+ +
+

Note: If you get a "permission denied" error when running the above commands, your shell script probably doesn't have the right permissions. Running chmod +x shallow_flash.sh on it should solve this problem.

+
+ +
+

Note: A "shallow flash" updates Gecko and Gaia plus data directories, as opposed to a full flash, which updates Gecko/Gaia, but also the underlying Gonk layer and associated binaries particular to that device type. This is why it is a good idea to update to the official base image first, as suggested above, then shallow flash over the top of that, once you've got the Gonk/binary layer right.

+
+ +

Once the install procedure finishes the phone should reboot into the updated build and display the first time user workflow.

+ +

Font fix

+ +

After updating Gecko and Gaia to nightly with the v180 base image, there will be a mismatch between the fonts that Gecko and Gaia expects and what the base image provides. To fix this, download our font update package, extract it, navigate into the directory created by extracting, and run the supplied flash.sh script.

+ +
+

Note: Another option is to use the update_system_fonts.sh script, which will download and flash the system fonts automatically.

+
+ +

Switch to nightly update channel

+ +
    +
  1. Make sure remote debugging is enabled on your Flame, using the Remote debugging/Debugging via USB option in the device's Developer settings
  2. +
  3. Download the change channel script: follow the link, press the Raw button, then use your browser's save functionality to save the page directly as change_channel.sh.
  4. +
  5. In your Terminal, cd into the directory you saved the script in and change the update channel on your phone using the following command:
    + +
    ./change_channel.sh -v nightly
    +
  6. +
  7. Once the phone reboots, check for updates by going into Settings > Device information > Check now
  8. +
+ +

You should now get nightly OTA updates to your phone.

+ +
+

Note: You can choose between several different update channels. Run "./change_channel.sh -h" to see the other channel options.

+
+ +

Fastboot mode

+ +

If flashing a new build to your phone fails to work, your phone may become unresponsive, leading to the phone rebooting in recovery mode. The recovery mode provides few options (Reboot, Update from adb, Wipe data, Wipe cache, and Update from sdcard). Unfortunately, selecting Update from adb triggers a sideload mode in which you cannot use the other adb commands. The adb sideload command would work but the various flash scripts rely on other adb commands.

+ +

You can force fastboot mode as follows:

+ +
    +
  1. Power off the phone (which may involve removing the battery in extreme cases...)
  2. +
  3. Plug in the USB cable.
  4. +
  5. Power the phone up again by pressing the Volume Down and Power buttons together.
  6. +
+ +

The phone should now display the text "FASTBOOT": it is in fastboot mode and is waiting for a USB connection. At this point, a USB-connected, computer with adb installed should see the phone listed when the fastboot devices command is run. Note that regular adb would not see the device — only fastboot sees it. In this mode, you can use the flash script to install v180 as explained above. As the script does use both adb and fastboot commands, you may see some initial error and warnings from adb, but the device should be flashed properly at the end of the procedure.

+ +

Emergency download mode

+ +

If flashing a new build to your phone fails to work, your phone becomes unresponsive, and the phone cannot enter fastboot mode, you can use emergency mode for recovery. A USB cable and the Emergency Download Tool are required to enter emergency download mode. Install this tool and follow the instructions.

+ +

Recovery mode

+ +

You can enter recovery mode to clear your phone data or manually update the firmware. There are two ways to enter this mode:

+ + + +

When in recovery mode, press the Volume up/down keys to move the selection highlight, and the Power key to select. Make sure you have your phone data (Contacts, SMS, etc.) backed up before clearing data, and your upgrade packages downloaded before updating.

+ +

Backing up and restoring your Flame data

+ +

When using a Flame, you won't want to lose your phone's contacts and other data while upgrading to a new build (as explained earlier in this article). To backup and restore data you can use our Backup and restore profile tool.

+ +
    +
  1. To use this, first download it from Github at the above link. The easiest way to save it is to press the Raw button, then save the raw code as a .sh file using your browser's Save As... option.
  2. +
  3. Next, make sure you'll have the necessary permissions to execute this file: cd into the directory where you saved the file, and run the following command: +
    chmod +x backup_restore_profile.sh
    +
  4. +
+ +
+

Note: When using this tool, you'll also need to make sure that your phone is connected via USB to your computer, and that ADB (see {{anch("Important steps to follow first")}} above) and Debugging via USB (in your device's Developer settings) are enabled.

+
+ +
+

Note: These instructions should work on Mac and Linux out of the box. To use the backup and restore feature on Windows you'll have to install Cygwin and run it from inside that.

+
+ +

Backing up data from your phone

+ +

In the directory where you saved the backup_restore_profile.sh file, run the following:

+ +
./backup_restore_profile.sh -b
+ +

This should save your device profile to a directory called mozilla-profile, in the same directory as the script is located.

+ +

Restoring data to your phone

+ +

In the directory where your mozilla-profile directory is located (see above section), run the following:

+ +
./backup_restore_profile.sh -r
+ +

Other options

+ +

The full list of options available for the backup_restore_profile.sh script is as follows:

+ + + +

Pushing apps to your Flame

+ +

The App Manager and WebIDE tools make it easy to push apps to your phone, for testing, etc.

+ +

RAM adjustment

+ +

You can adjust the available RAM capacity to see how apps perform on Firefox OS phones with lower memory footprints.

+ +

This is accomplished by entering fastboot mode (install fastboot first, which is available on the same SDK page as ADB) and typing:

+ +
adb reboot bootloader
+fastboot oem mem [0|256-1024]
+ +

“0” is the memory automatically detected and “256-1024” is the number of megabytes. For example, if you want to adjust device RAM capacity to 512M, enter fastboot oem mem 512.

+ +

You'll need to then reboot your device for the settings to take effect. This can be done using:

+ +
fastboot reboot
+ +

The current memory size can be returned by entering fastboot mode and typing:

+ +
fastboot getvar mem
+
+ +

Network and Device specs

+ +

Network:

+ + + +

Hardware: You can find more of the hardware features listed on our Phone and device specs page.

+ +

Additional features include:

+ + + +

See also

+ + + +

 

diff --git a/files/pl/archive/b2g_os/phone_guide/zte_open_c/index.html b/files/pl/archive/b2g_os/phone_guide/zte_open_c/index.html new file mode 100644 index 0000000000..8e4616e631 --- /dev/null +++ b/files/pl/archive/b2g_os/phone_guide/zte_open_c/index.html @@ -0,0 +1,82 @@ +--- +title: ZTE OPEN C +slug: Archive/B2G_OS/Phone_guide/ZTE_OPEN_C +translation_of: Archive/B2G_OS/Phone_guide/ZTE_OPEN_C +--- +
+

ZTE Open C jest następnym telefonem od ZTE z Firefox OS. Posiada między innymi 3-megapikselowy aparat i 4-calowy ekran WVGA. Wyposażony jest w Firefox OS 1.3. Ten artykuł przedstawia informację o tym telefonie oraz szczegóły o aktualizacji i naprawianiu problemów.

+
+
+

Uwaga: Ten artkuł nie dotyczy ZTE Open. Jeśli posiadasz ten model, powinieneś udać się na stronę ZTE Open.

+
+
+

Uwaga: Narzędzie aktualizacji, które jest potrzebne, aby odblokować telefon jest narazię dostępne tylko do systemu Windows. Nie kupuj tego telefonu jeśli nie masz systemu Windows i chcesz ręcznie instalować własne budowy Firefox OS.

+
+

ZTE Open C jest pierwszym telefonem z ostatnią aktualizacją Firefox OS, oferującą dużo nowości, w tym dostęp do odtwarzacza muzyki z zablokowanego ekranu oraz pasek powiadomień i zaawansowane udostępnianie bluetooth, pozwalające na przenoszenie wielu plików jednoczesnie. Urzytkownicy mogą teraz poruszać się po telefonie szybciej, dzięki inteligentnym folderom, które grupują aplikacje i wyszukiwanie aplikacji w kategorie. Dodatkowo  zostały przyśpieszone czasy uruchamiania i przewijania systemowych aplikacji, np. kalendarza, kontaktów, aparatu.

+

Kupno urządzenia

+

Telefon kosztuje US$99.99, i jest dostępny w sklepie eBay:

+ +
+

Uwaga: Telefon nie posiada domyślnie zainstalowanych aplikacji i usług dla konkretnych sieci. Jest odblokowany dla wszystkich operatorów.

+
+

Parametry telefonu

+

Zobacz Telefony i informacje.

+

Aktualizowanie Firefox OS

+

Najłatwiej zaktualizować urzywając aktualizacji ze  Strony pomocy ZTE, wybierz swój kraj w lewej kolumnie, "Smart Phones" w środkowej, i w prawej "Open C(European Standard)" jeśli mieszkasz w europie lub "Open C(American Standard)" jeśli w USA. Potem kliknij przycisk "Selected" aby przejść do strony pobierania.

+

Gdy pobierzesz aktualizację, w pobranym pliku ZIP poszukaj pliku PDF, pokazującego jak zaktualizować telefon.

+

Ręczne aktualizacje

+

Jesli chcesz zaktualizować Geco lub Gaia samemu, proces jest trochę trudniejszy. Telefon jest domyślnie zablokowany(bez uprawnień root'a). Aby odblokować telefon użyj Open_C_upgrade_Tool na stronie comebuy.com. Te narzędzie aktualizuje firmware dając prawa root'a  i włączając fastboot. Pozwala to także na wgranie nowego oprogramowania na telefon.

+
+

Uwaga: To narzędzie jest narazię dostępne tylko dla systemu Windows.

+
+

Aktualizowanie Geco i Gaia

+

Kiedy posiadasz włączony fastboot, możesz zbudować i zainstalować nowe elementy Firefox OS/B2G Gecko i Gaia na nim.

+
    +
  1. Zacznij od instrukcji wstępnej budowy i traktuj Open C jak telefon Flame na potrzeby konfiguracji. Ponieważ obydwa (Flame i Open C) bazują na systemie Android Jellybean.
  2. +
  3. W dalszych krokach trzeba odwołać się do niestandardowego pliku manifest. Pobież załącznik tego bug'u i zapisz jako openc.xml.
  4. +
  5. Wyczyść katalog B2G, usuwając niepotrzebne katalogi:
    +
    rm -rf objdir-gecko/ out/ backup-flame/
    +
  6. +
  7. Teraz skonfiguruj Firefox OS następującą komendą: +
    ./config.sh flame /ŚCIEŻKA/DO/openc.xml
    +
  8. +
  9. Teraz możesz zbudować i wgrać komponenty Gecko wpisując: +
    ./build.sh gecko
    +./flash.sh gecko
    +
  10. +
  11. Teraz powinieneś zaktualizować Gaia, aby nowa wersja Gecko działała z odpowiedną wersją Gaia: +
    cd gaia
    +make reset-gaia
    +
  12. +
+
+

Uwaga: Próba wgrania całego obrazu Flame może uszkodzić telefon, dlatego jest to niezalecane.

+
+

Aktualizowanie Gaia

+

Aby zaktualizować tylko Gaia(bez Gecko), musisz zrobić fork'a i zklonować repozytorium Gaia na Github, zanim wgrasz go na telefon.

+
    +
  1. Upewnij się że masz ADB zainstalowane.
  2. +
  3. Wejdź na https://github.com/mozilla-b2g/gaia i kliknij "fork" w prawym górnym rogu aby zrobić fork'a do własnego repozytorium.
  4. +
  5. Skopiuj kod z własnego repozytorium na komputer, następującą komendą: +
    git clone https://github.com/twoj-nick-na-github/gaia.git
    +
  6. +
  7. cd do pobranego katalogu .
  8. +
  9. Na telefonie, włącz zdalne debugowanie (wybierz opcję "ADB and Devtools").
  10. +
  11. Teraz podłącz telefon do komputera przez USB. Sprawdź czy ADB dziala komendą  adb devices.
  12. +
  13. Wpisz poniższą komenda, aby zresetować i zaktualizować twój telefon z nową wersją Gaia: +
    make reset-gaia
    +
  14. +
+

Zepsułem telefon

+

Jeśli twój telefon przestanie odpowiadać, powinieneś naprawić go urzywając oficjalnych wersji Firefox OS i instrukcji do wgrania ich przez karty SD, na stronie ZTE:

+ +

Możesz też odwołać się do tego wpisu pomocy technicznej po więcej informacji.

diff --git a/files/pl/archive/b2g_os/platform/gaia/index.html b/files/pl/archive/b2g_os/platform/gaia/index.html new file mode 100644 index 0000000000..2e30a4b098 --- /dev/null +++ b/files/pl/archive/b2g_os/platform/gaia/index.html @@ -0,0 +1,69 @@ +--- +title: Gaia +slug: Archive/B2G_OS/Platform/Gaia +translation_of: Archive/B2G_OS/Platform/Gaia +--- +

Gaia jest warstwą interfejsu Firefox OS. Wszystko co pojawia się na ekranie po uruchomieniu Firefox OS jest rysowane przez Gaia, włączając w to ekran logowania, ekran główny, aplikację telefonu i inne. Gaia jest całkowicie napisana w HTML, CSS oraz JavaScript. Jedynym interfejsem komunikacji z systemem operacyjnym i sprzętem jest standardowe Web API implementowane przez Gecko.

+

Ze względu na sposób w jaki została zaprojektowana, Gaia może być uruchamiana nie tylko na urządzeniach działających pod kontrolą systemu Firefox OS, lecz także na innych systemach operacyjnych i w innych przeglądarkach internetowych (aczkolwiek, w przypadku tych potencjalnie wycofanych, funkcjonalność zależeć będzie od możliwości przeglądarki).

+

Aplikacje od zewnętrznych dostawców instalowane poza Gaia mogą być uruchomione za jej pośrednictwem.

+ + + + + + + +
+

Dokumentacja na temat Gaia

+
+
+ Wstęp do Gaia
+
+ Gaia jest aplikacją stanowiącą interfejs użytkownika dla urządzeń z systemem Firefox OS; to po prostu aplikacja webowa uruchomiona na wierzchu stosu aplikacyjnego systemu Firefox OS. Ten przewodnik wprowadza do Gaia.
+
+ Aplikacje Gaia
+
+ Informacje o każdej z domyślnych aplikacji dostępnych w rodzinie Gaia wraz ze wskazówkami dotyczących ich użytkowania i modyfikacji.
+
+ Przewodnik hackowania Gaia
+
+ Przewodnik hackowania i modyfikowania interfejsu Gaia.
+
+ Elementarz Systemu Budującego Gaia
+
+ Więszość znaczących prac na etapach kompilacji Gaia jest realizowana przez skrypty znajdujące się wewnątrz podkatalogów katalogu build.
+
+ FAQ i wskazówki hackowania Gaia
+
+ Lista przydatnych wskazówek i często zadawanych pytań dotyczących hackowania Gaia.
+
+

Zobacz wszystko...

+
+

Uzyskanie pomocy od społeczności

+

Jeśli pracujesz z Gaia lub tworzysz aplikacje dla Gaia jest mnóstwo zasobów przygotowanych przez społeczność, które mogą Ci pomóc!

+
    +
  • Zasięgnij porad na forum projektu Boot to Gecko: {{ DiscussionList("dev-gaia", "mozilla.dev.gaia") }}
  • +
+
    +
  • Zadaj pytanie na kanale IRC projektu Gaia od Mozilli: #gaia
  • +
+

Nie zapominaj o netykiecie...

+
+ + +

Zasoby

+ +
+

 

diff --git a/files/pl/archive/b2g_os/platform/index.html b/files/pl/archive/b2g_os/platform/index.html new file mode 100644 index 0000000000..ff2142919b --- /dev/null +++ b/files/pl/archive/b2g_os/platform/index.html @@ -0,0 +1,81 @@ +--- +title: The Firefox OS platform +slug: Archive/B2G_OS/Platform +tags: + - B2G + - Firefox OS + - Landing + - TopicStub +translation_of: Archive/B2G_OS/Platform +--- +

The Firefox OS platform consists of many components. While you don't need to understand its architecture in order to build applications that run on Firefox OS, if you're working on developing or porting the platform—or are simply curious—the following documentation may be of interest to you.

+ + + + + + + +
+

Documentation about the Firefox OS platform

+
+
+ Gaia
+
+ Documentation about Gaia, the user interface application for Firefox OS devices; this is a Web application running atop the Firefox OS software stack.
+
+ Gonk
+
+ Documentation about Gonk, the operating system layer underneath Gaia. This consists of a Linux kernel and a hardware abstraction layer to which Gecko communicates.
+
+ Gecko
+
+ Gecko is the layer of Firefox OS that provides the same open web standards implementation used by Firefox and Thunderbird, as well as many other applications.
+
+  Security
+
+ Documentation about security in Firefox OS; this includes topics about security devices from every perspective: for app developers, device integrators, and so forth.
+
+ Feature support chart
+
+ A chart of which features are available in which types of Firefox OS builds.
+
+ Firefox OS architecture overview
+
+ An overview of how Firefox OS is structured internally; this is primarily of interest to platform developers and people doing porting work.
+
+ Firefox OS apps architecture
+
+ An overview of the application model on Firefox OS.
+
+ Firefox OS settings list
+
+ A list of common setting names that can be used with the Settings API.
+
+

View All...

+
+

Getting help from the community

+

If you're working with Firefox OS, or developing applications you'd like to run on Firefox OS devices, there are community resources to help you!

+
    +
  • Consult the Boot to Gecko project forum: {{ DiscussionList("dev-b2g", "mozilla.dev.b2g") }}
  • +
+
    +
  • Ask your question on Mozilla's Boot to Gecko IRC channel: #b2g
  • +
+

Don't forget about the netiquette...

+
+ + +

Resources

+ +
+

 

diff --git a/files/pl/archive/b2g_os/preparing_for_your_first_b2g_build/index.html b/files/pl/archive/b2g_os/preparing_for_your_first_b2g_build/index.html new file mode 100644 index 0000000000..5ac3b5ee4c --- /dev/null +++ b/files/pl/archive/b2g_os/preparing_for_your_first_b2g_build/index.html @@ -0,0 +1,135 @@ +--- +title: Preparing for your first B2G build +slug: Archive/B2G_OS/Preparing_for_your_first_B2G_build +translation_of: Archive/B2G_OS/Preparing_for_your_first_B2G_build +--- +
+

Before you can build B2G, you need to clone the repository and configure your build tree. This article explains how to do that. 

+
+

Depending on your internet connection, the configuration step takes a number of hours to download the files necessary to build FirefoxOS (with a mediocre 150 kBps connection, downloading gigabytes of Android repositories can take tens of hours).  Waiting is not as fun as doing, so after you have read through this page and have kicked off the configure script, consider using the time to set up and try out the Firefox OS simulator, begin familiarizing yourself with Documentation for app developers including Designing and Building an App, or familiarize yourself with the information on upcoming steps.

+
+

You might want to have a side task prepared, or a friend available to go for a coffee with, while you are running the B2G config and build steps. They can take a bit of time.

+
+

Clone B2G repository

+

The first step, before you can start your first build, is to clone the B2G repository. This will not fetch everything! Instead, it will fetch the B2G build system and setup utilities. Most of the actual B2G code is in the main Mozilla Mercurial repository.

+

To clone the repository, use git:

+
git clone git://github.com/mozilla-b2g/B2G.git
+

After cloning (which should only take a minute with a fast connection), cd into the B2G directory:

+
cd B2G
+
+

Configuring B2G for your device

+
+ Important: Remember that only devices running Android 4.0.4 (Ice Cream Sandwich), 4.3 (Jelly Bean) and 4.4 (KitKat) and platforms based around it are supported (current Firefox OS devices are). Please check that your phone is actually running one of those supported versions, otherwise this step will most likely fail since some drivers are pulled from non-Nexus devices. Also, if you have to flash your device with the matching stock release. Keep in mind that some USB hubs don't work well with flashing tools, so you may have to connect your device to a built-in USB port.
+
+ Important: if you are doing the build on Ubuntu 12.10+ or Fedora, you will need to specify GCC 4.6 as the default host compiler after having retrieved the B2G sources, for the process to work (these distros use GCC 4.7 by default). Read Changing the default host compiler to find out how to do it.
+
+ Note: please read all the instructions below before running any of the build process commands, to make sure you are doing the right thing for you!
+

Once you've retrieved the core B2G build system, you need to configure it for the device on which you plan to install it. To get a list of supported devices, you can use the config.sh utility — run the following command from within the B2G directory:

+
./config.sh
+
+

This will display a list of the supported devices, like so:

+
Usage: ./config.sh [-cdflnq] (device name)
+Flags are passed through to |./repo sync|.
+
+Valid devices to configure are:
+- galaxy-s2
+- galaxy-nexus
+- nexus-4
+- nexus-s
+- nexus-s-4g
+- flo "(Nexus 7 2013)"
+- nexus-5
+- flame
+- otoro
+- unagi
+- inari
+- keon
+- peak
+- leo
+- hamachi
+- helix
+- wasabi
+- fugu
+- tara
+- pandaboard
+- emulator
+- emulator-jb
+- emulator-kk
+- emulator-x86
+- emulator-x86-jb
+- emulator-x86-kk
+
+

If your device isn't listed, you should stop right now and either help port B2G to your device or wait until someone else does it. We'd prefer it if you help out!

+
+ Note: You can find the device name of your phone on the Firefox OS Phones page.
+
+ Note: Configuring and building B2G for Keon on a Mac DOESN'T WORK. You'll need to use Linux when building for this device.
+
+ Note: If for any reason you want to build against a specific version of Gecko, see Building against a custom Gecko before you proceed. If you want to build a branch other than the the default for your device (for example, to build a specific version of B2G), see Building a branch. Note: the default branch varies by device and is not necessarily trunk.
+

This would be a good time for a coffee break, since at this point, you'll be doing your first pull of all the code needed to build Boot to Gecko. Running the device config step as indicated below can take a long time; you may stop it with Ctrl-C and restart it at a later time. If you think some part of the process may have been terminated without completing, run './repo sync' to repair any possible problems.

+

Configuring the B2G build for a mobile device

+

At this point, connect your device if it is not already connected; the configure process will need to access it.

+

If your device was listed in the results shown above, you can start the configure process by running config.sh again, this time specifying your device's name. For example, to build for the Samsung Google Nexus S, you would type:

+
./config.sh nexus-s
+
+
+ Note: If you get an error message like fatal: manifest 'nexus-s.xml' not available, chances are that you simply have to specify the branch you want to use. See Building a branch for details.
+
+ Note: If the config step fails with an error message like error: manifest required for this command -- please run init, then changes are that the manifest file for the repo (located at B2G/.repo/manifest.xml) wasn't created successfully. You should try running config.sh again. If you are doing this for a new device you could add it to config.sh and then hand it your local manifest file like so:
+ ./config.sh <device> -m path/to/manifest.
+

Near the start of the configuration you might need to set the option for color usage, then after this the process continues. You can just select 'y' here, as you probably want a color build.

+

Configuring a build using a system backup

+

If your phone no longer has Android on it, and your B2G tree doesn't have the binary blobs in it, but you wisely made a backup of the /system partition, you can perform the build on the system backup like this:

+
ANDROIDFS_DIR=<absolute path to parent dir of system dir> ./config.sh <target>
+
+

The build system will default to looking in someplace like backup-inari/system (depending on the device configuration); if you place the files in the expected place you won't need to specify the directory.

+

Note that if your phone always had Firefox OS on it to begin with and never ran Android, it's still fine to pull the /system partition per the above directions — this will give you the right files.

+

Configuring the B2G build for an emulator

+

If you want to build an emulator rather than on a real phone, you can specify emulator* to get an ARM device emulator, or emulator-x86* to build an x86 emulator. The latter is faster but not as accurate a representation of an actual mobile device and not as well supported; using it is not advised.

+

So, to build the ARM Jellybean emulator, for example, you would use the following command:

+
./config.sh emulator-jb
+
+

Near the start of the configuration you might need to set the option for color usage, then after this the process continues. You can just select 'y' here, as you probabaly want a color build.

+

By this point you should be ready to start the build, unless you need any of the more advanced information detailed below.

+

Beware that building for the emulator may fail on 64-bit Linux.

+
+ Note: Developers on Mac OS X 10.9 or above have to switch to emulator-jb or emulator-kk instead, because AOSP ICS based emulator can't be built on Mac OS X 10.9. See Requirements for Mac OS X for further information.
+

Building against a custom Gecko

+

There may be times that you want or need to build Boot to Gecko based on a different version of Gecko than the one that's used by default (as specified in the manifest). You can do so by editing the file .userconfig. For example, if you want to build against mozilla-central:

+
export GECKO_PATH=/path/to/mozilla-central
+export GECKO_OBJDIR=/path/to/mozilla-central/objdir-gonk
+
+
+

Note: if building against a custom Gecko in Mac OS X, the mozilla-central directory must be in a case sensitive file system.
+  

+
+

Note that you can do this either before you pull the repository (i.e. before the config.sh step above) or at any later point.  You can also keep multiple builds (with debugging on or not, etc) by having multiple userconfig files (with different settings--each needs a different OBJDIR, of course) and making .userconfig a symlink that points to whichever config you want to build at the moment.

+

For more information, read Changing the Gecko source tree.

+

Building a branch

+

If you want to build for a branch other than the default branch (note: the default branch may not be "master"!), you will need to prefix your call to config.sh with a branch name, like this:

+
BRANCH=branch-name ./config.sh <device>
+

The branch names are pretty logical, and largely follow the names of the products/versions, so v1-train, v1.0.0, v1.0.1, v1.1, v1.1.0hd, v1.2, v1.3, v1.4, v2.0  and so on into the future. As an example, to build B2G Firefox 1.2, for the Arm emulator, you'd enter

+
BRANCH=v1.2 ./config.sh emulator
+

If you have run config.sh already, you can see the names of the branches, by going to B2G/.repo/manifests and doing "git branch -a" (this isn't populated unti then.) The branch name is given as the final token on the line, e.g. "v1-train" or "master":

+
  remotes/origin/master
+  remotes/origin/v1-train
+  remotes/origin/v1.0.0
+  remotes/origin/v1.0.1
+

See Customization with the .userconfig file for additional customizations you can do.

+

Copying your B2G tree to a new machine

+

If you've previously set up the B2G tree and then gotten a new computer (lucky you!), you'll find your life will be much easier if you simply migrate your entire B2G tree from your old computer to your new one, rather than setting the whole thing up again. To do that, mount your old computer's drive onto your new computer, then do this:

+
rsync -a source/ dest/
+
+

Where source is the full path (including the trailing slash) of the source tree, and dest is where you want to put it (the trailing slash is also important!).

+
+ Note: If you copy the files from a computer with another platform ensure to run './build.sh clean' before you start the build process. If you don't do this you might encounter compilation issues.
+

If you do this, you can skip all of the rest of this article and move right on to building.

+

Updating your B2G tree

+

When the repository is updated to a newer version of B2G, you'll want to update your B2G tree. To do this, you can run the following commands:

+
git fetch origin
+git checkout origin/master
+

You can check that these worked correctly by running:

+
git show HEAD
+

and checking that the commit shown matches the latest commit shown at: https://github.com/mozilla-b2g/B2G/commits/master

+

On to the next step

+

At this point, you should be ready for Building Firefox OS [en-US].

diff --git a/files/pl/archive/b2g_os/simulator/index.html b/files/pl/archive/b2g_os/simulator/index.html new file mode 100644 index 0000000000..f9ac33f6e9 --- /dev/null +++ b/files/pl/archive/b2g_os/simulator/index.html @@ -0,0 +1,47 @@ +--- +title: Symulator Firefox OS +slug: Archive/B2G_OS/Simulator +translation_of: Archive/B2G_OS/Simulator +--- +
+

Dodatek Symulator Firefox OS składa się z dwóch części:

+

 

+ +

Teraz te dwie części zostały połączone: funkcje Dashboard są zaimplementowane przez  Menedżer Aplikacji (App Manager) Firefox OS, wbudowanego w Firefoxie. The Simulator add-on now only includes the Simulator part.

+
+

Dodatek Symulator Firefox OS umożliwia Ci testowanie i debugowanie aplikacji Firefox OS na komputerze. Cykl kodowanie-testowanie-debugowanie jest znaczenie szybsze na symulatorze w porównaniu z rzeczywistym urządzeniem, oczywiście nie potrzemujesz urządzenia aby go używać. Symulator jest desktopową wersją klienta Firefox OS, który jest wyższą warstwą Firefox OS działającym na twoim pulpicie.

+

Włączasz i wyłączasz symulator i dołączasz narzędzia deweloperskie używając  Menedżera Aplikacji (App Manager), wbudowanego w Firefox.

+

Limity symulatora

+

Pamiętaj, że symulacja Firefox OS nie jest idealna.

+

Limity sprzętowe

+

Symulator nie symuluje limitów sprzętowych takich jak dostępna pamięć RAM lub prędkość procesora.

+

Kodeki audio/wideo

+

Poniższe kodeki wymagają sprzętowego dekodowania i nie są wspierane:

+ +

To znaczy, że symulator nie potrafi przetestować odtwarzania dźwięku i wideo między innymi na witrynach internetowych.

+

Niewspierane API

+

Pewne API które normalnie działają na urządzeniu nie zadziałają w symulatorze ze względu na wspierany sprzęt niedostępny na komputerze. Zaimplementowaliśmy symulacje dla kilku API takie jak geolokacja (oczekujemy, że dodamy więcej w przyszłych wydaniach symulatora).

+

W obecnym momencie poniższe API nie są wspierane. Używanie ich może spowodować otrzymanie błędów lub niewłaściwych wyników:

+ +

Getting help

+

The Firefox OS Simulator is still at an early stage of development, and isn't yet as reliable and complete as we'd like it to be.

+

If you find any bugs, please file them on GitHub. If you have a question, try asking us on the dev-developer-tools mailing list or on #devtools on irc.mozilla.org.

+

How to enable verbose logging

+

Use about:config to create the preference extensions.r2d2b2g@mozilla.org.sdk.console.logLevel, set it to the integer value 0, and disable/reenable the addon. Additional messages about the Simulator's operation will appear in the Error Console (or Browser Console in newer versions of Firefox).

diff --git a/files/pl/archive/b2g_os/using_the_app_manager/index.html b/files/pl/archive/b2g_os/using_the_app_manager/index.html new file mode 100644 index 0000000000..2480e1f3ac --- /dev/null +++ b/files/pl/archive/b2g_os/using_the_app_manager/index.html @@ -0,0 +1,274 @@ +--- +title: Using the App Manager +slug: Archive/B2G_OS/Using_the_App_Manager +translation_of: Archive/B2G_OS/Using_the_App_Manager +--- +
+

The App Manager is a tool for Firefox Desktop which provides a number of useful tools to help developers test, deploy and debug HTML5 web apps on Firefox OS phones & Simulator, directly from Firefox browser.

+ +

App Manager is available for Firefox OS 1.2 or later, lower versions are supported in Firefox OS 1.1 Simulator. The App Manager is being replaced by the WebIDE, starting from Firefox 33. The WebIDE provides all the features of the App Manager also features an editing environment to create and develop Firefox OS apps.

+
+ +

{{EmbedYouTube("z1Bxg1UJVf0")}}

+ +

The App Manager is composed of:

+ + + +

Quick setup

+ +

This section is designed to get you up and running as soon as possible; if you need some more detail please skip forward to the {{ anch("Device and system configuration") }} section and start reading from there.  Also see the {{ anch("Troubleshooting") }} section for help if you are having trouble.

+ +
    +
  1. Make sure you have Firefox Desktop 26+ installed
  2. +
  3. Open the App Manager (in the URL bar, type about:app-manager)
  4. +
  5. If you don't have a real device: +
      +
    1. Install the Firefox OS Simulator
    2. +
    3. In App Manager's bottom toolbar, click on Start Simulator, then click on the name of the installed simulator, which should appear there.
    4. +
    +
  6. +
  7. If you have a real device: +
      +
    1. Make sure your device is running Firefox OS 1.2+
    2. +
    3. On Windows, make sure to install the drivers provided by your phone manufacturer
    4. +
    5. In the Settings of your device, disable Screen Lock (Settings > Phone lock > Lock Screen) and enable Remote Debugging (Settings > Device information > More information > Developer)
    6. +
    7. Install the ADB Helper add-on in Firefox Desktop
    8. +
    9. Connect your device to your machine via a USB cable
    10. +
    11. You should see the name of your device in the App Manager's bottom bar. Click on it.
    12. +
    +
  8. +
  9. The bottom bar should show "Connected to: xxx"
  10. +
  11. Click on the Apps panel and add an app (packaged or hosted)
  12. +
  13. The Refresh button validates your app and installs it on the Simulator/Device
  14. +
  15. The Debug button connects the developer tools to the running app
  16. +
  17. See the {{ anch("Troubleshooting") }} section for help if you are having trouble
  18. +
+ +

Device and system configuration

+ +

The first thing you'll need to do when using the App Manager is make sure your system and phone are set up correctly. This section will run through all the steps required.

+ +

Firefox OS 1.2+ required

+ +

Make sure your device is running Firefox OS 1.2/Boot2Gecko 1.2 or higher. To check which version of Firefox OS the device is runing, go to Settings > Device Information > Software.

+ +

If you don't have a high enough version installed, depending on what phone you have you will need to either install an available nightly build of Firefox 1.2+, or configure and build it yourself from source.

+ +

Builds available:

+ + + +
+

Note: To build your own Firefox OS 1.2+ distribution, follow the instructions located at Building and installing Firefox OS, starting with Firefox OS build prerequisites.

+
+ +

Remote debugging

+ +

Next, you need to enable remote debugging in Firefox OS. To do so, go to Settings > Device information > More information > Developer and check the Remote Debugging checkbox.

+ +

ADB or ADB helper

+ +

The process uses the Android Debug Bridge (ADB) to handle the device-computer connection and communication. There are two options for running ADB:

+ + + +
+

Note: There's no need to run this command if you installed the ADB Helper Add-on.

+
+ +

Connecting your device to the App Manager

+ +

With all your configuration done, it's now time to plug your device into your computer and start the App Manager:

+ +
    +
  1. Plug the device into your computer via USB.
  2. +
  3. Disable Screen lock on your device by going to Settings > Screen Lock and unchecking the Lock Screen checkbox. This is a good idea because when the screen gets locked, the phone connection gets lost, meaning it is no longer available for debugging.
  4. +
  5. Start the App Manager — In Firefox Desktop select the Tools > Web Developer > App Manager menu option, or type about:app-manager in the URL bar.
  6. +
  7. At the bottom of the App Manager tab, you will see a connection status bar (see screenshot below). You should be able to connect your device by clicking the "Connect to localhost:6000" button.
  8. +
  9. If this works successfully, a prompt should appear on your device: "An incoming request to permit remote debugging connection was detected. Allow connection?". Tap the OK button (You may also have to press the power button on the phone so you can see the prompt.) The connection status bar should update to say "Connected to B2G", with a Disconnect button available to press if you want to cancel the connection.
  10. +
+ +

+ +
+

Note: The other controls in the connection status bar allow you to connect a simulator to the App Manager, which we cover in the next section, below, and change the port that the connection happens on. If you change the port, you'll also need to enable port forwarding for this port as well, as instructed in the {{anch("Enable port forwarding")}} section, above.

+
+ +

Using a Firefox OS Simulator Add-on

+ +

If you haven't got a real device available to use with App Manager, you can still try it out using a Firefox OS Simulator Add-on. To start off, install the simulator with the following button (multiple versions are available; you are advised to install them all, for maximum flexibility):

+

Install Simulator

+ + +

Once you've installed the simulator(s), you need to go to about:app-manager to see the connection status bar at the bottom of the App Manager tab, and click the "Start simulator" button. At least three buttons will appear:

+ + + +
+

Note: The Firefox OS 1.5 Simulator has been removed, as 1.5 was changed to 2.0. If you have the Firefox OS 1.5 Simulator installed, it won't automatically update to 2.0, so you should uninstall 1.5 and install 2.0 instead. The Firefox OS 2.0 simulator will then automatically update.

+
+ +
+

Note: The Firefox OS 1.2 Simulator has been removed, as no phones are likely to be released with version 1.2 installed — this version is therefore of limited value, and it makes more sense to spend your time debugging on other versions.

+
+ +

Running custom builds in the App Manager

+ +

Note that you can run custom B2G Desktop and Gaia/Gecko builds in the App Manager via the simulator. Read Running custom Firefox OS/Gaia builds in the App Manager for instructions on how to do this.

+ +

Apps panel

+ +

Now that everything is working, let's review the functionality available inside the App Manager, starting with the Apps panel. From here, you can import an existing app to push onto your device and debug:

+ + + +

Information about your app should appear on the right hand side of the window, as seen below:

+ +

+ +

Manifest editor

+ +

From Firefox 28 onwards, the Apps Panel includes an editor for the app manifest:

+ +

+ +

Debugging

+ +

Clicking on "Update" will update (install) the app on the device. Clicking on "debug" will connect a toolbox to the app, allowing you to debug its code directly:

+ +

+ +
+

You'll enjoy playing around with the toolbox — try altering the DOM, CSS etc. and you'll see the updates reflected on the device in realtime. Such updates will be saved on the installed app code; you'll see them next time you open the app on the device.

+
+ +

Before Firefox 28, the tools are launched in a separate window. From Firefox 28 onwards, the tools are launched in a separate tab in the App Manager itself, alongside the Apps and Device tabs. The tab is given your app's icon so it's easy to find:

+ +

+ +

Errors

+ +

If an app was not added successfully — for example if the URL was incorrect, or you selected a packaged app folder — an entry will be added to the page for this app, but this will include error information.

+ +

+ +

You can also delete an app from this view, by hovering over the App name/description on the left of the window, and pressing the "X" button that appears in each case. This however doesn't remove the app from the device. To do that you need to manually remove the app using the device itself.

+ +

Device panel

+ +

The Device tab displays information about the connected device. From the "Installed Apps" window, apps on the device can be started and debugged.

+ +

+ +
+

Note: Certified Apps are not listed by default. See how to debug certified apps.

+
+ +

The "Permissions" window shows the required priviledges for different Web APIs on the current device:

+ +

+ +

Finally, you can take a screenshot of the current device display by clicking the "Screenshot" button. The screenshot appears in a new tab on Firefox, and from there you can save or discard it as you wish.

+ +

Debugging Certified Apps

+ +

Currently only devices running a development build of Firefox OS 1.2+ are capable of debugging certified apps. If you have a development build, you can enable certified app debugging by changing the pref devtools.debugger.forbid-certified-apps to false in your profile. To do this, follow the steps below:

+ +
    +
  1. +

    On your computer, enter the following command in Terminal/console to enter your device's filesystem via the shell:

    + +
    adb shell
    + +

    Your prompt should change to root@android.

    +
  2. +
  3. +

    Next, stop B2G running using the following command:

    + +
    stop b2g
    +
  4. +
  5. +

    Navigate to the following directory:

    + +
    cd /data/b2g/mozilla/*.default/
    +
  6. +
  7. +

    Here, update the prefs.js file with the following line:

    + +
    echo 'user_pref("devtools.debugger.forbid-certified-apps", false);' >> prefs.js
    +
  8. +
  9. +

    After you've finished editing and saving the file, start B2G again using the following command:

    + +
    start b2g
    +
  10. +
  11. +

    Exit the android filesystem using the exit command; this will return you to your normal terminal prompt.

    +
  12. +
  13. +

    Next, reconnect to the App Manager and you should see certified apps appear for debugging.

    +
  14. +
+ +
+

Note: If you want to add this preference to your Gaia build you can run make DEVICE_DEBUG=1 reset-gaia.

+
+ +

Troubleshooting

+ +

If the device is not recognized:

+ + + +

Can't connect your device to the App Manager or start the simulator? Let us know or file a bug.

diff --git a/files/pl/archive/index.html b/files/pl/archive/index.html new file mode 100644 index 0000000000..4f4a70c023 --- /dev/null +++ b/files/pl/archive/index.html @@ -0,0 +1,21 @@ +--- +title: Archive of obsolete content +slug: Archive +tags: + - NeedsTranslation + - TopicStub +translation_of: Archive +--- +

Here at MDN, we try to avoid outright deleting content that might be useful to people targeting legacy platforms, operating systems, and browsers. Perhaps your target audience is people that are using older hardware, for example, and can't upgrade to the latest and greatest browsers. Or for "reasons," your company is required to use very old software and you need to build Web content that runs on that software. Or perhaps you're just curious about the history of an obsolete feature or API, and how it worked.

+ +

There are many reasons older documentation can be useful. So, we've established this area into which we can archive older documentation. Material in this Archived content zone should not be used for building new Web sites or apps for modern browsers. It's here for historical reference only.

+ +
+

Note to writers: We need to try to keep the subpages here organized instead of all dumped into one large folder. Try to create subtrees for categories of material. Also, only move pages here that are extremely obsolete. If anyone might realistically need the information in a living product, it may not be appropriate to move it here. In general, it may be best to discuss it in the MDN Web Docs chat room before moving content here.

+
+ +

{{SubpagesWithSummaries}}

+ + + +

{{ListSubpages("/en-US/docs/Archive", 2, 0, 1)}}

diff --git a/files/pl/archive/marketplace/index.html b/files/pl/archive/marketplace/index.html new file mode 100644 index 0000000000..f4d14c03a2 --- /dev/null +++ b/files/pl/archive/marketplace/index.html @@ -0,0 +1,57 @@ +--- +title: Marketplace +slug: Archive/Marketplace +tags: + - Archive + - Landing + - Marketplace + - NeedsTranslation + - TopicStub +translation_of: Archive/Marketplace +--- +

Many aspects of the Firefox Marketplace will soon be removed, with more following as the different services Marketplace offers are End-of-lifed. Related documentation will be moved here as it is removed. See the Future of Marketplace FAQ for more answers.

+ +
+
+
+
Marketplace API reference
+
Marketplace-related APIs have been removed, therefore the information covering them has been archived.
+
Monetization
+
Monetization topics that have now been archived due to relevant functionality being removed from the Firefox Marketplace.
+
+ +
+
+
+ +
+
+
Options
+
Publishing options that are no longer available, hence the information being archived.
+
Publishing
+
Publishing details that are no longer available, hence the information being archived.
+
+
+
+ + diff --git a/files/pl/archive/meta_docs/index.html b/files/pl/archive/meta_docs/index.html new file mode 100644 index 0000000000..52de2c8447 --- /dev/null +++ b/files/pl/archive/meta_docs/index.html @@ -0,0 +1,12 @@ +--- +title: MDN "meta-documentation" archive +slug: Archive/Meta_docs +tags: + - Archive + - MDN + - NeedsTranslation + - TopicStub +translation_of: Archive/Meta_docs +--- +

Here you'll find archived "meta-documentation"; that is, documentation about how to write documentation on MDN. The articles here are obsolete and should no longer be referenced; we are retaining them here for reference while we migrate some content to new places, but very little of this is useful.

+

{{LandingPageListSubpages}}

diff --git a/files/pl/archive/meta_docs/mdn_page_layout_guide/index.html b/files/pl/archive/meta_docs/mdn_page_layout_guide/index.html new file mode 100644 index 0000000000..e6ca288977 --- /dev/null +++ b/files/pl/archive/meta_docs/mdn_page_layout_guide/index.html @@ -0,0 +1,8 @@ +--- +title: MDN page layout guide +slug: Archive/Meta_docs/MDN_page_layout_guide +translation_of: Archive/Meta_docs/MDN_page_layout_guide +--- +

Przewodniki te uzupełniają podręcznik stylu MDN z określonych układów dla różnych typów stron o MDN. To pomaga autorów stworzyć nową treść, która jest strukturalnie zgodne z resztą MDN.

+ +

{{LandingPageListSubpages}}

diff --git a/files/pl/archive/misc_top_level/index.html b/files/pl/archive/misc_top_level/index.html new file mode 100644 index 0000000000..0959a3b10b --- /dev/null +++ b/files/pl/archive/misc_top_level/index.html @@ -0,0 +1,8 @@ +--- +title: Misc top level +slug: Archive/Misc_top_level +translation_of: Archive/Misc_top_level +--- +

In progress. These pages were moved from the top level of MDN in a spate of furious reorganization.

+ +

{{SubpagesWithSummaries}}

diff --git a/files/pl/archive/misc_top_level/obrazki,_tabele_i_tajemnicze_dziury/index.html b/files/pl/archive/misc_top_level/obrazki,_tabele_i_tajemnicze_dziury/index.html new file mode 100644 index 0000000000..29720aeeac --- /dev/null +++ b/files/pl/archive/misc_top_level/obrazki,_tabele_i_tajemnicze_dziury/index.html @@ -0,0 +1,114 @@ +--- +title: 'Obrazki, tabele i tajemnicze dziury' +slug: 'Archive/Misc_top_level/Obrazki,_tabele_i_tajemnicze_dziury' +tags: + - CSS + - Wszystkie_kategorie +translation_of: 'Archive/Misc_top_level/Images,_Tables,_and_Mysterious_Gaps' +--- +

+

Niezależnie, kiedy zacząłeś(aś) tworzyć strony WWW, jest prawie pewne, że masz jedną lub dwie strony bazujące na klasycznym paradygmacie "poskręcanych tabel i mnóstwa obrazków". Za każdym razem, gdy chciałeś(aś) ułożyć logo, tak aby pasowało do wyglądu strony, lub kiedy używałeś(aś) ton jednopikselowych rozpychających GIF-ów, założenia (i zagrożenia) pozostawały te same. Wtedy, dawno temu, te założenia działały, ponieważ przeglądarki zazwyczaj ustawiały rozmiary komórek tabeli na szerokość i wysokość obrazka, który znajdował się wewnątrz. +

Przenieśmy się teraz do roku 2001, kiedy to zaczęły powstawać przeglądarki internetowe zgodne ze standardami, które układały strony WWW używając do tego HTML-a i CSS, zamiast swoich własnych, ukrytych algorytmów. Dzięki mrocznym zakątkom specyfikacji CSS, każdy układ bazujący na malutkich obrazkach i komórkach tabeli stawał się potencjalną katastrofą wizualną. Jedyne, czego trzeba było, to nowoczesna przeglądarka i poprawny DOCTYPE... buuum! +

+

Składniki

+

Przyjrzyjmy się powodom tych problemów. Zacznijmy od prostego przykładu, pokazanego na Przykładzie 1: jednokomórkowa tabela z obrazkiem w środku. +

Przykład 1 +

Oczywiście większość stron jest trochę bardziej skomplikowana, ale w tym wypadku nie potrzebujemy nic więcej. Jeden obrazek, jedna komórka-- to wszystko. Nie ma nic złego w powyższym przykładzie. Nie miało być, ponieważ to przykład, jak przeglądarki zachowują się tradycyjnie. +

Teraz zobaczmy, jak wygląda taka prosta tabela w nowoczesnej przeglądarce, kiedy strona posiada DOCTYPE trybu standardów. +

Przykład 2 +

Zwróć uwagę na przestrzeń dodaną pod obrazkiem w Przykładzie 2. Składnia tabeli i komórki pozostała niezmieniona-- zmienił się tylko sposób wyświetlania. Zamiast "SkurczSięIOpakuj" ten obrazek, przeglądarka opakowuje komórkę wokół linii, w której znajduje się obrazek. +Obrazek znajduje się w jakiejś linii, ponieważ obrazki należą, domyślnie, do zawartości liniowej (inline). Stąd różnica. +

+

Jak tworzona jest zawartość liniowa

+

Aby zrozumieć, co się właśnie stało, musisz spojrzeć na konstrukcję bloku liniowego, rozmieszczenie obrazków w bloku liniowym i położenie bloku liniowego w komórce tabeli. Najpierw spójrzmy na blok liniowy zawierający tekst, pokazany na Przykładzie 3. +

Przykład 3 +

Najważniejszym elementem Przykładu 3 jest bazowa linia pisma (pokazana jako niebieska linia) i jej położenie w bloku liniowym. Dokładne położenie bazowej linii pisma zależy od domyślnego fontu dla danego bloku liniowego (pokazanego jako czerwony prostokąt), która jest określona przez wartość font-family dla elementu zawierającego blok liniowy. Autor nie ma możliwości bezpośredniej zmiany położenia bazowej linii pisma. Przestrzeń pod bazową linią pisma jest określana jako "descender space", ponieważ tutaj właśnie są rysowane dolne fragmenty liter takich jak "j", "y" i "q". Przykład 4 pokazuje, co się stanie, kiedy dodamy do tego obrazek. +

Przykład 4 +

Zwróć uwagę, gdzie domyślnie znalazł się obrazek: jego dolna krawędź jest wyrównana z linią bazową bloku liniowego. To położenie może być zmienione poprzez własność vertical-align-- powiemy o tym trochę więcej-- ale prawie nikt nigdy nie zmienia domyślnej wartości. Usuńmy tekst i zostawmy tylko obrazek, jak w Przykładzie 5. +

Przykład 5 +

Mamy zatem obrazek ułożony na linii bazowej bloku liniowego, zawierającego tylko obrazek. Teraz rozważmy, co się stanie, kiedy umieścimy tę linię w komórce tabeli (Przykład 6). +

Przykład 6 +

No i stało się - tworzą się spacje tam, gdzie nikt by się ich nie spodziewał! Jeszcze gorzej wygląda to przy mniejszych rysunkach - tak jak te, które są wielkości piksela (Przykład 7). +

Przykład 7 +

Nagle okazuje się, że jest mnóstwo pustych przestrzeni w naszej tabeli. To wystarczy, żeby doprowadzić designera stron do szału. +

+

Może poprawkę?

+

Istnieje tylko jedno oczywiste rozwiązanie: zaprzestać tworzenia stron, które opierają się na tabelach i jednopikselowych obrazkach. Jednak dla wielu autorów nie jest to praktyczne, a na pewno nie pomaga w naprawie starszych projektów, które nagle rozpadają się w nowoczesnych przeglądarkach. Jest jeszcze inny sposób naprawy: upewnić się, że dokument nie zostanie rozpoznany jako wyświetlany w trybie standardów. +

Możesz to zrobić używając deklaracji DOCTYPE, która włączy jeden z dwóch trybów: "wstecznej zgodności" lub "almost standards", lub nie umieszczając wcale deklaracji DOCTYPE w twoim dokumencie. Brak deklaracji DOCTYPE uniemożliwi walidację, i dlatego nie jest zalecany. Dla autorów, którzy pracują z odziedziczonymi dokumentami, tryb "wstecznej zgodności" deklaracji DOCTYPE jest najlepszym wyborem. W przypadku, kiedy autor tworzy nowy dokument lub próbuje przekształcić projekt tak, aby bazował na standardach na tyle, na ile jest to tylko możliwe, wtedy wybór trybu "almost standards" będzie prawdopodobnie lepszym rozwiązaniem. +

Oczywiście, dokumenty zadeklarowane jako XHTML Strict lub HTML Strict wywołają wyświetlanie w trybie "standardów", zatem zamierzamy przedstawić dwa podstawowe sposoby zajęcia się tym problemem w dokumentach w trybie zgodności i kilka sposobów wywoływania tych "poprawek". +

+

Ustawianie obrazków jako bloków

+

Pierwszym wyborem, i jedynym, który będzie działał w większości projektów wykorzystujących intensywnie grafikę, jest przekształcenie obrazka z elementu liniowego na element blokowy. Zrobienie tego sprawia, że nie jest generowany dłużej blok liniowy i tym samym problem znika, gwarantując, że obrazek jest jedyną rzeczą, która zajmuje tę komórkę tabeli. W najprostszym przypadku możemy dodać styl taki jak ten: +

+
 td img {display: block;}
+

Rozważmy tę regułę zastosowaną do następujących znaczników: +

+
<table cellspacing="0" cellpadding="0" border="0" width="500">
+<tr><td><img src="nav1.gif"><img src="nav2.gif"><img src="nav3.gif"><img
+src="nav4.gif"><img src="nav5.gif"></td></tr>
+<tr><td style="background: red;">
+<img src="smallred.gif" height="1" width="1"></td></tr>
+<tr><td>
+<p style="margin: 0.5em;">Ten tekst jest jeszcze jedną komórką tabeli. W tekście jest ikona
+  <img src="icon2.gif">
+ wskazująca link do innej strony. Jest to bardzo życiowe.  Lorem
+ipsum, dolor sit amet...</p></tr></table>
+

Jak widzimy w Przykładzie 8 działa to dobrze w niektórych przypadkach, ale nie najlepiej w innych. +

Przykład 8 +

Cienka czerwona linia pokazuje, że jednopikselowy rozpychający GIF sprawia teraz, iż komórka ma wysokość jednego piksela, tak jak projektant zamierzył. Niestety, teraz wszystkie przyciski w górnej komórce są elementami blokowymi i ostatecznie układają się w stos jeden nad drugim zamiast obok siebie. +

Jednym z możliwych rozwiązań jest dodanie klasy do każdego obrazka, który powinien być elementem blokowym, i napisanie reguły dopasowującej. +

+
td img.decoration {display: block;}
+
+<td><img src="reddot.gif" class="decoration"></td>
+

Zależnie od projektu może to wprowadzić wiele klas dodanych dla jednego prostego efektu. Jest to szczególnie widoczne, jeśli mamy wiele jednopikselowych komórek przeznaczonych do tworzenia ładnych linii układających się w stos lub czegoś podobnego. Jeśli samodzielnie dodajesz znaczniki możesz nadać klasy wierszom tabeli zamiast obrazkom. Zatem możesz mieć: +

+
tr.decoration img {display: block;}
+

...razem z następującą zmianą w znacznikach: +

+
<tr class="decoration"><td style="background: red;">
+<img src="smallred.gif" height="1" width="1">
+</td></tr>
+

Rezultatem tego jest przekształcenie w element blokowy jedynie GIF-a tworzącego odstępy, zatem pozostałe obrazki zostają w spokoju. Prowadzi to do rezultatu pokazanego w Przykładzie 9. +

Przykład 9 +

Ewentualnie możesz nadać klasę komórkom tabeli zamiast wierszom, jeśli to jest dla ciebie lepszym rozwiązaniem. W każdym z tych przypadków przekształcenie obrazków na elementy blokowe może przynieść niezamierzony efekt, jeśli komórki twojej tabeli zawierają więcej niż jeden pojedynczy obrazek w każdej, jak w Przykładzie 8. +

Oczywiście, dopóki mamy jednopikselową komórkę tworzącą odstęp w Przykładzie 9, jest tam jeszcze niechciana przestrzeń pod spodem górnych przycisków nawigacyjnych. Uwolnienie się od tego odstępu może być tak proste jak umieszczenie każdego obrazka we własnej komórce i uczynienie go elementem blokowym, pozostawmy jednak je wszystkie razem w jednej komórce, by pokazać jeszcze inne podejście. +

+

Używanie wyrównania pionowego

+

Innym głównym rozwiązaniem jest pozostawienie obrazków jako elementów liniowych i zmiana pionowego wyrównania obrazka w stosunku do linii bloku. Dla przykładu możesz wypróbować następujące rozwiązanie: +

+
td img {vertical-align: bottom;}
+

Spowoduje to, że dolna krawędź obrazka będzie wyrównana względem dolnej linii bloku zamiast linii bazowej. Jak możemy zobaczyć na Przykładzie 10, przynosi to zamierzony efekt: przestrzeń pod naszymi obrazkami w pasku nawigacyjnym znika. Jednak dekoracyjna komórka jest nadal zbyt wysoka i inne obrazki nie są wyrównane względem tekstu wokół nich. +

Przykład 10 +

Jeszcze raz możemy nadać klasę obrazkom, komórkom lub wierszom w celu precyzyjnego ustawienia efektu. Jednak style pokazane powyżej nie przezwyciężą problemu jednopikselowego obrazka, ponieważ linia bloku otaczająca go będzie miała wysokość czcionki w komórce tabeli i dlatego nie skurczy się. Obrazek przeniesie się na dół komórki, ale komórka nie skurczy się do rozmiarów obrazka. Dodatkowo, każdy inny obrazek, który jest krótszy niż wysokość linii bloku będzie nadal miał pustą przestrzeń wokół siebie -- jak to się działo z czerwoną komórką tworzącą odstęp. Jednopikselowy obrazek w komórce jest teraz wyrównany względem dołu komórki, ale linia bloku powraca i ma rozmiar normalnego tekstu. +

Zobacz Przykład 11, gdzie rozmiar czcionki dokumentu został podniesiony do większej wartości. Obrazki paska nawigacyjnego mają teraz pustą przestrzeń pojawiającą się nad nimi, a czerwona przestrzeń stała się większa. +

Przykład 11 +

Trudno tego uniknąć, ponieważ obrazki (w tym podejściu) są ciągle elementami liniowymi i dlatego nadal biorą udział w tworzeniu linii bloku. Jeśli ta linia bloku otrzyma wystarczającą wysokość, przestrzeń zacznie pojawiać się wokół obrazków +

+

Oczekując na rozwiązanie

+

Dzięki gruntowej implementacji CSS2 w Mozilli problem obrazków liniowych w komórkach tabeli, wymuszających niechcianą przestrzeń, został wzięty pod uwagę przez CSS Working Group. Powstało wiele propozycji rozwiązania tego problemu, lecz jedną z najbardziej obiecujących jest właściwość line-box-contain, którą zaproponowano do włączenia w CSS3. Gdy ta właściwość się przyjmie, wtedy każda przeglądarka wspierająca ją będzie mogła naśladować tradycyjne zachowanie "shrinkwrap" bez ryzyka nieoczekiwanego wyglądu z następującą regułą: +

+
td {line-box-contain: font replaced;}  /* propozycja do CSS3 */
+

Możliwe są inne rozwiązania zawierające się w aktualnym CSS3 Working Drafts, jak line-height-policy. Oczywiście, im szybciej rozwiązanie będzie można znaleźć i zaimplementować, autorzy będą szczęśliwsi. +

+

Rekomendacje

+

Z powodu braku wsparcia dla CSS3, trudno dostarczyć jasny zestaw kroków dla rozwiązania każdego przykładu tego problemu, ponieważ najlepsze rozwiązanie dla danego dokumentu zależy mocno od jego struktury. Jeśli twój dokument używa tradycyjnych znaczników, upewnij się, że deklaracja DOCTYPE odzwierciedla ten fakt i nie wywołuj trybu standardów. Zabezpieczy to przeglądarki przed użyciem wyświetlania opartego na standardach i w ten sposób wszystkie problemy z układem graficznym zostaną ominięte. Jeśli używasz znaczników w trybie strict lub potrzebujesz z innych powodów wyświetlania w trybie standardów, pamiętaj wtedy o poniższych wskazówkach: +

+ +

Z rozsądnym połączeniem podejść i redukcją trików z jednopikselowymi obrazkami-- które w przeglądarkach obsługujących CSS nie są w żaden sposób niezbędne-- jest całkiem możliwe ominięcie dziwnych efektów w trybie standardów. Najlepszym rozwiązaniem może być zagwarantowanie, że obrazki są zawsze w komórkach same, zatem pozwalają twórcom uczynić je elementami blokowymi, ale, jak zwykle, zależy to od autorskiego projektu. +

+

Podobne linki

+ +
+

Informacje o dokumencie

+ +
+{{ languages( { "en": "en/Images,_Tables,_and_Mysterious_Gaps", "es": "es/Im\u00e1genes,_tablas_y_huecos_misteriosos", "fr": "fr/Images,_tableaux_et_d\u00e9calages_myst\u00e9rieux" } ) }} diff --git a/files/pl/archive/mozilla/drag_and_drop/index.html b/files/pl/archive/mozilla/drag_and_drop/index.html new file mode 100644 index 0000000000..b963b08118 --- /dev/null +++ b/files/pl/archive/mozilla/drag_and_drop/index.html @@ -0,0 +1,142 @@ +--- +title: Drag and Drop +slug: Archive/Mozilla/Drag_and_drop +tags: + - NeedsTranslation + - TopicStub + - XUL +translation_of: Archive/Mozilla/Drag_and_drop +--- +

{{ Next("Drag and Drop JavaScript Wrapper") }}

+

{{ deprecated_header("gecko1.9.1") }}

+
+ As of Gecko 1.9.1 (Firefox 3.5), these APIs are officially deprecated the newer, simpler, portable API should be used in their place.
+

This section describes how to implement objects that can be dragged around and dropped onto other objects.

+

The Drag and Drop Interface

+

Many user interfaces allow one to drag particular objects around within the interface. For example, dragging files to other directories, or dragging an icon to another window to open the document it refers to. Mozilla and XUL provide a number of events that can handle when the user attempts to drag objects around.

+

A user can start dragging by holding down the mouse button and moving the mouse. The drag stops when the user releases the mouse. Event handlers are called when the user starts and ends dragging, and at various points in-between.

+

Mozilla implements dragging by using a drag session. When a user requests to drag something that can be dragged, a drag session should be started. The drag session handles updating the mouse cursor and where the object should be dropped. If something cannot be dragged, it should not start a drag session. Because the user generally has only one mouse, only one drag session is in use at a time.

+

Note that drag sessions can be created from within Mozilla itself or from other applications. Mozilla will translate the data being dragged as needed.

+

The list below describes the event handlers that can be called, which may be placed on any element. You only need to put values for the handlers where you need to do something when the event occurs.

+
+
+ ondrag {{ Fx_minversion_inline(3) }}
+
+ Called periodically throughout the drag and drop operation.
+
+ ondraggesture 
+
+ Called when the user starts dragging the element, which normally happens when the user holds down the mouse button and moves the mouse. The script in this handler should set up a drag session.
+
+ ondragstart {{ Fx_minversion_inline(3) }} 
+
+ An alias for ondraggesture; this is the HTML 5 spec name for the event and may be used in HTML or XUL; however, for backward compatibility with older versions of Firefox, you may wish to continue using ondraggesture in XUL.
+
+ ondragover 
+
+ This event handler is called for an element when something is being dragged over top of it. If the object can be dropped on the element, the drag session should be notified.
+
+ ondragenter 
+
+ Called for an element when the mouse pointer first moves over the element while something is being dragged. This might be used to change the appearance of the element to indicate to the user that the object can be dropped on it.
+
+ ondragexit 
+
+ Called for an element when the mouse pointer moves out of an element while something is being dragged. The is also called after a drop is complete so that an element has a chance to remove any highlighting or other indication.
+
+ ondragdrop 
+
+ This event handler is called for an element when something is dropped on the element. At this point, the user has already released the mouse button. The element can simply ignore the event or can handle it some way, such as pasting the dragged object into itself.
+
+ ondragend {{ Fx_minversion_inline(3) }} 
+
+ Called when the drag operation is finished.
+
+

There are two ways that drag and drop events can be handled. This first involves using the drag and drop XPCOM interfaces directly. The second is to use a JavaScript wrapper object that handles some of this for you. The code for this wrapper can be found in a file named {{ Source("toolkit/content/nsDragAndDrop.js nsDragAndDrop.js") }} which is contained in the widget-toolkit (or global) package.

+

XPCOM Drag and Drop interfaces

+

Two interfaces are used to support drag and drop. The first is a drag service, nsIDragService and the second is the drag session, nsIDragSession.

+

The nsIDragService is responsible for creating drag sessions when a drag starts, and removing the drag session when the drag is complete. The function invokeDragSession should be called to start a drag inside an ondraggesture event handler. Once this function is called, a drag has started.

+

The function invokeDragSession takes four parameters, as described below:

+
invokeDragSession(element,transferableArray,region,actions)
+
+
+
+ element 
+
+ A reference to the element that is being dragged. This can be retrieved by getting the property event.target during the event handler.
+
+ transferableArray 
+
+ An array of nsITransferable objects, one for each item being dragged. An array is used because you might want to drag several objects at once, such as a set of files.
+
+ region 
+
+ A region used for feedback indication. This should usually be set to null.
+
+ actions 
+
+ The actions that the drag uses. This should be set to one of the following constants, or several added together. The action can be changed during the drag depending on what is being dragged over.
+
+
+
+ nsIDragService.DRAGDROP_ACTION_NONE 
+
+
+
+ Used to indicate that no drag is valid.
+
+ nsIDragService.DRAGDROP_ACTION_COPY 
+
+ The item being dragged should be copied to its dropped location.
+
+ nsIDragService.DRAGDROP_ACTION_MOVE 
+
+ The item being dragged should be moved to its dropped location.
+
+ nsIDragService.DRAGDROP_ACTION_LINK 
+
+ A link (or shortcut or alias) to the item being dragged should be created in the dropped location.
+
+
+
+

The interface {{ interface("nsIDragService") }} also provides the function getCurrentSession which can be called from within the drag event handlers to get and modify the state of the drag. The function returns an object that implements {{ interface("nsIDragSession") }}.

+

The interface nsIDragSession is used to get and set properties of the drag that is currently occuring. The following properties and methods are available:

+
+
+ canDrop 
+
+ Set this property to true if the element the mouse is currently over can accept the object currently being dragged to be dropped on it. Set the value to false if it doesn't make sense to drop the object on it. This should be changed in the ondragover and ondragenter event handlers.
+
+ dragAction 
+
+ Set to the current action to be performed, which should be one or more of the constants described earlier. This can be used to provide extra feedback to the user.
+
+ numDropItems 
+
+ The number of items being dragged. For example, this will be set to 5 if five bookmarks are being dragged.
+
+ getData(transfer,index) 
+
+ Get the data being dragged. The first argument should be an nsITransferable object to hold the data. The second argument, index, should be the index of the item to return.
+
+ sourceDocument 
+
+ The document where the drag started.
+
+ sourceNode 
+
+ The DOM node where the drag started.
+
+ isDataFlavorSupported(flavor) 
+
+ Returns true if the data being dragged contains data of the specified flavor.
+
+

{{ Next("Drag and Drop JavaScript Wrapper") }}

+
+

Original Document Information

+ +
diff --git a/files/pl/archive/mozilla/firefox/index.html b/files/pl/archive/mozilla/firefox/index.html new file mode 100644 index 0000000000..c87802d82f --- /dev/null +++ b/files/pl/archive/mozilla/firefox/index.html @@ -0,0 +1,8 @@ +--- +title: Firefox +slug: Archive/Mozilla/Firefox +translation_of: Archive/Mozilla/Firefox +--- +

In progress. Out-of-date information about the Firefox project.

+ +

{{SubpagesWithSummaries}}

diff --git "a/files/pl/archive/mozilla/firefox/zastosowanie_mikroformat\303\263w/index.html" "b/files/pl/archive/mozilla/firefox/zastosowanie_mikroformat\303\263w/index.html" new file mode 100644 index 0000000000..15a49af1cc --- /dev/null +++ "b/files/pl/archive/mozilla/firefox/zastosowanie_mikroformat\303\263w/index.html" @@ -0,0 +1,145 @@ +--- +title: Zastosowanie mikroformatów +slug: Archive/Mozilla/Firefox/Zastosowanie_mikroformatów +tags: + - Firefox 3 +translation_of: Archive/Mozilla/Firefox/Using_microformats +--- +

{{ Fx_minversion_header(3) }} +{{ Draft() }} +Mikroformaty umożliwiają przekazywanie przez witryny internetowe do przeglądarek danych o określonej strukturze semantycznej. Umożliwia to zaprezentowanie podsumowania informacji na stronie bez wiedzy na temat tego, jak należy przetwarzać sam przekazywany dokument. W Firefoksie 3 zaimplementowano globalny obiekt Microformats, pozwalający na dostęp do mikroformatów. Interfejs API tego obiektu umożliwia łatwe wykrywanie i odczytywanie mikroformatów. +

+

Ładowanie interfejsu API mikroformatów

+

Obiekt Microformats można utworzyć za pomocą nowego mechanizmu ładowania skryptów dostępnego w programie Firefox 3. Aby skorzystać z interfejsu API, należy najpierw załadować obiekt: +

+
Components.utils.import("resource://gre/modules/Microformats.js");
+
+

Po załadowaniu interfejsu API można korzystać z mikroformatów, używając podanych poniżej metod. Informacje na temat przetwarzania mikroformatów znajdują się artykule Przetwarzanie mikroformatów w języku JavaScript. +

+

Wstępnie zdefiniowane mikroformaty

+

W programie Firefox 3 zaimplementowano definicje kilku popularnych mikroformatów: +

+
adr +
Reprezentuje adres (np. zamieszkania lub korespondencyjny). +
geo +
Reprezentuje lokalizację geograficzną (określaną za pomocą długości i szerokości geograficznej). +
hCard +
Reprezentuje informacje kontaktowe dotyczące osób. +
hCalendar +
Reprezentuje pozycję w kalendarzu (np. spotkanie). +
tag +
Używany w celu dodawania znaczników do innych mikroformatów. +
+

Metody

+

add()

+

Dodaje nowy mikroformat do modułu mikroformatu. +

{{ Note("Jeżeli mikroformat o danej nazwie istnieje, jest zastępowany przez nowy mikroformat.") }} +

+
add(nazwa, definicja);
+
+
Parametry
+
<tt>nazwa</tt> +
Nazwa mikroformatu, który ma zostać dodany do modułu mikroformatu. +
<tt>definicja</tt> +
Struktura języka JavaScript opisująca mikroformat. Aby uzyskać szczegółowe informacje, patrz Opisywanie mikroformatów w języku JavaScript. +
+

count()

+

Zwraca liczbę istniejących w dokumencie mikroformatów, które spełniają podane kryteria. +

+
liczbaMikroformatow = Microformats.count(nazwa, element_główny, uwzględniaj_rekurencyjnie_ramki);
+
+
Parametry
+
<tt>nazwa</tt> +
Nazwa mikroformatu, którego egzemplarze są liczone. +
<tt>element_główny</tt> +
Argument opcjonalny. Element DOM, od którego ma być rozpoczęte przeszukiwanie. Domyślnie jest to element content.document (innymi słowy, cały dokument). +
<tt>uwzględniaj_rekurencyjnie_ramki</tt> +
Argument opcjonalny. W przypadku podania wartości true w przeszukiwaniu uwzględnione będą ramki potomne. Wartością domyślną jest true. +
+
Zwracana wartość
+

Liczba całkowita określająca liczbę mikroformatów, które spełniają podane kryteria. +

+

debug()

+

Zwraca ciąg znaków określający obiekt mikroformatu. +

{{ Note("Zamiast stosowania metody debug() można po prostu skorzystać z metody obiektu mikroformatu o tej samej nazwie: microformatObject.debug().") }} +

+
zrzucanyCiag = debug(obiekt_mikroformatu)
+
+
Parametry
+
<tt>obiekt_mikroformatu</tt> +
Obiekt mikroformatu, którego zrzut jest wykonywany. +
+
Zwracana wartość
+

Ciąg znaków opisujący zawartość podanego obiektu mikroformatu. +

+

get()

+

Zwraca tablicę z obiektami mikroformatów, odpowiadającymi znalezionym mikroformatom spełniającym podane kryteria. +

+
tablicaMikroformatow = Microformats.count(nazwa, element_główny, opcje, tablica_docelowa);
+
+
Parametry
+
<tt>nazwa</tt> +
Nazwa poszukiwanego mikroformatu. +
<tt>element_główny</tt> +
Element DOM, od którego ma być rozpoczęte przeszukiwanie. +
<tt>opcje</tt> +
Argument opcjonalny. Obiekt JavaScript zawierający zero lub więcej następujących wskaźników: +
+
+
<tt>recurseFrames</tt> +
W przypadku podania wartości true w przeszukiwaniu uwzględnione będą ramki potomne. Wartością domyślną jest true. +
<tt>showHidden</tt> +
W przypadku podania wartości true dodawane są ukryte mikroformaty; w przeciwnym przypadku są one ignorowane. Wartością domyślną jest false. +
<tt>debug</tt> +
W przypadku korzystania z trybu debugowania należy podać wartość true; w przeciwnym przypadku należy podać wartość false. Wartością domyślną jest false. +
+
+
<tt>tablica_docelowa</tt> +
Argument opcjonalny. Tablica zawierająca obiekty mikroformatów, do której dodawane będą rezultaty wyszukiwania. +
+
Zwracana wartość
+

Nowa tablica zawierająca obiekty mikroformatów, które spełniały podane kryteria, lub tablica określona w obiekcie <tt>microformats</tt>, do której dodano nowe, znalezione obiekty mikroformatów. +

+

getNamesFromNode()

+

Zwraca listę rozdzielonych znakami spacji nazw mikroformatów, które odpowiadały podanemu węzłowi mikroformatu. +

+
listaNazw = Microformats.getNamesFromNode(węzeł);
+
+
Parametry
+
<tt>węzeł</tt> +
+
Węzeł, z którego ma zostać pobrana lista nazw mikroformatów. +
+
Zwracana wartość
+

Jeżeli podany <tt>węzeł</tt> jest mikroformatem, zwracany jest ciąg znaków stanowiący listę rozdzielonych znakami spacji nazw mikroformatów, które odpowiadały podanemu węzłowi. Jeżeli węzeł nie jest mikroformatem, nie jest zwracana żadna wartość. +

+

getParent()

+

Zwraca nadrzędny węzeł podanego mikroformatu lub węzła potomnego mikroformatu. +

wezelNadrzedny = Microformats.getParent(węzeł); +

+
Parametry
+
<tt>węzeł</tt> +
Węzeł, którego węzeł nadrzędny ma być pobrany. +
+
Zwracana wartość
+

Węzeł nadrzędny podanego węzła. Jeżeli podany <tt>węzeł</tt> nie jest mikroformatem ani węzłem potomnym mikroformatu, nie jest zwracana żadna wartość. +

+

isMicroformat()

+

Określa, czy podany węzeł DOM jest mikroformatem. +

+
wskaznik = Microformats.isMicroformat(węzeł);
+
+
Parametry
+
<tt>węzeł</tt> +
Węzeł DOM, który ma zostać sprawdzony. +
+
Zwracana wartość
+

true, jeżeli węzeł jest mikroformatem; w przeciwnym przypadku zwracana jest wartość false. +{{ Note("Metoda nie zwraca wartości true, jeżeli węzeł jest węzłem potomnym mikroformatu.") }} +


+


+


+

+
+
+{{ languages( { "en": "en/Using_microformats", "es": "es/El_uso_de_microformatos", "fr": "fr/Utilisation_de_microformats", "ja": "ja/Using_microformats", "ko": "ko/Using_microformats" } ) }} diff --git a/files/pl/archive/mozilla/index.html b/files/pl/archive/mozilla/index.html new file mode 100644 index 0000000000..0acec76e6d --- /dev/null +++ b/files/pl/archive/mozilla/index.html @@ -0,0 +1,10 @@ +--- +title: Archived Mozilla and build documentation +slug: Archive/Mozilla +tags: + - NeedsTranslation + - TopicStub +translation_of: Archive/Mozilla +--- +

These articles are archived, obsolete documents about Mozilla, Gecko, and the process of building Mozilla projects.

+

{{SubpagesWithSummaries}}

diff --git a/files/pl/archive/mozilla/venkman/index.html b/files/pl/archive/mozilla/venkman/index.html new file mode 100644 index 0000000000..26629f1eb2 --- /dev/null +++ b/files/pl/archive/mozilla/venkman/index.html @@ -0,0 +1,33 @@ +--- +title: Venkman +slug: Archive/Mozilla/Venkman +tags: + - 'JavaScript:Narzędzia' + - Narzędzia + - 'Programowanie_WWW:Narzędzia' + - 'Rozszerzenia:Narzędzia' + - Venkman + - Wszystkie_kategorie +translation_of: Archive/Mozilla/Venkman +--- +

Venkman jest opartym na Mozilli debuggerem JavaScriptu.

+

Pobierz Venkman

+ +

Źródła

+

Obejrzyj następujące strony, aby zdobyć więcej informacji o Venkman:

+ + +

{{ languages( { "en": "en/Venkman", "es": "es/Venkman", "fr": "fr/Venkman", "it": "it/Venkman", "ja": "ja/Venkman", "ko": "ko/Venkman" } ) }}

diff --git a/files/pl/archive/mozilla/xbl/index.html b/files/pl/archive/mozilla/xbl/index.html new file mode 100644 index 0000000000..34cb613a90 --- /dev/null +++ b/files/pl/archive/mozilla/xbl/index.html @@ -0,0 +1,39 @@ +--- +title: XBL +slug: Archive/Mozilla/XBL +tags: + - Wszystkie_kategorie + - XBL +translation_of: Archive/Mozilla/XBL +--- +

XML Binding Language (XBL, czasami także nazywany Rozszerzalny Język Wiązań) jest językiem służącym do deklarowania zachowań elementów. Element, do którego dołączone jest wiązanie, nazywany elementem wiązanym (eng. bound element), zostaje rozszerzony o nowe zachowanie określone w wiązaniu. +

Wiązania mogą posiadać uchwyty zdarzeń, które są rejestrowane dla wiązanego elementu, implementacje nowych metod i własności, które stają się dostępne z poziomu wiązanego elementu oraz anonimową zawartość, która jest włączana wewnątrz wiązanego elementu. +

Większość kontrolek XUL jest przynajmniej w części implementowana przy użyciu języka XBL. Możesz zbudować własne kontrolki bazując na istniejących w XUL-u, HTML-u, SVG i innych prymitywnych językach używających XBL-a. +

+

Specyfikacje

+ + +

Niektóre różnice pomiedzy sXBL a XBL2 są wymienione w artykule Anne van Kesteren (Listopad, 2005). +

Przegląd różnic pomiędzy XBL-em Mozilli a XBL2 można znaleźć w wiadomości Jonas'a Sicking'a (Kwiecień, 2007). +

+

Zobacz także

+ + +

Społeczność

+ +

+

diff --git a/files/pl/archive/mozilla/xulrunner/index.html b/files/pl/archive/mozilla/xulrunner/index.html new file mode 100644 index 0000000000..92a2d1c00b --- /dev/null +++ b/files/pl/archive/mozilla/xulrunner/index.html @@ -0,0 +1,80 @@ +--- +title: XULRunner +slug: Archive/Mozilla/XULRunner +tags: + - XUL + - XULRunner +translation_of: Archive/Mozilla/XULRunner +--- +
Przewodnik XULRunner
+Krótkie wprowadzenie do XULRunner.
+ +
+

XULRunner jest pojedynczym pakietem instalacyjnym, który może być użyty do uruchamiania wielu aplikacji bazujących na XUL+XPCOM takich jak Firefox czy Thunderbird.

+ +

Możesz pobrać XULRunner-a z ftp.mozilla.org

+
+ + + + + + + + +
+

Pełna wersja

+ +
+

XULRunner 1.8.0.4 jest stabilną pełną wersją developer preview opartą na tym samym kodzie źródłowym co Firefox 1.5.0.4. Jest dostępny dla Windows, Mac OS X, i Linux w angielskiej wersji językowej. Przeczytaj uwagi dotyczące tej wersji, aby zainstalować, odinstalować oraz dla zdobycia dodatkowych informacji.

+
+ +

Przegląd

+ + + +

Dokumentacja

+ +
+
Pokaż wszystkie...
+
+ +
+
Przykłady aplikacji
+
Prosty przykład aplikacji XULRunner, które mogą być kopiowane.
+
+ +
+
Przewodnik XULRunner
+
Krótkie wprowadzenie do XULRunner.
+
+ +

Pokaż wszystkie...

+
+

Społeczność

+ +
    +
  • Obejrzyj fora Mozilli...
  • +
+ +

{{ DiscussionList("dev-tech-xul", "mozilla.dev.tech.xul") }}

+ + + +

Wybrane tematy

+ +
+
XUL
+
+
+ +

Categories

diff --git a/files/pl/archive/rss/elementy/index.html b/files/pl/archive/rss/elementy/index.html new file mode 100644 index 0000000000..fe9070ad7b --- /dev/null +++ b/files/pl/archive/rss/elementy/index.html @@ -0,0 +1,148 @@ +--- +title: Elementy +slug: Archive/RSS/Elementy +tags: + - Dokumentacje + - Junk + - RSS + - 'RSS:Dokumentacje' + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/RSS_elements +--- +

Elementy RSS

+ +

A

+ + + +

B

+ +

C

+ + + +

D

+ + + +

E

+ + + +

F

+ +

G

+ + + +

H

+ + + +

I

+ + + +

J

+ +

K

+ +

L

+ + + +

M

+ + + +

N

+ + + +

O

+ +

P

+ + + +

Q

+ +

R

+ + + +

S

+ + + +

T

+ + + +

U

+ + + +

V

+ +

W

+ + + +

X

+ +

Y

+ +

Z

+ +

Interwiki Language Links

diff --git a/files/pl/archive/rss/elementy/title/index.html b/files/pl/archive/rss/elementy/title/index.html new file mode 100644 index 0000000000..ad9ceea54c --- /dev/null +++ b/files/pl/archive/rss/elementy/title/index.html @@ -0,0 +1,133 @@ +--- +title: title +slug: Archive/RSS/Elementy/title +tags: + - Dokumentacje + - RSS + - 'RSS:Dokumentacje' + - Wszystkie_kategorie +translation_of: Archive/RSS_elements/title +--- +

+

+

Element RSS - title

+

<title>...</title> - element RSS tytułu ma cztery zastosowania, które są sprecyzowane dla elementu title. Jest stosowany w elementach; <channel>, <image>, <item> lub <textinput>. +

Tytuł elementu RSS stanowią dane typu plain text. +

+
+

Uwaga: w wersji Userland RSS 0.91 znajduje się maksymalny limit znaków, który wynosi 100. +

+
+

Przykład Netscape RSS 0.91 Wersja 3 +

+
   
+    <?xml version="1.0"?>
+    <!DOCTYPE rss SYSTEM "http://my.netscape.com/publish/formats/rss-0.91.dtd">
+
+    <rss version="0.91">
+        <channel>
+            <title>Advogato</title>
+            <link>http://www.advogato.org/article/</link>
+            <description>Recent Advogato articles</description>
+            <language>en-us</language>
+            <image>
+                <link>http://www.advogato.org/</link>
+                <title>Advogato</title>
+                <url>http://www.advogato.org/image/tinyadvogato.png</url>
+            </image>
+            <item>
+                <title>Why can I not get any tang?!</title>
+                <link>http://www.advogato.org/article/10101.html</link>
+                <description>Seriously.  Why can't I get any tang?</description>
+            </item>
+        </channel>
+    </rss>
+    
+
+

Atrybuty

+
brak +
+

Pod elementy

+
brak +
+

Element będący rodzicem

+

Tabela poniżej pokazuje listę elementów RSS, które są elementami potomnymi tego elementu. +

+<center> + +<tr> +<th>Nazwa</td> +<th>Tag</td> +<th>0.90</td> +<th>N 0.91 R1</td> +<th>N 0.91 R3</td> +<th>U 0.91</td> +<th>0.92</td> +<th>0.93</td> +<th>0.94</td> +<th>1.0</td> +<th>2.0</td> +</tr> +<tr> +<td>Element RSS: channel</td> +<td><channel></td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +</tr> +<tr> +<td>Element RSS: image</td> +<td><image></td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +</tr> +<tr> +<td>Element RSS: item</td> +<td><item></td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +</tr> +<tr> +<td>Element RSS: textinput</td> +<td><textinput></td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>✔</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +<td>?</td> +</tr> +</table> +</center>

Zobacz także

brak +

{{ RSS:Element_Navigation() }} +

Interwiki Language Links +

+ + + + +
Elementy RSS</td> +<th colspan="9" style="text-align:center">Wersje RSS
</center>{{ languages( { "en": "en/RSS/Element/title" } ) }} diff --git a/files/pl/archive/rss/encje/index.html b/files/pl/archive/rss/encje/index.html new file mode 100644 index 0000000000..2b8b26e7ff --- /dev/null +++ b/files/pl/archive/rss/encje/index.html @@ -0,0 +1,1380 @@ +--- +title: Encje +slug: Archive/RSS/Encje +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS/Entity_list +--- +

+

+

Lista encji RSS

+
+

Uwaga: Są trzy różne wersje RSS 0.91. Pierwszą jest Netscape'a RSS 0.91 (Wersja 1) (N 0.91 R1), następną jest Netscape'a RSS 0.91 Wersja 3 (N 0.91 R3) i Userland RSS 0.91 (U 0.91). Wersja Netscape'a RSS 0.91 używa DTD, który definiuje 96 dodatkowych nazw encji. (wersja wydana przez Userland RSS 0.91 NIE używa tego DTD.) +

+
+ +<tr> +<th>0.90</td> +<th>N 0.91 R1</td> +<th>N 0.91 R3</td> +<th>U 0.91</td> +<th>0.92</td> +<th>0.93</td> +<th>0.94</td> +<th>1.0</td> +<th>2.0</td> +</tr> +<tr> +<td>&aacute;</td> +<td>#</td> +<td>á</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Aacute;</td> +<td>#</td> +<td>Á</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&acute;</td> +<td>#</td> +<td>´</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&acirc;</td> +<td>#</td> +<td>â</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Acirc;</td> +<td>#</td> +<td>Â</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&aelig;</td> +<td>#</td> +<td>æ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&AElig;</td> +<td>#</td> +<td>Æ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&agrave;</td> +<td>#</td> +<td>à</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Agrave;</td> +<td>#</td> +<td>À</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&aring;</td> +<td>#</td> +<td>å</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Aring;</td> +<td>#</td> +<td>Å</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&atilde;</td> +<td>#</td> +<td>ã</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Atilde;</td> +<td>#</td> +<td>Ã</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&auml;</td> +<td>#</td> +<td>ä</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Auml;</td> +<td>#</td> +<td>Ä</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&brvbar;</td> +<td>&#166;</td> +<td>¦</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ccedil;</td> +<td>#</td> +<td>ç</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ccedil;</td> +<td>#</td> +<td>Ç</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&cedil;</td> +<td>#</td> +<td>¸</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&cent;</td> +<td>&#162;</td> +<td>¢</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&copy;</td> +<td>#</td> +<td>©</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&curren;</td> +<td>&#164;</td> +<td>¤</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&deg;</td> +<td>#</td> +<td>°</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&divide;</td> +<td>#</td> +<td>÷</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&eacute;</td> +<td>#</td> +<td>é</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Eacute;</td> +<td>#</td> +<td>É</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ecirc;</td> +<td>#</td> +<td>ê</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ecirc;</td> +<td>#</td> +<td>Ê</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&egrave;</td> +<td>#</td> +<td>è</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Egrave;</td> +<td>#</td> +<td>È</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&eth;</td> +<td>#</td> +<td>ð</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ETH;</td> +<td>#</td> +<td>Ð</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&euml;</td> +<td>#</td> +<td>ë</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Euml;</td> +<td>#</td> +<td>Ë</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&frac12;</td> +<td>#</td> +<td>½</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&frac14;</td> +<td>#</td> +<td>¼</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&frac34;</td> +<td>#</td> +<td>¾</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&iacute;</td> +<td>#</td> +<td>í</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Iacute;</td> +<td>#</td> +<td>Í</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&icirc;</td> +<td>#</td> +<td>î</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Icirc;</td> +<td>#</td> +<td>Î</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&iexcl;</td> +<td>&#161;</td> +<td>¡</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&igrave;</td> +<td>#</td> +<td>ì</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Igrave;</td> +<td>#</td> +<td>Ì</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&iquest;</td> +<td>#</td> +<td>¿</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&iuml;</td> +<td>#</td> +<td>ï</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Iuml;</td> +<td>#</td> +<td>Ï</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&laquo;</td> +<td>#</td> +<td>«</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&macr;</td> +<td>#</td> +<td>¯</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&micro;</td> +<td>#</td> +<td>µ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&middot;</td> +<td>#</td> +<td>·</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&nbsp;</td> +<td>&#160;</td> +<td> </td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&not;</td> +<td>#</td> +<td>¬</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ntilde;</td> +<td>#</td> +<td>ñ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ntilde;</td> +<td>#</td> +<td>Ñ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&oacute;</td> +<td>#</td> +<td>ó</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Oacute;</td> +<td>#</td> +<td>Ó</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ocirc;</td> +<td>#</td> +<td>ô</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ocirc;</td> +<td>#</td> +<td>Ô</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ograve;</td> +<td>#</td> +<td>ò</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ograve;</td> +<td>#</td> +<td>Ò</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ordf;</td> +<td>#</td> +<td>ª</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ordm;</td> +<td>#</td> +<td>º</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&oslash;</td> +<td>#</td> +<td>ø</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Oslash;</td> +<td>#</td> +<td>Ø</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&otilde;</td> +<td>#</td> +<td>õ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Otilde;</td> +<td>#</td> +<td>Õ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ouml;</td> +<td>#</td> +<td>ö</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ouml;</td> +<td>#</td> +<td>Ö</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&para;</td> +<td>#</td> +<td>¶</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&pound;</td> +<td>&#163;</td> +<td>£</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&plusmn;</td> +<td>#</td> +<td>±</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&raquo;</td> +<td>#</td> +<td>»</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&reg;</td> +<td>#</td> +<td>®</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&sect;</td> +<td>#</td> +<td>§</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&shy;</td> +<td>#</td> +<td>­</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&sup1;</td> +<td>#</td> +<td>¹</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&sup2;</td> +<td>#</td> +<td>²</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&sup3;</td> +<td>#</td> +<td>³</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&szlig;</td> +<td>#</td> +<td>ß</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&thorn;</td> +<td>#</td> +<td>þ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&THORN;</td> +<td>#</td> +<td>Þ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&times;</td> +<td>#</td> +<td>×</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&uacute;</td> +<td>#</td> +<td>ú</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Uacute;</td> +<td>#</td> +<td>Ú</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ucirc;</td> +<td>#</td> +<td>û</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ucirc;</td> +<td>#</td> +<td>Û</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&ugrave;</td> +<td>#</td> +<td>ù</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Ugrave;</td> +<td>#</td> +<td>Ù</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&uml;</td> +<td>#</td> +<td>¨</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&uuml;</td> +<td>#</td> +<td>ü</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Uuml;</td> +<td>#</td> +<td>Ü</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&yacute;</td> +<td>#</td> +<td>ý</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&Yacute;</td> +<td>#</td> +<td>Ý</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&yen;</td> +<td>&#165;</td> +<td>¥</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +<tr> +<td>&yuml;</td> +<td>#</td> +<td>ÿ</td> +<td></td> +<td></td> +<td></td> +<td> </td> +<td> </td> +<td> </td> +<td> </td> +<td>?</td> +<td> </td> +</tr> +</table> + + + +
Encja</td> +

<th rowspan="2">Dziesiętny</td> +<th rowspan="2">Znak</td> +

+<th colspan="9" style="text-align:center">Wersje RSS
{{ languages( { "en": "en/RSS/Entity", "fr": "fr/RSS/Entit\u00e9s" } ) }} diff --git a/files/pl/archive/rss/index.html b/files/pl/archive/rss/index.html new file mode 100644 index 0000000000..3a975b352a --- /dev/null +++ b/files/pl/archive/rss/index.html @@ -0,0 +1,18 @@ +--- +title: RSS +slug: Archive/RSS +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS +--- +

"Getting Started" box, if there is no "Getting Started" article yet written, should be populated with another feature article or tutorial, should one exist. Otherwise, just comment it out

+
Na początek
+Kurs RSS-a dla początkujących.
+

Really Simple Syndication (RSS) jest podobnym do HTML-a, bazowanym na XML-u formatem danych używanym syndykacji. RSS posiada złożoną historię oraz wiele różnych, niekompatybilnych wersji. (Niektóre bazowane na RDF-ie, ale większość bazowana na XML-u.) Mimo to, RSS jest niezwykle popularnym formatem używanym do syndykacji wiadomości, postów na blogach, w IPradio i IPTV.

+ +

Dokumentacja

; Why RSS Slash is Popular - Counting Your Comments: <small>Charles Iliya Krempeaux talks about the RSS Slash Module, why it is popular among some, and how it is used to give a ''count'' for your comments.</small>  ; Why Well-Formed Web RSS Module is Popular - Syndicating Your Comments: <small>Charles Iliya Krempeaux talks about the RSS Well-Formed Web Module, why it is popular among some, and how it is used to link to your comments.</small>

Mit kompatybilności RSS
Mark Pilgrim opowiada o brudnej historii RSS i wylicza poszczególne detale niezgodności pomiędzy poszczególnymi wersjami.
Atomic RSS
Tim Bray opowiada o użyciu Atom 1.0 jako mikro formatu i rozszerzenia modułu RSS 2.0; Używaj nadal format syndykacji RSS 2.0, lecz rozpocznij używać elementów Atom 1.0.


Pokaż wszystkie...

Społeczność

  • Obejrzyj fora Mozilli...

{{ DiscussionList("dev-tech-xml", "mozilla.dev.tech.xml") }}

Powiązane tematy

RDF, XML

 

+


+Interwiki Language Links

+

 

+

{{ languages( { "en": "en/RSS", "es": "es/RSS", "fr": "fr/RSS", "it": "it/RSS", "ja": "ja/RSS", "ko": "ko/RSS", "pt": "pt/RSS" } ) }}

diff --git "a/files/pl/archive/rss/modu\305\202y/index.html" "b/files/pl/archive/rss/modu\305\202y/index.html" new file mode 100644 index 0000000000..2de3bdbedc --- /dev/null +++ "b/files/pl/archive/rss/modu\305\202y/index.html" @@ -0,0 +1,16 @@ +--- +title: Moduły +slug: Archive/RSS/Moduły +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS/Module +--- +

+

+

Lista modułów RSS

+

Moduły RSS są mikroformatami włączonymi do dokumentu RSS poprzez użycie przestrzeni nazw XML. Są one sposobem na rozszerzenie RSS. Poniżej znajduje się lista najpopularniejszych modułów RSS. +

+ +
Nazwa Przedrostek Status Data wydania Autor
Atomic RSS atom 27 lipca 2005 Tim Bray
blogChannel 17 września 2002 Dave Winer
Content content
creativeCommons cc 16 grudnia 2002 Dave Winer
Dublin Core dc
Slash slash
Well-Formed Web wfw Joe Gregorio i Chris Sells
+{{ languages( { "en": "en/RSS/Module" } ) }} diff --git "a/files/pl/archive/rss/modu\305\202y/slash/elementy/index.html" "b/files/pl/archive/rss/modu\305\202y/slash/elementy/index.html" new file mode 100644 index 0000000000..92ba6aabd3 --- /dev/null +++ "b/files/pl/archive/rss/modu\305\202y/slash/elementy/index.html" @@ -0,0 +1,85 @@ +--- +title: Elementy +slug: Archive/RSS/Moduły/Slash/Elementy +tags: + - Dokumentacje + - Junk + - RSS + - 'RSS:Dokumentacje' + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/RSS/Module/Slash/Element +--- +

Elementy RSS modułu Slash

+ +
+

Notatka: Na liście elementów poniżej przestrzeń nazw XML jest użyta jako prefiks slash (od it is a popular choice). Kiedykolwiek, użyjemy przestrzeń nazw jako prefiksu slash as the XML Namespace prefix is NOT necessary. Pozostawiamy Ci wolny wybór swojego prefiksu.

+
+ +

A

+ +

B

+ +

C

+ + + +

D

+ + + +

E

+ +

F

+ +

G

+ +

H

+ + + +

I

+ +

J

+ +

K

+ +

L

+ +

M

+ +

N

+ +

O

+ +

P

+ +

Q

+ +

R

+ +

S

+ + + +

T

+ +

U

+ +

V

+ +

W

+ +

X

+ +

Y

+ +

Z

diff --git "a/files/pl/archive/rss/modu\305\202y/slash/index.html" "b/files/pl/archive/rss/modu\305\202y/slash/index.html" new file mode 100644 index 0000000000..28730373ad --- /dev/null +++ "b/files/pl/archive/rss/modu\305\202y/slash/index.html" @@ -0,0 +1,70 @@ +--- +title: Slash +slug: Archive/RSS/Moduły/Slash +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS/Module/Slash +--- +
Na początek
+Przewodnik, który ma Ci pomóc w nauce modułu Slash RSS-a.
+ +

RSS Slash Module jest popularnym opartym na Slash blogu pomiędzy blogami imitując feel for Slashdot. Slash jest oparty na znanym silniku Slashdot.

+ + + + + + + + +
+

Wybrane artykuły UP TO 10

+ +
+
Why RSS Slash is Popular: Counting Your Comments
+
Charles Iliya Krempeaux talks about the RSS Slash Module, why it is popular among some, and how it is used to give a + count + for your comments (2005-08-22).
+
+ +

 

+
+

Referencje

+ + + +

Przykłady

+ +
    +
  • brak
  • +
+ +

Społeczność

+ +
    +
  • brak
  • +
+ +

Narzędzia

+ +
    +
  • brak
  • +
+ +

Inne źródła

+ + + +

Podobne tematy

+ +
+
RSS, RDF, XML
+
+
diff --git "a/files/pl/archive/rss/na_pocz\304\205tek/czym_jest_rss/index.html" "b/files/pl/archive/rss/na_pocz\304\205tek/czym_jest_rss/index.html" new file mode 100644 index 0000000000..ee8785d49d --- /dev/null +++ "b/files/pl/archive/rss/na_pocz\304\205tek/czym_jest_rss/index.html" @@ -0,0 +1,227 @@ +--- +title: Czym jest RSS +slug: Archive/RSS/Na_początek/Czym_jest_RSS +tags: + - 'RSS:Na_początek' +translation_of: Archive/RSS/Getting_Started/What_is_RSS +--- +

+

Strona ta wyjaśnia, czym jest RSS. Jeszcze nie teraz będziesz mógł utworzyć swój własny plik RSS, lecz na razie spójrz jak się go zazwyczaj wykorzystuje i obejrzyj przykłady plików najczęściej używanych. Przeczytaj także krótką historię rozwoju plików RSS. +

+

Czym jest RSS?

+

Najbardziej popularną wersją RSS są znaczniki XML -języka używanego do syndykacji. (Chociaż istnieje format RSS opaty o RDF, to jest on wycofany RSS 0.90 i RSS 1.0.) Zwykle używamy syndykacji RSS dla pobrania nagłówków nowości ze stron internetowych, blogów, IPradio, i z IPTV. +

Przewodnik ten uczy RSS 2.0. Podejmuje on wysiłek nauki innych numerów wersji RSS. +

RSS prawie nigdy nie był tworzony ręcznie, lecz zawsze za pomocą oprogramowania znajdującego się po stronie serwera (server side - często napisanego w językach takich jak PHP, Java, C# lub Python) umieszczonych na serwerze strony. Jednakże, podczas nauki RSS-a, będziemy tworzyć skrypty RSS ręcznie. +

+

Krótka historia RSS

+

W marcu 1999 roku firma Netscape opublikowała RSS 0.90. Był to o wiele, wiele inny RSS, niż ten dzisiejszy. Nie był on prawdziwym formatem syndykacji, ale był formatem, który dostarczał podsumowanie o stronie internetowej. Faktycznie nazwa RSS nie oznaczała Really Simple Syndication lecz w tym momencie miała znaczenie Rich Site Summary. +

W czerwcu 1999 opublikowano Netscape RSS 0.91. Podobnie jak RSS 0.90, RSS 0.91 firmy Netscape było formatem dostarczającym podsumowanie strony, i nie było ono w pełni formatem syndykacji (jak jest to dziś). Netscape utworzył RSS 0.91 uprościć jeszcze poprzedni kanał. RSS 0.90 był oparty RDF (wiele założeń miało budowę zbyt skomplikowaną.) Firma Netscape oparła RSS 0.91 tylko na XML i dodaniu DTD dopuszczając kilka encji (średnio znanych w HTML). +

W tym momencie Netscape wycofało oparty o RDF-a RSS 0.90 i narzuciło wszystkim używanie wersji Netscape RSS 0.91, która jest oparta na XML. +

W czerwcu 2000 została opublikowana wersja Userland RSS 0.91. (To znaczy, że istniały dwie różne wersje RSS 0.91.) Różnica pomiędzy nimi, dwoma różnymi wersjami RSS 0.91 -- Firmy Netscape RSS 0.91 i firmy Userland RSS 0.91 -- jest taka, że Userland RSS 0.91 nie posiada DTD, które posiada Netscape RSS 0.91; i nie zawiera w sobie dodatkowych encji, które ma Netscape RSS 0.91 (średnio znanych w HTML). Oprócz wspomianej różnicy, to są one identyczne. Technicznie mówiąc wersja firmy Userland RSS 0.91 jest podzbiorem wersji Netscape RSS 0.91. +

W grudniu 2000 grupa robocza RSS-DEV opublikowała RSS 1.0. Ta wersja RSS była niedługo całkowicie oparta na XML, ale oparto ją też na RDF (jak oryginalna, lecz już wycofana RSS 0.90).Grupa robocza RSS-DEV zmieniła to, że to, co obsługiwało RSS, pozostało i stało się RDF Site Summary. (Ostatecznie to jest to, co zostało umieszczone w tej wersji RSS.) +

W jednym momencie mieliśmy Netscape RSS 0.91, Userland RSS 0.91, i wersję opracowaną przez grupę roboczą RSS-DEV RSS 1.0. +

Jeszcze tego samego miesiąca Userland opublikował RSS 0.92. RSS 0.92 was meant to replace Userland RSS 0.91. (If you notice though, the RSS versioning number got all messed up at this point. RSS 0.92 jest newer than RSS 1.0.) +

W tym momecie mieliśmy wersje RSS-a; Netscape RSS 0.91, wersje grupy roboczej RSS-DEV, czyli RSS 1.0, i Userland RSS 0.92. +

W kwietniu 2001 Userland opublikował draft wersji RSS 0.93. Ta wersja RSS nigdy nie została ukończona i została wydana jedynie jako draft i nigdy nie stała się się wersją, która zastąpiłaby wersję firmy Userland RSS 0.92. +

W sierpniu 2002 Userland opublikował draft? wersji RSS 0.94. Wersja RSS 0.93, nigdy nie została ukończona i została wydana jedynie jako draft i nigdy nie stała się wersją, która zastąpiłaby wersję firmy Userland RSS 0.92. +

W tym momencie wciąż mieliśmy Netscape RSS 0.91, wersję grupy roboczej RSS-DEV RSS 1.0, i wersje Userland RSS 0.92. (Pomimo, że niektórzy używali RSS 0.93 i RSS 0.94 pomimo tego, że nie były one wspierane). +

We wrześniu 2002 Userland opublikował RSS 2.0. RSS 2.0 miało być wersją która zastąpi RSS 0.92 (drafty RSS 0.93 i RSS 0.94 nie były wspierane). Userland postanowiło użyć takiego numeru wersji 2.0, ponieważ grupa robocza RSS-DEV w tym czasie wydała wersje 1.0 opartą na RDF RSS 1.0. +

W tym momencie mieliśmy dostępne wersje: Netscape RSS 0.91, wersje grupy roboczej RSS-DEV RSS 1.0 i firmy Userland RSS 2.0. +

Historia ta nie ma krótkiego końca. Raz w listopadzie 2002 i jeszcze raz w styczniu 2003 roku, specyfikacja RSS 2.0 została zmieniona przez firmę Userland. Poprzez wprowadzenie wszystkich zmian w porównaniu do poprzednich wersji, została wprowadzona nazwa RSS 2.0 dla elementów <rss>. +

Aktualnie, na dzisiejszy dzień, wciąż mamy wersję Netscape's RSS 0.91 (Netscape nigdy jej nie wycofał), lecz jest on znikomo używany. Bardziej popularną wersją opartą także na RDF RSS 1.0 lub opartą o XML RSS 2.0. Opartą o XML jest RSS 2.0, która jest najbardziej popularną wersją. (Ten kurs pokazuje zastosowanie RSS 2.0). +

+

Jak używamy RSS dzisiaj

+

Dziś, RSS jest najczęściej wykorzystywany do syndykacji. Syndykacja jest to proces mówiący innym, że zostało umieszczona nowa zawartość np. tekstu do przeczytania. Innymi słowami: kiedy używasz syndykacji, mówisz wszystkim mniej więcej coś takiego: "Cześć wszystkim. Mam napisany artykuł, który chce abyście przeczytali po wejściu na moją stronę. Wystarczy tylko zasubskrybować mój kanał RSS i mieli zawsze możliwość pobrania najnowszych nagłówków moich artykułów". +

+
+

Uwaga: Jeśli dostarczasz kanał RSS nie zabezpieczony hasłem, to bez żadnych zastrzeżeń dajesz wszystkim dostęp do zawartości kanału RSS w prawie każdej postaci jak użytkownicy chcą go przeglądać. Użytkownik może go czytać. Może utworzyć jego lokalną kopię. Może dzielić localną kopię z innym użytkownikiem. Może także używać go na innej stronie internetowej. Może on nawet re-syndicated it, i wiele więcej. +

Jeśli nie chcesz, aby którykolwiek z powyższych przypadków był wykonany, to nie twórz kanału RSS niezabezpieczonego hasłem (Oczywiście nie twórz publicznego hasła.) +

+
+

Nowości ze stron internetowych używają kanału RSS do dostarczenia każdemu, kto się wpisał na listę najnowszych artykułów. Na przykład: +

+
   
+    <?xml version="1.0"?>
+
+    <rss version="2.0">
+
+        <channel>
+            <title>Example News Site</title>
+            <description>This is an Example News Site.</description>
+            <lastBuildDate>Wed, 27 Jul 2005 00:30:30 -0700</lastBuildDate>
+            <link>http://news.example.com/</link>
+
+            <item>
+                <title>News Flash: I Like Bread</title>
+                <guid>4d4a0a12-f188-4c97-908b-eea27213c2fe</guid>
+                <pubDate>Wed, 27 Jul 2005 00:30:30 -0700</pubDate>
+                <link>http://news.example.com/artcle/554</link>
+            </item>
+            <item>
+                <title>Big News Today: Birds Fly</title>
+                <guid>c4a63f09-b45b-466b-8773-6ff264001ab7</guid>
+                <pubDate>Tue, 19 Jul 2005 04:32:51 -0700</pubDate>
+                <link>http://news.example.com/artcle/553</link>
+            </item>
+            <item>
+                <title>Fire is Hot</title>
+                <guid>c1795324-d5ea-44fa-95b1-b5ce2090d4f1</guid>
+                <pubDate>Sun, 15 May 2005 13:02:08 -0700</pubDate>
+                <link>http://news.example.com/artcle/552</link>
+            </item>
+        </channel>
+
+    </rss>
+    
+
+

Osoby prowadzące własnego bloga używają RSS, aby dostarczać każdemu, kto znajduje się na ich liście służącej do powiadomienia o najnowszym zamieszczonym poście. Na przykład:

+
   
+    <?xml version="1.0"?>
+
+    <rss version="2.0">
+
+        <channel>
+            <title>Joe Blow's Blog</title>
+            <description>This is the Weblog of Joe Blow</description>
+            <lastBuildDate>Sun, 15 May 2005 13:02:08 -0500</lastBuildDate>
+            <link>http://joe-blow.example.net/</link>
+
+            <item>
+                <title>I Be Blogging...</title>
+                <guid>http://joe-blow.example.net/log/21</guid>
+                <pubDate>Sun, 15 May 2005 13:02:08 -0500</pubDate>
+                <link>http://joe-blow.example.net/log/21</link>
+            </item>
+            <item>
+                <title>I am so SMRT</title>
+                <guid>http://joe-blow.example.net/log/20</guid>
+                <pubDate>Sat, 14 May 2005 22:19:18 -0500</pubDate>
+                <link>http://joe-blow.example.net/log/20</link>
+            </item>
+            <item>
+                <title>Huh?</title>
+                <guid>http://joe-blow.example.net/log/19</guid>
+                <pubDate>Sat, 14 May 2005 09:55:59 -0500</pubDate>
+                <link>http://joe-blow.example.net/log/19</link>
+            </item>
+            <item>
+                <title>Black Cat Spotted</title>
+                <guid>http://joe-blow.example.net/log/18</guid>
+                <pubDate>Fri, 13 May 2005 13:13:13 -0500</pubDate>
+                <link>http://joe-blow.example.net/log/18</link>
+            </item>
+        </channel>
+
+    </rss>
+    
+
+

Ci, co tworzą IPradio pozwalając używać RSS do transmisji ich przedstawienia. Na przykład:

+
   
+    <?xml version="1.0"?>
+
+    <rss version="2.0">
+
+        <channel>
+            <title>Joe's IPradio Show</title>
+            <description>The best IPradio Show on the Internet, staring Joe!</description>
+            <lastBuildDate>Mon, 15 Aug 2005 16:12:37 -0400</lastBuildDate>
+            <link>http://joe.ipradio.example.net/</link>
+
+            <item>
+                <title>I C UR Tan Line</title>
+                <guid>http://joe.ipradio.example.net/show/55</guid>
+                <pubDate>Mon, 15 Aug 2005 16:11:57 -0400</pubDate>
+                <enclosure url="http://joe.ipradio.example.net/show/55"
+                           length="4487216"
+                           type="application/ogg"
+                />
+            </item>
+            <item>
+                <title>Car Care for Car Fanatics</title>
+                <guid>http://joe.ipradio.example.net/show/54</guid>
+                <pubDate>Mon, 8 Aug 2005 13:12:12 -0400</pubDate>
+                <enclosure url="http://joe.ipradio.example.net/show/54"
+                           length="4892178"
+                           type="audio/x-mp3"
+                />
+            </item>
+            <item>
+                <title>Best Beaches in BC</title>
+                <guid>http://joe.ipradio.example.net/show/53</guid>
+                <pubDate>Mon, 1 Aug 2005 18:22:14 -0400</pubDate>
+                <enclosure url="http://joe.ipradio.example.net/show/53"
+                           length="3984215"
+                           type="application/ogg"
+                />
+            </item>
+        </channel>
+
+    </rss>
+    
+
+
+

Uwaga: Transmisja radia Internetowego jest czasami nazywana Podcasting, IPradio, i Audio Blogging. +

+
+

Ten, kto tworzy Internetową telewizję stosuje RSS pozwalając pokazywać użytkownikom co jest transmitowane. Na przykład: +

+
   
+    <?xml version="1.0"?>
+
+    <rss version="2.0">
+
+        <channel>
+            <title>Kate's IPTV Show</title>
+            <description>Watch it or else!  You know you want to.</description>
+            <lastBuildDate>Tue, 23 Aug 2005 21:02:05 -0800</lastBuildDate>
+            <link>http://katetv.example.com/</link>
+
+            <item>
+                <title>This is Fun</title>
+                <guid>http://katetv.example.com/show/4</guid>
+                <pubDate>Tue, 23 Aug 2005 21:02:05 -0800</pubDate>
+                <enclosure url="http://katetv.example.com/show/4"
+                           length="1911146"
+                           type="application/ogg"
+                />
+            </item>
+            <item>
+                <title>Watch This</title>
+                <guid>http://katetv.example.com/show/3</guid>
+                <pubDate>Tue, 16 Aug 2005 16:11:57 -0400</pubDate>
+                <enclosure url="http://katetv.example.com/show/3"
+                           length="1387442"
+                           type="application/ogg"
+                />
+            </item>
+            <item>
+                <title>It is me again</title>
+                <guid>http://katetv.example.com/show/2</guid>
+                <pubDate>Tue, 9 Aug 2005 13:12:12 -0400</pubDate>
+                <enclosure url="http://katetv.example.com/show/2"
+                           length="1894877"
+                           type="video/mpeg"
+                />
+            </item>
+            <item>
+                <title>Hello</title>
+                <guid>http://katetv.example.com/show/1</guid>
+                <pubDate>Tue, 2 Aug 2005 18:22:14 -0400</pubDate>
+                <enclosure url="http://katetv.example.com/show/1"
+                           length="17442215"
+                           type="application/ogg"
+                />
+            </item>
+        </channel>
+
+    </rss>
+    
+
+

Przezorny czytnik może powiadomić, że przykłady strona internetowa z nowościami i blogger są tego samego typu RSS i także przykłady radio internetowe i telewizja internetowa są tego samego typu RSS. Faktycznie, prawdziwą różnicą pomiędzy newsami/blogami zawierającymi kanały RSS i tymi zawierającymi RSS kanałami radio/telewizja internetowa,jest taka, że kanały RSS nowości/blogi używają elementu <link> i internetowe radio/telewizja używają elementu RSS <enclosure>. +

+
+

Uwaga: Te przykłady RSS są bardzo, bardzo proste, i zostały zaprojektowane tylko dla pokazania przykładów RSS, jak one wyglądają. Wszystkie przykłady RSS są minimimalne. Kiedy będziesz tworzył swój własny kanał RSS, będziesz chciał zrobić bardziej złożony i zawierający dodatkowe elementy RSS oraz zawierający rozmaite moduły RSS. +

+
+

{{ Next("RSS:Na początek:Dlaczego używamy RSS") }} +

{{ languages( { "en": "en/RSS/Getting_Started/What_is_RSS", "fr": "fr/RSS/Premiers_pas/Pr\u00e9sentation_de_RSS" } ) }} diff --git "a/files/pl/archive/rss/na_pocz\304\205tek/dlaczego_u\305\274ywamy_rss/index.html" "b/files/pl/archive/rss/na_pocz\304\205tek/dlaczego_u\305\274ywamy_rss/index.html" new file mode 100644 index 0000000000..0a19b5c5d2 --- /dev/null +++ "b/files/pl/archive/rss/na_pocz\304\205tek/dlaczego_u\305\274ywamy_rss/index.html" @@ -0,0 +1,22 @@ +--- +title: Dlaczego używamy RSS +slug: Archive/RSS/Na_początek/Dlaczego_używamy_RSS +tags: + - RSS + - 'RSS:Na_początek' + - Wszystkie_kategorie +translation_of: Archive/RSS/Getting_Started/Why_use_RSS +--- +

+

Strona ta wyjaśnia, dlaczego możesz chcieć użyć RSS. W tym artykule jeszcze nie pokażemy w jaki sposób tworzyć własne pliki RSS, ale powiemy Ci, dlaczego warto go użyć.

+

Dlaczego używamy RSS?

+

Jeśli czytasz ten tekst, prawdopodobnie masz już swój powód, dla którego chcesz użyć RSS. Tak naprawdę jest wiele przyczyn, które przemawiają za użyciem RSS. Ale (najogólniej mówiąc) decydują o tym dwie największe przyczyny: 1: (oczywiście używamy tylko gdy) zaspokaja nasze potrzeby +2: posiada on ogromną siłę rozpędu - używają go już wszyscy. +

RSS ma ogromną siłę rozpędu. Ludzie używają go do syndykacji różnych rzeczy. Nowe artykuły, blogi, zakładki, radio internetowe, internetowa telewizja, aktualizacje oprogramowania, e-maile, listy mailingowe, muzyczne playlisty i wiele więcej. Jeśli jest wyświetlane co jakiś czas, to możesz być syndykowane za pomocą RSS.

Oprogramowanie, które potrafi czytać i wyświetlać RSS, jest niemal wszędzie. Mozilla Firefox obsługuje RSS (wspiera RSS poprzez technologię "dynamicznych zakładek" - Live Bookmark). Jest tak wiele agregatorów RSS, że trudno je zliczyć. Również różne oprogramowanie używa RSS. +

+

Agregatory RSS są wszędzie

+

Jednym z powodów używania RSS do syndykacji jest mnogość agregatorów RSS +(zbyt wiele, by je wszystkie spisać). Jeśli używasz syndykacji z pomocą RSS, wtedy wszystkie te agregatory RSS mogą używać oraz odczytywać twoje wątki RSS. +


+{{ PreviousNext("RSS:Na początek:Czym jest RSS", "RSS:Na początek:Jak działa RSS") }} +

{{ languages( { "fr": "fr/RSS/Premiers_pas/Pourquoi_utiliser_RSS", "en": "en/RSS/Getting_Started/Why_use_RSS" } ) }} diff --git "a/files/pl/archive/rss/na_pocz\304\205tek/index.html" "b/files/pl/archive/rss/na_pocz\304\205tek/index.html" new file mode 100644 index 0000000000..fca98e0922 --- /dev/null +++ "b/files/pl/archive/rss/na_pocz\304\205tek/index.html" @@ -0,0 +1,54 @@ +--- +title: Na początek +slug: Archive/RSS/Na_początek +tags: + - RSS + - 'RSS:Na_początek' + - Wszystkie_kategorie +translation_of: Archive/RSS/Getting_Started +--- +

+

+

Wprowadzenie

+

Przewodnik ten jest wprowadzeniem do Really Simple Syndication (RSS). +

Przeprowadzi Cię on krok po kroku przez podstawy RSS i zaprezentuje przykłady w akcji. W tym przewodniku zastosowana została znana mantra, mówiąca że "najlepszym sposobem nauki jest zrobienie czegoś". Z tego powodu będziesz sam tworzył pliki RSS.

+

Kto powinien skorzystać z przewodnika?

+

Ten przewodnik jest w większości przeznaczony dla osób zaczynających naukę RSS (to znaczy osób, które nie miały lub mają nieznaczne doświadczenie w RSS). Jednak również osoby doświadczone mogą uznać ten przewodnik za pomocny, gdyż może on im pomóc uzupełnić ich informacje o RSS lub posłużyć jako przypomnienie. +

Ten przewodnik zakłada, że masz jakiekolwiek doświadczenie z HTML (lub XML) i jesteś obyty z podstawowymi znacznikami. Inaczej ujmując, kod taki jak poniżej nie sprawia Ci problemów: +

+
   To jest z kod ze znacznikami <b>pogrubienia</b>.
+
+

Jeśli opanowałeś dostatecznie znaczniki, nie powinnieneś mieć problemu z nauką RSS. +

+
+

Uwaga: Jeśli NIE jesteś projektantem stron i NIE chcesz się nim stać, to ten przewodnik NIE jest dla Ciebie. Musisz swobodnie się poruszać w kwestii używania znaczników, takich jak w przykładzie powyżej, by efektywnie skorzystać z tego przewodnika. +

+
+

Co jest potrzebne przed rozpoczęcie pracy?

+

Aby opanować większość tematów z tego przewodnika, będziesz potrzebować edytora tekstu i czytnika RSS. Musisz także wiedzieć, jak się nimi posługiwać. +

+
+

Uwaga: Edytor tekstu nie jest tym samym, co edytor tekstowy. Upewnij się za każdym razem, że zapisujesz pliki RSS w zwykłym formacie tekstowym. +

+
+

Nie jest wymagane, aby tworzyć pliki RSS opisane w tym przewodniku (możesz go czytać), jednak jest to mniej efektywny sposób nauki. Zachowasz i wchłoniesz więcej informacji, jeśli będziesz tworzyć własne pliki RSS razem z tym przewodnikiem. +

+

Jak należy korzystać z przewodnika

+

Pomimo iż każda strona jest napisana tak, aby mogła funkcjonować jako samodzielny przewodnik, to każda z nich zakłada, że posiadasz wiedzę zdobytą na poprzednich stronach tego przewodnika. Mimo że możesz przejść do wybranego przez Ciebie miejsca przewodnika, zalecamy aby początkujący przeczytali ten przewodnik we właściwej kolejności. +

+

Przewodnik

+
  1. Czym jest RSS +
  2. Dlaczego używamy RSS +
  3. Jak działa RSS +
  4. Hello World +
  5. Syndykacja +
  6. Blogi +
  7. Transfer danych +
  8. Mikroformaty +
  9. Zaawansowany transfer danych +
+


+

+
+
+{{ languages( { "en": "en/RSS/Getting_Started", "es": "es/RSS/Primeros_pasos", "fr": "fr/RSS/Premiers_pas", "ja": "ja/RSS/Getting_Started" } ) }} diff --git "a/files/pl/archive/rss/na_pocz\304\205tek/jak_dzia\305\202a_rss/index.html" "b/files/pl/archive/rss/na_pocz\304\205tek/jak_dzia\305\202a_rss/index.html" new file mode 100644 index 0000000000..b2f083d1ba --- /dev/null +++ "b/files/pl/archive/rss/na_pocz\304\205tek/jak_dzia\305\202a_rss/index.html" @@ -0,0 +1,16 @@ +--- +title: Jak działa RSS +slug: Archive/RSS/Na_początek/Jak_działa_RSS +tags: + - RSS + - 'RSS:Na_początek' + - Wszystkie_kategorie +translation_of: Archive/RSS/Getting_Started/How_RSS_Works +--- +

+

Strona ta, ma za zadanie wyjaśnienia nam jak działa RSS. Jeszcze teraz nie będziemy tworzyć własnego pliku RSS, lecz nauczymy się jak różne systemy służą do odczytu nagłówków wiadomości RSS.

+

Jak działa RSS

+

Do pobrania nagłówków wiadomości RSS, dwa warunki muszą być spełnione: musi być serwer wysyłający i czytnik, który odczyta kanał.

Końcowym serwerem przesyłania nagłówków RSS jest część systemu, która tworzy kanał RSS. Strona nowości byłaby końcem serwera, gdzie można pobrać nagłówki wiadomości RSS. Blog byłby na serwerze końcem syndykacji RSS. IPradio wyświetla ostatnie nagłówki RSS wysłane z serwera. IPTV wyświetla ostatnie nagłówki RSS wysłane z serwera +

Końcowy klient przesyłania nagłówków kanału RSS, jest to taka część, która wczytuje kanał RSS (czytnik). Przeglądarka Mozilla Firefox jest takim czytnikiem, czyli końcowym klientem do pobrania kanału RSS. Panel RSS powinien być wbudowany w czytnik RSS. Agregator RSS opart na stronie będzie po stronie klienta syndykacji RSS. +

{{ PreviousNext("RSS:Na początek:Dlaczego używamy RSS", "RSS:Na początek:Hello World") }} +

{{ languages( { "fr": "fr/RSS/Premiers_pas/Fonctionnement_de_RSS", "en": "en/RSS/Getting_Started/How_RSS_Works" } ) }} diff --git "a/files/pl/archive/rss/na_pocz\304\205tek/syndykacja/index.html" "b/files/pl/archive/rss/na_pocz\304\205tek/syndykacja/index.html" new file mode 100644 index 0000000000..fcd6b45d6f --- /dev/null +++ "b/files/pl/archive/rss/na_pocz\304\205tek/syndykacja/index.html" @@ -0,0 +1,76 @@ +--- +title: Syndykacja +slug: Archive/RSS/Na_początek/Syndykacja +tags: + - RSS + - 'RSS:Na_początek' + - Wszystkie_kategorie +translation_of: Archive/RSS/Getting_Started/Syndicating +--- +

+

Strona ta wyjaśnia syndykacje strony z RSS. Dowiesz się jak zrobić, aby użytkownicy i maszyny mogły znaleźć Twój kanał RSS.

+

Czym jest syndykacja

+

Syndykacją (lub Syndykacją strony) jest moment utworzenia zawartości/treści dostępnej dla wszystkich, którzy chcą czytać, słuchać lub pooglądać nagłówki nowości.

RSS pomaga w syndykacji. RSS zorganizuje Twoją syndykacją do takiej formy, która zostanie w bardzo prosty sposób zrozumiana przez maszynę.

Syndykacja z RSS znaczy 3 rzeczy. +

+
  1. Utworzenie kanału RSS. +
  2. Dodaj specjalny element <link> do kodu strony HTML. +
  3. Dodaj specjalny element <a> do kodu strony HTML. +
+

Do tej pory omówiliśmy punkt 1 -- Utworzenie kanału RSS -- więc skupimy się teraz na 2 i 3 punkcie. +

+

Dodajemy <link>

+

Często dane kanału RSS są również udostępniane na stronie HTML. W tym przypadku strona ta pozwala zarówno ludziom jak i maszynom na pobranie kanału za pomocą następującego kodu. +

+
<link rel="alternate" type="application/rss+xml" href="http://example.com/feed" />
+
+

Często ludzie chcą ogłaszać poprzez kanał RSS swoich twór (na przykład notki bloga). Można to zrobić w sposób następujący. +

+
<link rel="home" type="application/rss+xml" href="http://example.com/feed" />
+
+

Zauważ, że kod ten wygląda prawie tak samo jak poprzedni. Jedyna różnicą jest wartość atrybutu rel (poprzedni link posiada wartość atrybutu rel równą alternate. Powyższy atrybut rel posiada wartość home). +

+
+

Uwaga: Zdarzały się nadużycia elementu <link> dla syndykacji RSS. Niektórzy blogerzy chcieli by inni mogli subskrybować ich blogi z jakiejkolwiek podstrony (a nie tylko z ich strony domowej). Powodowało to dodawanie wszędzie wielu elementów <link>, gdzie atrybut rel="alternate". (Również we wpisach bloga, a nie tylko na stronie domowej.) Jest to niepoprawne! Używanie w tym przypadku przypisania rel="alternate" jest błędne. Powinno być przypisanie rel="home". (Zobacz również artykuł Understanding rel and rev). Ważną częścią używania elementu <link> do syndykacji kanału RSS jest wykorzystanie przypisania type="application/rss+xml". +

+
+

Dodajemy <a>

+

Kiedy używamy kodu HTML element <link> jest przeważnie ukryty. W celu przedstawienia kanału RSS w sposób bardziej bezpośredni można używać elementu <a> wykorzystując podobieństwo z elementem <link> opisanym powyżej. +

Dla stworzenia odnośnika do strony HTML, na której dostępny jest również kanał RSS użyj: +

+
<a rel="alternate" type="application/rss+xml" href="http://example.com/feed">...</a>
+
+

Dla stworzenia odnośnika do wpisu na blogu użyj: +

+
<a rel="home" type="application/rss+xml" href="http://example.com/feed">...</a>
+
+

Zauważ, że powyższy kod jest prawie identyczny. Różni się tylko wartością atrybutu rel. (W poprzednim kodzie wartość atrybutu rel równa jest alternate. Natomiast w tym wartosc ta wynosi home.) +

+

Ikona kanału

+

Kanały RSS (i inne) używają specjalnej ikonki. Zalecane jest, abyś podczas tworzenia specjalnego linku <a> użył tej ikony do własnego kanału. Ikona wygląda następująco:

+
Grafika:Feed-icon-32x32.png +
+

Ze strony, można pobrać o wiele więcej ikonek kanału RSS (są dostępne w innych rozmiarach i kolorach. Dostępne są także źródła plików). +

+

Zaawansowane techniki syndykacji

+

Pomimo, że zaawansowane techniki syndykacji nie są konieczne, ich wsparcie jest zalecane; zwłaszcza dla stron i aplikacji wymagających dużych wydajności. +Protokół HTTP -- jeden z podstawowych technologii sieciowych -- dostarczający metodę prioretyzacji treści, jaka klient HTTP preferuje otrzymywać. Ta technika wykorzystuje preferowanie syndykacji RSS przez klienta (niż HTML lub inne formaty). Poniżej przedstawiamy przykład. +

+
Accept: application/rss+xml, text/html
+
+

Jednakże w oprogramowaniu może to wyglądać następująco: +

+
Accept: application/rss+xml, application/xhtml+xml, text/html
+
+

Tutaj znajduje się więcej w pełni gotowych przykładów: +

+
GET / HTTP/1.1
+Host: example.com
+Accept: application/rss+xml, application/xhtml+xml, text/html
+
+

Po otrzymaniu tego przez serwer HTTP powinno nastąpić przekierowanie klienta HTTP do kanału RSS za pomocą HTTP 302 Found. Podobnie do: +

+
HTTP/1.1 302 Found
+Location: http://example.com/feed
+
+

{{ PreviousNext("RSS:Na początek:Hello World", "RSS:Na początek:Blogi") }} +

{{ languages( { "en": "en/RSS/Getting_Started/Syndicating", "fr": "fr/RSS/Premiers_pas/Syndication" } ) }} diff --git a/files/pl/archive/rss/wersje/0.90/index.html b/files/pl/archive/rss/wersje/0.90/index.html new file mode 100644 index 0000000000..41a0757a63 --- /dev/null +++ b/files/pl/archive/rss/wersje/0.90/index.html @@ -0,0 +1,85 @@ +--- +title: '0.90' +slug: Archive/RSS/Wersje/0.90 +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS/Version/0.90 +--- +

+

{{ Deprecated_header() }} +

+

RSS 0.90

+

RSS 0.90 jest najwcześniejszą znaną wersją RSS, opublikowaną jako pełną wersje i została zastąpiona przez wersje Netscape'a RSS 0.91 (Wersja 1). Stworzony został przez firmę Netscape, aby być formatem metadanych, które dostarczają podsumowanie ze stron internetowych (i nie tylko był formatem syndykacji, tak jak to jest na dzień dzisiejszy).

RSS 0.90 jest oparty na formacie RDF. +

Podczas tworzenia RSS 0.90, inicjalizacja RSS rozumie go jako Rich Site Summary, a nie jako Really Simple Syndication. (Zobacz RSS - What is in a Name aby dowiedzieć się więcej nt. historii i stosowanych nazwach poszczególnych wersji.) +

+
+

NOTATKA: RSS 0.90 został wycofany (deprected). Osoby tworzące kanał RSS NIE POWINY tworzyć kanału RSS w wersji 0.90 i POWINNI zamiast tego używać nigdy nie wycofanej wersji formatu RSS. (Zobacz listę wersji RSS, aby zobaczyć, który format nie jest formatem wycofanym). Użytkownicy RSS POWINNi wciąż być chociaż zdolni zaakceptować kanał RSS 0.90. +

+
+


+

+

Przykłady

+

RSS 0.90 wygląda podobnie do poniżeszego kodu: +

+
   
+    <?xml version="1.0"?>
+
+    <rdf:RDF
+       xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+       xmlns="http://my.netscape.com/rdf/simple/0.9/"
+    >
+
+        <channel>
+            <title>Mozilla Dot Org</title>
+            <link>http://www.mozilla.org</link>
+            <description>the Mozilla Organization web site</description>
+        </channel>
+
+        <image>
+            <title>Mozilla</title>
+            <url>http://www.mozilla.org/images/moz.gif</url>
+            <link>http://www.mozilla.org</link>
+        </image>
+
+        <item>
+            <title>New Status Updates</title>
+            <link>http://www.mozilla.org/status/</link>
+        </item>
+
+        <item>
+            <title>Bugzilla Reorganized</title>
+            <link>http://www.mozilla.org/bugs/</link>
+        </item>
+
+        <item>
+            <title>Mozilla Party, 2.0!</title>
+            <link>http://www.mozilla.org/party/1999/</link>
+        </item>
+
+        <item>
+            <title>Unix Platform Parity</title>
+            <link>http://www.mozilla.org/build/unix.html</link>
+        </item>
+
+        <item>
+            <title>NPL 1.0M published</title>
+            <link>http://www.mozilla.org/NPL/NPL-1.0M.html</link>
+        </item>
+
+    </rdf:RDF>
+    
+
+

Note that here, RSS is being used to list sections of the web site. Rather than for syndication. +


+

+

Specyfikacje

+

Oryginalna specyfikacja RSS 0.90 znikneła z oryginalnego adresu strony +

+
http://my.netscape.com/publish/help/quickstart.html +
+

Kopie zostały zapisane i można je zobaczyć:

+ +{{ languages( { "en": "en/RSS/Version/0.90", "ja": "ja/RSS/Version/0.90" } ) }} diff --git a/files/pl/archive/rss/wersje/0.91/index.html b/files/pl/archive/rss/wersje/0.91/index.html new file mode 100644 index 0000000000..e407e5e780 --- /dev/null +++ b/files/pl/archive/rss/wersje/0.91/index.html @@ -0,0 +1,18 @@ +--- +title: '0.91' +slug: Archive/RSS/Wersje/0.91 +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS/Version/0.91 +--- +

+

+

RSS 0.91

+

Poniżej znajdują się 3 różne wersje RSS 0.91: +

+ +{{ languages( { "en": "en/RSS/Version/0.91", "ja": "ja/RSS/Version/0.91" } ) }} diff --git a/files/pl/archive/rss/wersje/index.html b/files/pl/archive/rss/wersje/index.html new file mode 100644 index 0000000000..cc6cbdc0af --- /dev/null +++ b/files/pl/archive/rss/wersje/index.html @@ -0,0 +1,31 @@ +--- +title: Wersje +slug: Archive/RSS/Wersje +tags: + - RSS + - Wszystkie_kategorie +translation_of: Archive/RSS/Version +--- +

+

+

Wersje RSS

+

RSS posiada złożoną historię. Różni ludzie i grupy tworzyły niepowiązane ze sobą standardy o nazwie RSS. Niektóre formaty RSS-a bazują na XML-u. Inne na RDF-ie. +

Poniższa lista przedstawia wszystkie znane wersje RSS-a. Są one poukładane w kolejności chronologicznej. +

+
+

Uwaga: RSS 1.0, na poniższej liście wydaje się być nie na miejscu na jakim powinno się znajdować. Jednak, ze względu na kolejność chronologiczna, takie właśnie miejsce mu się należy. +

+
+
+

Uwaga: Istnieją trzy, różne, wersje RSS-a 0.91. RSS 0.91 Netscape'a (Wersja 1), RSS 0.91 Netscape'a Wersja 3 oraz RSS 0.91 Userland'a. Mówiąc szczegółowo, RSS 0.91 Userland'a jest podzbiorem RSS 0.91 Netscape'a. +

+
+
+

Uwaga: RSS 0.93 i RSS 0.94 zostały wydane tylko jako "szkice" i nigdy nie stały się "finalne" więc nie zostały nigdy przeznaczone do użycia. +

+
+


+

+ +
Nazwa Status Data wydania Bazuje na Autor
RSS 0.90 {{ Deprecated_inline() }} marzec 1999 RDF Netscape
RSS 0.91 Netscape (Wersja 1) {{ Deprecated_inline() }} ? XML Netscape
RSS 0.91 Netscape (Wersja 3) {{ Obsolete_inline() }} 10 lipiec 1999 XML Netscape
RSS 0.91 Userland {{ Deprecated_inline() }} 4 czerwca 2000 XML Userland
RSS 1.0 Standard 9 grudzień 2000 RDF Grupa robocza RSS-DEV
RSS 0.92 {{ Deprecated_inline() }} 25 grudzień 2000 XML Userland
RSS 0.93 {{ Deprecated_inline() }} 20 kwiecień 2001 XML Userland
RSS 0.94 {{ Deprecated_inline() }} 19 sierpień 2002 XML Userland
RSS 2.0 {{ Deprecated_inline() }} wrzesień 2002 XML Userland
RSS 2.0 (po 2002-11-11) {{ Deprecated_inline() }} 11 listopad 2002 XML Userland
RSS 2.0 (po 2003-01-21) Standard 21 styczeń 2003 XML Userland
+{{ languages( { "en": "en/RSS/Version", "es": "es/RSS/Versiones", "fr": "fr/RSS/Version", "ja": "ja/RSS/Version" } ) }} diff --git a/files/pl/archive/standardy_www/index.html b/files/pl/archive/standardy_www/index.html new file mode 100644 index 0000000000..2ebda169bd --- /dev/null +++ b/files/pl/archive/standardy_www/index.html @@ -0,0 +1,67 @@ +--- +title: Standardy WWW +slug: Archive/Standardy_WWW +translation_of: Archive/Web_Standards +--- +
Standardy WWW zostały stworzone w celu zagwarantowania wszystkim internautom długoterminowej kompatybilności w odczycie stron WWW. Projektowanie i pisanie z wykorzystaniem tych standardów upraszcza produkcję i obniża jej koszty, a tak stworzone produkty stają się dostępne dla większej ilości odbiorców i przeglądarek internetowych. Strony tworzone zgodnie z tymi regułami będą działały prawidłowo w przyszłych wersjach obecnych przeglądarek internetowych, a także w nowych urządzeniach odbiorczych, które w przyszłości pojawią się na rynku {{ Ref(1) }}.
+ + + + + + + + +
+

Dokumentacja

+ +
+
Wybór zgodności ze standardami zamiast praktyk własnościowych
+
W świecie programistów istnieje potrzeba standardów, ponieważ aplikacje są tworzone w wielu niezależnych grupach.
+
+ +
+
Firefox - potrzeba wolności
+
Prezentacja z konferencji Wolne oprogramowanie w administracji publicznej na temat roli wolnych standardów w projektach publicznych.
+
+ +


+ Pokaż wszystkie...

+
+

Społeczność

+ +
    +
  • Obejrzyj fora Mozilli...
  • +
+ +

{{ DiscussionList("dev-web-development", "mozilla.dev.web-development") }}

+ + + +

Narzędzia

+ + + +

Pokaż wszystkie...

+ +

Powiązane tematy

+ +
+
CSS, DHTML, HTML, Programowanie WWW, XHTML, XML
+
+ +

 

+
+ +
+

{{ Note(1) }} - The Web Standards Project

+ +

Categories

diff --git "a/files/pl/archive/standardy_www/poprawne_u\305\274ycie_tytu\305\202\303\263w_w_zewn\304\231trznych_arkuszach_styl\303\263w/index.html" "b/files/pl/archive/standardy_www/poprawne_u\305\274ycie_tytu\305\202\303\263w_w_zewn\304\231trznych_arkuszach_styl\303\263w/index.html" new file mode 100644 index 0000000000..19412f9bd7 --- /dev/null +++ "b/files/pl/archive/standardy_www/poprawne_u\305\274ycie_tytu\305\202\303\263w_w_zewn\304\231trznych_arkuszach_styl\303\263w/index.html" @@ -0,0 +1,40 @@ +--- +title: Poprawne użycie tytułów w zewnętrznych arkuszach stylów +slug: Archive/Standardy_WWW/Poprawne_użycie_tytułów_w_zewnętrznych_arkuszach_stylów +tags: + - CSS + - Wszystkie_kategorie +translation_of: Archive/Web_Standards/Correctly_Using_Titles_With_External_Stylesheets +--- +

+

Zewnętrzne arkusze stylów są zwykle łączone z dokumentami HTML przy użyciu elementu link, ale niezwykle ważnym jest właściwe użycie atrybutów tego elementu. Ponieważ istnieją trzy rodzaje arkuszy stylów, atrybut title jest niezbędny do określenia dwóch z nich. Obecność atrybutu title w elemencie link odwołującym się do zewnętrznego arkusza stylów może sprawić, że stanie się on preferowanym arkuszem stylów. W większości przypadków spowoduje to zignorowanie zewnętrznego arkusza stylów, co zwykle nie jest tym, czego życzył sobie autor. +

+

Dlaczego tytuł się liczy?

+

Atrybut title wpływa na sposób w jaki zewnętrzny arkusz stylów będzie zastosowany w dokumencie. Użycie atrybutu title jest tak charakterystyczne, że specyfikacja HTML 4.01 dzieli arkusze stylów ze względu na jego obecność lub jej brak. Poprzez użycie atrybutu title można kontrolować, kiedy dany arkusz stylów zawsze stosuje się do dokumentu, czy też jest używany tylko w niektórych, specyficznych przypadkach. +

Istnieją trzy rodzaje arkuszy stylów: stałe, preferowane oraz alternatywne. Najbardziej znanymi autorom będą stałe arkusze stylów, których dowolna ilość może być jednocześnie użyta w dokumencie. Stałym arkuszem stylów jest taki, który nie ma atrybutu title, a wartością atrybutu rel jest stylesheet. Dokument może się odwoływać do jednego lub więcej stałych arkuszy stylów, z których wszystkie są używane podczas prezentacji dokumentu. +

Preferowanym arkuszem stylów jest natomiast taki, który ma do atrybutu rel przypisaną wartość stylesheet i posiada dowolną wartość atrybutu title. Poniżej dwa przykłady: +

+
<link type="text/css" rel="stylesheet" title="Style podstawowe" href="basic.css" />
+<link type="text/css" rel="stylesheet" title="Ryby i łódki" href="ocean.css" />
+

W specyfikacji HTML 4.01 określone jest, iż tylko jeden z preferowanych arkuszy stylów może być użyty w danym momencie. W związku z tym, patrząc na powyższy przykład, tylko jeden z podanych dwóch preferowanych arkuszy stylów będzie zastosowany w dokumencie. W specyfikacji brak procedury decydującej o tym, który z podanych arkuszy stylów powinien być użyty, wobec czego przeglądarki mają wolny wybór, który arkusz stylów zastosują. +

Zatem dowolny link do arkusza stylów, w którym określony został atrybut title nie może być stały, i może być zignorowany przez przeglądarkę. Każdy z elementów link odwołujący się do arkusza stylów i zawierający atrybut title musi być preferowanym albo alternatywnym arkuszem stylów, zależnie od wartości atrybutu rel. +

W dokumencie odwołującym się do alternatywnych arkuszy stylów, preferowany arkusz stylów będzie używany tak długo, póki użytkownik nie wybierze żadnego z arkuszy alternatywnych. Zatem, kiedy dokument jest ładowany przeglądarka użyje wszystkich stałych arkuszy stylów, oraz jednego preferowanego (należy pamiętać, iż tylko jeden z arkuszy powinien być określony jako preferowany). Gdy użytkownik wybierze jeden z arkuszy alternatywnych, arkusz preferowany przestanie być używany, lecz będzie mógł być wybrany ponownie przez użytkownika. +

Podstawowym użyciem preferowanego arkusza stylów jest określenie jednego z arkuszy stylów jako "domyślnego" dla prezentacji. Jeśli zostanie wybrany którykolwiek z alternatywnych arkuszy stylów, arkusz preferowany przestaje być używany na korzyść wybranego przez użytkownika alternatywnego arkusza stylów. +

+

Zalecenia

+

Twórcy stron powinni upewniać się, że każdy z arkuszy stylów, które powinny być używane zawsze są zadeklarowane jako stałe, a nie preferowane. Cytując, Specyfikacja HTML 4.01, sekcja 14.3.1 określa: +

+ +

Odnośniki

+ +
+

Informacje o dokumencie

+ +
+{{ languages( { "fr": "fr/Utiliser_des_titres_corrects_avec_des_feuilles_de_styles_externes", "en": "en/Correctly_Using_Titles_With_External_Stylesheets" } ) }} diff --git "a/files/pl/archive/standardy_www/stylizowanie_skr\303\263t\303\263w_i_akronim\303\263w/index.html" "b/files/pl/archive/standardy_www/stylizowanie_skr\303\263t\303\263w_i_akronim\303\263w/index.html" new file mode 100644 index 0000000000..0f7a6ee703 --- /dev/null +++ "b/files/pl/archive/standardy_www/stylizowanie_skr\303\263t\303\263w_i_akronim\303\263w/index.html" @@ -0,0 +1,44 @@ +--- +title: Stylizowanie skrótów i akronimów +slug: Archive/Standardy_WWW/Stylizowanie_skrótów_i_akronimów +tags: + - CSS + - Dostępność + - Wszystkie_kategorie +translation_of: Archive/Web_Standards/Styling_Abbreviations_and_Acronyms +--- +

+

Podsumowanie: Elementy HTML <code>abbr</code> i <code>acronym</code> są użytecznymi pomocami w tworzeniu dostępnych stron, jednak ich stylizacja może okazać się zaskakująca. Zobacz, jak można kontrolować ich prezentację bez poświęcania korzyści, jakie dają te elementy. +

Wielu autorów zaczyna używać na swoich stronach elementów HTML abbr (skrót) i acronym (akronim). Jest to godne polecenia i zgodnie z Guideline 4 of the Web Content Accessibility Guidelines, obydwa elementy powinny posiadać atrybut title, aby poprawić "czytelność stron internetowych dla wszystkich, w tym ludzi z zaburzeniami poznawczymi, trudnościami w uczeniu się czy też ludzi głuchych". +

+

Problem

+

Autorzy zauważyli, że abbr i acronym w Mozilli i związanych z nią przeglądarkach wyświetlane są z kropkowanym "podkreśleniem". Owo podkreślenie nie daje się usunąć za pomocą text-decoration: none. Powód takiej sytuacji można znaleźć w pliku Mozilli <tt>html.css</tt>: +

abbr[title], acronym[title] {
+     border-bottom: dotted 1px;
+   }
+

"Podkreślenie" jest w rzeczywistości dolnym obramowaniem. +

+

Rozwiązanie

+

Jeżeli autor chce usunąć podkreślenie dla abbr i acronym, można to wykonać za pomocą poniższej reguły: +

abbr[title], acronym[title] {
+     border-bottom-width: 0;
+   }
+

Oczywiście można też zrobić sporo innych rzeczy, jak zmiana stylu czy koloru obramowania, zmiana wyglądu tekstu w tych elementach, użycie nieznacznie innego koloru, itd. +

Lepszym wyjściem może być zmniejszenie widocznej grubości ramki bez faktycznego jej usuwania. "Podkreślenie" mówi czytającemu, że wyróżniony wyraz związany jest z pewną dodatkową informacją. W Mozilli po umieszczeniu wskaźnika myszy nad elementem i pozostawieniu go przez chwilę zawartość atrybutu title pojawi się jako "dymek" obok wskaźnika myszy. Usunięcie "podkreślenia" z tych elementów pozbawi czytelników oznakowania, że dostępna jest ta dodatkowa informacja. +

+

Zalecenia

+ +

Odnośniki

+ +
+

Informacje o dokumencie

+ +
+{{ languages( { "en": "en/Styling_Abbreviations_and_Acronyms", "ja": "ja/Styling_Abbreviations_and_Acronyms" } ) }} diff --git "a/files/pl/archive/standardy_www/wyb\303\263r_zgodno\305\233ci_ze_standardami_zamiast_praktyk_w\305\202asno\305\233ciowych/index.html" "b/files/pl/archive/standardy_www/wyb\303\263r_zgodno\305\233ci_ze_standardami_zamiast_praktyk_w\305\202asno\305\233ciowych/index.html" new file mode 100644 index 0000000000..4052a985e3 --- /dev/null +++ "b/files/pl/archive/standardy_www/wyb\303\263r_zgodno\305\233ci_ze_standardami_zamiast_praktyk_w\305\202asno\305\233ciowych/index.html" @@ -0,0 +1,104 @@ +--- +title: Wybór zgodności ze standardami zamiast praktyk własnościowych +slug: >- + Archive/Standardy_WWW/Wybór_zgodności_ze_standardami_zamiast_praktyk_własnościowych +tags: + - Standardy_WWW + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/Web_Standards/Choosing_Standards_Compliance_Over_Proprietary_Practices +--- +

Wstęp

+ +

Istnieje pewna liczba standardów, procedur oraz procesów, którą każda organizacja może wykorzystać. Na wyższym poziomie istnieją dwa podstawowe typy standardów: proceduralny (jak my to robimy) oraz techniczny (czym się kierujemy). Organizacje wdrażają wewnętrzne standardy proceduralne, aby móc wydajnie działać. Mogą także wdrażać zewnętrzne procedury oraz/lub standardy techniczne. Techniczne standardy tradycyjnie były wprowadzane przez konsorcja lub ciała standaryzujące. Standardy techniczne mogą być zarówno publiczne, oparte na standardach lub własnościowe. Celem tego dokumentu jest omówienie i podkreślenie wagi wsparcia otwartych standardów technologicznych, które są zewnętrzne względem organizacji. Jednak zacznijmy dyskusję od spojrzenia w głąb wewnętrznych procedur, procesów i standardów.

+ +

Czemu organizacje powinny mieć standardowe procedury na każdym poziomie? Kierowanie się standardami nie jest niczym nowym; organizacje wymagają od swoich pracowników, aby trzymali się pewnych zasad lub zestawu standardów na okrągło. Pagery, karty czasowe, procedury kontroli kont to wszystko są standardy na poziomie grup.

+ +

W świecie programowania istnieje potrzeba standardów, ponieważ aplikacje są tworzone między wieloma grupami programistów. Wiele organizacji upublicznia swoje wewnętrzne standardy i procedury programistyczne. Na przykład, organizacja może zdecydować, że C++, Java i JavaScript będą jej podstawowymi językami programistycznymi. Mogą wymagać, aby każdy projekt posiadał Dokumenty Wymagań Marketingowych, Dokumenty Wymagań Produktu, Dokumenty Wymagań Funkcjonalności, Plany Testów Kontroli Jakości i Dokumenty Certyfikujące.

+ +

Wraz z rozwojem organizacji, rośnie potrzeba tworzenia procesów zapewniających więcej kontroli, która pozwala łatwiej planować i przewidywać. Z procesami organizacje mogą tworzyć harmonogramy wydań, wdrażać plany marketingowe, analizować rozdział zasobów i wprowadzać poprawki w razie konieczności. Zawierzenie standardom i procesom może wprowadzić dodatkowy poziom elastyczności, ponieważ programowanie staje się przewidywalne. Dodatkowo, standardowe procesy zwiększają zrozumienie przebiegu tworzenia oraz pozwalają ograniczyć koszty.

+ +

Popularne procesy rozwojowe

+ +

Kiedy organizacja rozrasta się, menedżerowie i inżynierowie spostrzegają jak ważne jest pilnowanie tych procesów. Kiedy zespół przedstawia projekt, następuje jego ocena pod względem kompatybilności projektu z całkowitą strategią budżetową. Pion marketingu musi następnie przeanalizować możliwości promocyjne danej aplikacji/produktu, a następnie przeprowadzić dogłębną techniczną ocenę aplikacji oraz badania rozwojowe. Jeżeli projekt zostaje zaakceptowany, zebrane informacje, analizy i badania są wiązane w tzw. Request For Proposal (RFP).

+ +

Taka sytuacja zdarza się dość często: większość organizacji posiada podstawowy proces zarządzania projektem dla każdego produktu lub usługi. Wewnętrzne procesy organizacji są dobrze dopasowane do pracy w środowisku kulturowym danej firmy. Właśnie w takim momencie tworzy się standard rozwojowy - pojawia się konieczność przestrzegania go przez wszystkich.

+ +

Bardzo łatwo złapać się w pętlę ślepej realizacji założeń, zapominając po co organizacjom procesy. Przede wszystkim organizacje korzystają z nich, ponieważ to pozwala oszczędzić pieniądze, czas i zasoby. Są też inne powody - podział zadań, punkty kontrolne, harmonogramy itd. Końcowym efektem powinien być proces pozwalający zmaksymalizować wydajność organizacji.

+ +

Inne standardy

+ +

Ważne jest również, aby stosować się do innych standardów. Istnieje niezliczona ilość organizacji standaryzujących, które wpływają na to jak i dlaczego robimy to, co robimy. Na przykład w obszarze księgowości istnieje FASB (Financial Accounting Standards Board - Rada do Spraw Standardów Rachunkowości Finansowej) oraz IASB (International Accounting Standards Board - Rada ds. Międzynarodowych Standardów Rachunkowości). Oczekuje się od wszystkich firm i przedsiębiorstw, aby przestrzegały zasad ustalonych przez FASB. Gdy kontrolerzy oceniają sytuację finansową organizacji, robią to w oparciu o zasady FASB.

+ +

Wracając do rozwoju oprogramowania, istnieje wiele organów standaryzujących, mających wpływ na decyzje dotyczące tego procesu. Na przykład, jeśli jakaś firma tworzy aplikację internetową, powinna ona trzymać się standardów wyznaczonych przez następujące organizacje:

+ + + +

Podobnie jak procesy i standardy, które księgowi i menedżerzy projektu muszą przestrzegać, wyżej wymienione organizacje wyznaczają drogę, jaką muszą się kierować inżynierzy rozwoju. Przez podążanie tymi wytycznymi firmy takie jak AOL mogą polepszyć doświadczenia użytkownika, interoperacyjność, użycie kodu, dzielone zasoby oraz popularność - wraz z jednoczesną redukcją kosztów. Omówię każdy z tych elementów poniżej.

+ +

Interoperacyjność

+ +

Kluczem do interoperacyjności jest wybór standardu o możliwościach długotrwałego zastosowania. Organizacje muszą być pewne, że standard, który zdecydują się wdrożyć do procesu rozwoju, będzie odpowiedni również w przyszłości. Innymi słowy musi on posiadać długoterminowy potencjał. Fundamentalnym błędem popełnianym przez większość organizacji jest użycie własnościowych metod, oprogramowania, kodu lub standardów. Dla wielu z nich podążanie drogą własnościową okazało się katastrofalne w skutkach.

+ +

Dobry przykład: korporacja Xerox. Gdy we wczesnych latach 80 zaprojektował on i rozpoczął rozwój systemu Star Office, Xerox niewątpliwie wykraczał ponad swoje czasy. Była to elegancka stacja robocza z pulpitem zaprojektowanym przez inżynierów z PARC (Palo Alto Research Center - Ośrodek Badawczy Palo Alto). System Star Office oferował funkcjonalność, z którą nie mógły się równać zarówno oferty Microsoftu jak i firmy Apple.

+ +

Inżynierzy zaprojektowali Stara na własnościowym systemie operacyjnym znanym pod nazwą Pilot. Pilot posiadał wysoce zintegrowane narzędzie debugujące zwane Co-pilot, które pozwalało Xeroksowi na szybkie i łatwe debugowanie wielu błędów. Jednak tym, co Xerox pominął, było zrozumienie, że pomimo potęgi oprogramowania Pilot i Co-pilot, stacja robocza Star nie mogła rozwijać się w czasie, ponieważ była ona własnościowa. Xerox był ograniczony do unikatowej platformy sprzętowej oraz do zamkniętego systemu operacyjnego. I Xerox zdecydował się pominąć wiele okazji do przeniesienia kodu na inne platformy oraz do dostarczenia otwartego kodu źródłowego. W konsekwencji Xerox musiał ostatecznie zamknąć produkcję stacji roboczej z powodu zmniejszającego się popytu oraz rosnących kosztów rozwoju.

+ +

Największy atut Xeroksa stał się przyczyną jego upadku. Wybrał on środowisko własnościowe i przegapił okazję, aby ze środowiska tego zrobić wzorzec - i ustanowić je jako standard.

+ +

Podążanie otwartymi standardami posiada dodatkową zaletę. Gdy konieczne jest, aby organizacje oddziaływały ze sobą poprzez sojusze, fuzje lub przejęcie, integracja i interoperacyjność jest znacznie mniej kosztowna, jeśli każdy z zainteresowanych podmiotów przestrzega standardów od początku. Zgodność standardów znacząco redukuje ilość potrzebnej pracy oraz zapewnia zgodne i przewidywalne zachowanie obu podmiotów.

+ +

Doświadczenia użytkownika i popularność

+ +

Zachowanie klientów i ekspansja rynku są najważniejsze. Gdy klienci decydują się na wybór konkretnego produktu, należy im dostarczyć pozytywnych doświadczeń z niezawodnym, logicznym i przewidywalnym postępowaniem. Z czasem, gdy gust użytkowników stanie się bardziej wyrafinowany, a dodatkowe urządzenia lepiej dostępne, będą oni dochodzić do źródła informacji poprzez różne sposoby - i oczekiwać, że będą one wyglądać i działać w ten sam sposób – niezależnie od tego, czy będą oglądać stronę ze swojego komputera, telefonu komórkowego czy innego podręcznego urządzenia. W rezultacie jeśli organizacja oferuje pakiet produktów, musi ona upewnić się, że doświadczenia użytkownika są zgodne i przewidywalne w zakresie wszystkich produktów.

+ +

Zgodność

+ +

Aby osiągnąć sukces, organizacja musi zrozumieć oczekiwania użytkownika i dostarczyć mu zgodnych doświadczeń w zakresie oferowanych produktów. Gdy użyteczność zmienia zbyt wiele ponad produktami, użytkownik zaczyna narzekać.

+ +

Apple i Microsoft bardzo dobrze pojęli tę lekcję. Gdy użytkownicy Macintosha przeszli z MacOS 8.x na MacOS 9.x przemiana interfejsu i pulpitu była właściwie niezauważalna. Użytkownicy mogli szybko przenieść się z jednej wersji na kolejną. Jednak gdy został wydany Mac OS X, Apple całkowicie przerobił wygląd interfejsu i pulpitu. Ta zmiana wywołała całkiem duże zamieszanie w społeczności użytkowników Apple'a. Uczyniło to system kłopotliwym w obsłudze, jednak nie na tyle, by użytkownicy nie mogli się dostosować. Apple otrzymał pozytywne jak i negatywne opinie; stracili oni również paru użytkowników, zyskując ostatecznie również nowych.

+ +

Przykład tego jak zgodne doświadczenia użytkownika pozwalają na zyskanie jego przywiązania, dostrzec można w tym jak Microsoft zapewnia uogólnione zachowanie pomiędzy aplikacjami. Przykładowo w Wordzie, Excelu i innych aplikacjach Windows wiemy, że naciśnięcie kombinacji CTRL+C w dowolnym produkcie Microsoftu oznacza kopiowanie, Zachowanie to, zgodne i przewidywalne, w rezultacie stało się de-facto standardem. Przyczyną zgodności i przewidywalności jest to, że Microsoft ustanowił firmowy zbiór standardów użyteczności i obsługuje istotne standardy międzynarodowe.

+ +

Dostępność

+ +

Żadna organizacja nie może sobie pozwolić na pomijanie lub ignorowanie standardów dostępności. W środowisku sieciowym standardy dostępności są ściśle powiązane z HTML-em, XML-em, XHTML-em i innymi standardami W3C. Poprzez wcielanie i popieranie wytycznych dostępności, organizacja jest w stanie zaoferować swoją linię produktów lub usług większej i bardziej zróżnicowanej grupie użytkowników.

+ +

Zamienność

+ +

Jeśli użytkownik doświadcza zgodnego zachowania w wielu produktach, może on przewidzieć w jaki sposób konkretna czynność lub funkcja zadziała lub jaki będzie miał efekt. Dla dostawcy produktu celem powinien być jak najmniejszy element zaskoczenia. Poprzez zaszczepianie zbioru globalnych celów i standardów w infrastrukturę organizacyjną, organizacja zapewnia swoim użytkownikom końcowym zdolność do interakcji, funkcjonowania, obserwowania i przetwarzania informacji w sposób zgodny w miarę ich przechodzenia z jednego urządzenia do drugiego.

+ +

Znaczącą wadą istnienia rozbieżności między aplikacjami jest to, że informacje muszę być powielane, zmieniane lub manipulowane, aby możliwe było ich przetworzenie w rozbieżnych aplikacjach. Stwarza to również problem, jeśli chodzi o narzędzia autorskie dla tych różnych aplikacji. Przykładowo powiedzmy, że mamy kilka ofert aplikacji, które mogą być użyte do przeglądania sieci. Każde z tych aplikacji podążała własną drogą rozwoju i wspierania standardów. Mogą one obsługiwać część międzynarodowych standardów, ale nie w pełni. Które narzędzia powinniśmy użyć? Czy finansowo nie będzie rozważnym krokiem rozwijanie własnościowych narzędzi autorskich dla każdej z tych aplikacji? Jaki w tym przypadku będzie stopień przyswojenia przez rynek kompletu tych aplikacji? W jaki sposób organizacja może zgodnie zyskać udziały na rynku, jeśli jej oferty produktów nie są zintegrowane? I co ważniejsze, co jeśli w ocenie użytkownika jej produkt nie jest zamienny?

+ +

Zasoby dzielone

+ +

Gdy organizacja zaszczepia ogólnofirmową politykę standardów dzielonych, może ona przenosić zasoby inżynierii między różnymi projektami. Inżynierowie rozwoju mogą przemieszczać się między projektami w sposób łatwiejszy i z niewielkim lub nawet żadnym przestojem w pracy. Praktyki kodowania są zgodne. Oczekiwania są znane. Istnieje równoważna funkcjonalność pomiędzy aplikacjami oferowanymi przez organizację. I inżynierowie mają większą podstawę doświadczenia, co czyni ich bardziej wartościowymi wewnątrz organizacji.

+ +

Na przykład jeśli oczekuje się, że aplikacja internetowa będzie zgodna ze standardami W3C, oczekuje się również, aby każdy inżynier znał i rozumiał te standardy. Wysiłki mające na celu rozwój będą w konsekwencji wspierać podobne poziomy wspierania standardów, co prawdopodobnie doprowadzi kodowania wieloaplikacyjnego lub ponownego użycia danego kodu.

+ +

Przykładowo jeśli inżynier rozwoju pisze aplikację spełniającą standard ANSI języka C i C++ oraz pisze kod działający na konkretnej platformie, kod ten może być skompilowany na dowolnej platformie i systemie operacyjnym wspierającym standardy ANSI. Produkty Microsoft są trudne do wyeksportowania, ponieważ wprowadzają one bibliotekę MFC (Microsoft Foundation Classes), która jest standardem działającym tylko na systemie Windows i nie przestrzega ona zasad ANSI.

+ +

Kontrola jakości

+ +

Z doświadczenia wiemy, że bez rygorystycznych testów nasze produkty mogą fatalnie zawieść po ich wprowadzeniu na rynek. Wsparcie techniczne jest kosztowne, nie tylko w związku z kosztami zatrudnienia odpowiedniej kadry, ale również z powodu potencjalnego niezadowolenia klienta.

+ +

Dlatego właśnie organizacja musi również stosować standardy podczas kontroli jakości. Poprzez przyswojenie zbioru standardów, organizacja kontroli jakości może stworzyć zbiór zestawów testowych, które mogą zostać potem użyte między różnymi projektami. Poprzez ustandaryzowanie zestawów testowych, organizacja kontroli jakości może w łatwy sposób zarządzać, weryfikować i certyfikować testy oraz eliminować zbyteczne testowe bazy danych, w celu zapewnienia zgodności i niezawodności. Jak w przypadku inżynierów, standaryzacja pomaga inżynierom kontroli jakości w szybszym zyskiwaniu doświadczenia, a także w łatwości przenoszenia się pomiędzy projektami.

+ +

Podsumowanie

+ +

W czasach, gdy organizacje rozszerzają pole działania na coraz więcej urządzeń i platform, integracja i kompatybilność muszą być kluczowymi wymaganiami. Dążenie do stworzenia w przyszłości międzynarodowych standardów umożliwi codzienną realizację między-platformowych produktów. Akceptacja standardów pomoże nie tylko organizacjom, lecz także ułatwi odbiór końcowym użytkownikom aplikacji. Organizacje będą tworzyły produkty o lepszej jakości i przenośności, wyposażając wszystkich w elastyczne orpogramowanie. Ostatecznie, dzięki postępującej standaryzacji, organizacje będą łatwiej i trafniej oceniać postęp i wyniki wewnętrzne.

+ +

The most compelling dilemma is how an organization chooses to follow open external standards verses a proprietary de facto standard. Following proprietary de facto standards leaves an organization vulnerable and open to obsolescence when the owner of the de facto changes focus or direction, or abandons the de facto altogether and renders the standard stagnate. On the other hand, by adopting open technology standards and participating in the development and direction of those standards, an organization is providing a path for future development, growth and revenue.

diff --git a/files/pl/archive/web/index.html b/files/pl/archive/web/index.html new file mode 100644 index 0000000000..6f60d315ff --- /dev/null +++ b/files/pl/archive/web/index.html @@ -0,0 +1,12 @@ +--- +title: Archived open Web documentation +slug: Archive/Web +tags: + - Archived + - NeedsTranslation + - TopicStub + - Web +translation_of: Archive/Web +--- +

The documentation listed below is archived, obsolete material about open Web topics.

+

{{SubpagesWithSummaries}}

diff --git a/files/pl/archive/web/xforms/index.html b/files/pl/archive/web/xforms/index.html new file mode 100644 index 0000000000..26cc7274fa --- /dev/null +++ b/files/pl/archive/web/xforms/index.html @@ -0,0 +1,68 @@ +--- +title: XForms +slug: Archive/Web/XForms +tags: + - Wszystkie_kategorie + - XForms +translation_of: Archive/Web/XForms +--- +

+

+
Istota XForms
+Przewodnik online dający Ci możliwość poznania XForms.
+
XForms jest przyszłością formularzy online jak przewiduje W3C. Bazując na innych standardach W3C takich jak XML Schema, XPath i XML Events, XForms jest próbą odniesienia się do niektórych ograniczeń obecnego modelu formularzy HTML. Pozostałe nowe cechy XForms to odseparowanie danych od wyglądu, silna typizacja, możliwość przesyłania danych XML do serwera zamiast pary nazwa-wartość oraz tworzenie formularzy w sposób opisowy, co pozwoli na wyświetlanie ich na większej liczbie urządzeń. XForms jest specyfikacją W3C.
+
XForms Tutorial and Cookbook (en)
+XForms w formacie Wikibook - ponad 50 przykładów przetestowanych w Firefoksie.
+
+

Obsługa XForms może być dodana do przeglądarki Firefox i SeaMonkey poprzez zainstalowanie rozszerzenia Mozilla XForms. +

+
+ + +
+

Dokumentacja

+
Rozwiązywanie problemów z XForms +
Mała kolekcja porad jak radzić sobie z niektórymi problemami z formularzami XForms. +
+
Specjalności Mozilla XForms +
Wyjaśnia gdzie i jak Mozilla XForms rozszerza lub odchodzi od specyfikacji XForms 1.0. +
+
Własne kontrolki XForms +
Własne kontrolki pozwalają autorowi formularza na "stylizację" każdej kontrolki XForms poprzez XBL i utworzenie kontrolki input w SVG. +
+
Preferencje użytkownika XForms +
Opis zmiennych about:config używanych w XForms. +
+
Dokumentacja API XForms +
Dokumentacja interfejsu XForms. +
+
Dokumentacja elementów UI XForms +
Dokumentacja elementów interfejsu użytkownika XForms. +
+

Pokaż wszystkie... +

+
+

Społeczność

+
  • Obejrzyj fora Mozilli... +
+

{{ DiscussionList("dev-tech-xforms", "mozilla.dev.tech.xforms") }} +

+ +

Narzędzia

+ +

Pokaż wszystkie... +

+

Powiązane tematy

+
Rozszerzenia, HTML, XHTML, XML, XPath +
+
+

Categories +

Interwiki Language Links +


+

{{ languages( { "en": "en/XForms", "es": "es/XForms", "fr": "fr/XForms", "it": "it/XForms", "ja": "ja/XForms" } ) }} diff --git a/files/pl/archive/web/xforms/inne_zasoby/index.html b/files/pl/archive/web/xforms/inne_zasoby/index.html new file mode 100644 index 0000000000..733c2df569 --- /dev/null +++ b/files/pl/archive/web/xforms/inne_zasoby/index.html @@ -0,0 +1,16 @@ +--- +title: Inne zasoby +slug: Archive/Web/XForms/Inne_zasoby +tags: + - Wszystkie_kategorie + - XForms +translation_of: Archive/Web/XForms/Other_Resources +--- +

+

+

Wszystkie inne zasoby

+ +{{ languages( { "en": "en/XForms/Other_Resources" } ) }} diff --git a/files/pl/atrybuty_elementu_xul/index.html b/files/pl/atrybuty_elementu_xul/index.html new file mode 100644 index 0000000000..09096fe8ec --- /dev/null +++ b/files/pl/atrybuty_elementu_xul/index.html @@ -0,0 +1,509 @@ +--- +title: Atrybuty elementu XUL +slug: Atrybuty_elementu_XUL +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/XUL_Reference/XUL_element_attributes +--- +
+ « Dokumentacja XUL Następujące atrybuty są zwykle stosowane do wszystkich elementów XUL:
+

+ + +
+
align
+
Typ:jedna z wartości poniżej
+
Atrybut align określa jak elementy potomne pudełka są rozmieszczone kiedy rozmiar pudełka jest większy, niż wszystkie rozmiary razem dzieci elementu. Dla pudełek, które posiadają poziomą orientację, to określa jak jego dzieci będą rozmieszczone pionowo. Atrybut pack jest podobny do rozmieszczenia, lecz jest stosowany do określenia pozycji w przeciwnych kierunkach. Możemy także określić wartość rozmieszczenia stosując własność stylu -moz-box-align.
+
+ + + + +
+ +
+ +
allownegativeassertions +
Typ: boolean +
Jakikolwiek poprawny element, który posiada atrybut źródła danych. Kiedy wiele źródeł danych jest użytych, jedno może przesłaniać twierdzenie drugiego. Ten atrybut, jeśli jest prawdą, która jest domyślnym ustawieniem, pozwala danym źródłowym na negację wcześniejszego twierdzenia. +
+


+


+

+ + +
+ +
class +
Typ: string +
Definiuje klasę stylu dla elementu. Wiele klas może być określanych przez oddzielenie ich spacją. +
+


+

+ + +
+ +
coalesceduplicatearcs +
Typ: boolean +
Jakikolwiek poprawny element, który posiada atrybut źródła danych. Kiedy wiele źródeł danych jest użytych, jedno może przesłaniać twierdzenie drugiego. Ten atrybut, jeśli jest prawdą, która jest domyślnym ustawieniem, pozwala danym źródłowym na negację wcześniejszego twierdzenia. +
+


+


+

+ + +
+ +
+
+ collapsed
+
+ Typ: + + boolean +
+
+ Jeśli true, to element jest zawinięty i nie będzie wyświetlony. Jest równoważny do ustawienia widoczności własności CSS 'collapse'.
+
+
+ +
+
+ container
+
+ Typ: + + boolean +
+
+ Ustaw na true, jeśli element spełnia funkcję jako kontener, który posiada elementy potomne. Będzie ustawiony jako potrzebny w kreatorze szablonów.
+
+
+ +
+
+ containment
+
+ Typ: + + URI predykatu RDF +
+
+ Ten atrybut określa własności RDF, które sygnalizują, że źródło jest kontenerem. Kiedy generujemy zawartość z szablonu to jest stosowany do określenia, które zasoby z bazy danych są kontenerami i w ten sposób posiada węzły potomne i które nie są kontenerami.
+
+
+
+ Ten atrybut powinien zostać umieszczony w tym samym elemencie, w którym są źródła danych i atrybuty ref. Może być ustawiona jedna spacja przerwy w liście własności RDF lub źródeł.
+
+
+ +
+ +
contextmenu +
Typ: id elementu popup +
Alternatywna nazwa dla atrybutu context, jednakże odpowiada również własności skryptu 'contextmenu'. +
+


+


+

+ + +
+ +
+ +
dir +
Typ: jedna z wartości poniżej +
Kierunek, w którym umieszczane są elementy potomne danego elementu.
+ + + +
+ +
empty +
Typ: boolean +
Ustawia true, jeśli element jest kontenerem bez elementu potomnego. Zostanie ustawiony poprzez kreator szablonów jako potrzebny. +
+


+


+

+ + +
+ +
equalsize +
Typ: jedna z wartości poniżej +
Ten atrybut potrafi tworzyć dziecko elementu o takim samym rozmiarze.
+ +


+


+

+ + +
+ +
flags +
Typ: lista wartości znajdujących się poniżej oddzielonych spacją +
Ustawia flagi użyte dla różnych celów. Dwie flagi są definiowane, które mogą być wartościami tego atrybutu.
+ +


+


+

+ + +
+ + +
+
flex
+
Typ: string (reprezentujący integer)
+
 
+
+ +
+
Określa elastyczność elementu, co oznacza w jaki sposób kontener dystrybuuje dostępną przestrzeń pomiędzy swoimi potomkami. Elementy elastyczne powiększają się i zmniejszają wypełniając całą dostępną przestrzeń. Elementy posiadające wyższą wartość tego atrybutu powiększają się bardziej niż elementy z niższymi wartościami, proporcjonalnie do podanych wartości. Konkretna wartość nie jest brana pod uwagę jeśli nie ma więcej elementów elastycznych w danym kontenerze.  W chwili gdy domyślny rozmiar elementów w pudełku jest już obliczony, elementom przydzielana jest pozostała wolna przestrzeń w zależności od ich współczynnika elastyczności.
+
+
+ +
height +
Typ: string (reprezentujący integer) +
Wysokość elementu w pikselach. Zalecane jest stosowanie zamiast wysokości - własność wysokości CSS. +
+


+

+ + +
+ +
hidden +
Typ: boolean +
Jeśli jest ustawiony na true, element jest nie wyświetlane. Jest to podobne do ustawienia wyświetlania własności CSS na none. +
+


+

+ + +
+ +
id +
Typ: id elementu, musi być unikatowym identyfikatorem w oknie +
Unikatowy identyfikator, który będzie identyfikował się z elementem. Możemy go zastosować jako parametr do getElementById() i innych funkcji DOM oraz jako odniesienie do elementu w arkuszach stylu.
+ + +
+ +
insertafter +
Typ: id elementu +
Kiedy element jest w overlay, to atrybut insertafter określa id elementu w bazowym oknie, który element powinien zostać później wyświetlony. Ten atrybut przesłania atrybut insertbefore. Ta wartość może być listą składającą się z poszczególnych id oddzielonych przecinkiem, które są skanowane i pierwszy znaleziony w oknie jest użyty. +
+


+


+

+ + +
+ +
insertbefore +
Typ: id elementu +
Kiedy element jest w overlay, to atrybut insertbefore określa id elementu w bazowym oknie, który element powinien zostać wyświetlony wcześniej. Ta wartość może być listą składającą się z poszczególnych id oddzielonych przecinkiem, które są skanowane i pierwszy znaleziony w oknie jest użyty. +
+


+


+

+ + +
+ +
left +
Typ: string (reprezentujący integer) +
Dla elementów umieszczonych wewnątrz stosu (stack), określa pozycje elementu od lewego brzegu. +
+


+

+ + +
+ +
maxheight +
Typ: string (reprezentujący integer) +
Maksymalna wysokość elementu. Przesyła własność CSS max-height. +
+ +
+ +
maxwidth +
Typ: string (reprezentujący integer) +
Maksymalna szerokość elementu. Przesyła własność CSS max-width. +
+


+

+ + +
+ +
+
+ menu
+
+ Typ: + + id elementu popup +
+
+ Alternatywna nazwa dla atrybutu popup, lecz także przesyła do skryptu własność 'menu'.
+
+
+ +
minheight +
Typ: string (reprezentujący integer) +
Minimalna wysokość elementu. Przesyła własność CSS min-height. +
+


+

+ + +
+ +
+
+ minwidth
+
+ Typ: + + string + (reprezentujący integer)
+
+ Minimalna szerokość elementu. Jest przesyłana do własności CSS min-width.
+
+
+ +
+ +
+
+ observes
+
+ Typ: + + id elementu broadcaster +
+
+ Ustawia id elementu broadcaster, który jest obserwowany poprzez ten element. Jeśli atrybut zostanie zmieniony w rozgłaszaczu, to będzie on także zmieniony w obserwatorze.
+
+
+ +
+ +
orient +
Typ: jedna z wartości poniżej +
Wykorzystywany do określenia, czy elementy potomne danego elementu zorientowane są poziomo czy pionowo. Domyślna wartość zależy od danego elementu. Można także skorzystać z własności stylu -moz-box-orient. +
+ + + +
+ + +
+
pack
+
Typ:jedna z wartości poniżej
+
Atrybut pack określa gdzie elementy potomne box są umieszczone, kiedy pudełko jest większe niż rozmiar dziecka. Dla pudełek z orientacją poziomą jest użyty to sygnalizowania pozycji dziecka poziomo. Dla pudełek z orientacją pionową jest stosowany dla pozycji poziomej dziecka. Atrybut align jest stosowany do określenia pozycji w przeciwnych kierunkach. Możemy także określić wartość pack stosując własność stylu -moz-box-pack.
+
+ + + +

Zobacz także

+ +

Więcej informacji znajduje się w kursie XUL

+
+ +
+ +
+
+ popup
+
+ Typ: + + id elementu popup +
+
+ Powinien być ustawiony na wartość id elementu popup, który powinien się wyświetlić, gdy użytkownik kliknie w ten element.
+
+ +

 

+
+ +
+ +
+ +
+ + +
+
ref
+
Typ:URI źródła RDF
+
Dla szablonowo generowanych elementów, ten atrybut jest stosowany do określenia korzenia (węzła głównego) RDF, gdzie rozpoczyna się generowanie zawartości. Będzie ona przesyłana do wartości. This will correspond to the value of an about attribute on an RDF container. This attribute should be placed alongside the datasources attribute.
+
+
+ +
+
+ removeelement
+
+ Typ: + + id elementu +
+
+ Kiedy umieszczony na elemencie w nakładce overlay, to sygnalizuje, który element w bazowym pliku powinien być usunięty z okna.
+
+
+ +
+
+ sortDirection
+
+ Typ: + + jedna z wartości poniżej +
+
+ Ustaw ten atrybut na ustawienie kierunku, w którym zawartość szablonów została wygenerowana i posortowana. Zastosuj atrybut sortResource, aby określić klucz sortowania.
+
+ +
+ +
+
+ sortResource
+
+ Typ: + + adres URI predykatu RDF +
+
+ Dla szablonu generowanej treści, określa słowo kluczowe sortowania, jeśli będziemy chcieli, aby treść była sortowana. Słowo kluczowe powinno być pełnym adresem URI źródła sortowania, na przykład 'http://home.netscape.com/NC-rdf#Name'. Umieść ten atrybut na tym samym elemencie jako atrybut datasources. Zastosuj sortResource2 do określenia drugiego słowa kluczowego sortowania.
+
+
+ +
sortResource2 +
Typ: adres URI predykatu RDF +
Drugie słowo kluczowe dla sortowanej treści. +
+


+


+

+ + +
+ +
statustext +
Typ: string +
Stosujemy do ustawienia tekstu, który zostanie wyświetlony na pasku stanu, kiedy użytkownik przesuwa mysz nad elementem. Przeglądarka Mozilli nie reguluje paska stanu automatycznie. Ten atrybut służy tylko jako miejsce do przechowywania tekstu. W Firefoksie, ten tekst jest umieszczany automatycznie w statusbar dla pozycji menu (menuitems) na pasku menu. +
+ + +
+ +
+
+ style
+
+ Typ: + + styl CSS inline +
+
+ Reguły stylu CSS stosowany do elementu. Składnia jest jako atrybut stylu HTML. Jest preferowany do umieszczenia reguł stylu w arkuszu stylów.
+
+
+ +
+ +
+
+ tooltip
+
+ Typ: + + id elementu tooltip +
+
+ Powinien być ustawiony na wartość id elementu popup, który powinien być zastosowany jako okienko porady, kiedy kursor myszki jest w danym momencie nad elementem. Porada automatycznie znika, kiedy kursor zostaje przesunięty z nad elementu. Jeśli ten atrybut jest ustawiony na '_child', to pierwsza porada elementu potomnego zostanie użyta wewnątrz elementu.
+
+
+ +
+ +
+
+ top
+
+ Typ: + + string + (reprezentujący integer)
+
+ Dla elementów umieszczonych wewnątrz stosu (stack), określa pozycję elementu od górnego brzegu.
+
+
+ +
+ +
+
+ wait-cursor
+
+ Typ: + + boolean +
+
+ Ustaw ten atrybut na wartość true, aby zmienić kursor na zajęty, kiedy znajdzie się on nad danym elementem. Zwykle ustawia się ten atrybut w elemencie window lub innym elemencie najwyższego poziomu.
+
+
+ +
+
+ width
+
+ Typ: + + string + (reprezentujący integer)
+
+ Szerokość elementu w pikselach. Zwykle jednak powinno stosować się własność width w arkuszu stylów.
+
+

+
+  
+

diff --git "a/files/pl/bezpiecze\305\204stwo_w_firefoksie_2/index.html" "b/files/pl/bezpiecze\305\204stwo_w_firefoksie_2/index.html" new file mode 100644 index 0000000000..342dba864a --- /dev/null +++ "b/files/pl/bezpiecze\305\204stwo_w_firefoksie_2/index.html" @@ -0,0 +1,36 @@ +--- +title: Bezpieczeństwo w Firefoksie 2 +slug: Bezpieczeństwo_w_Firefoksie_2 +tags: + - Bezpieczeństwo +translation_of: Mozilla/Firefox/Releases/2/Security_changes +--- +
{{FirefoxSidebar}}
+ +

 

+ +

Ten artykuł omawia zmiany dotyczące bezpieczeństwa w Firefoksie 2.

+ +

Słabe algorytmy szyfrowania domyślnie wyłączone

+ +

W Firefoksie 2 SSLv2 i słabe zestawy szyfrów (takie, których długość klucza jest mniejsza niż 64 bitów) są domyślnie wyłączone, na korzyść SSLv3. Podnosi to poziom bezpieczeństwa przeglądarki.

+ +

Zalecanymi metodami szyfrowania są TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA i TLS_RSA_WITH_3DES_EDE_CBC_SHA. Cześć serwerów odwołuje się do nich jako SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA i SSL_RSA_WITH_3DES_EDE_CBC_SHA.

+ +

Jeżeli obsługa SSLv2 musi zostać włączona, można to uzyskać za pomocą ustawienia odpowiednich opcji użytkownika (security.ssl2.*) na true.

+ +

Nowe cechy

+ + + +

Sprawdzanie, które algorytmy szyfrowania są dostępne

+ +

Jak zwykle, możesz dowiedzieć się, które algorytmy szyfrowania są dostępne -- i które zostały włączone lub wyłączone -- otwierając about:config i filtrując ciąg "ssl" lub "tls".

+ +
 
+ +

{{ languages( { "en": "en/Security_in_Firefox_2", "fr": "fr/La_s\u00e9curit\u00e9_dans_Firefox_2", "zh-tw": "zh_tw/Firefox_2_\u7684\u5b89\u5168\u529f\u80fd" } ) }}

diff --git "a/files/pl/bezpieczny_dost\304\231p_do_sk\305\202adnik\303\263w_dom_z_poziomu_chrome/index.html" "b/files/pl/bezpieczny_dost\304\231p_do_sk\305\202adnik\303\263w_dom_z_poziomu_chrome/index.html" new file mode 100644 index 0000000000..15a9bd0b8f --- /dev/null +++ "b/files/pl/bezpieczny_dost\304\231p_do_sk\305\202adnik\303\263w_dom_z_poziomu_chrome/index.html" @@ -0,0 +1,89 @@ +--- +title: Bezpieczny dostęp do składników DOM z poziomu chrome +slug: Bezpieczny_dostęp_do_składników_DOM_z_poziomu_chrome +tags: + - Bezpieczeństwo + - DOM + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie + - XPCNativeWrapper +translation_of: Mozilla/Tech/Xray_vision +--- +

+

+

Wprowadzenie

+

Podczas tworzenia aplikacji i rozszerzeń, w których kodzie JavaScript używane są interfejsy DOM odwołujące się do treści niezaufanych (np. pochodzących ze stron internetowych), należy zachować ostrożność i sprawdzać, czy pobierane informacje rzeczywiście pochodzą z interfejsu API modelu DOM, czy też ich źródłem są własności JavaScript oraz metody pobierania i ustawiania zdefiniowane w kodzie destrukcyjnej strony. W programach Firefox 1.0.3 i Mozilla 1.7.7 wprowadzono mechanizmy utrudniające przesłanie fałszywych danych do aplikacji XUL i rozszerzeń — obecnie, gdy w kodzie JavaScript działającym na poziomie chrome uzyskiwany jest dostęp do własności lub metody DOM danego obiektu, zwracana jest własność lub metoda DOM, a nie zastępujące je niestandardowe własności lub metody zdefiniowane na stronie internetowej. W programie Firefox 1.5 zastosowano jeszcze bardziej ogólne rozwiązanie (aktywne w domyślnej konfiguracji): aby uzyskać niezabezpieczony dostęp do składników DOM z poziomu rozszerzenia, w jego kodzie należy jawnie wyłączyć blokadę. +

Istnieją tylko dwa „poprawne” sposoby uzyskiwania dostępu do składników DOM z kodu chrome: dostęp bezpośredni lub jawne użycie obiektu XPCNativeWrapper. Powszechnie stosowana metoda polegająca na użyciu własności __proto__ nie jest bezpieczna w żadnej z wersji programu (patrz poniżej Przykłady NIEPOPRAWNEGO kodu). +

W poniższej tabeli podsumowano kwestie bezpieczeństwa związane z zastosowaniem dwóch „poprawnych” sposobów: +

+ + + + + + + + +
+ Dostęp bezpośredni + Jawne użycie obiektu XPCNativeWrapper +
Firefox 1.0.2 lub starszy + niebezpieczne + bezpieczne +
Firefox 1.0.3 lub nowszy (1.0.x) + bezpieczne, gdy zagwarantowano istnienie własności + bezpieczne +
Firefox 1.5 + bezpieczne, gdy ustawiono preferencję xpcnativewrappers=yes (wartość domyślna) + bezpieczne +
+

Dostęp bezpośredni

+

W skryptach, które zaprojektowano do uruchamiania wyłącznie w Firefoksie w wersji 1.0.3 oraz nowszych wersjach z serii 1.0.x, a także w skryptach działających w Firefoksie 1.5 lub nowszym przy ustawionej preferencji xpcnativewrappers=yes, wystarczy użyć następującego kodu: +

+
return contentWindow.document.title == contentWindow.getSelection();
+
+

Dostęp bezpośredni w Firefoksie 1.0.3 (oraz nowszych wersjach z serii 1.0.x) jest bezpieczny dopóki, dopóty gwarantowane jest posiadanie przez obiekt danej własności lub metody, do której dostęp jest uzyskiwany za pośrednictwem deklaracji IDL obiektu. Na przykład własność foo.nodeType jest bezpieczna, jeżeli jest pewne, że zmienna foo jest obiektem typu Node; z kolei metoda foo.getSelection() jest bezpieczna, dopóki jest pewne, że zmienna foo reprezentuje okno (obiekt window). Przestrzeganie tych zasad może nie być łatwe — o ile na przykład obiekt nsIDOMNSHTMLDocument posiada metodę open(), o tyle nie ma jej obiekt nsIDOMXULDocument; użycie metody document.open() w Firefoksie 1.0.3 NIE jest więc bezpieczne, ponieważ obiekt document może reprezentować dokument XUL. W takich przypadkach należy skorzystać z operatora instanceof, aby określić, czy obiekt obsługuje dany interfejs IDL (w omawianym przykładzie jest to interfejs nsIDOMNSHTMLDocument). +

W Firefoksie 1.5 dostęp bezpośredni jest zawsze bezpieczny, chyba że w pliku manifestu rozszerzenia użyto wskaźnika xpcnativewrappers=no. W przypadku braku tego wskaźnika obiekty XPCNativeWrapper stosowane są domyślnie. +

+

Jawne użycie obiektu XPCNativeWrapper

+
var winWrapper = new XPCNativeWrapper(contentWindow,
+                                      'document', 'getSelection()');
+var docWrapper = new XPCNativeWrapper(winWrapper.document, 'title');
+return docWrapper.title == winWrapper.getSelection();
+
+

Należy zwrócić uwagę, że w powyższym przykładzie zastosowano dwa obiekty opakowujące, aby uzyskać dostęp do własności window.document.title — jeden do uzyskania dostępu do własności document obiektu window, natomiast drugi do odczytania własności title obiektu document. +

Korzystanie z obiektów XPCNativeWrapper jest bezpieczne we wszystkich wersjach Firefoksa, choć zmniejsza czytelność kodu i wymaga opakowania każdego obiektu DOM. +

Więcej informacji o stosowanej składni można znaleźć w artykule na temat obiektów XPCNativeWrapper w bazie wiedzy witryny MozillaZine. +

+

Obiekty XPCNativeWrapper

+

Obiekty XPCNativeWrapper służą do opakowywania innych obiektów, tak aby można było do nich uzyskać bezpieczny dostęp z poziomu kodu uprzywilejowanego. +

Istnieją dwa sposoby korzystania z obiektów XPCNativeWrapper. Starszy sposób polega na jawnym użyciu ich w kodzie. Sposób nowszy (zastosowanie preferencji xpcnativewrappers=yes) jest dostępny w programie Firefox 1.5 i w nowszych wersjach (a także we wstępnych wydaniach alfa o nazwie Deer Park oraz edycjach beta). +

+

Przykłady NIEPOPRAWNEGO kodu

+

NIEPOPRAWNE w Firefoksie 1.0.2 i starszych — skrypt może zastąpić metodę pobierania nodeType: +

+
return targetNode.nodeType == 1;
+
+

NIEPOPRAWNE w Firefoksie 1.0.2 i starszych — skrypt może zastąpić metodę getSelection: +

+
return contentWindow.getSelection();
+
+

NIEPOPRAWNE we wszystkich wersjach. Niektórzy programiści korzystali kiedyś z tego niepewnego sposobu. W starszych wersjach przeglądarki skrypt może zastąpić metodę getSelection, a ponadto sposób ten w ogóle nie działa w programach Firefox 1.0.3 i Mozilla 1.7.7: +

+
return contentWindow.__proto__.getSelection.call(contentWindow);
+
+

NIEPOPRAWNE w Firefoksie 1.0.2 i starszych — skrypt może zastąpić wewnętrzną metodę pobierania, nawet jeżeli metoda zewnętrzna jest bezpieczna: +

+
var winWrapper = new XPCNativeWrapper(contentWindow, 'document');
+// dostęp do obiektu contentWindow.document jest teraz bezpieczny, ale odczytywanie własności .title
+// spoza zwracanego dokumentu wciąż nie jest bezpieczne.
+return winWrapper.document.title;
+
+

NIEPOPRAWNE w Firefoksie w wersjach starszych niż 1.5 — skrypt może ustawić metodę document.open dla dokumentów innych niż dokumenty HTML, w których nie istnieje metoda DOM document.open: +

+
return contentWindow.document.open();
+
+
+
+{{ languages( { "en": "en/Safely_accessing_content_DOM_from_chrome", "fr": "fr/Acc\u00e8s_s\u00e9curis\u00e9_au_contenu_DOM_depuis_le_chrome", "ja": "ja/Safely_accessing_content_DOM_from_chrome" } ) }} diff --git a/files/pl/bugzilla/index.html b/files/pl/bugzilla/index.html new file mode 100644 index 0000000000..83b19fadeb --- /dev/null +++ b/files/pl/bugzilla/index.html @@ -0,0 +1,27 @@ +--- +title: Bugzilla +slug: Bugzilla +tags: + - 'Programowanie_Mozilli:Narzędzia' + - QA + - Wszystkie_kategorie +translation_of: Mozilla/Bugzilla +--- +

bugzilla.mozilla.org (często skracane do b.m.o) jest projektem Mozilla.org. Jest to system śledzenia błędów oraz baza danych do rejestrowania błędów i próśb usprawnień Firefoksa, Thunderbirda, SeaMonkey, Camino i innych projektów mozilla.org.

+ +

Używanie Bugzilli

+ +

Zobacz stronę Co robić a czego nie w Bugzilli oraz stronę etykiety Bugzilli, by dowiedzieć się jakich reguł należy przestrzegać używając bugzilli.

+ +

Zobacz stronę Kontroli jakości (QA), aby dowiedzieć się jak sprawdzić czy błąd został już wcześniej zgłoszony lub Wytyczne zgłaszania błędów, aby zgłosić nowy błąd.

+ +

Przeczytaj artykuł Aplikowanie swojej poprawki do drzewa, aby dowiedzieć się jak użyć bugzilli do wprowadzenia kodu do Firefoksa lub innych projektów.

+ +

Zobacz także

+ + diff --git a/files/pl/chrome/index.html b/files/pl/chrome/index.html new file mode 100644 index 0000000000..6858f7d186 --- /dev/null +++ b/files/pl/chrome/index.html @@ -0,0 +1,24 @@ +--- +title: Chrome +slug: Chrome +tags: + - Toolkit API + - Wszystkie_kategorie +translation_of: Glossary/Chrome +--- +

+

Chrome w całości jest zestawem elementów interfejsu użytkownika określonej aplikacji lub rozszerzenia. +

+

Ogólny przegląd

+

Paczki chrome zawierają ustawienia dostawcy Chrome. Są w nich trzy proste typy dostawcy chrome:

+ +

Zobacz także

+

(Uważaj, który z dokumentów poniżej wspomina o plikach <tt>contents.rdf</tt>, i w prosty sposób umożliwia rejestrację dostarczonego chrome - stosując Manifesty Chrome - jest obsługiwane od Firefox 1.5 / Toolkit 1.8) +

+ +{{ languages( { "en": "en/Chrome", "fr": "fr/Chrome", "ja": "ja/Chrome" } ) }} diff --git a/files/pl/co_nowego_w_deer_park_alpha/index.html b/files/pl/co_nowego_w_deer_park_alpha/index.html new file mode 100644 index 0000000000..4eafb791e4 --- /dev/null +++ b/files/pl/co_nowego_w_deer_park_alpha/index.html @@ -0,0 +1,262 @@ +--- +title: Co nowego w Deer Park Alpha +slug: Co_nowego_w_Deer_Park_Alpha +translation_of: Mozilla/Firefox/Releases/1.5/What_s_new_in_1.5_alpha +--- +
{{FirefoxSidebar}}
+ +

Ta strona w dużej mierze bazuje na http://www.squarefree.com/burningedg...eases/1.1.html (dzięki Jesse).

+ +

Nowe funkcje dla autorów stron WWW

+ +

HTML

+ +
+
Możliwość aktywacji elementów z tabindex="-1"
+
Elementy z ujemną wartością tabIndex mogą teraz być aktywowane (np. za pomocą klawiatury), mimo że nie znajdują się w porządku przełączania (np. klawiszem Tab.)
+
+ +
+
Możliwość wysyłania elementów Object w formularzach
+
Zgodnie ze specyfikacją HTML4, elementy <object> mogą być teraz wysyłane jako część formularza.
+
+ +

CSS

+ +
+
Zagnieżdzenie cytatów (CSS2)
+
Począwszy od tej wersji, własność quotes z CSS2 jest w pełni obsługiwana, włączając w to poprawne wyświetlanie open-quote i close-quote (w zależności od poziomu zagnieżdżenia).
+
+ +
+
:only-child (CSS3)
+
Ten selektor CSS3 pozwala wybrać element, który jest jedynym elementem na swoim poziomie drzewa DOM.
+
+ +
+
Kolumny CSS3
+
Eksperymentalne wsparcie dla proponowanego szkicu tworzenia wielokolumnowych układów stron w CSS3, dzięki którym w łatwy sposób można uzyskać układ strony podobny do układu gazetowego.
+
+ +
+
Własności overflow-x oraz overflow-y (CSS3)
+
Własności te służą do niezależnej kontroli zachowania własności overflow w pionie i poziomie. Na przykład: treść wykraczająca poza blok w poziomie może zostać ukryta, zaś treść wykraczająca poza blok w pionie może być przewijana.
+
+ +
+
Kursory w CSS3
+
Wspieranych jest teraz więcej nazw kursorów myszy.
+
+ +
+
Wartości URI dla własności cursor z CSS
+
Na platformach Windows, OS/2 i Linux (Gtk+ 2.x) Firefox obsługuje teraz wyświetlanie zewnętrznych obrazków jako kursora myszy w sytuacji, gdy kursor znajdzie się nad danym elementem drzewa DOM. Każdy format obrazu wspierany przez Gecko może zostać użyty jako obrazek (SVG, animowany GIF oraz kursory ANI nie są wspierane). Zobacz Użycie wartości URL dla własności cursor, aby dowiedzieć się więcej o tej funkcji.
+
+ +
+
-moz-outline-radius
+
Linie zewnętrzne w CSS mogą teraz mieć zaokrąglone narożniki.
+
+ +
+
Własność outline
+
Można teraz korzystać z własności outline z CSS. Różni się ona od obramowania (border) tym, że nie wpływa na układ strony.
+
+ +
+
Liczniki w treści tworzonej przez CSS
+
Liczniki CSS2 są teraz całkowicie wspierane (implementacja nie jest zgodna z aktualnym szkicem CSS 2.1, ale jest zgodna z nadchodzącym). Pozwala to na automatyczne numerowanie sekcji, nagłówków itp. za pomocą arkuszy stylów.
+
+ +

JavaScript i DOM

+ +
+
Rozszerzenia obiektu Array
+
Aby uprościć najczęstsze zadania, do obiektu Array zostały dodane nowe metody. Zobacz Obiekt Array w JavaScripcie 1.5.
+
+ +
+
document.open("text/plain")
+
Tekst zawarty w nowych dokumentach stworzonych za pomocą document.open("text/plain") jest teraz traktowany jako tekst, a nie HTML, więc nienaruszone pozostają przełamania linii, znaczniki natomiast nie są przetwarzane.
+
+ +
+
XML Events
+
"XML Events" jest specyfikacją W3C dodającą do języków XML możliwość stosowania obiektów nasłuchujących (event listeners) i uchwytów (event handlers).
+
+ +
+
Anulowanie zdarzenia keydown
+
Anulowanie zdarzenia keydown działa teraz w sposób prawidłowy i - zgodnie ze specyfikacją DOM - anuluje wszelkie odpowiednie zdarzenia keyup/keypress.
+
+ +
+
API Dostępności dla DHTML
+
Mozilla pozwala teraz autorom DHTML na dodawanie ról i stanów semantycznych do własnych elementów oraz udostępnia te informacje poprzez MSAA i ATK.
+
+ +
+
Poprawki wydajności DHTML
+
Wprowadzonych zostało wiele zmian mających na celu wzrost wydajności DHTML-a i płynność działania.
+
+ +

Grafika

+ +
+
Wsparcie dla SVG
+
SVG to powiązana z DOM-em niezależna od rozdzielczości skalowalna grafika wektorowa, której specyfikację opracowało W3C. W tej wersji Firefoksa dostępne jest niepełne, testowe wsparcie dla SVG (SVG 1.1 Full). Nie są obsługiwane filtry, deklaratywne animacje (SMIL) oraz kroje pisma opisane w SVG.
+
+ +
+
Wsparcie dla <canvas>
+
<canvas> to pole do rysowania, w którym można stosować skrypty i które służy do dynamicznego tworzenia grafiki bitmapowej. Więcej informacji w artykule Rysowanie grafik za pomocą Canvas.
+
+ +

Różne

+ +
+
Wsparcie dla kodu odpowiedzi HTTP/1.1 408
+
Przedłużające się połączenie jest teraz poprawnie zamykane, kiedy otrzymany zostanie kod odpowiedzi 408 (Upłynął czas zapytania ). Zapytanie jest ponawiane wraz z nowym połączeniem.
+
+ +
+
Adresy URI są teraz zawsze wysyłane jako UTF8
+
Adresy URI są teraz zawsze wysyłane do serwera jako UTF8, niezależnie od kodowania powiązanej strony. Dzięki temu odnośniki i obrazki o nazwach zawierających znaki spoza zakresu ASCII będą działać poprawnie.
+
+ +
+
Wsparcie dla XForms
+
Opracowany przez W3C język XML Forms pozwala na pisanie złożonych formularzy w XML-u i zawiera funkcje, których nie posiada normalny HTML, takie jak walidacja po stronie klienta w oparciu o XML Schema oraz wysyłanie i odbieranie XML. Wsparcie dla XForms jest dostępne w formie rozszerzenia - więcej informacji na stronie projektu Mozilla XForms.
+
+ +

Nowe rozszerzenia funkcji dla programistów

+ +
+
Ukryta kolumna referrer w historii
+
Rozszerzenia mogą teraz dostać się do informacji o adresie z którego osoba weszła na daną stronę przechowywanego w historii. Ta funkcja może być przydatna do stworzenia alternatywnego widoku historii oraz innych przydatnych funkcji {{bug(128398) }}
+
+ +
+
API do określania priorytetu połączeń HTTP
+
Biblioteka sieciowa Mozilli wspiera teraz określanie priorytetów dla połączeń do określonego serwera. Zobacz {{ Interface("nsISupportsPriority") }}. {{bug(278531) }}
+
+ +
+
API do zarządzania użytkownikami i arkuszami stylów UA
+
Rozszerzenia mogą teraz rejestrować adresy URI arkuszy stylów jako dodatkowe arkusze stylów użytkownika i przeglądarki. Oznacza to, że rozszerzenia nie muszą już więcej edytować pliku userContent.css, aby dodać style (na przykład do załączania wiązań XBL) do stron WWW. Zobacz Using the Stylesheet Service.
+
+ +
+
API do konfigurowania ustawień proxy
+
Rozszerzenia mogą teraz łatwo nadpisać domyślną konfigurację serwerów pośredniczących bez wpływania na widoczne przez użytkownika preferencje. Zobacz {{ Interface("nsIProtocolProxyService") }}, {{ Interface("nsIProtocolProxyFilter") }}, oraz {{ Interface("nsIProtocolProxyCallback") }}. {{bug(282442) }}
+
+ +
+
Dynamiczne pliki Overlay
+
Została dodana możliwość dodawania plików nakładek XUL po wyświetleniu dokumentu. Zobacz {{ Interface("nsIDOMXULDocument") }}. {{bug(282103) }}
+
+ +
+
E4X
+
Silnik JavaScriptu Mozilli obsługuje teraz język ECMAScript dla XML-a (E4X), jest to draft standardu ECMA, który dodaje typ danych XML-a do języka i nowe operatory do najpopularniejszych operacji na obiektach XML. Zobacz specyfikację ECMA. {{bug(246441) }}
+
+ +
+
Przezroczyste okna (Windows/Linux)
+
Na platformach Windows i Linux, okna XUL mogą teraz mieć przezroczyste tło. Pozwala to na prześwitywanie czegokolwiek co znajduje się pod nim.
+
+ +
+
Dodawanie znaczników do ciągu UA
+
Jest teraz możliwe, aby aplikacje, rozszerzenia oraz producenci dodawali własne znaczniki do ciągów UA (User-Agent), bez ryzyka nadpisania innych dodanych ciągów. Zobacz dokumentację. {{bug(274928) }}
+
+ +
+
Rejestr chrome Toolkit-u
+
Znacznie poprawiony został system rejestracji Chrome. Korzysta on teraz z manifestów tekstowych i nie korzysta już z plików cache chrome.rdf/overlayinfo. Zobacz Rejestry Chrome.
+
+ +
+
Menedżer rozszerzeń
+
+ + + +
+
Nowe wiązania preferencji
+
Nowe wiązania pozwala znacznie łatwiej tworzyć okna preferencji dla rozszerzeń. Nowe okna preferencji wspierają automatyczne zatwierdzanie ustawień co jest domyślnie włączone na Macintoshu i Linuksie.
+
+ +
+
API do implementacji nowych parametrów linii komend
+
Zostało wprowadzone nowe API, dzięki któremu rozszerzenia mogą łatwo obsługiwać flagi linii komend. To API będzie stabilne i zamrożone dla 1.1. Zobacz interfejsy {{ Interface("nsICommandLine") }} oraz {{ Interface("nsICommandLineHandler") }}.
+
+ +
+
Wsparcie dla XTF
+
eXtensible Tag Framework pozwala dodawać wsparcie dla nowych przestrzeni nazw używając komponentów XPCOM w Mozilli (napisanych w JavaScripcie lub C++). Na przykład projekt Mozilla XForms używa XTF do dodawania wsparcia dla przestrzeni nazw XForm. Zobacz Stronę domową XTF
+
+ +

Nowe funkcje przeglądarki

+ +

Poprawiona wydajność

+ +
+
Automatyczne zatwierdzanie w Linuksie i Macintoshu
+
Zmiany wprowadzone w oknie preferencji są zatwierdzane natychmiast, w zgodzie z typowym zachowaniem aplikacji Mac OS X i Gnome.
+
+ +

Ta zmiana jest zgodna z Human Interface Guidelines Apple i GNOME'a.

+ +
+
Możliwość przeszukiwania okna akcji pobierania
+
Jest teraz możliwe przeszukiwanie w menedżerze Akcji Pobierania po rozszerzeniu pliku i opisie.
+
+ +
+
Możliwość przeszukiwania menedżera ciastek
+
Ciastka mogą być teraz wyszukiwane po adresie hosta/domeny lub nazwie ciastka, oraz są posortowane względem hosta w drzewie zamiast w płaskiej liście.
+
+ +

Wdrażanie

+ +
+
Pakiet MSI Firefoksa
+
Nowy pakiet instalacyjny MSI usprawnia rozproszoną instalację i pozwala na większą elastyczność administratorom sieci chcącym wdrożyć Firefoksa w środowisku korporacyjnym.
+
+ +
+
Wsparcie dla katalogu "temp" profilu na lokalnym systemie plików
+
Jest teraz możliwe składowanie plików cache z sieci (kopii odwiedzonych stron) oraz plików cache XUL-a (skopilowanego kodu interfejsu użytkownika) na dysku lokalnym, a reszty profilu na dysku sieciowym. Spowoduje to wzrost wydajności i spadek obciążenia sieci dla użytkowników korzystających ze środowisk sieciowych.
+
+ +

Inne

+ +
+
Funkcja "Wyczyść prywatne dane"
+
Funkcja "Wyczyść prywatne dane" pozwala w łatwy sposób usunąć historię przeglądania, ciastka, cache, zachowane informacje formularzy i inne prywatne dane. Elementy do usunięcia mogą zostać wybrane przez użytkownika, a funkcja może zostać wywołana albo przez skrót klawiatury, albo przez wybór z menu.
+
+ +
+
Miniaturki obrazków jako ikony kart
+
Podczas przeglądania obrazków, ikony kart wyświetlają teraz miniaturki obrazków.
+
+ +
+
Szybkie wstecz (i naprzód)
+
Jest to bardzo eksperymentalna funkcja,która pozwala na znacznie szybszą nawigację po historii. Ta funkcja jest domyślnie wyłączona, ale może zostać włączona do celów testowych przez ustawienie właściwości browser.sessionhistory.max_viewers na wartość niezerową.
+
+ +
+
Obsługą nie anonimowych połączeń FTP
+
Użytkownicy FTP są teraz proszeni o podanie loginu oraz hasła jeśli połączenie anonimowe nie uda się.
+
+ +
+
Reguła @ CSS do wybierania strony/dokumentu
+
Nowa reguła @-moz-document daje użytkownikom możliwość dopasowania obiektów dla strony, przy użyciu CSS. To pozwala włączać reguły specyficzne dla danej strony do arkusza stylów użytkownika (userContent.css). Post Davida Barona na www-style tłumaczy jak ta reguła może zostać wykorzystana.
+
diff --git a/files/pl/components.utils.reporterror/index.html b/files/pl/components.utils.reporterror/index.html new file mode 100644 index 0000000000..61ff725770 --- /dev/null +++ b/files/pl/components.utils.reporterror/index.html @@ -0,0 +1,32 @@ +--- +title: Components.utils.reportError +slug: Components.utils.reportError +tags: + - Wszystkie_kategorie + - XPConnect +translation_of: Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.reportError +--- +

+

Components.utils.reportError zgłasza obiekt Error JavaScriptu do konsoli błędów. Powinna być wykorzystywana w blokach obsługi wyjątków, które chcą zgłosić dany problem do konsoli. +

Metoda ta musi być wywołana z jednym parametrem, którym zwykle jest obiekt przechwycony przez kod obsługi wyjątków. Jeśli parametrem nie jest obiekt Error, parametr konwertowany jest na ciąg znaków i zgłaszany jako nowy błąd. Oznacza to, że metodę Components.utils.reportError można używać do wysyłania do konsoli błędów wiadomości debugowania, w sposób podobny do tego, w jaki można korzystać z dump() do wypisywania wiadomości na konsolę natywną. +

Do informacji dziennika należy jednak używać nsIConsoleService, jako że interfejs ten wysyła wiadomości o zwykłym priorytecie, w przeciwieństwie do reportError. +

+
function myDump(aMessage) {
+  var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
+                                 .getService(Components.interfaces.nsIConsoleService);
+  consoleService.logStringMessage("Mój komponent: " + aMessage);
+}
+
+

Przykłady

+

Zastosowanie w obsłudze wyjątków: +

+
try {
+  ten.kod.wyrzuca.wyjątek;
+} catch(e) {
+  Components.utils.reportError(e); // wyślij informację o błędzie do konsoli i kontynuuj wykonanie
+}
+
+

Wypisywanie informacji debugowania w konsoli błędów: +

+
Components.utils.reportError("init() called");
+
diff --git a/files/pl/components.utils.sandbox/index.html b/files/pl/components.utils.sandbox/index.html new file mode 100644 index 0000000000..f6a2b0babc --- /dev/null +++ b/files/pl/components.utils.sandbox/index.html @@ -0,0 +1,8 @@ +--- +title: Components.utils.Sandbox +slug: Components.utils.Sandbox +translation_of: Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.Sandbox +--- +

+

Components.utils.Sandbox wykorzystywany jest do tworzenia obiektów piaskownicy do użycia w evalInSandbox. Więcej informacji i przykłady można znależć na tamtej stronie. +

diff --git a/files/pl/components.utils/index.html b/files/pl/components.utils/index.html new file mode 100644 index 0000000000..e5a20d458f --- /dev/null +++ b/files/pl/components.utils/index.html @@ -0,0 +1,35 @@ +--- +title: Components.utils +slug: Components.utils +tags: + - Wszystkie_kategorie + - XPConnect +translation_of: Mozilla/Tech/XPCOM/Language_Bindings/Components.utils +--- +

+

Components.utils to kolekcja różnych przydatnych, ale nie niezbędnych funkcji XPConnect. Interfejs tego obiektu został zdefiniowany w {{ Source("js/src/xpconnect/idl/xpccomponents.idl") }}. Obecnie obiekt ten ma następujące pola i metody: +

+ + + + + + + + + + + + + + + + + + + + +
WłasnośćOpis
lookupMethodOdszukuje natywną (tj. zdefiniowaną w interfejsie) metodę lub własność obiektu XPCOM. Spełnia tę samą funkcję co XPCNativeWrapper.
reportErrorZgłasza obiekt Error JavaScriptu do konsoli błędów.
SandboxTworzy obiekty piaskownicy (sandbox) do wykorzystania w evalInSandbox.
evalInSandboxWykonuje kod JavaScriptu w piaskownicy, zwykle wykorzystywana do wykonywania kodu z ograniczonymi uprawnieniami.
+
+
+{{ languages( { "en": "en/Components.utils", "fr": "fr/Components.utils", "ja": "ja/Components.utils" } ) }} diff --git "a/files/pl/cz\304\231sto_zadawane_pytania_dotycz\304\205ce_rozszerze\305\204/index.html" "b/files/pl/cz\304\231sto_zadawane_pytania_dotycz\304\205ce_rozszerze\305\204/index.html" new file mode 100644 index 0000000000..6ca922d141 --- /dev/null +++ "b/files/pl/cz\304\231sto_zadawane_pytania_dotycz\304\205ce_rozszerze\305\204/index.html" @@ -0,0 +1,68 @@ +--- +title: Często zadawane pytania dotyczące rozszerzeń +slug: Często_zadawane_pytania_dotyczące_rozszerzeń +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/Mozilla/Extension_Frequently_Asked_Questions +--- +

+

W tym artykule przedstawiono rozwiązania kilku najczęściej spotykanych problemów związanych z programowaniem rozszerzeń. Dotyczą one przede wszystkim przeglądarki Firefox, ale co najmniej większość z nich może zostać zastosowana w programach SeaMonkey, Thunderbird i innych aplikacjach Mozilli. +

Jeżeli dopiero zaczynasz programowanie rozszerzeń, zapoznaj się z poradnikiem Tworzymy rozszerzenie lub artykułem Wprowadzenie do programowania rozszerzeń dostępnym w witrynie MozillaZine. Aby utworzyć szablon rozszerzenia, który będzie można potem rozbudować i dostosować do własnych potrzeb, skorzystaj z Kreatora rozszerzeń. +

Nie zapomnij o przygotowaniu środowiska programowania rozszerzenia. +

+

Debugowanie

+

Przed rozpoczęciem debugowania rozszerzenia należy przygotować środowisko programowania rozszerzenia. +

Debuger języka JavaScript Venkman może być przydatnym narzędziem analizy skomplikowanego kodu; korzystając z niego, należy pamiętać o wyłączeniu opcji "Debug -> Exclude Browser Files" podczas pracy nad kodem rozszerzenia. +

+

Jak wyświetlić błędy w moim kodzie?

+

Po ustawieniu wartości true dla preferencji javascript.options.showInConsole komunikaty o błędach będą wyświetlane w Konsoli błędów. Rejestrowanie wszystkich błędów JavaScript w konsoli znacznie ułatwia odnalezienie błędów w tworzonym kodzie. +

+

Jak sprawdzić, jakie operacje wykonuje moje rozszerzenie?

+

Do wyświetlania wartości zmiennych i debugowania tekstu można skorzystać z metod alert(), dump() i Components.utils.reportError() oraz interfejsu usługi konsoli. Można także zainstalować dodatek debugera JavaScript Venkman. +

+

Dlaczego mój skrypt nie działa poprawnie?

+

Jeżeli skrypt nie działa w oczekiwany sposób, najpierw należy sprawdzić Konsolę błędów (patrz wyżej). +

Jednym z powszechnie popełnianych błędów jest próba uzyskania dostępu do obiektu DOM okna przed pełnym załadowaniem go przez przeglądarkę. Sytuacja ta występuje wówczas, gdy kod inicjalizujący jest umieszczony na najwyższym poziomie w skrypcie (tzn. nie znajduje się wewnątrz żadnej funkcji). Rozwiązaniem jest użycie obserwatora zdarzenia load (ang. event listener) w celu opóźnienia wykonania kodu do momentu zakończenia ładowania danych w oknie: +

+
function exampleBrowserStartup(event)
+{
+  // tutaj należy umieścić kod wykonywany na początku skryptu
+}
+window.addEventListener("load", exampleBrowserStartup, false);
+
+

Nie można uzyskać dostępu do obiektu document bieżącej strony

+

Aby uzyskać dostęp do obiektu document bieżącej strony z poziomu nakładki browser.xul, należy użyć obiektu content.document — obiekt document odnosi się bowiem do obiektu document okna przeglądarki. Więcej informacji można znaleźć w artykule Korzystanie z okien w kodzie chrome. +

Ponadto obiekt XPCNativeWrapper domyślnie blokuje między innymi dostęp do obiektów zdefiniowanych przez skrypty działające na stronie internetowej. +

+

Wystąpił błąd przetwarzania kodu XML, ale plik wygląda na poprawny

+

Częstą przyczyną błędów przetwarzania (oznaczanych czerwonym tekstem i znakami -------------^ znajdującymi się pod błędnym kodem) są znaki & i < umieszczone w skrypcie lub w wartości atrybutu. Znaki te mają specjalne znaczenie w języku XML. Oto przykład: +

+
<button oncommand="window.open('http://przykladowastrona.pl/q?parametr1=wartosc&parametr2=wartosc2')"/>
+
+

lub +

+
<script>function lesser(a,b) { return a < b ? a : b; }</script>
+
+

Problem można rozwiązać na jeden z podanych sposobów: +

+
    +
  1. Zastąpić dany znak jego wersją, która nie powoduje konfliktu w kodzie XML (np.: "&" -> "&amp;", "<" -> "&lt;")
  2. +
  3. W przypadku użycia znaków w węźle tekstowym, takim jak skrypt, umieścić znaczniki CDATA na początku i na końcu kodu: +
    <script><![CDATA[
    +   function lesser(a,b) {
    +     return a < b ? a : b;
    +   }
    + ]]></script>
    +
  4. +
  5. Umieścić kod skryptu w osobnym pliku i dołączyć ten plik, korzystając ze znacznika script: +
    <script type="application/x-javascript" src="mojskrypt.js"/>
    +
+

Przykładowy kod

+

Najprostszym sposobem utworzenia kodu wykonującego daną operację jest znalezienie rozszerzenia (lub części samej Mozilli) wykonującego tę operację i analiza jego kodu. (Pliki XPI i JAR to archiwa w formacie ZIP ze zmienionym rozszerzeniem pliku).

Dostępna jest także dokumentacja: lista artykułów MDC dotyczących tworzenia rozszerzeń, Fragmenty kodu oraz Przykłady kodu w witrynie MozillaZine. +

+

Gdzie mogę uzyskać dodatkową pomoc?

+

Zobacz Rozszerzenia:Inne zasoby i Rozszerzenia:Społeczność. +

Zanim poprosisz o pomoc, upewnij się, czy preferencje dotyczące debugowania są ustawione prawidłowo i czy sprawdzono odpowiednie komunikaty w Konsoli błędów. Nie zapomnij także o przeszukaniu Internetu przed zadaniem pytania. I oczywiście zapoznaj się z niniejszą listą często zadawanych pytań! +

{{ languages( { "de": "de/Erweiterungen_FAQ", "en": "en/Extension_Frequently_Asked_Questions", "es": "es/Preguntas_frecuentes_sobre_Extensiones", "fr": "fr/Foire_aux_questions_sur_les_extensions", "it": "it/Domande_frequenti_sulle_Estensioni", "ja": "ja/Extension_Frequently_Asked_Questions", "ru": "ru/FAQ_\u043f\u043e_\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043c" } ) }} diff --git a/files/pl/dhtml/index.html b/files/pl/dhtml/index.html new file mode 100644 index 0000000000..5728cb4139 --- /dev/null +++ b/files/pl/dhtml/index.html @@ -0,0 +1,37 @@ +--- +title: DHTML +slug: DHTML +tags: + - DHTML + - Wszystkie_kategorie +translation_of: Glossary/DHTML +--- +

+

+
+DHTML to skrót od "dynamic HTML" (Dynamiczny HTML). Termin DHTML jest używany do określania kodu używanego do tworzenia interaktywnych stron www, które nie używają wtyczek takich jak Flash czy Java. DHTML określa zbiór funkcjonalności oferowanych przez technologie takie jak HTML, CSS, DOM i JavaScript.
+ + + + +
+

Dokumentacja

+

Pokaż wszystkie... +

+
+

Społeczność

+
  • Obejrzyj fora Mozilli... +
+

{{ DiscussionList("dev-ajax", "mozilla.dev.ajax") }} +

+

Narzędzia

+ +

Powiązane tematy

+
AJAX, CSS, DOM, HTML, JavaScript +
+
+

Categories +

Interwiki Language Links +


+

{{ languages( { "en": "en/DHTML", "es": "es/DHTML", "fr": "fr/DHTML", "ja": "ja/DHTML", "ko": "ko/DHTML", "pt": "pt/DHTML" } ) }} diff --git "a/files/pl/dodawanie_dostawc\303\263w_danych_ochrony_przed_phishingiem/index.html" "b/files/pl/dodawanie_dostawc\303\263w_danych_ochrony_przed_phishingiem/index.html" new file mode 100644 index 0000000000..c1f01ac23b --- /dev/null +++ "b/files/pl/dodawanie_dostawc\303\263w_danych_ochrony_przed_phishingiem/index.html" @@ -0,0 +1,47 @@ +--- +title: Dodawanie dostawców danych ochrony przed phishingiem +slug: Dodawanie_dostawców_danych_ochrony_przed_phishingiem +translation_of: Mozilla/Adding_phishing_protection_data_providers +--- +

+

Technologia ochrony przed phishingiem pozwala Firefoksowi chronić użytkowników poprzez porównywanie adresów URL, które użytkownik odwiedza, z czarną listą fałszywych stron i pokazując ostrzeżenie użytkownikowi, gdy odwiedzi on stronę z takiej listy. +

+

Instalowanie nowego dostawcy danych

+

Aby zainstalować dostawcę danych ochrony przed phishingiem, konieczne jest ustawienie serii opcji, w celu dostarczenia szczegółów o dostawcy. +

Każdy dostawca danych posiada unikatowy numer ID. Dostawca danych z numerem ID 0 jest domyślnie dostarczany z Firefoksem. Podczas instalacji nowego dostawcy, powinieneś użyć następnego, nieużywanego numeru. +

Aby znaleźć numer ID dostępny do użycia, możesz stworzyć pętlę, która wysyła żądanie wartości browser.safebrowsing.provider.0.name, następnie browser.safebrowsing.provider.1.name i tak dalej, dopóki nie zostanie zwrócona żadna wartość. Możesz wtedy użyć tej wartości. +

Możesz znaleźć przykłady jak odczytywać i zapisywać opcje w artykule Dodawanie preferencji do rozszerzenia. +

+

Żądane opcje

+
browser.safebrowsing.provider.idnum.name +
Nazwa dostawcy danych, która zostanie pokazana użytkownikowi. +
+
browser.safebrowsing.provider.idnum.keyURL +
Adres URL, który zwraca prywatny klucz do użycia w celu zaszyfrowania pozostałych żądań. +
+
browser.safebrowsing.provider.idnum.lookupURL +
Adres URL, który zostanie użyty do sprawdzenia czy podane adresy URL znajdują się na czarnej liście. To żądanie musi być zaszyfrowane za pomocą prywatnego klucza zwróconego przez żądanie keyURL. +
+

Dodatkowe opcje

+
browser.safebrowsing.provider.idnum.reportURL +
Adres URL używany do raportowania kiedy użytkownicy odwiedzają stronę phishingową i czy biorą oni pod uwagę ostrzeżenie, czy też je ignorują. +
+
browser.safebrowsing.provider.idnum.updateURL +
Adres URL używany w celu wysłania żądania o uaktualnienie listy stron phishingowych. Serwer dostarcza pełną listę lub rosnące uaktualnienia, w celu zapewnienia klientowi najnowszej tablicy danych. +
+
browser.safebrowsing.provider.idnum.reportGenericURL +
Nie jest obecnie używane; w zamierzeniu przeznaczone do raportowania innych spraw w usłudze ochrony przed phishingiem. +
+
browser.safebrowsing.provider.idnum.reportErrorURL +
Adres URL, na który użytkownik jest kierowany w celu wysłania raportu o bezpiecznej stronie, która została nieprawidłowo oznaczona jako phishingowa. +
+
browser.safebrowsing.provider.idnum.reportPhishURL +
Adres URL, na który użytkownik jest kierowany w celu wysłania raportu o stronie phishingowej, która nie została wykryta przez system ochrony przed phishingiem. +
+

Określanie obecnie-wybranego dostawcy danych

+

Jeśli potrzebujesz określić numer ID obecnie wybranego dostawcy danych anty-phishingowych, możesz sprawdzić wartość opcji browser.safebrowsing.dataProvider. +


+

+
+
+{{ languages( { "en": "en/Adding_phishing_protection_data_providers", "es": "es/A\u00f1adir_datos_para_la_protecci\u00f3n_anti-phishing", "fr": "fr/Ajout_de_fournisseurs_de_donn\u00e9es_de_protection_anti-phishing", "it": "it/Aggiungere_fornitori_di_dati_anti-phishing", "ja": "ja/Adding_phishing_protection_data_providers", "zh-tw": "zh_tw/\u65b0\u589e\u507d\u9020\u7db2\u7ad9\u6e05\u55ae\u4f86\u6e90" } ) }} diff --git a/files/pl/dodawanie_preferencji_do_rozszerzenia/index.html b/files/pl/dodawanie_preferencji_do_rozszerzenia/index.html new file mode 100644 index 0000000000..c87aaeb356 --- /dev/null +++ b/files/pl/dodawanie_preferencji_do_rozszerzenia/index.html @@ -0,0 +1,288 @@ +--- +title: Dodawanie preferencji do rozszerzenia +slug: Dodawanie_preferencji_do_rozszerzenia +tags: + - Dodatki + - Rozszerzenia + - Strony_wymagające_dopracowania + - System_preferencji + - Wszystkie_kategorie + - XUL +translation_of: Archive/Adding_preferences_to_an_extension +--- +

{{ PreviousNext("Tworzenie rozszerzenia dynamicznego paska stanu", "Lokalizacja rozszerzenia") }} Poniższy artykuł rozszerza Tworzenie rozszerzenia dynamicznego paska stanu poprzez dodanie wyskakującego menu that lets you quickly switch between multiple stocks to watch. It also adds a preference dialog that lets you switch to a stock other than one of the ones included in the popup menu.

+ +

As before, concepts covered in the previous articles in this series won't be rehashed here, so if you haven't already seen them:

+ + + +

Also, for reference, you may want to take a look at System preferencji.

+ +

Pobieranie przykładu

+ +

Możesz pobrać przykład, aby użyć go do stworzenia własnego rozszerzenia.

+ +

Pobierz przykład

+ +

Aktualizacja manifestu

+ +

Musi zostać zaktualizowany manifest instalacyjny oraz Chrome. Zmiany dotyczą przede wszystkim zmiany ID rozszerzenia. Jednakże musimy dodać dodatkową linię do pliku install.rdf:

+ +
 <em:optionsURL>chrome://stockwatcher2/content/options.xul</em:optionsURL>
+
+ +

Powyższa linia określa adres URL pliku XUL, który opisuje opcje dialogu.

+ + + + + + + +
Należy pamiętać, że jeśli używasz kodu z tego tutoriala, aby dodać do istniejącego rozszerzenia, należy odinstalować i ponownie zainstalować rozszerzenia, aby włączyć przycisk Preferencje dla rozszerzenia na liście dodatków.
+ +

Określanie wartości domyślnych

+ +

W celu ustawienia domyślnych preferencji należy dodać nowy katalog do paczki rozszerzenia nazwanej "defaults", która będzie zawierał katalog "preferences". Wewnątrz niego tworzymy plik defaults.js opisujący wartości domyślne preferencji:

+ +
 pref("extensions.stockwatcher2.symbol", "GOOG");
+
+ +

By dowiedzieć się więcej o systemie preferencji przeczytaj API Preferencji.

+ +

Kod JavaScript

+ +

In order to monitor changes to our preferences, we need to install an observer using the nsIPrefBranch2 interface. To do that, we need to reimplement our code into an object.

+ +

That involves turning each function into a member of the StockWatcher class. Let's take a look at each function in the class.

+ +

startup()

+ +

The StockWatcher.startup() function is called when our extension is first loaded. Its job is to start up the observer to watch for changes to our preferences, instantiate an object to use to manage our preferences, and install an interval routine to update the stock information periodically.

+ +
 var StockWatcher = {
+   prefs: null,
+   tickerSymbol: "",
+
+   // Initialize the extension
+
+   startup: function()
+   {
+     // Register to receive notifications of preference changes
+
+     this.prefs = Components.classes["@mozilla.org/preferences-service;1"]
+         .getService(Components.interfaces.nsIPrefService)
+         .getBranch("stockwatcher2.");
+     this.prefs.QueryInterface(Components.interfaces.nsIPrefBranch2);
+     this.prefs.addObserver("", this, false);
+
+     this.tickerSymbol = this.prefs.getCharPref("symbol").toUpperCase();
+
+     this.refreshInformation();
+     window.setInterval(this.refreshInformation, 10*60*1000);
+   },
+
+ +

Our object has two member variables. prefs is configured by startup() to reference our extension's preferences, while tickerSymbol indicates the stock symbol to monitor.

+ +

The first thing the startup() function does is to get a reference to the preferences for our extension. This is done in two steps:

+ + + + + +

After getting the preference branch for our extension, we call the QueryInterface() method on it to be able to use the methods of the nsIPrefBranch2 interface.

+ +

The next step is to register a preference observer by calling the addObserver() method to establish that whenever any events occur on the preferences, our object (this) receives notification. When events occur, such as a preference being altered, our observe() method will be called automatically.

+ +

Now that we're monitoring the preferences, we can set up to watch the stock information and display it in the status bar panel.

+ +

The first thing we need to do is get the currently configured stock symbol to watch from the preferences. To do so, we call the nsIPrefBranch.getCharPref() method, specifying that we want the preference named "symbol", which is where we store the user's selection for the stock to watch. We forcibly convert the symbol to upper-case since that's the way stock symbols are normally displayed.

+ +

Next, we call our own refreshInformation() method to immediately fetch and display the current information about the stock the extension is configured to monitor. We'll look at the details of how this method works later.

+ +

The last thing the startup() method does is to call the window.setInterval() DOM method to set up a callback that will automatically run our refreshInformation() method every 10 minutes. The interval time is specified in milliseconds.

+ +

shutdown()

+ +

The StockWatcher.shutdown() method deactivates the observer on the preferences. This is also where we would add any other shutdown tasks we need to perform.

+ +
  shutdown: function()
+  {
+    this.prefs.removeObserver("", this);
+  },
+
+ +

observe()

+ +

The StockWatcher.observe() function is called whenever an event occurs on the preference branch we're watching. For details on how observers work, read up on the nsIObserver interface.

+ +
   observe: function(subject, topic, data)
+   {
+     if (topic != "nsPref:changed")
+     {
+       return;
+     }
+
+     switch(data)
+     {
+       case "symbol":
+         this.tickerSymbol = this.prefs.getCharPref("symbol").toUpperCase();
+         this.refreshInformation();
+         break;
+     }
+   },
+
+ +

The topic parameter indicates what type of event occurred. If it's not nsPref:changed, we simply ignore the event, since all we're interested in is changes to the values of our preferences.

+ +

Once we've established that the event is in fact a preference change, we look at the data parameter, which contains the name of the preference that changed. In our example, we only have one preference, but you can monitor as many preferences as you wish here.

+ +

If the changed preference is "symbol", we grab the updated value of the preference by calling the nsIPrefBranch.getCharPref() method, and stash it in our tickerSymbol variable.

+ +

Once we've gotten the updated preference, we call refreshInformation() to immediately update the display with the new stock's information.

+ +

watchStock()

+ +

While we're at it, let's add a method that sets which stock we want to be watching, changing the preference and immediately requesting a refresh of the display. This method will be used when the user uses the popup menu we'll be adding to change what stock they're watching.

+ +
   watchStock: function(newSymbol)
+   {
+     this.prefs.setCharPref("symbol", newSymbol);
+   },
+
+ +

The only new information for us here is the call to the preference object's setCharPref() function, which sets the value of the "symbol" preference.

+ +

Note that this call results in our StockWatcher.observe() method being invoked and displayed stock information being updated.

+ +

refreshInformation()

+ +

This method is slightly revised from previous versions, in that it needs to fetch the preference for the stock to watch and use that to construct the URL to monitor, as well as to construct the string to be displayed in the status bar panel.

+ +
   refreshInformation: function()
+   {
+     // Because we may be called as a callback, we can't rely on
+     // "this" referring to the right object, so we need to reference
+     // it by its full name
+
+     var symbol = StockWatcher.tickerSymbol;
+
+     var fullUrl = "http://quote.yahoo.com/d/quotes.csv?f=sl1d1t1c1ohgv&e=.csv&s="
+         + symbol;
+
+     function infoReceived()
+     {
+       var samplePanel = document.getElementById('stockwatcher2');
+       var output = httpRequest.responseText;
+
+       if (output.length)
+       {
+         // Remove any whitespace from the end of the string
+         output = output.replace(/\W*$/, "");
+
+         // Build the tooltip string
+         var fieldArray = output.split(",");
+         samplePanel.label = symbol + ": " + fieldArray[1];
+         samplePanel.tooltipText = "Chg: " + fieldArray[4] + " | " +
+             "Open: " + fieldArray[5] + " | " +
+             "Low: " + fieldArray[6] + " | " +
+             "High: " + fieldArray[7] + " | " +
+             "Vol: " + fieldArray[8];
+       }
+     }
+
+     var httpRequest = new XMLHttpRequest();
+
+     httpRequest.open("GET", fullUrl, true);
+     httpRequest.onload = infoReceived;
+     httpRequest.send(null);
+   }
+ }
+
+ +

Note that we use StockWatcher.tickerSymbol here instead of this.tickerSymbol to get the stock symbol to watch. We do this because since refreshInformation() is usually called as a callback from setInterval. In such cases this doesn't refer to the right object. See Wiązanie metod for detailed explanation.

+ +

Once we have the symbol in the local variable symbol, we use that to construct the URL and the string to display in the status bar panel.

+ +

Instalowanie nasłuchu zdarzeń

+ +

The only thing left to do is to install the event listeners needed to run the startup() and shutdown() routines automatically when the browser window is loaded and unloaded.

+ +
window.addEventListener("load", function(e) { StockWatcher.startup(); }, false);
+window.addEventListener("unload", function(e) { StockWatcher.shutdown(); }, false);
+
+ +

Design the preference dialog

+ +

Now that we've written all the code, we need to build the XUL file for the options dialog.

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<prefwindow id="stockwatcher2-prefs"
+     title="StockWatcher 2 Options"
+     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<prefpane id="sw2-stock-pane" label="Stock Settings">
+  <preferences>
+    <preference id="pref_symbol" name="stockwatcher2.symbol" type="string"/>
+  </preferences>
+
+  <hbox align="center">
+    <label control="symbol" value="Stock to watch: "/>
+    <textbox preference="pref_symbol" id="symbol" maxlength="4"/>
+  </hbox>
+</prefpane>
+
+</prefwindow>
+
+ +

The <preferences> block establishes all the settings we implement as well as their types. In our case, we have a single preference, the stock symbol to monitor. Preferences are identified by name; in this case, the name is "stockwatcher2.symbol".

+ +

The actual user interface is described in the <prefpane> block. The <hbox> element is used to lay out the user interface by indicating that the widgets inside it should be positioned horizontally, next to each other in the window.

+ +

Our dialog has two widgets in it. The first is a label describing the textbox. The second is the textbox itself, in which the user enters the symbol. The preference property ties the textbox to the "pref_symbol" <preference> element and to the "stockwatcher2.symbol" preference. This lets the preference value automatically be updated to reflect the content of the textbox.

+ +

Dodanie kontekstowego menu

+ +

Adding the contextual menu is easy; all the work that needs doing is done in the stockwatcher2.xul file. The first step is to add the context attribute to the status bar panel:

+ +
 <statusbar id="status-bar">
+   <statusbarpanel id="stockwatcher2"
+     label="Loading..."
+     context="stockmenu"
+     onclick="StockWatcher.refreshInformation()"
+   />
+ </statusbar>
+
+ +

Now when the user clicks on the status bar panel, the stock information refreshes, but when they right-click on it, a context menu pops up.

+ +

Defining the menu is also easy. All we need to do is add a popupset describing the menu to the statusbar, as follows:

+ +
 <popupset>
+   <menupopup id="stockmenu">
+     <menuitem label="Refresh Now" default="true"
+               oncommand="StockWatcher.refreshInformation()"/>
+     <menuseparator/>
+     <menuitem label="Apple (AAPL)" oncommand="StockWatcher.watchStock('AAPL')"/>
+     <menuitem label="Google (GOOG)" oncommand="StockWatcher.watchStock('GOOG')"/>
+     <menuitem label="Microsoft (MSFT)" oncommand="StockWatcher.watchStock('MSFT')"/>
+     <menuitem label="Yahoo! (YHOO)" oncommand="StockWatcher.watchStock('YHOO')"/>
+   </menupopup>
+ </popupset>
+
+ +

Each item in the menu has a label property, which specifies the text displayed in the menu, as well as an oncommand property, which indicates the JavaScript code to execute when the user selects that item.

+ +

The Refresh Now option calls the StockWatcher.refreshInformation() function, to refresh the display. The rest of the options call the StockWatcher.watchStock() function to start watching a different stock.

+ +

For a more detailed tutorial on creating popup menus, zobacz Kurs XUL:Wyskakujące menu. {{ PreviousNext("Tworzenie rozszerzenia dynamicznego paska stanu", "Lokalizacja rozszerzenia") }}

diff --git a/files/pl/dodawanie_wyszukiwarek_z_poziomu_stron_www/index.html b/files/pl/dodawanie_wyszukiwarek_z_poziomu_stron_www/index.html new file mode 100644 index 0000000000..2c5873895d --- /dev/null +++ b/files/pl/dodawanie_wyszukiwarek_z_poziomu_stron_www/index.html @@ -0,0 +1,57 @@ +--- +title: Dodawanie wyszukiwarek z poziomu stron WWW +slug: Dodawanie_wyszukiwarek_z_poziomu_stron_WWW +tags: + - Dodatki + - Wszystkie_kategorie + - Wtyczki_wyszukiwarek +translation_of: Web/OpenSearch +--- +

+

Firefox zezwala, aby kod JavaScript instalował wtyczki wyszukiwarek, i obsługuje dwa formaty wtyczek: OpenSearch i Sherlock. +

+
Uwaga: Od Firefoksa 2 OpenSearch jest preferowanym formatem wyszukiwania.
+

Gdy kod JavaScript próbuje zainstalować wtyczkę wyszukiwarki, Firefox wyświetla komunikat z pytaniem o zgodę na instalację wtyczki. +

+

Instalowanie wtyczek OpenSearch

+

Aby zainstalować wtyczkę OpenSearch, należy skorzystać z metody DOM window.external.AddSearchProvider(). Składnię tej metody przedstawiono poniżej: +

+
window.external.AddSearchProvider(adresURLWtyczki);
+
+

Gdzie: adresURLWtyczki jest pełnym adresem URL do pliku XML wtyczki wyszukiwarki. +

+
Uwaga: Obsługa OpenSearch jest dostępna tylko w Firefoksie 2 i wyższych.
+

Instalowanie wtyczek Sherlock

+

Aby zainstalować wtyczkę Sherlock, należy użyć metody window.sidebar.addSearchEngine(), składnia jest następująca: +

+
window.sidebar.addSearchEngine(adresURLWtyczki, adresURLIkony, sugerowanaNazwa, sugerowanaKategoria);
+
+ +

Więcej informacji na temat formatu Sherlock można znaleźć na stronie http://developer.apple.com/macosx/sherlock/ +

+

Wykrywanie możliwości przeglądarki z poziomu silnika wyszukiwarki

+

Ponieważ uzupełniające API wyszukiwarki zmieniło się między Firefoksem 1.5 a Firefoksem 2.0 oraz ponieważ Firefox 1.5 nie wspiera plików opisu OpenSearch, autorzy stron internetowych, którzy chcą dodać silnik wyszukiwarki w sposób kompatybilny wstecznie (to znaczy tak, żeby działała ona w Firefoksie 1.5, Firefoksie 2.0 lub IE 7), muszą obsługiwać zarówno format Sherlock jak i OpenSearch oraz muszą odpowiednio wykryć możliwości przeglądarki. Poniższy fragment kodu jest przykładem w jaki sposób może to być osiągnięte: +


+

+
function installSearchEngine() {
+ if (window.external && ("AddSearchProvider" in window.external)) {
+   // Firefox 2 i IE 7, OpenSearch
+   window.external.AddSearchProvider("http://przyklad.com/search-plugin.xml");
+ } else if (window.sidebar && ("addSearchEngine" in window.sidebar)) {
+   // Firefox <= 1.5, Sherlock
+   window.sidebar.addSearchEngine("http://przyklad.com/search-plugin.src",
+                                  "http://przyklad.com/search-icon.png",
+                                  "Search Plugin", "");
+ } else {
+   // Brak obsługi wyszukiwarki (IE 6, Opera, itd.).
+   alert("Brak obsługi wyszukiwarki");
+ }
+}
+
+
+
+{{ languages( { "ca": "ca/Addici\u00f3_de_motors_de_cerca_a_les_p\u00e0gines_web", "en": "en/Adding_search_engines_from_web_pages", "es": "es/A\u00f1adir_motores_de_b\u00fasqueda_desde_p\u00e1ginas_web", "fr": "fr/Ajout_de_moteurs_de_recherche_depuis_des_pages_Web", "it": "it/Installare_plugin_di_ricerca_dalle_pagine_web", "ja": "ja/Adding_search_engines_from_web_pages", "zh-tw": "zh_tw/\u81ea\u7db2\u9801\u6dfb\u52a0\u641c\u5c0b\u5f15\u64ce" } ) }} diff --git a/files/pl/dokumentacja_gecko_dom/index.html b/files/pl/dokumentacja_gecko_dom/index.html new file mode 100644 index 0000000000..e4c1475516 --- /dev/null +++ b/files/pl/dokumentacja_gecko_dom/index.html @@ -0,0 +1,85 @@ +--- +title: Dokumentacja Gecko DOM +slug: Dokumentacja_Gecko_DOM +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document_Object_Model +--- +

+

Ta strona jest przyszłym spisem treści Dokumentacji Gecko DOM, którą przenosimy stąd. +


+

+

Przedmowa

+ +

Wprowadzenie

+ +

Elementy w DOM

+ +

Obiekt window

+ +

Obiekt document

+ +

Zdarzenia

+ +

Style w DOM

+ +

DOM range

+ +

Interfejs elementu HTML FORM

+ +

Interfejs elementu HTML TABLE

+ +

Przykłady użycia DOM

+ +


+

+
+
+{{ languages( { "en": "en/Gecko_DOM_Reference", "es": "es/Referencia_DOM_de_Gecko", "fr": "fr/R\u00e9f\u00e9rence_du_DOM_Gecko", "it": "it/Reference_del_DOM_di_Gecko", "ja": "ja/Gecko_DOM_Reference", "ko": "ko/Gecko_DOM_Reference", "zh-cn": "cn/Gecko_DOM_\u53c2\u8003" } ) }} diff --git a/files/pl/dokumentacja_gecko_dom/przedmowa/index.html b/files/pl/dokumentacja_gecko_dom/przedmowa/index.html new file mode 100644 index 0000000000..6cf8a2b1f0 --- /dev/null +++ b/files/pl/dokumentacja_gecko_dom/przedmowa/index.html @@ -0,0 +1,46 @@ +--- +title: Przedmowa +slug: Dokumentacja_Gecko_DOM/Przedmowa +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document_Object_Model +--- +

{{ ApiRef() }}

+

O dokumentacji

+

Ten rozdział opisuje przewodnik jaki czytasz: czyli czym jest, jakie informacje są w nim zaprezentowane i w jaki sposób można użyć przykładów zawartych w dokumentacji do własnego programowania.

+

Uwaga, bo ten dokument nie służy do programowania i nie jest aktualnie pełną listą metod DOM i własności zaimplementowanych w Gecko. Każdy indywidualny rozdział dokumentu (np., Obiekt document) są w pełni opisanym obiektem(ami). Jako informacje dokumentacji dla rozmaitych użytkowników wraz z odnośnikami do poszczególnych części API będą zintegrowane z tym dokumentem.

+

Kto powinien ją przeczytać

+

Czytelnik dokumentacji Gecko DOM jest programista piszący strony internetowe lub wprawny użytkownik sieci, który wie trochę o pisaniu stron oraz zna ich budowę. W dokumentacji nie tworzy się założeń, że czytelnik posiada wiedzę z DOM, z XML, z tematyki serwerów sieciowych lub standardów sieciowych, czy nawet z JavaScriptu, bo język, w którym DOM został stworzony, jest dostępny dla czytającego tą dokumentację. Natomiast w tym dokumencie założono, że czytelnik ma obycie z HTML, ze znacznikami, z podstawową strukturą stron internetowych, z przeglądarkami i z arkuszami stylów.

+

We wstępnym materiale, znajduje się wiele przykładów i ich wykorzystanie na bardzo wysokim poziomie, dokument jest dla "początkujących" programistów sieciowych. Ogólnie, kiedykolwiek, dokumentacja API powinna być wartościowa zarówno dla doświadczonych jak i niedoświadczonych deweloperów.

+

Czym jest Gecko?

+

Mozilla, Firefox, Netscape 6+, i inne oparte o Mozillę przeglądarki posiadają identyczną implementację DOM. Dzieje się tak ponieważ używają tej samej technologii. naturally, it applies only to products based on the same version of Gecko, but it\'s tricky to explain

+

Gecko, komponent oprogramowania w tych przeglądarkach, który obsługuje przetwarzanie kodu HTML, rozmieszczenie elementów na stronach, model obiektowy dokumentu (DOM), a nawet tworzenie całego interfejsu aplikacji, jest szybkim, zgodnym ze standardami silnikiem renderowania, który implementuje standard W3C DOM i podobny do DOM (ale niestandardowy) model obiektowy przeglądarki (np., window i inne) w kontekście stron WWW i interfejsu aplikacji.

+

Mimo, że interfejs aplikacji i zawartość wyświetlana przez przeglądarkę różnią się w wielu praktycznych aspektach, DOM reprezentuje je jednorodnie jako hierarchię węzłów. (commenting this incomplete sentence out for now...) The tree structure of the DOM (which in its application to the user

+

Składnia API

+

Każdy opis w dokumentacji API zawiera przykłady składni, parametry wejścia - wyjścia (gdzie podawany jest również typ zmiennej), przykład, dodatkowe uwagi i link do odpowiedniego tematu w specyfikacji.

+

Normalnie właściwości tylko do odczytu posiadają tylko jedna linię składni, gdyż mogą być one tylko odczytane a nie zapisane. Na przykład własność availHeight obiektu screen zawiera następująca informacje:

+
+ Grafika:Preface2.gif
+

Oznacza to, że można używać tylko własności z prawej strony wyrażenia; dla własności typu odczyt/zapis można je wykorzystywać po obydwu stronach wyrażenia jak ilustruje poniższy przykład:

+
+ Grafika:Prefacea.gif
+

Ogólnie, dla obiektów opisanych powyżej jest podana prosta składnia, np. element dla wszystkich elementów, document dla głównych dokumentów obiektu, table dla obiektu TABLE itd. (zobacz Ważne typy danych dla różnych typów danych).

+

Korzystanie z przykładów

+

Wiele przykładów w tej dokumentacji jest pełnymi plikami, które możemy wykorzystać poprzez skopiowanie i wklejenie do nowego pliku i następnie otworzenie w swojej przeglądarce. Reszta jest tylko fragmentami kodu. Taki fragment możesz uruchomić poprzez umieszczenie go w wewnątrz funkcji JavaScript zwracającej nazwę. Na przykład własność window.document może być testowana wewnątrz funkcji takiej jak ta poniżej, która jest wywołana za pomocą przycisku:

+
<html>
+<script>
+function testWinDoc() {
+doc= window.document;
+alert(doc.title);
+}
+</script>
+<button onclick="testWinDoc();">Test własności dokumentu</button>
+</html>
+
+

Podobne funkcje i strony można wymyślić dla wszystkich składników obiektów, które jeszcze nie znajdują się w pakiecie. Zobacz temat Testowanie DOM API we wprowadzeniu dla "test harness", który będziesz mógł użyć do testowania liczby wszystkich API na raz.

+
+  
+

{{ languages( { "en": "en/Gecko_DOM_Reference/Preface", "es": "es/Referencia_DOM_de_Gecko/Prefacio", "fr": "fr/R\u00e9f\u00e9rence_du_DOM_Gecko/Pr\u00e9face", "ja": "ja/Gecko_DOM_Reference/Preface", "ko": "ko/Gecko_DOM_Reference/Preface", "zh-cn": "cn/Gecko_DOM_\u53c2\u8003/Preface" } ) }}

diff --git "a/files/pl/dokumentacja_gecko_dom/przyk\305\202ady_u\305\274ycia_dom/index.html" "b/files/pl/dokumentacja_gecko_dom/przyk\305\202ady_u\305\274ycia_dom/index.html" new file mode 100644 index 0000000000..90d24738ef --- /dev/null +++ "b/files/pl/dokumentacja_gecko_dom/przyk\305\202ady_u\305\274ycia_dom/index.html" @@ -0,0 +1,354 @@ +--- +title: Przykłady użycia DOM +slug: Dokumentacja_Gecko_DOM/Przykłady_użycia_DOM +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document_Object_Model/Examples +--- +

{{ ApiRef() }}

+ +

Rozdział ten pokazuje kilka dłuższych przykładów użycia DOM na stronach internetowych i zastosowanie XML-a. Gdzie tylko jest to możliwe, przykłady używają ogólnie API, trików i wzorów kodu napisanych w JavaScripcie służących do manipulacji obiektem dokumentu.

+ +

Przykład 1: Wysokość i szerokość

+ +

Następujący przykład pokazuje użycie własności height i width obok obrazków, które się różnią rozmiarami:

+ +
<!DOCTYPE html>
+<html lang="pl">
+<head>
+<title>Przykład width/height</title>
+<script>
+function init()
+{
+  var arrImages = new Array(3);
+
+  arrImages[0] = document.getElementById("image1");
+  arrImages[1] = document.getElementById("image2");
+  arrImages[2] = document.getElementById("image3");
+  var objOutput = document.getElementById("output");
+  var strHtml = "<ul>";
+  for (var i = 0; i < arrImages.length; i++)
+    strHtml += "<li>image" + (i+1) +
+            ": height=" + arrImages[i].height +
+            ", width=" + arrImages[i].width +
+            ", style.height=" + arrImages[i].style.height +
+            ", style.width=" + arrImages[i].style.width +
+            "<\/li>";
+  strHtml += "<\/ul>";
+  objOutput.innerHTML = strHtml;
+}
+</script>
+</head>
+<body onload="init();">
+
+<p>Obrazek 1: Brak wysokości, szerokości oraz stylu
+    <img id="image1" src="http://www.mozilla.org/images/mozilla-banner.gif">
+</p>
+<p>Obrazek 2: height="50", width="500", lecz bez stylu
+    <img id="image2" src="http://www.mozilla.org/images/mozilla-banner.gif"
+         height="50" width="500">
+</p>
+<p>Obrazek 3: Brak wysokości, szerokości, lecz style="height: 50px; width: 500px;"
+    <img id="image3" src="http://www.mozilla.org/images/mozilla-banner.gif"
+         style="height: 50px; width: 500px;">
+</p>
+
+<div id="output"> </div>
+</body>
+</html>
+
+ +

height i width są także własnościami elementów OBJECT i APPLET.

+ +

Przykład 2: Atrybuty obrazu

+ +
<!DOCTYPE html>
+<html lang="pl">
+<head>
+<title>Modyfikacja obramowania obrazka</title>
+
+<script>
+function setBorderWidth(width) {
+  document.getElementById("img1").style.borderWidth = width + "px";
+}
+</script>
+</head>
+
+<body>
+<p>
+  <img id="img1"
+       src="image1.gif"
+       style="border: 5px solid green;"
+       width="100"
+       height="100"
+       alt="test obramowania">
+</p>
+
+<form name="FormName">
+  <input type="button" value="Utwórz obramowanie 20px-wide" onclick="setBorderWidth(20);">
+  <input type="button" value="Utwórz obramowanie 5px-wide" onclick="setBorderWidth(5);">
+</form>
+
+</body>
+</html>
+
+ +

Przykład 3: Manipulacja stylami

+ +

W tym prostym przykładzie, niektóre podstawowe własności stylów elementu znacznika HTML są dostępne przy zastosowaniu obiektów stylu elementu i obiektów własności stylu CSS, który może być odzyskiwany i ustawiany z DOM. W tym przypadku manipulujemy bezpośrednio pojedynczym stylem. W następnym przykładzie (zobacz przykład 4), zastosujemy arkusz stylów i jego reguły do zmiany stylów w dokumentach wokół.

+ +
<!DOCTYPE html>
+<html lang="pl">
+<head>
+<title>Zmiana koloru i rozmiaru czcionki w przykładzie</title>
+
+<script>
+function changeText() {
+	var p = document.getElementById("pid");
+
+    p.style.color = "blue"
+	p.style.fontSize = "18pt"
+}
+</script>
+</head>
+<body>
+
+<p id="pid" onclick="window.location.href = 'http://www.cnn.com/';">linker</p>
+
+<form>
+  <p><input value="rec" type="button" onclick="changeText();"></p>
+</form>
+
+</body>
+</html>
+
+ +

Przykład 4: Zastosowanie stylów

+ +

Własność obiektu dokumentu styleSheets zwraca listę arkusza stylów wczytanego do tegoż dokumentu. Można uzyskać dostęp do indywidualnych własności arkusza stylów używając obiektów stylesheet, style oraz CSSRule jak zademonstrowano w poniższym przykładzie, który wyświetla selektory reguł stylu na konsole.

+ +
var ss = document.styleSheets;
+
+for(var i=0; i < ss.length; i++) {
+  for(var j=0; j < ss[i].cssRules.length; j++) {
+     console.log(ss[i].cssRules[j].selectorText + "\n" );
+  }
+}
+
+ +

Dla dokumentu posiadającego tylko jeden styl, dla którego zdefiniowano 3 poniższe reguły:

+ +
body { background-color: darkblue; }
+p { font-face: Arial; font-size: 10pt; margin-left: .125in; }
+#lumpy { display: none; }
+
+ +

Wynik skryptu będzie następujący:

+ +
BODY
+P
+#LUMPY
+
+ +

Przykład 5: Propagowanie zdarzeń

+ +

Poniższy przykład demonstruje w prosty sposób jak zainicjować zdarzenia oraz ich obsługę przez DOM. Kiedy BODY tegoż dokumentu zostanie załadowany nasłuch zdarzeń zostaje zarejestrowany w pierwszym rzędzie TABLE. Nasłuch zdarzeń obsługuje zdarzenie przez wykonanie funkcji l_func, która zmienia wartość dolnej komórki tabeli.

+ +

Jednakże, l_func wywołuje również metodę obiektu zdarzenia event.stopPropagation powstrzymującą zdarzenie od dalszego "mieszania" w DOM-ie. Zauważ, że sama tabela posiada uchwyt zdarzenia onclick, który powinien wyświetlić powiadomienie w przypadku kliknięcia na tabelę. Metoda l_func powstrzymała propagacje, tak wiec po zaktualizowaniu danych tabeli faza zdarzenia została zakończona.

+ +
<!DOCTYPE html>
+<html lang="pl">
+<head>
+  <title>Propagowanie zdarzeń</title>
+  <style>
+    #t-daddy { border: 1px solid red }
+    #t1 { background-color: pink; }
+  </style>
+  <script>
+  function stopEvent(e) {
+    t2 = document.getElementById("t2");
+    t2.innerHTML = "hej";
+     // this ought to keep t-daddy from getting the click.
+    e.stopPropagation();
+    alert("propagowanie zdarzeń zatrzymane.");
+  }
+  function load() {
+    el = document.getElementById("t");
+    el.addEventListener("click", stopEvent, false);
+  }
+  </script>
+</head>
+<body onload="load();">
+
+<table id="t-daddy" onclick="alert('hi');">
+  <tr id="t">
+     <td id="t1">jeden</td>
+  </tr>
+  <tr>
+    <td id="t2">dwa</td>
+  </tr>
+</table>
+</body>
+</html>
+
+ +

Przykład 6: getComputedStyle

+ +

Poniższy przykład demonstruje jak użyć metody DOM document.defaultView.getComputedStyle() do pobrania stylu elementu, który nie jest zgodny z językiem JavaScript (np., elementReference.style.backgroundColor="rgb(173, 216, 230)"). Typy stylów można pobrać w bardziej bezpośredni sposób style = własności elementReference.style, których lista własności przedstawiona jest DOM Style Reference książki (patrz DOM CSS Properties List). Zobacz również własności stylów w DOM Elements Reference. getComputedStyle() zwraca obiekt ComputedCSSStyleDeclaration, którego własności stylów można związać z metodą getPropertyValue() obiektu, jak pokazuje poniższy przykład dokumentu.

+ +
<!DOCTYPE html>
+<html lang="pl">
+<head>
+
+<title>Przykład getComputedStyle</title>
+
+<script>
+function cStyles() {
+   var RefDiv = document.getElementById("d1");
+
+   var txtHeight = document.getElementById("t1");
+   var h_style =
+document.defaultView.getComputedStyle(RefDiv, null).getPropertyValue("height");
+   txtHeight.value = h_style;
+
+   var txtWidth = document.getElementById("t2");
+   var w_style =
+document.defaultView.getComputedStyle(RefDiv, null).getPropertyValue("width");
+   txtWidth.value = w_style;
+
+   var txtBackgroundColor = document.getElementById("t3");
+   var b_style =
+document.defaultView.getComputedStyle(RefDiv,
+null).getPropertyValue("background-color");
+   txtBackgroundColor.value = b_style;
+  }
+ </script>
+
+ <style>
+   #d1 { margin-left: 10px; background-color: rgb(173, 216, 230);
+height: 20px; max-width: 20px; }
+ </style>
+
+</head>
+
+<body>
+
+<div id="d1">&nbsp;</div>
+
+<form action="">
+<p><button type="button" onclick="cStyles();">getComputedStyle</button>
+  height<input id="t1" type="text" value="1">
+  max-width<input id="t2" type="text" value="2">
+  bg-color<input id="t3" type="text" value="3"></p>
+</form>
+
+</body>
+</html>
+
+ +

Przykład 7: Wyświetlanie stałych obiektu zdarzenia

+ +

Przykład pokazuje jak używając DOM można stworzyć tabele zawierającą zarówno wszystkie stałe obiektu zdarzenia jak i ich wartości. Pokazuje kilka ciekawych aspektów DOM, włączając w to własność Event.prototype pozwalającą uzyskać dostęp do własności danego obiektu, dobry wzorzec iteracji przez własności tegoż prototypu oraz same wartości stałych wyświetlanych w tabeli. Zauważ, że środkowy zakres zmiennych to kody znaków reprezentujące klawisze wciśnięte podczas zdarzenia (i do pobrania za pomocą własności charCode). Załaduj poniższy kod jako stronę www, aby zobaczyć stale obiektu zdarzenia.

+ +
<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta charset="utf-8">
+<title>Show Event properties</title>
+
+<style>
+  table {border-collapse: collapse;}
+  thead {font-weight: bold;}
+  td {padding: 2px 10px 2px 10px;}
+  .odd {background-color: #efdfef;}
+  .even {background-color: #ffffff;}
+</style>
+
+<script>
+
+function showEventProperties(e) {
+  function addCell(row, text) {
+    var cell = row.insertCell(-1);
+    cell.appendChild(document.createTextNode(text));
+  }
+
+  var e = e || window.event;
+  document.getElementById('eventType').innerHTML = e.type;
+
+  var table = document.createElement('table');
+  var thead = table.createTHead();
+  var row = thead.insertRow(-1);
+  var lableList = ['#', 'Property', 'Value'];
+  var len = lableList.length;
+
+  for (var i=0; i<len; i++) {
+    addCell(row, lableList[i]);
+  }
+
+  var tbody = document.createElement('tbody');
+  table.appendChild(tbody);
+
+  for (var p in e) {
+    row = tbody.insertRow(-1);
+    row.className = (row.rowIndex % 2)? 'odd':'even';
+    addCell(row, row.rowIndex);
+    addCell(row, p);
+    addCell(row, e[p]);
+  }
+
+  document.body.appendChild(table);
+}
+window.onload = function(event){
+  showEventProperties(event);
+}
+</script>
+</head>
+
+<body>
+<h1>Properties of the DOM <span id="eventType"></span> Event Object</h1>
+</body>
+
+</html>
+
+ +

Przykład 8: Zastosowanie interfejsu DOM Table

+ +

Interfejs DOM HTMLTableElement dostarcza kilku wygodnych metod do tworzenia i modyfikacji tabeli. Dwoma często stosowanymi metodami są table.insertRow i row.insertCell.

+ +

Aby dodać wiersz i kilka komórek do istniejącej tabeli:

+ +
<table id="table0">
+ <tr>
+  <td>Row 0 Cell 0</td>
+  <td>Row 0 Cell 1</td>
+ </tr>
+</table>
+
+<script>
+
+var table = document.getElementById('table0');
+var row = table.insertRow(-1);
+var cell, text;
+
+for (var i=0; i<2; i++) {
+  cell = row.insertCell(-1);
+  text = 'Row ' + row.rowIndex + ' Cell ' + i;
+  cell.appendChild(document.createTextNode(text));
+}
+</script>
+
+ +

Uwagi

+ + + +
 
+ +

{{ languages( { "en": "en/Gecko_DOM_Reference/Examples", "es": "es/Referencia_DOM_de_Gecko/Ejemplos", "fr": "fr/R\u00e9f\u00e9rence_du_DOM_Gecko/Exemples", "ja": "ja/Gecko_DOM_Reference/Examples" } ) }}

diff --git a/files/pl/dokumentacja_gecko_dom/wprowadzenie/index.html b/files/pl/dokumentacja_gecko_dom/wprowadzenie/index.html new file mode 100644 index 0000000000..2ffb9814a7 --- /dev/null +++ b/files/pl/dokumentacja_gecko_dom/wprowadzenie/index.html @@ -0,0 +1,171 @@ +--- +title: Wprowadzenie +slug: Dokumentacja_Gecko_DOM/Wprowadzenie +tags: + - DOM + - Gecko +translation_of: Web/API/Document_Object_Model/Introduction +--- +

Ten rozdział ma dać ogólne pojęcie o DOM: co to jest, o strukturze dla dokumentów HTML i XML, jak korzystać z DOM oraz w jaki sposób przedstawiona będzie dokumentacja i przykłady.

+ +

Czym jest DOM?

+ +

Model obiektowy dokumentu (ang. Document Object Model, DOM) stanowi API dla dokumentów HTML i XML. Odpowiada za dwie rzeczy: zapewnia reprezentację struktury dokumentu oraz określa, w jaki sposób odnosić się do tej struktury z poziomu skryptu. DOM przedstawia stronę jako strukturyzowaną grupę węzłów, co omówimy pokrótce. W gruncie rzeczy, DOM łączy stronę ze skryptami bądź językami programowania.

+ +

Zauważ, że DOM nie jest konkretną aplikacją czy produktem. Jest raczej interfejsem, API, które twórcy oprogramowania muszą zaimplementować, jeśli chcą spełniać standard W3C DOM. Mały przykład: każda przeglądarka internetowa musi zwracać wszystkie elementy <P> ze strony HTML jako tablicę węzłów, kiedy poniższy skrypt wywoła metodę getElementsByTagName:

+ +
paragraphs = document.getElementsByTagName("P");
+// paragraphs[0] to pierwszy element <p>
+// paragraphs[1] - drugi element <p>, etc.
+alert(paragraphs[0].nodeName);
+
+ +

Wszystkie metody, właściwości i wydarzenie dostępne dla webmastera w celu manipulowania lub tworzenia stron są zorganizowane w obiekty (np. obiekt document, reprezentujący sam dokument, obiekt table, implementujący specjalny interfejs DOM HTMLTableElement, który umożliwia dostęp do tabel w HTML, itd.) Niniejsza dokumentacja przedstawia opis każdego z obiektów w tym API.

+ +

DOM vs. JavaScript

+ +

Powyższy przykład, jak i inne w tej dokumentacji, napisano w JavaScript. Ściślej, został on + + napisany + w JavaScript, ale + + korzysta + z DOM, by manipulować stroną i jej elementami. DOM nie jest sam w sobie językiem programowania, ale bez niego język JavaScript nie miałby żadnego odniesienia do stron czy dokumentów XML i ich elementów. Każdy z elementów - jak nagłówek, tabele, nagłówki tabel, komórki tych tabel, tekst w tych komórkach - są częściami obiektowego modelu tego konkretnego dokumentu i, za pomocą DOM, język taki jak JavaScript może nimi operować.

+ +

DOM zaprojektowano tak, by był niezależny od języka programowania, dzięki czemu reprezentacja struktury dokumentu dostępna jest poprzez jedno, spójne API. W niniejszej dokumentacji skupimy się wyłącznie na JavaScripcie, jednak można stworzyć implementację DOM dla dowolnego języka - poniżej przykład w Pythonie:

+ +
# Przykład: DOM w Pythonie
+import xml.dom.minidom as m
+doc = m.parse("C:\\Projects\\Py\\chap1.xml");
+doc.nodeName # DOM - własność obiektu document;
+p_list = doc.getElementsByTagName("para");
+
+ +

Jak korzystać z DOM?

+ +

Aby zacząć korzystać z DOM, nie musisz robić nic szczególnego. Różne przeglądarki różnią się implementacją DOM, implementacje wykazują różny stopień zgodności z faktycznym standardem DOM (jest to kwestia, której staramy się unikać w niniejszej dokumentacji), ale każda przeglądarka używa jakiegoś obiektowego modelu dokumentu, by dać dostęp do strony z poziomu skryptu.

+ +

Kiedy tworzysz nowy skrypt - niezależnie, czy jest to on zagnieżdżony w elemencie <SCRIPT>, czy też załączony do strony w odpowiedni sposób - możesz od razu zacząć korzystać z API dla elementów document lub window by manipulować samym dokumentem lub by przechwycić któregoś z potomków - elementów strony. Programowanie w DOM może być tak proste jak poniższy przykład, który wykorzystuje metodę alert() obiektu window, może jednak korzystać z bardziej skomplikowanych metod, by tworzyć nową zawartość - tak jak w drugim z poniższych przykładów.

+ +
<body onload="window.alert('Witaj!');">
+
+ +

Niezależnie od elementu <script>, w którym poniższy skrypt jest zdefiniowany, kod ten tworzy nowy element H1, dodaje do niego tekst, a następnie włącza H1 do drzewa dokumentu.

+ +
<html>
+<script>
+ // create a couple of elements
+ // in an otherwise empty HTML page
+ heading = document.createElement("h1");
+ heading_text = document.createTextNode("Big Head!");
+ heading.appendChild(heading_text);
+ document.body.appendChild(heading);
+</script>
+</html>
+
+ +

Ważne typy danych

+ +

Interfejsy DOM

+ +

Założeniem tego przewodnika jest ograniczenie do minimum dyskusji o abstrakcyjnych interfejsach, dziedziczeniu i innych szczegółach implementacji, a zamiast tego omówienie obiektów w DOM, faktycznych + bytów + , jakich możesz użyć do manipulowania hierarchią DOM. Z punktu widzenia programisty zwykle nie jest istotne, że obiekt reprezentujący element HTML FORM pobiera własność name z interfejsu HTMLFormElement, a własność className z interfejsu HTMLElement. W obu przypadkach własność, która Ciebie interesuje, znajduje się po prostu w obiekcie form.

+ +

Jednakże zależność między obiektami a interfejsami, jakie one implementują, może być myląca, dlatego w tym podrozdziale spróbujemy powiedzieć coś o faktycznych interfejsach w specyfikacji DOM oraz o tym, w jaki sposób są one dostępne.

+ +

Interfejsy a obiekty

+ +

W niektórych przypadkach obiekt przedstawia tylko jeden interfejs, jednak z reguły obiekty - takie jak np. table - reprezentują kilka różnych interfejsów. Dla przykładu - table implementuje specjalny interfejs HTMLTableElement, który zawiera metody takie jak XXX i YYY. Ponieważ jednak jest to element HTML, table implementuje też interfejs Element, opisany w rozdziale Obiekt element. I wreszcie, ponieważ element HTML jest, jeśli mówimy o DOM, węzłem w drzewie węzłów, jakie tworzy obiektowy model strony internetowej czy XML, element table implementuje także bardziej podstawowy interfejs Node, z którego wywodzi się Element.

+ +

Kiedy otrzymasz referencję do obiektu table, tak jak w poniższym przykładzie, używasz zazwyczaj zamiennie wszystkich trzech interfejsów, być może nawet o tym nie wiedząc.

+ +
var table = document.getElementById("table");
+var tableAttrs = table.attributes; // interfejs Node/Element
+for(var i = 0; i < tableAttrs.length; i++){
+  // interfejs HTMLTableElement: atrybut border
+  if(tableAttrs[i].nodeName.toLowerCase() == "border")
+    table.setAttribute("border", "1");
+}
+// interfejs HTMLTableElement: atrybut summary
+table.summary = "uwaga: zwiększono obramowanie";
+
+ +

Najważniejsze interfejsy w DOM

+ +

W tej części wymienione zostaną niektóre z najczęściej używanych interfejsów DOM. Celem nie jest opisanie, co wymienione API robią, ale raczej by dać Tobie ogólne pojęcie o rodzajach metod i własności, jakie będziesz często widywał, używając DOM. Te API wykorzystano także w przykładach, jakie znajdziesz na końcu tej dokumentacji.

+ +

Obiekty document i window to obiekty, których interfejsy będziesz najczęściej wykorzystywał w programowaniu przy użyciu DOM. W prostych słowach, window reprezentuje coś takiego jak przeglądarka, zaś document jest początkiem, górą całego dokumentu. Element dziedziczy z ogólnego interfejsu Node, zaś razem te dwa interfejsy odpowiadają za wiele metod i własności, jakich będziesz używał na konkretnych elementach. Elementy te mogą mieć też własne, osobne interfejsy, służące do obsługi konkretnego rodzaju danych, jaki przechowują - tak jak na przykład wspomniany wcześniej obiekt table.

+ +

Poniżej krótka lista najczęściej używanych API w skryptach wykorzystujących DOM.

+ + + +

Testowanie DOM API

+ +

W dokumentacji tej znajdziesz do każdego interfejsu przykłady wykorzystania. W niektórych przypadkach są to kompletne strony HTML, działające z poziomu elementu <script>, z elementami (jak np. przyciski) niezbędnymi do uruchomienia skryptu, jak również elementami, którymi operuje DOM. W takim przypadku możesz po prostu skopiować przykład, wkleić go do nowego pliku, zapisać i uruchomić w przeglądarce.

+ +

Jednakże, w wielu przypadkach przykłady są bardziej zwięzłe. Aby uruchomić kod, który pokazuje proste relacje między interfejsem a elementami HTML, możesz chcieć stworzyć stronę testową. Poniżej znajdziesz właśnie taką, prostą stronę do testów - funkcje testujące możesz umieścić w znaczniku <script> w nagłówku, umieszczono też kilka elementów wraz z atrybutami, którymi możesz swobodnie manipulować, a także interfejs użytkownika, pozwalający wywoływać funkcje testowe z poziomu przeglądarki.

+ +

Możesz skorzystać z tej strony testowej lub stworzyć własną. Możesz zmieniać w razie potrzeby treść skryptu, dodać przyciski czy elementy.

+ +
<html>
+<head>
+<title>DOM Tests</title>
+<script type="application/x-javascript">
+function setBodyAttr(attr,value){
+  if(document.body) eval('document.body.'+attr+'="'+value+'"');
+  else notSupported();
+}
+</script>
+</head>
+<body>
+<div style="margin: .5in; height="400"">
+<p><b><tt>text</tt> color</p>
+<form>
+<select onChange="setBodyAttr('text',
+    this.options[this.selectedIndex].value);">
+<option value="black">black
+<option value="darkblue">darkblue
+</select>
+ <p><b><tt>bgColor</tt></p>
+ <select onChange="setBodyAttr('bgColor',
+    this.options[this.selectedIndex].value);">
+<option value="white">white
+<option value="lightgrey">gray
+ </select>
+<p><b><tt>link</tt></p>
+<select onChange="setBodyAttr('link',
+     this.options[this.selectedIndex].value);">
+<option value="blue">blue
+<option value="green">green
+</select>  <small>
+     <a href="http://www.brownhen.com/dom_api_top.html" id="sample">
+(sample link)</a></small><br>
+</form>
+<form>
+  <input type="button" value="version" onclick="ver()" />
+</form>
+</div>
+</body>
+</html>
+
+ +

Przykładowa strona testowa DOM
+ By przetestować więcej interfejsów na jednej stronie - np. komplet własności zmieniających kolory strony - możesz stworzyć podobną stronę z całą konsolą przycisków, pól tekstowych i innych elementów HTML. Poniższy zrzut ekranu przedstawia przykładowy pomysł pogrupowania interfejsów do testów.

+ +

W tym przykładzie rozwijalne menu dynamicznie podmieniają takie aspekty strony jak kolor tła (bgColor), kolory linków (aLink), tekstu (text). Niezależnie od tego, jak zaprojektujesz swoją stronę testową - testowanie interfejsów jest ważnym elementem efektywnej nauki DOM.

diff --git "a/files/pl/dom/dispatchevent_-_przyk\305\202ad/index.html" "b/files/pl/dom/dispatchevent_-_przyk\305\202ad/index.html" new file mode 100644 index 0000000000..45be3346ca --- /dev/null +++ "b/files/pl/dom/dispatchevent_-_przyk\305\202ad/index.html" @@ -0,0 +1,33 @@ +--- +title: dispatchEvent - przykład +slug: DOM/dispatchEvent_-_przykład +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/Guide/Events/Creating_and_triggering_events +--- +
+ {{ ApiRef() }}
+

Poniższy przykład przedstawia symulację kliknięcia w pole wyboru opartą o metody DOM. Możesz zobaczyć przykład w działaniu.

+
function simulateClick() {
+  var evt = document.createEvent("MouseEvents");
+  evt.initMouseEvent("click", true, true, window,
+    0, 0, 0, 0, 0, false, false, false, false, 0, null);
+  var cb = document.getElementById("checkbox");
+  var canceled = !cb.dispatchEvent(evt);
+  if(canceled) {
+    // metoda obsługi zdarzenia wywołała preventDefault
+    alert("canceled");
+  } else {
+    // nie wywołano preventDefault
+    alert("not canceled");
+  }
+}
+
+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/dispatchEvent_example", "es": "es/DOM/dispatchEvent_example", "fr": "fr/DOM/dispatchEvent_exemple" } ) }}

diff --git a/files/pl/dom/element.onkeydown/index.html b/files/pl/dom/element.onkeydown/index.html new file mode 100644 index 0000000000..a7064fa2b0 --- /dev/null +++ b/files/pl/dom/element.onkeydown/index.html @@ -0,0 +1,24 @@ +--- +title: element.onkeydown +slug: DOM/element.onkeydown +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onkeydown +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność onkeydown zawiera kod obsługi zdarzenia keydown dla bieżącego elementu.

+

Składnia

+
kod obsługi zdarzenia = element.onkeydown
+
+

Uwagi

+

Zdarzenie keydown wywoływane jest, gdy użytkownik naciska klawisz na klawiaturze.

+

Specyfikacja

+

{{ DOM0() }}

+
+  
+

{{ languages( { "en": "en/DOM/element.onkeydown", "fr": "fr/DOM/element.onkeydown" } ) }}

diff --git a/files/pl/dom/index.html b/files/pl/dom/index.html new file mode 100644 index 0000000000..f1b71c7b00 --- /dev/null +++ b/files/pl/dom/index.html @@ -0,0 +1,65 @@ +--- +title: DOM +slug: DOM +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document_Object_Model +--- +
+ Użycie W3C DOM poziom 1
+ Wprowadzenie do W3C DOM.
+
+

DOM (ang. Document Object Model, obiektowy model dokumentu) to API dla dokumentów HTML i XML. Wprowadza strukturalne odwzorowanie dokumentu, pozwalając modyfikować jego zawartość i warstwę prezentacji. Podsumowując, DOM łączy strony WWW ze skryptami lub innymi językami programowania.

+
+ + + + + + + +
+

Dokumentacja

+
+
+ O obiektowym modelu dokumentu
+
+ Krótkie wprowadzenie do DOM.
+
+ Dokumentacja Gecko DOM
+
+ Pełna dokumentacja DOM wraz z jego implementacją w Gecko.
+
+ Dynamiczne zmiany interfejsu użytkownika bazującego na XUL-u
+
+ Podstawy manipulacji interfejsem użytkownika w XUL za pomocą metod DOM.
+
+ DOM i JavaScript
+
+ Czym jest DOM? Co to jest JavaScript? Co zrobić, aby zastosować je razem na własnej stronie? Ten dokument odpowiada na te pytania i na wiele innych.
+
+ Obiektowy model dokumentu w Mozilli
+
+ Starsza wersja dokumentacji DOM, hostowane na mozilla.org.
+
+

Pokaż wszystkie...

+
+

Społeczność

+
    +
  • Obejrzyj fora Mozilli... {{ DiscussionList("dev-tech-dom", "mozilla.dev.tech.dom") }}
  • +
+

Narzędzia

+ +

Pokaż wszystkie...

+ + +
+

 

diff --git a/files/pl/dom_i_javascript/index.html b/files/pl/dom_i_javascript/index.html new file mode 100644 index 0000000000..daf079833b --- /dev/null +++ b/files/pl/dom_i_javascript/index.html @@ -0,0 +1,86 @@ +--- +title: DOM i JavaScript +slug: DOM_i_JavaScript +tags: + - DOM + - JavaScript + - Wszystkie_kategorie +--- +

Ogólne pojęcie

+ +

Efekty wizualne takie jak przesuwanie warstw na stronie, pokazywanie i ukrywanie ich, wyskakujące menu itd., są często określane pojęciami „DHTML” lub „Dynamiczny HTML”. Niektórzy kwestionują zasadność użycia tych technologii na stronach, które powinny przecież obejmować treść, a nie prezentację. Ale faktem jest, że technologie te nadal istnieją.

+ +

Od kiedy pracuję nad tym projektem i mam kontakty z wieloma webmasterami, uderza mnie to, że duża ich część nie wie jak ich DHTML tak naprawdę działa. Większość z nich po prostu odnalazło stronę z repozytorium skryptów i skopiowali stamtąd kod na swoją stronę. Niestety, większość takich stron mówi o „JavaScripcie” i „DHTML-u”, jednak nigdy o „DOM”. Prawdą jest, że nawet jeśli DOM jest pomysłem starym, to pojęcie to weszło w „żargon przeciętnego webmastera” dopiero niedawno.

+ +

Wielkim wyzwaniem dla projektów takich jak Mozilla jest by przekonać właścicieli tego typu stron, że warto kodować według W3C DOM (co oznacza niekiedy wiele mozolnej pracy czy utrata wsparcia dla starszych przeglądarek). Dużym wyzwaniem jest również zebrać wszystkie fakty w prosty sposób związane ze wsparciem dla W3C DOM. Netscape 6 był mocno krytykowany przez niezdarnych projektantów internetowych, którzy pisali swój kod „JavaScript” pod Netscape'a 4 oraz Internet Explorera używając document.layers i document.all. Każdego dnia staramy się pomagać ludziom na grupach newsowych, poprzez e-maile, Bugzillę, by ich strony były jak najbardziej zgodne ze standardami. Jednym z największych problemów jakie napotykamy, jest zamieszanie związane z JavaScriptem, DHTML-em oraz DOM. Ten dokument jest próbą wyjaśnienia tych problemów, wyjaśnienia relacji pomiędzy tymi wymyślnymi oraz przydatnymi technologiami.

+ +

JavaScript — sieciowy język skryptowy

+ +

JavaScript jest „obiektowym językiem skryptowym” początkowo opracowanym w Netscape Communications Corp. przez Brendana Eicha (który jest obecnie jednym z liderów projektu Mozilla). Silnik JavaScript używany przez Mozillę to SpiderMonkey, zgodny z 3 rewizją specyfikacji ECMA-262. JavaScript jest również znany jako ECMAScript (zobacz odsyłacz, aby uzyskać więcej informacji).

+ +

Wbrew popularnemu przekonaniu, JavaScript nie jest „interpretowaną Javą”. Wewnątrz JavaScript jest dynamicznym językiem skryptowym wspierającym prototypową konstrukcję obiektów. Podstawowa składnia jest świadomie podobna do tej znanej z Javy i C++, by zminimalizować liczbę nowych pojęć potrzebnych do opanowania języka. Świetną rzeczą jest to, że jest on bardzo łatwy do nauczenia się, jeśli chcesz zajmować się prostszymi rzeczami (jak na przykład te w prostym DHTML-u). Niewidoczne typy zmiennych, niezwykle proste w użyciu łańcuchy znakowe, całkowita neutralność platformowa itd. Dla bardziej zaawansowanych programistów funkcjonuje on również jako język zarówno obiektowy jak i proceduralny.

+ +

Odkryjesz, że większość informacji o JavaScripcie w tym akapacie pochodzi ze strony Mozilla JavaScript. Najnowsza wersja specyfikacji ECMA znajduje się tutaj.

+ +

Obiektowy Model Dokumentu, neutralnie językowo zestaw interfejsów

+ +

JavaScript jest językiem programowania, który pozwala Ci działać na obiektach DOM i manipulować nimi programowo, DOM natomiast dostarczy Ci metod oraz własności do pobierania, modyfikowania, uaktualniania i usuwać części dokumentu nad którym pracujesz. Przykładowo, możesz pobrać wartość pola tekstowego jako łańcuch znaków używając DOM. Następnie możesz użyć operatora JavaScript +, by połączyć go z innym łańcuchem znaków i stworzyć z tego sensowną treść. Gdy to zrobisz, możesz użyć metody DOM alert(), aby wyświetlić użytkownikowi nowy łańcuch znaków w oknie dialogowym. Zobacz również poniższe przykłady

+ +

Jeśli strona internetowa byłaby importowanym szwedzkim meblem, DOM byłby ilustracjami jego elementów — półek, uchwytów, gwoździ oraz śrubokrętów. Możliwe jest napisanie instrukcji jak połączyć je w całość i używać tych elementów, instrukcji w wielu językach, ale Ty użyjesz tylko tego, który rozumiesz. Podręcznik ułatwia Ci złożenie tego mebla przy użyciu napisanych instrukcji (JavaScript) odwołujących się do przedstawionych ilustracji elementów (DOM), które reprezentują faktyczne obiekty (silnik renderujący przeglądarki) (dzięki Jonathanowi za analogię!).

+ +

Czym jest ten cały szum wokół neutralności językowej i DOM? Dlaczego DOM jest językowo neutralny, skoro jedynym językiem używanym razem z nim jest JavaScript? No cóż, nie jest to do końca prawda. Na przykład, Mozilla używa wewnętrznie DOM jednocześnie z C++ i JavaScriptem w interfejsie użytkownika. Z kolei edytor używa DOM w celu wstawiania, modyfikowania i usuwania kodu HTML, który widzisz w fazie tworzenia strony w module Kompozytora. Inne znane implementacje DOM zawierają Perl, Java, ActiveX, Python oraz prawdopodobnie wiele innych. To wszystko możliwe jest tylko i wyłącznie dzięki neutralności językowej DOM.

+ +

DOM a JavaScript — Co robi co?

+ +

Docieramy do głównego gwoździa programu: Co robi co? Czym jest DOM, a czym JavaScript, w skrypcie, który zawarłem na mojej stronie? Spójrzmy bliżej na prosty przykład. Pobierze on wszystkie znaczniki <a> w listę węzłów (NodeList), którą nazwalismy anchorTags. Wtedy dla każdego znacznika kotwicy (każdy element z listy węzłów anchorTags) pojawi się komunikat z wartością atrybutu href.

+ +

Kolor niebieski oznacza JavaScript, czerwony — DOM.

+ +
var anchorTags = document.getElementsByTagName("a");
+for (var i = 0; i < anchorTags.length ; i++)
+{
+   alert("Atrybut href dla " + i + " elementu to: " + anchorTags[i].href + "\n");
+}
+
+ +

Wyjaśnienia

+ +

Ten fragment kodu wyjaśnia czym jest prawdziwy JavaScript, a czym DOM.

+ +
+
var anchorTags =
+
To utworzy zmienną JavaScript o nazwie „anchorTags”.
+
document.getElementsByTagName("a")
+
Interfejs Document jest pierwszym interfejsem zdefiniowanym w DOM1 Core, a document jest głównym obiektem implementującym ten interfejs. Dokument przechowuje wszystko, co znajduje się na Twojej stronie.
+ DOM1 Core definiuje metodę getElementsByTagName() w interfejsie Document. Pobiera ona do listy węzłów (NodeList, rodzaj specyficznej dla DOM tablicy, która przechowuje węzły) wszystkie znaczniki, które odpowiadają przekazanemu parametrowi (w kolejności występowania w źródle dokumentu). Tym samym anchorTags jest teraz listą węzłów.
+
;
+
Średnik kończący instrukcję w JavaScripcie.
+
for (var i = 0; i <
+
Typowa pętla „for” znana z wielu innych języków programowania. Pozwoli ona nam na przejście przez każdy węzeł zawarty w liście węzłów anchorTags. Zwróć uwagę na deklarację zmiennej „i”. To również JavaScript.
+
anchorTags.length
+
DOM1 Core definiuje własność length interfejsu NodeList. Zwraca ona liczbę całkowitą będącą ilością węzłów przechowywanych w liście węzłów. Zauważ, że tablica JavaScript również posiada własność length.
+
; i++) {
+
Typowa instrukcja JavaScript powiększająca wartość zmiennej o 1.
+
alert(
+
alert() jest metodą DOM, która pokazuje okno dialogowe z przekazanym parametrem (łańcuchem znaków). Zwróć uwagę, że metoda ta jest częścią tzw. poziomu 0 DOM poziomu 0 lub DOM0. DOM0 jest zbiorem interfejsów obsługiwanych przez niektóre przeglądarki, ale które nie są częścią żadnej specyfikacji DOM.
+
"Atrybut href dla " + i + " elementu to: "
+
Literały znakowe oraz operator ich łączenia (konkatenacji). JavaScript.
+
anchorTags{{ mediawiki.external('i') }}.href
+
href” jest własnością interfejsu HTMLAnchorElement zdefiniowanego w specyfikacji HTML DOM1. Zwraca wartość atrybutu href odnośnika, jeśli wartość ta istnieje.
+ Używamy również anchorTags{{ mediawiki.external('i') }}, tej samej składni, która w JavaScripcie używana jest przy dostępie do i-tego elementu tablicy. Neutralnie językowym sposobem jest używanie metody item(), zdefiniowanej w interfejsie NodeList): anchorTags.item(1).href. Jednak większość implementacji JavaScriptu pozwala na używanie prostszej, tablicowej składni i takiej właśnie używa większość ludzi.
+
+ "\n");
+
Kolejne łączenie łańcuchów znaków. Wstawienie znaku powrotu karetki na końcu łańcucha znaków.
+
}
+
Koniec pętli „for”.
+
+ +
+

Informacje o oryginalnej wersji dokumentu

+ + +
+ +

{{ languages( { "en": "en/The_DOM_and_JavaScript", "fr": "fr/Le_DOM_et_JavaScript", "ja": "ja/The_DOM_and_JavaScript" } ) }}

diff --git a/files/pl/dostosowanie_aplikacji_xul_do_firefoksa_1.5/index.html b/files/pl/dostosowanie_aplikacji_xul_do_firefoksa_1.5/index.html new file mode 100644 index 0000000000..32337d1c31 --- /dev/null +++ b/files/pl/dostosowanie_aplikacji_xul_do_firefoksa_1.5/index.html @@ -0,0 +1,35 @@ +--- +title: Dostosowanie aplikacji XUL do Firefoksa 1.5 +slug: Dostosowanie_aplikacji_XUL_do_Firefoksa_1.5 +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie + - XUL +translation_of: Mozilla/Firefox/Releases/1.5/Adapting_XUL_Applications_for_Firefox_1.5 +--- +
{{FirefoxSidebar}}
+ +

Strona zawiera listę zmian w Firefoksie 1.5 wpływających na pracę programistów XUL.

+ +

Zmiany

+ + + +

Pozostałe informacje

+ + + +

{{ languages( { "en": "en/Adapting_XUL_Applications_for_Firefox_1.5", "fr": "fr/Adaptation_des_applications_XUL_pour_Firefox_1.5", "it": "it/Adattare_le_applicazioni_XUL_a_Firefox_1.5", "ja": "ja/Adapting_XUL_Applications_for_Firefox_1.5" } ) }}

diff --git "a/files/pl/dynamiczne_zmiany_interfejsu_u\305\274ytkownika_bazuj\304\205cego_na_xul-u/index.html" "b/files/pl/dynamiczne_zmiany_interfejsu_u\305\274ytkownika_bazuj\304\205cego_na_xul-u/index.html" new file mode 100644 index 0000000000..1a97e80e84 --- /dev/null +++ "b/files/pl/dynamiczne_zmiany_interfejsu_u\305\274ytkownika_bazuj\304\205cego_na_xul-u/index.html" @@ -0,0 +1,81 @@ +--- +title: Dynamiczne zmiany interfejsu użytkownika bazującego na XUL-u +slug: Dynamiczne_zmiany_interfejsu_użytkownika_bazującego_na_XUL-u +tags: + - DOM + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie + - XUL +--- +

 

+

Poniższy artykuł opisuje manipulacje interfejsami XUL używając DOM oraz innych API. Objaśnia koncepcję + + dokumentów + DOM, pokazuje kilka prostych przykładów manipulacji dokumentami DOM oraz objaśnia pracę z + + anonimową treścią XBL-a + używając metod Mozilli.

+

Jest on napisany dla programistów początkujących i średnio zaawansowanych. Założono również, że czytelnik posiada podstawową wiedzę na temat XUL-a oraz JavaScriptu. Można również przejrzeć dokumenty wprowadzające do DOM, jak np. artykuł O modelu obiektowym dokumentu lub strona wprowadzenia na stronie Dokumentacja Gecko DOM.

+

Wstęp

+

XUL jest językiem XML-a używanym w różnych aplikacjach bazujących na Mozilli (tj. Firefox lub Thunderbird) do opisu interfejsu użytkownika.W aplikacjach XUL-a JavaScript definiuje zachowanie używając API DOM w celu uzyskania dostępu do dokumentu XUL-a.

+

Czym są API DOM?

+

Są one interfejsami używanymi do interakcji pomiędzy skryptem a dokumentem. Jeśli już napisałeś skrypt współpracujący z dokumentem XUL-a (lub HTML-a) to użyłeś wywołań DOM-a. Najbardziej znaną metodą DOM jest prawdopodobnie document.getElementById() zwracająca element na podstawie jego id. Mogłeś użyć również innych wywołań jak element.setAttribute() lub też jeśli pisałeś rozszerzenie addEventListener(). Wszystkie one są zdefiniowane w DOM-ie.

+

Istnieją też inne metody DOM, które tworzą, przenoszą lub usuwają elementy dokumentu. Zostaną one przedstawione w dalszych sekcjach. Teraz dowiedzmy się czym jest + + dokument + .

+

Czym jest dokument?

+

Dokument jest strukturą danych manipulowaną za pomocą API DOM. Strukturą logiczną jest drzewo, gdzie węzłami są elementy, atrybuty, instrukcje, komentarze itd. Użyj Inspektor DOM by zobaczyć reprezentacje dokumentu. Todo: simple example of a XUL document and a tree

+

Możesz myśleć o dokumencie jako o reprezentacji wewnątrz pamięci poprawnego kodu HTML lub XML (włącznie z XUL-em).

+

Ważnym jest by pamiętać, że różne strony (lub nawet różne instancje wewnątrz tej samej strony) odpowiadają różnym dokumentom. Każde okno XUL-a posiada swój własny dokument, a nawet kilka różnych dokumentów w jednym oknie, gdyż są tam elementy jak <iframe>, <browser> lub <tabbrowser>. Musisz być pewny, że zawsze manipulujesz odpowiednim dokumentem (więcej możesz dowiedzieć się z Working with windows in chrome code). Jeśli twój skrypt jest załączany za pomocą znacznika <script>, wtedy własność document odnosi się do dokumentu DOM zawierającego tenże skrypt.

+

Przykłady: Zastosowanie metod języka DOM

+

Poniższa sekcja pokazuje użycie metod DOM: appendChild(), createElement(), insertBefore() oraz removeChild().

+

Usuwanie wszystkich potomków elementów

+

Przykład usuwa wszystkich potomków elementu z aktualnego dokumentu posiadających id "someElement" przez wywołanie metody removeChild() w celu usunięcia pierwszego potomka, aż do momentu, gdy nie pozostanie więcej potomków.

+

Zauważ, że hasChildNodes() i firstChild są również częścią API DOM.

+
var element = document.getElementById("someElement");
+while(element.hasChildNodes())
+  element.removeChild(element.firstChild);
+
+

Dodawanie pozycji menu

+

Przykład dodaje dwa nowe elementy do <menupopup>: po jednym na początek oraz koniec. Używa metody document.createElementNS() do stworzenia elementów, a następnie insertBefore() oraz appendChild() do włączenia stworzonych elementów do dokumentu.

+

Uwaga:

+ +
function createMenuItem(aLabel) {
+  const XUL_NS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
+  var item = document.createElementNS(XUL_NS, "menuitem"); // stwórz nowy element XUL menu
+  item.setAttribute("label", aLabel);
+  return item;
+}
+var popup = document.getElementById("myPopup"); // element <menupopup>
+var first = createMenuItem("Pierwsza pozycja");
+var last = createMenuItem("Ostatnia pozycja");
+popup.insertBefore(first, popup.firstChild);
+popup.appendChild(last);
+
+

Możesz użyć metod appendChild() i insertBefore() również do przesuwania istniejących elementów. Przykładowo możesz przenieść element nazwany "Pierwsza pozycja" na koniec menu poprzez dodanie poniższej linii na koniec kodu przedstawionego powyżej:

+
popup.appendChild(first);
+
+

Komenda usunie węzeł z aktualnej pozycji i doda go na końcu menu.

+

Anonimowa treść (XBL)

+

XBL jest językiem używanym przez Mozillę do definiowania nowych interfejsów. Nowe interfejsy zdefiniowane przez XBL mogą określić pewną treść, wbudowaną do ograniczonego elementu, w przypadku gdy wiązanie jest dołączone. W tym przypadku nazywa się to + + treścią anonimową + , która nie jest dostępna za pomocą normalnych metod DOM.

+

Należy wtedy używać metod interfejsu nsIDOMDocumentXBL. Przykładowo:

+
// pobiera pierwszego potomka danego węzła
+document.getAnonymousNodes(node)[0];
+
+// zwraca NodeList elementów anonimowych, których atrybut anonid równa się el1
+document.getAnonymousElementByAttribute(node, "anonid", "el1");
+
+

Patrz również getAnonymousNodes oraz getAnonymousElementByAttribute.

+

Po otrzymaniu anonimowego węzła możesz używać normalnych metod DOM do nawigacji oraz manipulowania resztą węzłów tegoż wiązania.

+

Zobacz również

+ diff --git a/files/pl/dziesiec_lat_mdn/index.html b/files/pl/dziesiec_lat_mdn/index.html new file mode 100644 index 0000000000..c802ba1a07 --- /dev/null +++ b/files/pl/dziesiec_lat_mdn/index.html @@ -0,0 +1,43 @@ +--- +title: 10 lat MDN +slug: dziesiec_lat_mdn +tags: + - História + - Internet + - MDN + - Mozilla + - Społeczność +translation_of: MDN_at_ten +--- + + +
+
+

Historia MDN

+ +

Na początku 2005 roku mały zespół idealistów postanowił stworzyć nowe, darmowe, prowadzone przez społeczność źródło zasobów dla wszystkich Web developerów. Ich genialny ale niecodzienny pomysł przerodził się w dzisiejsze Mozilla Developer Network — główne źródło zasobów dla otwartych technologii Internetowych. Po dziesięciu latach nasza globalna społeczność jest większa niż kiedykolwiek i nadal wspólnie tworzymy dokumentacje, próbki kodu i materiały szkoleniowe dla wszystkich otwartych technologii włączając w to CSS, HTML, JavaScript i wszystkich innych, które sprawiają, że otwarty Internet jest tak potężny jak teraz.

+ +

Dowiedz się więcej about the history

+ + +

Pomóż rozwijać MDN

+ +

Przez dziesięć lat społeczność MDN zajmowała się dokumentowaniem otwartego Internetu. Od poprawiania literówek po dokumentowanie nowych API. Każdy ma coś do zaoferowania, żaden wkład nie jest zbyt mały ani zbyt duży. Posiadamy ponad 90,000 stron treści które zostały napisane i przetłumaczone przez członków wybitnej społeczności Mozillianów. Ty też możesz stać się jednym z nich.

+ +

Dowiedz się więcej about contributing

+ +

 

+ +

 

+
+ +
{{TenthCampaignQuote}}
+ +

Nawigacja

+ +
    +
  1. 10 lat MDN
  2. +
  3. Historia MDN
  4. +
  5. Pomóż rozwijać MDN
  6. +
+
diff --git a/files/pl/e4x/index.html b/files/pl/e4x/index.html new file mode 100644 index 0000000000..00855ac487 --- /dev/null +++ b/files/pl/e4x/index.html @@ -0,0 +1,39 @@ +--- +title: E4X +slug: E4X +tags: + - E4X + - JavaScript + - Wszystkie_kategorie +translation_of: Archive/Web/E4X +--- +

+ECMAScript dla XML-a (E4X) jest rozszerzeniem języka programowania, które dodaje natywną obsługę XML-a do JavaScript-u poprzez dodanie dostępu do dokumentu XML w formie wygodnej dla programistów ECMAScript. Celem jest dostarczenie alternatywnej składni, prostszej do operowania na dokumentach XML niż przez interfejsy DOM. +

E4X jest standaryzowane przez Ecma International w standardzie ECMA-357 (aktualnie jego drugiej edycji z grudnia 2005). +

E4X jest zaimplementowane (przynajmniej częściowo) w SpiderMonkey (silnik JavaScriptu w Gecko) oraz w Rhino (silnik JavaScriptu napisany w Javie). +

+
Uwaga: W przeglądarkach opartych o Gecko 1.8, jak np. Firefoksie 1.5, E4X jest częściowo włączony dla autorów stron internetowych. Aby w pełni korzystać z E4X, element <script> musi posiadać typ MIME "text/javascript;e4x=1" (tzn. posiadać atrybut type="text/javascript;e4x=1"). Różnicą pomiędzy tymi dwoma trybami jest to, że bez typu MIME "e4x=1" dowolny, będący na poziomie instrukcji literał komentarza XML/HTML (<!--...-->) jest ignorowany dla kompatybilności wstecznej za pomocą sztuczki z ukrywaniem komentarza, a sekcje (<![CDATA{{ mediawiki.external('...') }}]>) nie są parsowane jako literały CDATA (co prowadziło do błędu składni JS w kodzie HTML, ponieważ element <script> tworzy ukrytą sekcję CDATA i w związku z tym nie może w sposób bezpośredni zawierać sekcji CDATA). +

someone verify the above +

+
+

Znane błędy i ograniczenia

+ +

Sposoby obejścia: +

+
var response = xmlhttprequest.responseText; // błąd 270553
+response = response.replace('<?xml version="1.0"?>', ""); // błąd 336551
+var e4x = new XML(response);
+
+

Zasoby

+ +
+
+{{ languages( { "en": "en/E4X", "es": "es/E4X", "fr": "fr/E4X", "it": "it/E4X", "ja": "ja/E4X", "ko": "ko/E4X" } ) }} diff --git "a/files/pl/firefox_-_potrzeba_wolno\305\233ci/index.html" "b/files/pl/firefox_-_potrzeba_wolno\305\233ci/index.html" new file mode 100644 index 0000000000..9cf6dddce2 --- /dev/null +++ "b/files/pl/firefox_-_potrzeba_wolno\305\233ci/index.html" @@ -0,0 +1,21 @@ +--- +title: Firefox - potrzeba wolności +slug: Firefox_-_potrzeba_wolności +tags: + - Prezentacje + - Wszystkie_kategorie +--- +

+

+

Prezentacja

+ +

Podsumowanie

+

Ta prezentacja, przygotowana na potrzeby konferencji Wolne Oprogramowanie w Administracji Publicznej, tłumaczy potrzebę korzystania z wolnych standardów jako wymogu dobrze zaplanowanego zamówienia publicznego lub przetargu na system informatyczny. +Opisuje wykorzystanie krytycznie ważnych aplikacji użytkownika, takich jak przeglądarka internetowa, klient poczty czy komunikator i rolę jaką w ich rozwoju odgrywa wolne oprogramowanie. +Na przykładzie rynku przeglądarek i roli jaką odgrywa Firefox, autor pokazuje ukryte koszty i problemy jakie są zagrożeniem dla każdego projektu rozwijanego na bazie standardów własnościowych. +

+

Pytania i dyskusja

+

"Firefox_-_potrzeba_wolności" - Dyskusja +

diff --git "a/files/pl/firefox_3_dla_programist\303\263w/index.html" "b/files/pl/firefox_3_dla_programist\303\263w/index.html" new file mode 100644 index 0000000000..80ffaf8dba --- /dev/null +++ "b/files/pl/firefox_3_dla_programist\303\263w/index.html" @@ -0,0 +1,279 @@ +--- +title: Firefox 3 dla programistów +slug: Firefox_3_dla_programistów +tags: + - Firefox 3 +--- +

Jeżeli jesteś programistą chcącym opanować nowe możliwości Firefoksa 3, strona ta jest idealnym punktem startowym — znajdziesz tu listę artykułów opisujących nowości wprowadzone w przeglądarce. Choć nie wymieniono tu wszystkich zmian, wspomniane są wszystkie najważniejsze wprowadzone poprawki.

+ +

Nowe możliwości dla programistów w Firefoksie 3

+ +

Dla programistów stron i aplikacji internetowych

+ +
+
Aktualizacja aplikacji internetowych dla Firefoksa 3
+
Artykuł zawiera informacje o zmianach, których wprowadzenie może się okazać niezbędne, aby w witrynie lub aplikacji internetowej można było w pełni wykorzystać nowe funkcje Firefoksa 3.
+
+ +
+
Zdarzenia online i offline
+
Program Firefox 3 obsługuje określone w specyfikacji WHATWG zdarzenia online i offline, które umożliwiają aplikacjom i rozszerzeniom wykrycie, czy dostępne jest aktywne połączenie z Internetem, a także stwierdzenie przerwania lub wznowienia tego połączenia.
+
+ +
+
Obsługa protokołów przez aplikacje WWW
+
Aplikacje internetowe można teraz zarejestrować jako funkcje obsługi protokołów, korzystając z metody navigator.registerProtocolHandler().
+
+ +
+
Rysowanie tekstu przy użyciu canvas
+
Możliwe jest rysowanie tekstu w elemencie canvas za pomocą niestandardowego interfejsu API obsługiwanego przez program Firefox 3.
+
+ +
+
Obsługa transformacji w elemencie canvas
+
Firefox obsługuje teraz metody transform() i setTransform() elementu canvas.
+
+ +
+
Zastosowanie mikroformatów
+
W Firefoksie 3 dostępny jest teraz interfejs API do pracy z mikroformatami.
+
+ +
+
Zdarzenia przeciągania i upuszczania
+
Program Firefox 3 obsługuje nowe zdarzenia wysyłane do węzła źródłowego podczas operacji przeciągania (przy rozpoczęciu i zakończeniu przeciągania).
+
+ +
+
Zarządzanie fokusem w HTML
+
Obsługiwane są atrybuty activeElement i hasFocus zdefiniowane w specyfikacji HTML 5.
+
+ +
+
Zasoby offline w Firefoksie
+
Aplikacje internetowe mogą teraz przechowywać zasoby w pamięci podręcznej programu Firefox, co pozwala na korzystanie z tych aplikacji w trybie offline.
+
+ +
+
Poprawki CSS w Firefoksie 3
+
W programie Firefox 3 wprowadzono wiele udoskonaleń w obsłudze arkuszy stylów CSS.
+
+ +
+
Poprawki DOM w Firefoksie 3
+
W programie Firefox 3 obsługiwanych jest wiele nowych funkcji DOM, w tym niektóre rozszerzenia DOM dostępne w przeglądarce Internet Explorer.
+
+ +
+
Obsługa JavaScript 1.8
+
W programie Firefox 3 wprowadzono obsługę języka JavaScript w wersji 1.8.
+
+ +
+
Obsługa EXSLT
+
W programie Firefox 3 obsługiwana jest znaczna część pakietów EXSLT, stanowiących rozszerzenia języka XSLT.
+
+ +
+
Poprawki SVG w Firefoksie 3
+
Obsługa formatu SVG w Firefoksie 3 została w znacznym stopniu zaktualizowana — dostępnych jest między innymi ponad dwadzieścia nowych filtrów, a także nowe elementy i atrybuty.
+
+ +
+
Animowane grafiki PNG
+
Firefox 3 obsługuje format animowanych obrazków PNG (APNG).
+
+ +

Dla programistów XUL i rozszerzeń

+ +
Znaczące zmiany i udoskonalenia
+ +
+
Aktualizacja rozszerzeń dla Firefoksa 3
+
Przewodnik zawierający wszelkie potrzebne informacje dotyczące aktualizacji rozszerzenia w celu dostosowania go do Firefoksa 3.
+
+ +
+
Poprawki XUL w Firefoksie 3
+
W programie Firefox 3 dostępnych jest wiele nowych elementów XUL, w tym suwaki do skalowania, okienka z kalendarzami umożliwiającymi ustawianie daty i godziny oraz przyciski strzałek służące do zwiększania i zmniejszania wprowadzonej wartości.
+
+ +
+
Szablony w Firefoksie 3
+
Szablony zostały znacząco ulepszone. Kluczowe udoskonalenie polega na możliwości zastosowania własnych procesorów zapytań, co pozwala na korzystanie ze źródeł danych innych niż RDF.
+
+ +
+
Bezpieczne aktualizacje
+
Aby uaktualnianie dodatków było bardziej bezpieczne, wszystkie instalowane dodatki muszą obsługiwać bezpieczną metodę pobierania aktualizacji. Dodatki udostępniane w witrynie addons.mozilla.org są wyposażone w tę funkcjonalność automatycznie. Wszystkie zainstalowane dodatki, które nie obsługuję bezpiecznej metody aktualizacji, zostaną automatycznie wyłączone po dokonaniu uaktualnienia do programu Firefox 3. Program Firefox będzie jednak nadal sprawdzał dostępność aktualizacji tych rozszerzeń (korzystając z niezabezpieczonej metody) i podejmował próbę ich zainstalowania (przy czym instalacja nie powiedzie się, jeżeli pobierana aktualizacja nie będzie obsługiwać bezpiecznej metody aktualizacji).
+
+ +
+
Miejsca: przewodnik dla przeprowadzających migrację
+
Artykuł dotyczący aktualizacji istniejących rozszerzeń w celu przystosowania ich do interfejsu API Miejsc.
+
+ +
+
Poprawki Menedżera pobierania plików w Firefoksie 3
+
W Menedżerze pobierania plików programu Firefox 3 wprowadzono nowe i udoskonalono istniejące interfejsy API, w tym obsługę wielu funkcji sprawdzających postęp pobierania.
+
+ +
+
Zastosowanie interfejsu nsILoginManager
+
Menedżer haseł został zastąpiony nowym Menedżerem logowania.
+
+ +
+
Zagnieżdżanie wiązań XBL
+
Za pomocą schematu URL data: możliwe jest teraz bezpośrednie zagnieżdżanie wiązań XBL zamiast przechowywania ich w osobnych plikach XML.
+
+ +
+
Lokalizacja opisu rozszerzenia
+
W programie Firefox 3 dostępna jest nowa metoda lokalizacji metadanych dodatków. Zlokalizowane wersje tych danych dostępne są zaraz po pobraniu dodatku, jak również w razie wyłączenia go.
+
+ +
+
Lokalizacja i liczba mnoga
+
W programie Firefox 3 dodano nowy moduł PluralForm, wspomagający prawidłowe tworzenie form liczby mnogiej słów w wielu wersjach językowych.
+
+ +
+
Zmiany w motywie Firefoksa 3
+
Informacje i notatki dla osób tworzących motywy dla Firefoksa 3.
+
+ +
+
Motywy i Firefox 3
+
Uwagi i informacje dla osób chcących tworzyć motywy dla Firefoksa 3.
+
+ +
Nowe składniki i funkcje
+ +
+
Biblioteka FUEL
+
Biblioteka FUEL zwiększa produktywność programistów rozszerzeń dzięki zmniejszeniu niedogodności wynikających z formalnego charakteru modelu XPCOM oraz wprowadzeniu niektórych nowoczesnych sposobów zastosowania języka JavaScript.
+
+ +
+
Miejsca
+
API historii i zakładek zostało całkowicie zastąpione nowym API Miejsc.
+
+ +
+
Usługa stanu bezczynności
+
W programie Firefox 3 dostępny jest nowy interfejs {{ Interface("nsIIdleService") }}, za pomocą którego można określić upływ czasu od ostatniego naciśnięcia klawisza lub przesunięcia kursora myszy przez użytkownika.
+
+ +
+
Kreator archiwów ZIP
+
Nowy interfejs {{ Interface("nsIZipWriter") }} umożliwia tworzenie archiwów ZIP przez rozszerzenia.
+
+ +
+
Powiększanie całych stron
+
Obsługa programu Firefox 3 jest łatwiejsza dzięki możliwości powiększania całych stron, a nie jedynie tekstu.
+
+ +
+
Korzystanie z cyklicznego mechanizmu zbierania w XPCOM
+
W kodzie XPCOM można teraz korzystać z cyklicznego mechanizmu zbierania, który zwalnia nieużywaną pamięć, nie dopuszczając do jej wyciekania.
+
+ +
+
Menedżer wątków
+
W programie Firefox 3 dostępny jest nowy interfejs {{ Interface("nsIThreadManager") }}, a także nowe interfejsy wątków i zdarzeń związanych z wątkami, które stanowią łatwą metodę tworzenia wątków i zarządzania nimi.
+
+ +
+
Moduły JavaScript
+
W programie Firefox 3 dostępny jest nowy mechanizm udostępniania modułów kodu, umożliwiający tworzenie modułów JavaScript, które mogą być następnie ładowane przez rozszerzenia i aplikacje (podobnie jak współużytkowanie biblioteki).
+
+ +
+
Interfejs nsIJSON
+
W programie Firefox 3 dostępny jest nowy interfejs {{ Interface("nsIJSON") }}, umożliwiający wysoko wydajne kodowanie i dekodowanie ciągów znaków w formacie JSON.
+
+ +
+
Zastosowanie preferencji dotyczących treści
+
W programie Firefox 3 dodano nową usługę umożliwiającą pobieranie i ustawianie preferencji dotyczących określonych stron. Dane te mogą zostać wykorzystane w rozszerzeniach (a także w głównym kodzie) w celu śledzenia preferencji użytkownika dotyczących poszczególnych stron.
+
+ +
+
Monitorowanie wtyczek
+
Nowy komponent systemu wtyczek może teraz obliczać ile zajmuje każdej z wtyczek (n.p., Macromedia Flash) wykonanie swoich wywołań.
+
+ +
Poprawione błędy
+ +
+
Istotne błędy poprawione w Firefoksie 3
+
Artykuł zawiera informacje o błędach, które zostały poprawione w Firefoksie 3.
+
+ +

Nowe cechy istotne dla użytkowników końcowych

+ +

Obsługa programu

+ + + +

Bezpieczeństwo i prywatność

+ + + +

Wydajność

+ + + +

Zobacz także

+ + + +
 
+ +

{{ languages( { "en": "en/Firefox_3_for_developers", "es": "es/Firefox_3_para_desarrolladores", "fr": "fr/Firefox_3_pour_les_d\u00e9veloppeurs", "ja": "ja/Firefox_3_for_developers", "ko": "ko/Firefox_3_for_developers", "pt": "pt/Firefox_3_para_desenvolvedores", "zh-tw": "zh_tw/Firefox_3_for_developers" } ) }}

diff --git a/files/pl/fragmenty_kodu/canvas/index.html b/files/pl/fragmenty_kodu/canvas/index.html new file mode 100644 index 0000000000..b2aedad20e --- /dev/null +++ b/files/pl/fragmenty_kodu/canvas/index.html @@ -0,0 +1,50 @@ +--- +title: Canvas +slug: Fragmenty_kodu/Canvas +tags: + - HTML + - 'HTML:Canvas' + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets/Canvas +--- +

+

Ogólne informacje o używaniu <canvas> znajdują się w przewodniku. +

+

Zapisywanie obrazu canvas do pliku

+

Poniższa funkcja akceptuje obiekt canvas i ścieżkę pliku docelowego. Canvas jest konwertowany do pliku PNG i jest zapisywany do określonej lokalizacji. Funkcja wyświetla okno procesu pobierania plików, lecz okno może być usunięte. +

+
function saveCanvas(canvas, destFile) {
+  // konwertuje łańcuch znaków ścieżki pliku string do nsIFile
+  var file = Components.classes["@mozilla.org/file/local;1"]
+                       .createInstance(Components.interfaces.nsILocalFile);
+  file.initWithPath(destFile);
+
+  // stwórz adres url danych z canvas, a następnie stwórz URI źródła i celu
+  var io = Components.classes["@mozilla.org/network/io-service;1"]
+                     .getService(Components.interfaces.nsIIOService);
+  var source = io.newURI(canvas.toDataURL("image/png", ""), "UTF8", null);
+  var target = io.newFileURI(file)
+
+  // przygotuj do zapisu dane
+  var persist = Components.classes["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"]
+                          .createInstance(Components.interfaces.nsIWebBrowserPersist);
+
+  persist.persistFlags = Components.interfaces.nsIWebBrowserPersist.PERSIST_FLAGS_REPLACE_EXISTING_FILES;
+  persist.persistFlags |= Components.interfaces.nsIWebBrowserPersist.PERSIST_FLAGS_AUTODETECT_APPLY_CONVERSION;
+
+  // wyświetl dialog pobierania pliku (usuń poniższe 3 linie, by go pominać)
+  var xfer = Components.classes["@mozilla.org/transfer;1"]
+                       .createInstance(Components.interfaces.nsITransfer);
+  xfer.init(source, target, "", null, null, null, persist);
+  persist.progressListener = xfer;
+
+  // zapisz dane canvas do pliku
+  persist.saveURI(source, null, null, null, null, file);
+}
+
+


+


+

+
+
+{{ languages( { "en": "en/Code_snippets/Canvas", "fr": "fr/Extraits_de_code/Canvas", "ja": "ja/Code_snippets/Canvas" } ) }} diff --git a/files/pl/fragmenty_kodu/ciasteczka/index.html b/files/pl/fragmenty_kodu/ciasteczka/index.html new file mode 100644 index 0000000000..d606095f45 --- /dev/null +++ b/files/pl/fragmenty_kodu/ciasteczka/index.html @@ -0,0 +1,35 @@ +--- +title: Ciasteczka +slug: Fragmenty_kodu/Ciasteczka +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets/Cookies +--- +

+

+

Odczytywanie istniejących ciasteczek

+
var ios = Components.classes["@mozilla.org/network/io-service;1"]
+            .getService(Components.interfaces.nsIIOService);
+var uri = ios.newURI("http://www.google.com/", null, null);
+var cookieSvc =
+   Components.classes["@mozilla.org/cookieService;1"]
+             .getService(Components.interfaces.nsICookieService);
+var cookie = cookieSvc.getCookieString(uri, null);
+
+

Uwaga: Ciasteczka, wraz z ich nazwami i wartościami, mogą być iterowane poprzez XPCOM. +

+

Usuwanie wszystkich ciasteczek

+

Poniższy kod demonstruje w jaki sposób usunąć wszystkie ciasteczka z Firefoksa/Seamonkey. +

+
Components.classes["@mozilla.org/cookiemanager;1"]
+          .getService(Components.interfaces.nsICookieManager).removeAll();
+
+

Zobacz także

+ +
+
+{{ languages( { "en": "en/Code_snippets/Cookies", "fr": "fr/Extraits_de_code/Cookies", "ja": "ja/Code_snippets/Cookies" } ) }} diff --git a/files/pl/fragmenty_kodu/index.html b/files/pl/fragmenty_kodu/index.html new file mode 100644 index 0000000000..cb006749e7 --- /dev/null +++ b/files/pl/fragmenty_kodu/index.html @@ -0,0 +1,73 @@ +--- +title: Fragmenty kodu +slug: Fragmenty_kodu +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets +--- +

+

To jest szybka lista użytecznych fragmentów kodu (małe przykłady kodu) dostępna dla programistów rozszerzeń dla rozmaitych aplikacji Mozilli. Wiele z tych przykładów może zostać użyta w aplikacjach XULRunnera, jako faktycznie ten sam kod tak jak ma to miejsce w Mozilla. +

Te przykłady zademonstrują, jak wykonać podstawowe zadania, które nie mogą być natychmiast oczywiste. +

+

Ogólne

+
Kod okna +
Otwieranie i manipulacja oknami +
+
Paski narzędzi +
Kod odpowiadający za pasek narzędzi. +
+
XML +
Kod służący do wklejania, pisania, manipulowania językiem XML. +
+
File I/O +
Kod służący do czytania, pisania i plików przetwarzania. +
+
Okienka dialogowe +
Kod służący do wyświetlenia i przetwarzania pudełek okna dialogowego. +
+
Preferencje +
Kod służący do czytania, pisania i modyfikowania preferencji. +
+
JS XPCOM +
Kod służący do definiowania i wywoływania zwykłych komponentów XPCOM w JavaScript. +
+
Uruchamianie aplikacji +
Kod służący do uruchamiania różnych aplikacji. +
+
<canvas> +
WHAT WG Canvas - podobny kod. +
+
Różne +
Różne użyteczne fragmenty kodu. +
+
HTML do DOM +
Kod służący do parsowania HTML-a do okna DOM za pomocą ukrytego elementu przeglądarki. +
+

Kod zorientowany na przeglądarce

+
Kod przeglądania w kartach (Firefox/SeaMonkey) +
Proste operacje przeglądania w kartach, które jest sercem aplikacji przeglądarek Mozilli. +
+
Ciasteczka +
Czytanie, pisanie, modyfikowanie i usuwanie ciasteczek. +
+
Wczytywanie strony +
Kod służący do wczytywania stron, przeładowywania stron i nasłuchiwania wczytywania stron. +
+
Kod interakcji pomiędzy stronami uprzywilejowanymi i stronami bez przywilejów +
Jak odbywa się komunikacja pomiędzy rozszerzeniami i stronami i vice-versa. +
+
Obserwator pobierania danych +
Przykład obserwatora pobierania w Menedżerze pobierania Firefoksa. +
+

Specyfikacja okna

+
Znajdowanie uchwytów okna (HWND) (Firefox) +
Jak stosować API okna do wywołania szukania różnorodnych rodzajów uchwytów okna Mozilla. Uchwyty okna mogą być stosowane dla celów IPC i dostępności. +
+
Zastosowanie rejestracji okna z XPCOM +
Jak czytać, pisać, modyfikować, usunąć, przeliczyć i przeglądać klucze rejestru i ich wartości. +
+

Odnośniki zewnętrzne

+

Zawartość strony MozillaZine z przykładowym kodem jest pomału przenoszona, co nie znaczy, że nie znajdziecie tam jeszcze wielu użytecznych przykładów. +

{{ languages( { "en": "en/Code_snippets", "fr": "fr/Extraits_de_code", "ja": "ja/Code_snippets", "ko": "ko/Code_snippets" } ) }} diff --git a/files/pl/fragmenty_kodu/js_xpcom/index.html b/files/pl/fragmenty_kodu/js_xpcom/index.html new file mode 100644 index 0000000000..33b1dafcd2 --- /dev/null +++ b/files/pl/fragmenty_kodu/js_xpcom/index.html @@ -0,0 +1,125 @@ +--- +title: JS XPCOM +slug: Fragmenty_kodu/JS_XPCOM +tags: + - Strony_wymagające_dopracowania +translation_of: Archive/Add-ons/Code_snippets/JS_XPCOM +--- +

Na tej stronie znajduje się kilka fragmentów kodu, użytecznych przy tworzeniu z komponentami XPCOM w JavaScript.

+ +

ID kontraktów

+ +

ID kontraktu przyznaje unikalną nazwę dla obiektu XPCOM. ID używane są do tworzenia lub uzyskiwania dostępu do obiektów XPCOM.

+ +

Interfejsy

+ +

Wszystkie obiekty XPCOM implementują jeden lub więcej interfejsów. Interfejs jest, upraszczając, listą stałych i metod, które można wywołać przez obiekt. Przykładem jest nsIFile. Każdy obiekt XPCOM musi posiadać zaimplementowany interfejs nsISupports.

+ +

Uzyskiwanie dostępu do komponentów XPCOM z poziomu JavaScript

+ +

Obiekty XPCOM są tworzone jako nowe instacje (każda oznacza kompletnie nowy obiekt) lub jako usługi (każdy dostęp dotyczy tego samego obiektu, nazywanego singletonem). Od danego obiektu zależy to, czy musisz stworzyć instację czy dostęp poprzez usługę. Chronologicznie, by dostać się do obiektu XPCOM, musisz znać ID kontraktu obiektu oraz interfejs, który chciałbyś na nim użyć.

+ +

Tworzenie instancji komponentu

+ +
var component = Components.classes["@mozilla.org/file/local;1"]
+                          .createInstance(Components.interfaces.nsIFile);
+
+ +

Powyższy kod tworzy nową instację obiektu z ID kontraktu @mozilla.org/file/local;1 i daje ci możliwość wywoływania metody interfejsu nsIFile na ID.

+ +

Otrzymywanie usługi XPCOM

+ +
var preferences = Components.classes["@mozilla.org/preferences-service;1"]
+                            .getService(Components.interfaces.nsIPrefService);
+
+ +

Dzięki temu fragmentowi kodu, możesz wywoływać metody interfejsu nsIPrefService na preferencjach obiektu.

+ +

Otrzymywanie różnych interfejsów jednego komponentu

+ +

Niektóre komponenty posiadają możliwość implementacji więcej niż jednego interfejsu. Czasami JavaScript zna wszystkie wszystkie możliwe dla komponentu interfejsu, ale w większości przypadków będziesz samodzielnie to sprawdzić. Z preferencjami usługi z poprzedniego przykładu, możemy napisać dalej:

+ +
preferences = preferences.QueryInterface(Components.interfaces.nsIPrefBranch2);
+
+ +

Powyższa linijka umożliwia ci używanie metod interfejsu nsIPrefBranch2.

+ +

Implementacja komponentów XPCOM w JavaScript

+ +

Poniżej znajduje się prosty zalążek komponentu XPCOM w JavaScript. W dokładnie takiej kolejności, musisz wykonać następujące kroki:

+ + + +
function ExampleComponent()
+{
+	// Dodaj tutaj inicjację twego komponentu.
+}
+
+ExampleComponent.prototype = {
+QueryInterface: function(iid)
+{
+	if (iid.equals(Components.interfaces.myInterface)
+		|| iid.equals(Ci.nsISupports))
+	{
+		return this;
+	}
+	else
+	{
+		throw Components.results.NS_ERROR_NO_INTERFACE;
+	}
+}
+};
+
+var initModule =
+{
+	ServiceCID: Components.ID("{examplee-xamp-leex-ampl-eexampleexam}"),  // Insert a guid in the quotes
+	ServiceContractID: "@example.com/example;1",                          // W cudzysłowiach wpisz ID kontraktu
+	ServiceName: "",                                                      // W cudzysłowiach wpisz nazwę
+
+	registerSelf: function (compMgr, fileSpec, location, type)
+	{
+		compMgr = compMgr.QueryInterface(Ci.nsIComponentRegistrar);
+		compMgr.registerFactoryLocation(this.ServiceCID,this.ServiceName,this.ServiceContractID,
+			fileSpec,location,type);
+	},
+
+	unregisterSelf: function (compMgr, fileSpec, location)
+	{
+		compMgr = compMgr.QueryInterface(Ci.nsIComponentRegistrar);
+		compMgr.unregisterFactoryLocation(this.ServiceCID,fileSpec);
+	},
+
+	getClassObject: function (compMgr, cid, iid)
+	{
+		if (!cid.equals(this.ServiceCID))
+			throw Components.results.NS_ERROR_NO_INTERFACE
+		if (!iid.equals(Components.interfaces.nsIFactory))
+			throw Components.results.NS_ERROR_NOT_IMPLEMENTED;
+		return this.instanceFactory;
+	},
+
+	canUnload: function(compMgr)
+	{
+		return true;
+	},
+
+	instanceFactory:
+	{
+		createInstance: function (outer, iid)
+		{
+			if (outer != null)
+				throw Components.results.NS_ERROR_NO_AGGREGATION;
+			return new ExampleComponent().QueryInterface(iid);
+		}
+	}
+}; //Module
+
+function NSGetModule(compMgr, fileSpec)
+{
+	return initModule;
+}
diff --git a/files/pl/fragmenty_kodu/obserwator_pobierania_danych/index.html b/files/pl/fragmenty_kodu/obserwator_pobierania_danych/index.html new file mode 100644 index 0000000000..980a33c800 --- /dev/null +++ b/files/pl/fragmenty_kodu/obserwator_pobierania_danych/index.html @@ -0,0 +1,59 @@ +--- +title: Obserwator pobierania danych +slug: Fragmenty_kodu/Obserwator_pobierania_danych +translation_of: Archive/Add-ons/Code_snippets/Downloading_Files +--- +

Przykład obserwatora pobierania danych dla menedżera pobierania plików Firefoksa:

+
// ******************************
+// DownloadObserver
+// ******************************
+function sampleDownload_init(){
+  //**** Add download observer
+  var observerService = Components.classes["@mozilla.org/observer-service;1"]
+                                  .getService(Components.interfaces.nsIObserverService);
+  observerService.addObserver(sampleDownloadObserver, "dl-start", false);
+  observerService.addObserver(sampleDownloadObserver, "dl-done", false);
+  observerService.addObserver(sampleDownloadObserver, "dl-cancel", false);
+  observerService.addObserver(sampleDownloadObserver, "dl-failed", false);
+
+  window.addEventListener("unload", function() {
+    observerService.removeObserver(sampleDownloadObserver, "dl-start");
+    observerService.removeObserver(sampleDownloadObserver, "dl-done");
+    observerService.removeObserver(sampleDownloadObserver, "dl-cancel");
+    observerService.removeObserver(sampleDownloadObserver, "dl-failed");
+  }, false);
+}
+var sampleDownloadObserver = {
+  observe: function (subject, topic, state) {
+    var oDownload = subject.QueryInterface(Components.interfaces.nsIDownload);
+    //**** Get Download file object
+    var oFile = null;
+    try{
+      oFile = oDownload.targetFile;  // New firefox 0.9+
+    } catch (e){
+      oFile = oDownload.target;      // Old firefox 0.8
+    }
+    //**** Download Start
+    if (topic == "dl-start"){
+      alert('Start download to - '+oFile.path);
+    }
+    //**** Download Cancel
+    if(topic == "dl-cancel"){
+      alert('Canceled download to - '+oFile.path);
+    }
+    //**** Download Failed
+    else if(topic == "dl-failed"){
+      alert('Failed download to - '+oFile.path);
+    }
+    //**** Download Successs
+    else if(topic == "dl-done"){
+      alert('Done download to - '+oFile.path);
+    }
+  }
+}
+window.addEventListener("load", sampleDownload_init, false);
+
+

 

+
+  
+

{{ languages( { "en": "en/Code_snippets/Downloading_Files", "fr": "fr/Extraits_de_code/Observateur_de_t\u00e9l\u00e9chargement", "ja": "ja/Code_snippets/Download_Observer" } ) }}

diff --git a/files/pl/fragmenty_kodu/okna/index.html b/files/pl/fragmenty_kodu/okna/index.html new file mode 100644 index 0000000000..46e98679a1 --- /dev/null +++ b/files/pl/fragmenty_kodu/okna/index.html @@ -0,0 +1,86 @@ +--- +title: Okna +slug: Fragmenty_kodu/Okna +tags: + - Dodatki + - Rozszerzenia + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets/Windows +--- +
+

Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

+
+ +
{{LegacyAddonsNotice}}
+ +

Otwieranie nowych okien przeglądarki

+ +

Aby otworzyć nowe okno przeglądarki, po prostu użyj window.open(). Jednak window.open() zwraca obiekt Window dla zawartości, nie dla samego okna przeglądarki, powinieneś więc najpierw pobrać Window z chrome. Najprostszym na to sposobem jest użycie nsIWindowMediator.

+ +

Przykład

+ +

 

+ +
window.open();
+var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
+                   .getService(Components.interfaces.nsIWindowMediator);
+var newWindow = wm.getMostRecentWindow("navigator:browser");
+var b = newWindow.getBrowser();
+// dlaczego to robimy? nigdy nie robimy czegokolwiek z |b|
+
+ +

Przesuwalne okna

+ +

Aby uczynić okna przesuwalnymi przez kliknięcie na ich zawartość, możesz użyć procedur obsługi zdarzeń mousedown i mousemove. Poniższy kod nie zważa na to, na który element kliknęliśmy, po prostu odpowiada na wszystkie zdarzenia tego typu. Możesz wzbogacić ten kod przez zaznaczenie zdarzenia. Docelowy element i tylko ustawienie startPos, jeśli ten element pasuje do zadanych kryteriów.

+ +

Przykład

+ +

 

+ +
var startPos=0;
+var mouseDown = function(event) {
+    startPos = [ event.clientX, event.clientY];
+}
+var mouseMove = function(event) {
+   if (startPos != 0) {
+       var newX = event.screenX-startPos[0];
+       var newY = event.screenY-startPos[1];
+       window.moveTo(newX,newY);
+   }
+}
+var mouseUp = function(event) {
+   startPos=0;
+}
+
+window.addEventListener("mousedown",mouseDown, false);
+window.addEventListener("mouseup",mouseUp, false);
+window.addEventListener("mousemove",mouseMove, false);
+
+ +

 

+ +

 

+ +

XUL Titlebar Element

+ +

Aplikacje XUL wykorzystują Titlebar element, aby osiągnąć podobny rezultat bez dodatkowego kodu JavaScript.

+ +

Re-using and focusing named windows

+ +

While specifying the name parameter to window.open or window.openDialog will prevent multiple windows of that name from opening, each call will actually re-initialize the window and thus lose whatever state the user has put it in. Additionally, if the window is in the background, it may not be brought to the front. This code will check for a window of the provided name. If it finds one, it focuses it. If it doesn't, it opens one.

+ +
var windowName = "yourWindowName";
+var windowsMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator);
+var win = windowsMediator.getMostRecentWindow(windowName);
+if (win)
+  win.focus();
+else
+  window.open("chrome://to/your/window.xul", windowName, "features");
+
+ +

Inne źródła

+ + diff --git "a/files/pl/fragmenty_kodu/r\303\263\305\274ne/index.html" "b/files/pl/fragmenty_kodu/r\303\263\305\274ne/index.html" new file mode 100644 index 0000000000..a60d8fedf0 --- /dev/null +++ "b/files/pl/fragmenty_kodu/r\303\263\305\274ne/index.html" @@ -0,0 +1,103 @@ +--- +title: Różne +slug: Fragmenty_kodu/Różne +tags: + - Dodatki + - Rozszerzenia + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets/Miscellaneous +--- +
+

Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

+
+ +

{{LegacyAddonsNotice}} Tutaj znajdują się krótkie, służące do nauki, fragmenty kodu.

+ +

Zapisywanie strony internetowej do pliku

+ +

Poniższy kod nie pyta użytkownika o nazwę pliku, jednak możesz użyć do tego file picker component.

+ +
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
+file.initWithPath("C:\\filename.html");
+var wbp = Components.classes['@mozilla.org/embedding/browser/nsWebBrowserPersist;1']
+  .createInstance(Components.interfaces.nsIWebBrowserPersist);
+wbp.saveDocument(content.document, file, null, null, null, null);
+
+ +

Wykrywanie systemu operacyjnego

+ +
// Zwraca WINNT, gdy jest to Windows XP, 2000, NT
+Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULRuntime).OS;
+
+ +

Lista możliwych odpowiedzi przy używaniu LXR: http://lxr.mozilla.org/mozilla/sourc...nfigure.in#910.

+ +

Wykrywanie głównej aplikacji i jej wersji

+ +
var info = Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULAppInfo);
+// Pobiera nazwę uruchomionej aplikacji
+info.name; // Zwraca "Firefox" dla Firefoksa
+info.version; // Zwraca "2.0.0.1" dla Firefoksa w wersji 2.0.0.1
+
+ +

Odzyskiwanie wersji rozszerzenia jaka jest określona w pliku install.rdf

+ +
var em = Components.classes["@mozilla.org/extensions/manager;1"]
+                   .getService(Components.interfaces.nsIExtensionManager);
+
+// Change extension-guid to the GUID of the extension whose version you want to retrieve;
+// np. foxyproxy@eric.h.jung dla FoxyProxy
+var addon = em.getItemForID("<extension-guid>");
+var version = addon.version;
+
+ +

Kopiowanie ze strumienia wejścia i wyjścia

+ +
// istream jest nsIInputStream i ostream jest nsIOutputStream
+
+// strumień wyjścia potrzebuje buforowania do swojej pracy.
+var bostream = Components.classes["@mozilla.org/network/buffered-output-stream;1"]
+                    .createInstance(Components.interfaces.nsIBufferedOutputStream);
+bostream.init(ostream, 0x8000);
+
+// make a stream pump and a stream listener to read from the input stream for us
+var pump = Components.classes["@mozilla.org/network/input-stream-pump;1"]
+                     .createInstance(Components.interfaces.nsIInputStreamPump);
+pump.init(istream, -1, -1, 0, 0, true);
+
+/* we need our own observer to know when to close the file */
+var observer = {
+  onStartRequest: function(aRequest, aContext) {},
+  onStopRequest: function(aRequest, aContext, aStatusCode) {
+    bostream.close();
+  }
+};
+
+// make a simple stream listener to do the writing to output stream for us
+var listener = Components.classes["@mozilla.org/network/simple-stream-listener;1"]
+                         .createInstance(Components.interfaces.nsISimpleStreamListener);
+listener.init(bostream, observer);
+
+// rozpoczyna kopiowanie
+pump.asyncRead(listener, null);
+
+ +

Ponowne uruchamianie Firefoksa/Thunderbird

+ +
var nsIAppStartup = Components.interfaces.nsIAppStartup;
+Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(nsIAppStartup)
+          .quit(nsIAppStartup.eForceQuit | nsIAppStartup.eRestart);
+
+ +

Symulacja zdarzeń myszy i klawiatury

+ +

Interfejs nsIDOMWindowUtils stanowi metodę pomocy w symulacji zdarzeniami myszy i klawiatury.

+ +

Nowość w Firefoksie 3 / Gecko 1.9

+ +
var req = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor);
+var utils = req.getInterface(Components.interfaces.nsIDOMWindowUtils);
+utils.sendMouseEvent("mousedown", 10, 10, 0, 1, 0);
+utils.sendMouseEvent("mouseup", 10, 10, 0, 1, 0);
+
diff --git a/files/pl/fragmenty_kodu/uruchamianie_aplikacji/index.html b/files/pl/fragmenty_kodu/uruchamianie_aplikacji/index.html new file mode 100644 index 0000000000..ed30742f72 --- /dev/null +++ b/files/pl/fragmenty_kodu/uruchamianie_aplikacji/index.html @@ -0,0 +1,59 @@ +--- +title: Uruchamianie aplikacji +slug: Fragmenty_kodu/Uruchamianie_aplikacji +tags: + - Dodatki + - Rozszerzenia + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets/Running_applications +--- +
+

SupAdded a note about documentation removal as extensions using XUL/XPCOM or the Add-on SDK are no longer supported in Firefox.port for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

+
+ +

{{LegacyAddonsNotice}} Poniższy artykuł opisuje jak uruchamiać inne programy z kodu JavaScriptu używając interfejsów XPCOM Mozilli. Istnieją dwa sposoby na uruchamianie programów. Pierwszy to użycie metody nsILocalFile:launch, a drugi to użycie interfejsu nsIProcess.

+ +

Użycie nsILocalFile.launch()

+ +

Ta metoda posiada taki sam efekt jak podwójne kliknięcie na pliku tak więc dla plików wykonywalnych—zostanie po prostu wykonany dany plik bez parametrów. Może być ona nie dająca się implementować na niektórych platformach tak więc upewnij się, że nie ma to miejsca na twojej platformie docelowej.

+ +

Więcej informacji odnośnie nsIFile/nsILocalFile, uzyskasz w artykule File I/O.

+ +
var file = Components.classes["@mozilla.org/file/local;1"]
+                     .createInstance(Components.interfaces.nsILocalFile);
+file.initWithPath("c:\\myapp.exe");
+file.launch();
+
+ +

Użycie nsIProcess

+ +

Rekomendowane użycie interfejsu nsIProcess:

+ +
// create an nsILocalFile for the executable
+var file = Components.classes["@mozilla.org/file/local;1"]
+                     .createInstance(Components.interfaces.nsILocalFile);
+file.initWithPath("c:\\myapp.exe");
+
+// create an nsIProcess
+var process = Components.classes["@mozilla.org/process/util;1"]
+                        .createInstance(Components.interfaces.nsIProcess);
+process.init(file);
+
+// Run the process.
+// If first param is true, calling thread will be blocked until
+// called process terminates.
+// Second and third params are used to pass command-line arguments
+// to the process.
+var args = ["argument1", "argument2"];
+process.run(false, args, args.length);
+
+ +

Odnośniki

+ + diff --git a/files/pl/fragmenty_kodu/wczytywanie_strony/index.html b/files/pl/fragmenty_kodu/wczytywanie_strony/index.html new file mode 100644 index 0000000000..308e579b35 --- /dev/null +++ b/files/pl/fragmenty_kodu/wczytywanie_strony/index.html @@ -0,0 +1,29 @@ +--- +title: Wczytywanie strony +slug: Fragmenty_kodu/Wczytywanie_strony +tags: + - Strony_wymagające_dopracowania +translation_of: Archive/Add-ons/Code_snippets/Page_Loading +--- +
+

Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

+
+ +

{{LegacyAddonsNotice}}

+ +

Wczytywanie strony

+ +
+
On page load
+
Odczytywanie i wykonywanie kodu podczas wczytywania nowej strony w przeglądarce/programie pocztowym.
+
+ +
+
Progress Listeners
+
Czytniki postępu udostępniają rozszerzenia zawiadamiające o wydarzeniach związanych z ładowaniem w przeglądarce i z przełączaniem kart.
+
+ +
+
Post data to window
+
Kod wysyłający dane to istniejącego lub nowego okna/karty.
+
diff --git a/files/pl/fragmenty_kodu/xml/index.html b/files/pl/fragmenty_kodu/xml/index.html new file mode 100644 index 0000000000..e03eb2f116 --- /dev/null +++ b/files/pl/fragmenty_kodu/xml/index.html @@ -0,0 +1,25 @@ +--- +title: XML +slug: Fragmenty_kodu/XML +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Code_snippets/XML +--- +

+

+ +
+
+{{ languages( { "en": "en/Code_snippets/XML", "fr": "fr/Extraits_de_code/XML", "ja": "ja/Code_snippets/XML" } ) }} diff --git a/files/pl/games/tutorials/2d_breakout_game_pure_javascript/index.html b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/index.html new file mode 100644 index 0000000000..969badb79d --- /dev/null +++ b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/index.html @@ -0,0 +1,58 @@ +--- +title: Gra Breakout 2D w czystym JavaScript +slug: Games/Tutorials/2D_Breakout_game_pure_JavaScript +tags: + - 2D + - Canvas + - Gry + - JavaScript + - Początkujący + - Poradnik +translation_of: Games/Tutorials/2D_Breakout_game_pure_JavaScript +--- +
{{GamesSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/Games")}}
+ +

{{Next("Games/Tutorials/2D_Breakout_game_pure_JavaScript/Stworz_element_Canvas_i_rysuj_na_nim")}}

+ +

W tym poradniku krok po kroku stworzymy prostą grę MDN Breakout napisaną w całości w czystym języku JavaScript oraz renderowaną w elemencie HTML5 {{htmlelement("canvas")}}.

+ +

Każdy krok ma edytowalne, dostępne na żywo próbki do gry, dzięki czemu możesz zobaczyć, jak powinny wyglądać poszczególne etapy pośrednie. Nauczysz się podstaw używania elementu {{htmlelement("canvas")}} do implementowania podstawowych mechanik gry jak renderowanie, przesuwanie grafik, wykrywanie kolizji, mechanizmu sterowania oraz stanu wygrania/przegrania.

+ +

Aby w pełni wykorzystać tę serię artykułów, powinieneś mieć już podstawową lub średnio zaawansowaną wiedzę z zakresu JavaScript. Po zakończeniu tego poradnika powinieneś być w stanie budować swoje własne proste gry Webowe.

+ +

Gameplay screen from the game MDN Breakout where you can use your paddle to bounce the ball and destroy the brick field, with keeping the score and lives.

+ +

Szczegóły lekcji

+ +

Wszystkie lekcje  — oraz poszczególne wersje gry MDN Breakout którą wspólnie tworzymy — są dostępne na GitHubie:

+ +
    +
  1. Stwórz element Canvas i rysuj na nim
  2. +
  3. Move the ball
  4. +
  5. Bounce off the walls
  6. +
  7. Paddle and keyboard controls
  8. +
  9. Game over
  10. +
  11. Build the brick field
  12. +
  13. Collision detection
  14. +
  15. Track the score and win
  16. +
  17. Mouse controls
  18. +
  19. Finishing up
  20. +
+ +

Zaczynanie od nauki czystego języka JavaScript jest najlepszym sposobem aby uzyskać solidną wiedzę na temat tworzenia gier webowych. Później będziesz mógł wybrać i używać dowolnego frameworka najlepiej pasującego do twoich projektów. Jednak frameworki są tylko narzędziami zbudowanymi z wykorzystaniem języka JavaScript; więc jeśli nawet planujesz pracę z ich wykorzystaniem, dobrze jest nauczyć się najpierw języka, aby później wiedzieć co własciwie dzieje się "pod maską". Frameworki przyspieszają czas tworzenia i zajmują się "nudnymi" częściami podczas pisania gry, jeśli jednak coś nie zadziała zgodnie z oczekiwaniami, zawsze możesz zdebugować lub po prostu samemu napisać własne rozwiązanie korzystając z czystego JavaScript.

+ +
+

Uwaga: Jeśli chcesz dowiedzieć się więcej na temat tworzenia gier internetowych 2D za pomocą bibliotek zapoznaj się z odpowiednikiem tej serii 2D breakout game using Phaser.

+
+ +
+

Uwaga: Tę serię artykułów można wykorzystać jako materiał do praktycznych warsztatów poświęconych tworzeniu gier. Możesz także skorzystać z zestawu Gamedev Canvas Content opartego na tym samouczku, jeśli chcesz wygłosić wykład nt. tworzenia gier.

+
+ +

Następne kroki

+ +

Ok zaczynajmy! Przejdź do pierwszego rozdziału — Stwórz element Canvas i rysuj na nim.

+ +

{{Next("Games/Tutorials/2D_Breakout_game_pure_JavaScript/Stworz_element_Canvas_i_rysuj_na_nim")}} 

diff --git a/files/pl/games/tutorials/2d_breakout_game_pure_javascript/odbijanie_od_scian/index.html b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/odbijanie_od_scian/index.html new file mode 100644 index 0000000000..6a50d3a083 --- /dev/null +++ b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/odbijanie_od_scian/index.html @@ -0,0 +1,111 @@ +--- +title: Odbijanie od ścian +slug: Games/Tutorials/2D_Breakout_game_pure_JavaScript/odbijanie_od_scian +tags: + - Animacja + - Canvas + - Grafika + - Gry + - Kurs + - Początkujący + - Przykład + - kolizja + - wykrywanie +translation_of: Games/Tutorials/2D_Breakout_game_pure_JavaScript/Bounce_off_the_walls +--- +
{{GamesSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/Games")}}
+ +

{{PreviousNext("Games/Tutorials/2D_Breakout_game_pure_JavaScript/posusz_pilka", "Games/Workflows/2D_Breakout_game_pure_JavaScript/Paddle_and_keyboard_controls")}}

+ +
+

To jest 3-ci z 10-ciu kroków poradnika Gra Breakout 2D w czystym JavaScript. Możesz zobaczyć kod źródłowy, który otrzymamy po ukończeniu tej lekcji, na Gamedev-Canvas-workshop/lesson3.html.

+
+ +

Widzimy naszą piłkę w ruchu, jednak szybko znika ona poza ekranem gry zanim zdążymy się nią nacieszyć! Aby temu zaradzić, zaimplementujemy bardzo proste wykrywanie kolizji (która szczegółowo zostanie wyjaśniona później) aby sprawić, żeby piłka obijałą się od każdej z czterech ścian canvasa.

+ +

Proste wykrywanie kolizji

+ +

Aby wykryć kolizję, sprawdzimy, czy nasza piłka dotyka (koliduje) ze ścianą, a jeżeli tak, odpowiednio zmienimy jej kierunek ruchu.

+ +

Aby ułatwić sobie obliczenia, zdefiniujmy zmienną o nazwie ballRadius która będzie przechowywała promień rysowanego koła i będzie używana do obliczeń. Dodaj ten fragment do swojego kodu gdzieś poniżej deklaracji poprzednich zmiennych:

+ +
var ballRadius = 10;
+ +

Teraz zaktualizujmy linię w funkcji drawBall(), odpowiedzialną za rysowanie naszej piłki, na taką:

+ +
ctx.arc(x, y, ballRadius, 0, Math.PI*2);
+ +

Odbijanie od góry i od dołu

+ +

Są cztery ściany od których piłka może się odbijać — na początek skupmy się na górnej. W każdej ramce musimy sprawdzić, czy piłka dotyka górnej krawędzi canvasa — jeżeli tak, zmienimy jej ruch tak, aby zaczęła poruszać się w przeciwnym kierunku i przez to pozostała w widocznych granicach. Pamiętając, iż system współrzędnych zaczyna się od górnego lewego narożnika, możemy zastosować takie rozwiązanie:

+ +
if(y + dy < 0) {
+    dy = -dy;
+}
+ +

Jeżeli wartość y pozycji piłki jest mniejsza od zera, zmień kierunek ruchu na osi y ustawiając taką samą wartość, jednak z odwróconym znakiem. Jeżeli piłka porusza się w górę z prędkością 2 pikseli na ramkę, teraz będzie będzie poruszała się "do góry", ale z prędkością  -2 pikseli, co właściwie będzie ruchem do dołu z prędkością 2 pikseli na ramkę.

+ +

Powyższy kod ma rozwiąże problem odbicia od górnej krawędzi, więc teraz pomyślmy o krawędzi dolnej:

+ +
if(y + dy > canvas.height) {
+    dy = -dy;
+}
+ +

Jeżeli pozycja y piłki jest większa od wysokości canvasa, (pamiętaj, że pozycję y liczymy od góry, więc krawędź górna znajduje się na pozycji 0, natomiast dolna krawędź na pozycji  320 pikseli, czyli wysokość canvasa), wtedy odbijmy ją od krawędzi zamieniając kierunek ruchu w osi y jak zrobiliśmy to poprzednio.

+ +

Możemy połączyć te dwie instrukcje w jedną, aby zaoszczędzić na szczegółowości kodu:

+ +
if(y + dy > canvas.height || y + dy < 0) {
+    dy = -dy;
+}
+ +

Jeżeli którykolwiek z warunków będzie równy true, odwróć kierunek ruchu piłki.

+ +

Odbijanie od lewej i prawej

+ +

Mamy już obsługę odbicia od krawędzi górnej i dolnej, więc pomyślmy teraz o krawędziach bocznych. Właściwie kod jest bardzo podobny, więc wszystko co musisz zrobić to powtórzyć go dla x zamiast y:

+ +
if(x + dx > canvas.width || x + dx < 0) {
+    dx = -dx;
+}
+
+if(y + dy > canvas.height || y + dy < 0) {
+    dy = -dy;
+}
+ +

W tym momencie powinieneś wprowadzić powyższy blok kodu do funkcji draw(), tuż przed zamykającym nawiasem klamrowym.

+ +

Piłka znika w ścianie!

+ +

Przetestuj swój kod na tym etapie, powinieneś być pod wrażeniem — mamy już piłkę, która odbija się od wszystkich krawędzi canvasa! Mamy jednak kolejny problem  — kiedy piłka uderza w ścianę, delikatnie się w niej "zatapia" przed zmianą kierunku:

+ +

+ +

To dlatego, że liczymy punkt zderzenia ściany oraz środka piłki, podczas, gdy powinniśmy to robić dla jej obwodu. Piłka powinna odbić się w momencie, kiedy tylko dotknie ściany, a nie kiedy jest w połowie "w ścianie", poprawmy zatem trochę nasze warunki odbicia. Zaktualizuj swój ostatnio dodany kod na ten:

+ +
if(x + dx > canvas.width - ballRadius || x + dx < ballRadius) {
+    dx = -dx;
+}
+if(y + dy > canvas.height - ballRadius || y + dy < ballRadius) {
+    dy = -dy;
+}
+ +

Kiedy odległość pomiędzy środkiem piłki a krawędzią jest dokładnie taka sama, jak promień piłki, zmień kierunek ruchu. Odjęcie wartości średnicy od jednej krawędzi i dodawanie do drugiej da na wrażenie właściwego wykrycia kolizji — piłka odbija się od ścian tak, jak powinna.

+ +

Porównaj swój kod

+ +

Sprawdźmy ostateczny kod dla tej części kursu z tym, co otrzymaliśmy oraz pobawmy się trochę:

+ +

{{JSFiddleEmbed("https://jsfiddle.net/end3r/redj37dc/","","395")}}

+ +
+

Ćwiczenie: spróbuj zmienić kolor piłki na losowy za każdym razem, kiedy ta uderzy w ścianę.

+
+ +

Następne kroki

+ +

Dotarliśmy do momentu, kiedy nasza piłka zarówno porusza się oraz pozostaje na planszy. W czwartym rozdziale nauczymy się w jaki sposób zaimplementować i kontrolować paletkę — zobacz Paletka i sterowanie z klawiatury.

+ +

{{PreviousNext("Games/Tutorials/2D_Breakout_game_pure_JavaScript/posusz_pilka", "Games/Workflows/2D_Breakout_game_pure_JavaScript/Paddle_and_keyboard_controls")}}

diff --git a/files/pl/games/tutorials/2d_breakout_game_pure_javascript/posusz_pilka/index.html b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/posusz_pilka/index.html new file mode 100644 index 0000000000..3d21b5f72e --- /dev/null +++ b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/posusz_pilka/index.html @@ -0,0 +1,147 @@ +--- +title: Porusz piłką +slug: Games/Tutorials/2D_Breakout_game_pure_JavaScript/posusz_pilka +tags: + - 2D + - Canvas + - Gry + - JavaScript + - Początkujący + - Poradnik + - Pętla + - ruch +translation_of: Games/Tutorials/2D_Breakout_game_pure_JavaScript/Move_the_ball +--- +
{{GamesSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/Games")}}
+ +

{{PreviousNext("Games/Tutorials/2D_Breakout_game_pure_JavaScript/Stworz_element_Canvas_i_rysuj_na_nim", "Games/Tutorials/2D_Breakout_game_pure_JavaScript/odbijanie_od_scian")}}

+ +
+

To jest 2-gi z 10-ciu kroków poradnika Gra Breakout 2D w czystym JavaScript. Możesz zobaczyć kod źródłowy, który otrzymamy po ukończeniu tej lekcji, na Gamedev-Canvas-workshop/lesson2.html.

+
+ +

Z poprzedniej części dowiedziałeś się w jaki sposób narysować piłkę, a teraz ją poruszymy. Z technicznego punktu widzenia, będziemy malować piłkę na ekranie, czyścić ten ekran i malować ją ponownie w nieco innej pozycji w każdej klatce aby uzyskać wrażenie ruchu — dokładnie tak, jak uzyskujemy ruch w filmach.

+ +

Definiowanie pętli rysowania

+ +

Aby stale aktualizować rysunek w każdej klatce, musimy zdefiniować funkcję rysowania, która będzie działała w kółko, za każdym razem z różnym zestawem wartości zmiennych aby zmieniać pozycję sprite'a, itd.  Możesz uruchomiać funkcję w kółko używając wbudowanych w JavaScript funkcji takich, jak  {{domxref("WindowTimers.setInterval()", "setInterval()")}} lub {{domxref("window.requestAnimationFrame()", "requestAnimationFrame()")}}.

+ +

Usuń cały poprzedni kod JavaScript który miałeś dotychczas w swoim pliku HTML z wyjątkiem pierwszych dwóch linijek oraz dodaj pod nimi poniższy kod. Funkcja draw() będzie wykonywana w środku setInterval co 10 milisekund:

+ +
function draw() {
+    // kod rysowania
+}
+setInterval(draw, 10);
+ +

Dzięki wykorzystaniu setInterval, funkcja draw() będzie wywoływana co 10 milisekund bez przerwy, lub do czasu, kiedy ją zatrzymamy. Narysujmy więc teraz piłkę — dodaj ten kod do swojej funkcji draw():

+ +
ctx.beginPath();
+ctx.arc(50, 50, 10, 0, Math.PI*2);
+ctx.fillStyle = "#0095DD";
+ctx.fill();
+ctx.closePath();
+
+ +

Wypróbuj swój kod — piłka powinna być przerysowywana przy każdej klatce.

+ +

Poruszmy piłkę

+ +

W tym momencie nie będziesz w stanie zauważyć, że piłka stale jest przerysowywana, jako że nie zmienia swojej pozycji. Zmieńmy więc to. Po pierwsze, zamiast wpisanej na stałe pozycji (50,50), ustalmy punkt początkowy w dolnej środkowej części Canvas za pomocą zmiennych o nazwach xy, a następnie użyjemy tych zmiennych do zdefiniowania pozycji na której będzie rysowana nasza piłka.

+ +

Najpierw dodaj poniższe dwie linie kodu nad twoją funkcją draw() aby zdefiniować x i y:

+ +
var x = canvas.width/2;
+var y = canvas.height-30;
+
+ +

Następnie zmień swoją funkcję draw() tak, aby używała zmiennych x i y w metodzie {{domxref("CanvasRenderingContext2D.arc()","arc()")}} tak, jak zaznaczyliśmy to w poniższej linijce:

+ +
function draw() {
+    ctx.beginPath();
+    ctx.arc(x, y, 10, 0, Math.PI*2);
+    ctx.fillStyle = "#0095DD";
+    ctx.fill();
+    ctx.closePath();
+}
+
+ +

Teraz czas na najważniejszą część: po narysowaniu każdej ramki, będziemy dodawać niewielkie wartości do zmiennych x oraz y aby wyglądało na to, że nasza piłka się porusza. Zdefiniujmy te małe wartości jako dx i dy oraz przypiszmy do nich wartości kolejno 2 oraz -2. Dodaj ten kod poniżej definicji zmiennych x i y:

+ +
var dx = 2;
+var dy = -2;
+
+ +

Ostatnią rzeczą do zrobienia jest zaktualizowanie x i y o wartości zmiennych dxdy w każdej ramce, dzięki czemu piłka będzie rysowana w nowej pozycji przy każdym odświeżeniu. Dodaj dwie, poniżej zaznaczone, linie do swojej funkcji draw():

+ +
function draw() {
+    ctx.beginPath();
+    ctx.arc(x, y, 10, 0, Math.PI*2);
+    ctx.fillStyle = "#0095DD";
+    ctx.fill();
+    ctx.closePath();
+    x += dx;
+    y += dy;
+}
+ +

Zapisz ponownie kod i wypróbuj go w przeglądarce. Działa ok, jednak zdaje się, że piłka zostawia za sobą ślad:

+ +

+ +

Czyszczenie canvas przed każdą ramką

+ +

Piłka pozostawia ślad, ponieważ za każdym razem rysujemy nowe koło jednak bez usunięcia poprzedniego. Nie martw się, ponieważ dostępna jest metoda do czyszczenia całej zawartości canvas: {{domxref("CanvasRenderingContext2D.clearRect()","clearRect()")}}. Przekazujemy do niej cztery parametry: pozycję x i y górnego lewego narożnika oraz pozycję x i y dolnego prawego narożnika prostokąta. Cała powierzchnia pokryta przez ten prostokąt zostanie wyczyszczona ze wszystkich wcześniej namalowanych tam elementów.

+ +

Dodaj podświetloną linie do funkcji draw():

+ +
function draw() {
+    ctx.clearRect(0, 0, canvas.width, canvas.height);
+    ctx.beginPath();
+    ctx.arc(x, y, 10, 0, Math.PI*2);
+    ctx.fillStyle = "#0095DD";
+    ctx.fill();
+    ctx.closePath();
+    x += dx;
+    y += dy;
+}
+
+ +

Zapisz kod i uruchom go jeszcze raz. Tym razem zobaczysz poruszają się piłkę bez żadnego śladu. Co 10 millisekund canvas jest czyszczony, niebieskie koło (nasza piłka) jest rysowana na podanych współrzędnych x i y po czym ich wartości są aktualizowane.

+ +

Oczyszczanie naszego kodu

+ +

Do naszej funkcji draw() będziemy dodawać coraz więcej i więcej poleceń w następnych krokach, więc dobrze jest utrzymać ją jak najbardziej przejrzystą i czytelną. Zacznijmy więc od przeniesienia kodu odpowiedzialnego za rysowanie piłki do osobnej funkcji.

+ +

Zastąp naszą funkcję draw() poniższymi dwiema funkcjami:

+ +
function drawBall() {
+    ctx.beginPath();
+    ctx.arc(x, y, 10, 0, Math.PI*2);
+    ctx.fillStyle = "#0095DD";
+    ctx.fill();
+    ctx.closePath();
+}
+
+function draw() {
+    ctx.clearRect(0, 0, canvas.width, canvas.height);
+    drawBall();
+    x += dx;
+    y += dy;
+}
+ +

Porównaj swój kod

+ +

Możesz porównać kod z tego etapu ze swoim kodem w poniższym podglądem na żywo, oraz spróbować pobawić się nim, aby lepiej zrozumieć jak to działa:

+ +

{{JSFiddleEmbed("https://jsfiddle.net/end3r/3x5foxb1/","","395")}}

+ +
+

Ćwiczenie: spróbuj zmienić prędkość i kierunek pooruszania się piłki.

+
+ +

Następne kroki

+ +

Narysowaliśmy naszą piłkę i nadaliśmy jej ruch, jednak znika ona poza krawędzią canvasa. W rozdziale trzecim odkryjemy w jaki sposób spraić, aby odbijała się od ścian.

+ +

{{PreviousNext("Games/Tutorials/2D_Breakout_game_pure_JavaScript/Stworz_element_Canvas_i_rysuj_na_nim", "Games/Tutorials/2D_Breakout_game_pure_JavaScript/odbijanie_od_scian")}}

diff --git a/files/pl/games/tutorials/2d_breakout_game_pure_javascript/stworz_element_canvas_i_rysuj_na_nim/index.html b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/stworz_element_canvas_i_rysuj_na_nim/index.html new file mode 100644 index 0000000000..72e920c9a8 --- /dev/null +++ b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/stworz_element_canvas_i_rysuj_na_nim/index.html @@ -0,0 +1,118 @@ +--- +title: Stwórz element Canvas i rysuj na nim +slug: >- + Games/Tutorials/2D_Breakout_game_pure_JavaScript/Stworz_element_Canvas_i_rysuj_na_nim +tags: + - 2D + - Canvas + - Gry + - HTML + - JavaScript + - Początkujący + - Poradnik +translation_of: >- + Games/Tutorials/2D_Breakout_game_pure_JavaScript/Create_the_Canvas_and_draw_on_it +--- +
{{GamesSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/Games")}}
+ +

{{PreviousNext("Games/Tutorials/2D_Breakout_game_pure_JavaScript", "Games/Tutorials/2D_Breakout_game_pure_JavaScript/posusz_pilka")}}

+ +
+

To jest 1-wszy z 10-ciu kroków poradnika Gamedev Canvas tutorial. Możesz zobaczyć kod źródłowy, który otrzymamy po ukończeniu tej lekcji, na Gamedev-Canvas-workshop/lesson1.html.

+
+ +

Zanim zaczniemy pisać funkcjonalność gry, musimy stworzyć podstawową strukturę, w której będziemy renderować grę. Strukturę utworzymy przy wykorzystaniu języka HTML oraz elementu {{htmlelement("canvas")}}.

+ +

Struktura HTML gry

+ +

Struktura dokumentu HTML jest dosyć prosta ze względu na fakt, że całość gry będzie renderowana w elemencie {{htmlelement("canvas")}}. Korzystając ze swojego ulubionego edytora utwórz nowy dokument HTML i zapisz go jako index.html, oraz dodaj do niego poniższy fragment kodu:

+ +
<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8" />
+    <title>Gamedev Canvas Workshop</title>
+    <style>
+    	* { padding: 0; margin: 0; }
+    	canvas { background: #eee; display: block; margin: 0 auto; }
+    </style>
+</head>
+<body>
+
+<canvas id="myCanvas" width="480" height="320"></canvas>
+
+<script>
+	// Tutaj będzie kod JavaScript
+</script>
+
+</body>
+</html>
+
+ +

Zdefiniowaliśmy charset , {{htmlelement("title")}} oraz podstawowy styl CSS w elemencie header. Body zawiera elementy {{htmlelement("canvas")}} oraz {{htmlelement("script")}} — w pierwszym będziemy renderowali naszą grę, natomiast kod JavaScript który będzię tę grę kontrolował znajdzie w drugim. Element {{htmlelement("canvas")}} ma ustawiony parametr id z wartością myCanvas abyśmy mogli w prosty sposób pobrać odniesienie do niego, a jego wymiary ustawiliśmy na 480 pikseli szerokości oraz 360 pikseli wysokości. Cały kod, który napiszemy w tym poradniku, będzie umieszczony pomiędzy otwierającym tagiem <script> a zamykającym </script>

+ +

Podstawy Canvas

+ +

Aby faktycznie móc renderować grafikę w elemencie {{htmlelement("canvas")}}, najpierw musimy pobrać do niego referencję w JavaScript. Dodaj następujący kod tuż pod tagiem otwierającym <script>.

+ +
var canvas = document.getElementById("myCanvas");
+var ctx = canvas.getContext("2d");
+ +

Najpierw przypisujemy referencję do elementu {{htmlelement("canvas")}} do zmiennej canvas . Następnie tworzymy zmienną ctx do przechowywania kontekstu renderowania 2D — czyli własciwego narzędzia, którego użyjemy do rysowania na elemencie Canvas.

+ +

Zobaczmy przykładowy fragment kodu który narysuje nam czerwony kwadrat. Dodaj poniższy kod pod poprzednimi liniami JavaScript, następnie otwórz swój plik index.html w przeglądarce żeby to sprawdzić.

+ +
ctx.beginPath();
+ctx.rect(20, 40, 50, 50);
+ctx.fillStyle = "#FF0000";
+ctx.fill();
+ctx.closePath();
+ +

Wszystkie instrukcje znajdują się pomiędzy metodami {{domxref("CanvasRenderingContext2D.beginPath()","beginPath()")}} oraz {{domxref("CanvasRenderingContext2D.closePath()","closePath()")}}. Definiujemy prostokąt używając {{domxref("CanvasRenderingContext2D.rect()","rect()")}}: gdzie pierwsze dwie wartości określają współrzędne położenia prostokąta od górnego lewego narożnika, natomiast dwie następne określają jego wysokość i szerokość. W naszym przypadku prostokąt będzie narysowany 20 pikseli od lewej krawędzi oraz 40 pikseli od górnej krawędzi, oraz będzie miał wymiary 50 pikseli szerokości oraz 50 pikseli wysokości, czyli uzyskamy idealny kwadrat. Właściwość {{domxref("CanvasRenderingContext2D.fillStyle","fillStyle")}} przechowuje kolor, który zostanie użyty przez metodę {{domxref("CanvasRenderingContext2D.fill()","fill()")}} aby narysować kwadrat, w naszym przypadku, czerwony.

+ +

Nie jesteśmy ograniczeni tylko do prostokątów  — poniższy fragment kodu narysuje nam zielone koło. Spróbuj dodać go do poprzedniego kodu JavaScript, następnie zapisz plik i odśwież przeglądarkę:

+ +
ctx.beginPath();
+ctx.arc(240, 160, 20, 0, Math.PI*2, false);
+ctx.fillStyle = "green";
+ctx.fill();
+ctx.closePath();
+ +

Jak widzisz ponownie użyliśmy metod  {{domxref("CanvasRenderingContext2D.beginPath()","beginPath()")}} oraz {{domxref("CanvasRenderingContext2D.closePath()","closePath()")}}. Pomiędzy nimi, najważniejszą częścią powyższego kodu jest metoda {{domxref("CanvasRenderingContext2D.arc()","arc()")}}. Przyjmuje ona sześć parametrów:

+ + + +

Właściwość {{domxref("CanvasRenderingContext2D.fillStyle","fillStyle")}} wygląda inaczej, niż poprzednio. To dlatego, że tak, jak w CSS, kolor może być określony w postaci wartości szeznastkowej, słowa kluczowego określającego kolor, funkcji  rgba(), lub innych z dostępnych metod przypisywania koloru.

+ +

Zamiast używać metody {{domxref("CanvasRenderingContext2D.fill()","fill()")}} króra wypełnia całe figury kolorem, możemy użyć {{domxref("CanvasRenderingContext2D.stroke()","stroke()")}} aby tylko pokolorować zewnętrzny obrys. Spróbuj dodać ten fragment do swojego kodu JavaScript:

+ +
ctx.beginPath();
+ctx.rect(160, 10, 100, 40);
+ctx.strokeStyle = "rgba(0, 0, 255, 0.5)";
+ctx.stroke();
+ctx.closePath();
+ +

Powyższy kod narysuje pusty prostokąd z niebieskim obrysem. Dzięki wykorzystaniu kanału alpha w funkcji  rgba(), niebieski kolor jest półprzezroczysty.

+ +

Porównaj swój kod

+ +

Poniżej znajdziesz pełny kod źródłowy pierwszej lekcji z podglądem na żywo:

+ +

{{JSFiddleEmbed("https://jsfiddle.net/end3r/x62h15e2/","","395")}}

+ +
+

Ćwiczenie: spróbuj pozmieniać wymiary i kolory poszczególnych figur.

+
+ +

Następne kroki

+ +

Mamy już skonfigurowany podstawową strukturę HTML oraz poznaliśmy trochę podstaw o elemencie canvas, przejdźmy teraz do rozdziału drugiego i dowiedzmy się w jaki sposób Poruszyć piłkę w naszej grze.

+ +

{{PreviousNext("Games/Tutorials/2D_Breakout_game_pure_JavaScript", "Games/Tutorials/2D_Breakout_game_pure_JavaScript/posusz_pilka")}}

diff --git a/files/pl/games/tutorials/2d_breakout_game_pure_javascript/wykrywanie_kolizji/index.html b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/wykrywanie_kolizji/index.html new file mode 100644 index 0000000000..fea9869173 --- /dev/null +++ b/files/pl/games/tutorials/2d_breakout_game_pure_javascript/wykrywanie_kolizji/index.html @@ -0,0 +1,128 @@ +--- +title: Wykrywanie kolizji +slug: Games/Tutorials/2D_Breakout_game_pure_JavaScript/wykrywanie_kolizji +translation_of: Games/Tutorials/2D_Breakout_game_pure_JavaScript/Collision_detection +--- +
{{GamesSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/Games")}}
+ +

{{PreviousNext("Games/Workflows/2D_Breakout_game_pure_JavaScript/Build_the_brick_field", "Games/Workflows/2D_Breakout_game_pure_JavaScript/Track_the_score_and_win")}}

+ +
+

This is the 7th step out of 10 of the Gamedev Canvas tutorial. You can find the source code as it should look after completing this lesson at Gamedev-Canvas-workshop/lesson7.html.

+
+ +

We have the bricks appearing on the screen already, but the game still isn't that interesting as the ball goes through them. We need to think about adding collision detection so it can bounce off the bricks and break them.

+ +

It's our decision how to implement this, of course, but it can be tough to calculate whether the ball is touching the rectangle or not because there are no helper functions in Canvas for this. For the sake of this tutorial we will do it the easiest way possible. We will check if the center of the ball is colliding with any of the given bricks. This won't give a perfect result every time, and there are much more sophisticated ways to do collision detection, but this will work fine for teaching you the basic concepts.

+ +

A collision detection function

+ +

To kick this all off we want to create a collision detection function that will loop through all the bricks and compare every single brick's position with the ball's coordinates as each frame is drawn. For better readability of the code we will define the b variable for storing the brick object in every loop of the collision detection:

+ +
function collisionDetection() {
+    for(var c=0; c<brickColumnCount; c++) {
+        for(var r=0; r<brickRowCount; r++) {
+            var b = bricks[c][r];
+            // calculations
+        }
+    }
+}
+ +

If the center of the ball is inside the coordinates of one of our bricks, we'll change the direction of the ball. For the center of the ball to be inside the brick, all four of the following statements need to be true:

+ + + +

Let's write that down in code:

+ +
function collisionDetection() {
+    for(var c=0; c<brickColumnCount; c++) {
+        for(var r=0; r<brickRowCount; r++) {
+            var b = bricks[c][r];
+            if(x > b.x && x < b.x+brickWidth && y > b.y && y < b.y+brickHeight) {
+                dy = -dy;
+            }
+        }
+    }
+}
+ +

Add the above block to your code, below the keyUpHandler() function.

+ +

Making the bricks disappear after they are hit

+ +

The above code will work as desired and the ball changes its direction. The problem is that the bricks are staying where they are. We have to figure out a way to get rid of the ones we've already hit with the ball. We can do that by adding an extra parameter to indicate whether we want to paint each brick on the screen or not. In the part of the code where we initialize the bricks, let's add a status property to each brick object. Update the following part of the code as indicated by the highlighted line:

+ +
var bricks = [];
+for(var c=0; c<brickColumnCount; c++) {
+    bricks[c] = [];
+    for(var r=0; r<brickRowCount; r++) {
+        bricks[c][r] = { x: 0, y: 0, status: 1 };
+    }
+}
+ +

Next we'll check the value of each brick's status property in the drawBricks() function before drawing it — if status is 1, then draw it, but if it's 0, then it was hit by the ball and we don't want it on the screen anymore. Update your drawBricks() function as follows:

+ +
function drawBricks() {
+    for(var c=0; c<brickColumnCount; c++) {
+        for(var r=0; r<brickRowCount; r++) {
+            if(bricks[c][r].status == 1) {
+                var brickX = (c*(brickWidth+brickPadding))+brickOffsetLeft;
+                var brickY = (r*(brickHeight+brickPadding))+brickOffsetTop;
+                bricks[c][r].x = brickX;
+                bricks[c][r].y = brickY;
+                ctx.beginPath();
+                ctx.rect(brickX, brickY, brickWidth, brickHeight);
+                ctx.fillStyle = "#0095DD";
+                ctx.fill();
+                ctx.closePath();
+            }
+        }
+    }
+}
+ +

Tracking and updating the status in the collision detection function

+ +

Now we need to involve the brick status property in the collisionDetection() function: if the brick is active (its status is 1) we will check whether the collision happens; if a collision does occur we'll set the status of the given brick to 0 so it won't be painted on the screen. Update your collisionDetection() function as indicated below:

+ +
function collisionDetection() {
+    for(var c=0; c<brickColumnCount; c++) {
+        for(var r=0; r<brickRowCount; r++) {
+            var b = bricks[c][r];
+            if(b.status == 1) {
+                if(x > b.x && x < b.x+brickWidth && y > b.y && y < b.y+brickHeight) {
+                    dy = -dy;
+                    b.status = 0;
+                }
+            }
+        }
+    }
+}
+ +

Activating our collision detection

+ +

The last thing to do is to add a call to the collisionDetection() function to our main draw() function. Add the following line to the draw() function, just below the drawPaddle() call:

+ +
collisionDetection();
+
+ +

Compare your code

+ +

The collision detection of the ball is now checked on every frame, with every brick. Now we can destroy bricks! :-

+ +

{{JSFiddleEmbed("https://jsfiddle.net/yumetodo/kaed3hbu/","","395")}}

+ +
+

Exercise: change the color of the ball when it hits the brick.

+
+ +

Next steps

+ +

We are definitely getting there now; let's move on! In the eighth chapter we will be looking at how to Track the score and win.

+ +

{{PreviousNext("Games/Workflows/2D_Breakout_game_pure_JavaScript/Build_the_brick_field", "Games/Workflows/2D_Breakout_game_pure_JavaScript/Track_the_score_and_win")}}

diff --git a/files/pl/games/tutorials/index.html b/files/pl/games/tutorials/index.html new file mode 100644 index 0000000000..8833f364a3 --- /dev/null +++ b/files/pl/games/tutorials/index.html @@ -0,0 +1,27 @@ +--- +title: Tutorials +slug: Games/Tutorials +tags: + - Canvas + - Gry + - JavaScript + - Web + - workflow +translation_of: Games/Tutorials +--- +
{{GamesSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/Games")}}
+ +

Ta strona zawiera poradniki, które wyróżniają wiele sposobów pracy w celu skutecznego wszelkiego rodzaju gier internetowych.

+ +
+
Gra Breakout 2D w czystym JavaScript
+
W tym poradniku krok po kroku stworzysz prosty klon gry Breakout napisany w całości w czystym języku JavaScript. Nauczysz się podstaw używania elementu {{htmlelement("canvas")}} do implementowania podstawowych mechanik gry jak renderowanie, przesuwanie grafik, wykrywanie kolizji, mechanizmu sterowania oraz stanu wygrania/przegrania. 
+
2D breakout game using Phaser
+
In this step-by-step tutorial you'll implement the same breakout clone as the previous tutorial series, except that this time you'll do it using thePhaser HTML5 game framework. This idea here is to teach some of the fundamentals (and advantages) of working with frameworks, along with fundamental game mechanics.
+
2D maze game with device orientation
+
This tutorial shows how to create a 2D maze game using HTML5, incorporating fundamentals such as collision detection and sprite placement on a {{htmlelement("canvas")}}. This is a mobile game that uses the Device Orientation and Vibration APIs to enhance the gameplay and is built using the Phaser framework.
+
2D platform game with Phaser
+
This tutorial series shows how to create a simple platform game using Phaser, covering fundamentals such as sprites, collisions, physics, collectables, and more.
+
diff --git a/files/pl/gecko/index.html b/files/pl/gecko/index.html new file mode 100644 index 0000000000..71c75463f7 --- /dev/null +++ b/files/pl/gecko/index.html @@ -0,0 +1,62 @@ +--- +title: Gecko +slug: Gecko +translation_of: Mozilla/Gecko +--- +
+

Gecko is the name of the layout engine developed by the Mozilla Project. It was originally named NGLayout. Gecko's function is to read web content, such as HTML, CSS, XUL, JavaScript, and render it on the user's screen or print it. In XUL-based applications Gecko is used to render the application's user interface as well.

+
+ +

Gecko is used in many applications, including a few browsers, such as Firefox, SeaMonkey, etc. (for a complete list, please refer to Wikipedia's article on Gecko.) Products using the same version of Gecko have identical support for standards.

+ + + + + + + + +
+

Documentation

+ +
+
Chrome
+
+

This page contains information specific to Chrome code running in Gecko.

+
+
Gecko FAQ
+
Frequently asked questions about Gecko.
+
Gecko DOM reference
+
Reference to the DOM.
+
Gecko event reference
+
Reference to events used within Gecko and Mozilla applications; for web-standard DOM events, see the DOM event reference.
+
Gecko versions and application versions
+
Versions of Gecko and the applications they're used in.
+
Introduction to Layout in Mozilla
+
Tech Talk on layout.
+
Embedding Mozilla
+
Using Gecko in your own application.
+
Character sets supported by Gecko
+
A list of the character sets supported by Gecko.
+
HTML parser threading
+
Description of multithreading in the HTML parser.
+
{{interwiki('wikimo', 'Gecko:Home_Page', 'Gecko Home Page on MozillaWiki')}}
+
Home for the active developers. Roadmaps and more up-to-date resources.
+
+ +

View All...

+
+

Community

+ +
    +
  • View Mozilla forums... {{DiscussionList("dev-tech-layout", "mozilla.dev.tech.layout")}}
  • +
+ + + +
+
Web Standards, XUL, Embedding Mozilla, Developing Mozilla
+
+
+ +

diff --git a/files/pl/gecko_sdk/index.html b/files/pl/gecko_sdk/index.html new file mode 100644 index 0000000000..afc0494c3a --- /dev/null +++ b/files/pl/gecko_sdk/index.html @@ -0,0 +1,112 @@ +--- +title: Gecko SDK +slug: Gecko_SDK +translation_of: Mozilla/Gecko/Gecko_SDK +--- +

Gecko SDK, znane także jako SDK XULRunner, jest zbiorem plików XPIDL, nagłówków oraz narzędzi do tworzenia komponentów XPCOM, które mogą być później używane np. Mogą być wykorzystane w JavaScript poprzez XUL.

+

Zauważ że, by stworzyć takie komponenty, nie ma potrzeby posiadania całego kodu np. Firefox'a, ponieważ nie używamy kodu zawartego w tym komponencie. A ponieważ każdy komponent posiada prostą funkcjonalność, jest zgodny z każdym produktem przeznaczonym na platformy Mozilli. Stąd też nie ma potrzeby używania poszczególnych produktów do zbudowania aplikacji o ogólnym przeznaczeniu. Z tego powodu opracowano Gecko SDK.

+

Nie należy mylić Gecko/XULRunner SDK z XULRunner. Gecko SDK jest kolekcją plików nagłówków i narzędzi używanych do tworzenia komponentów XPCOM o ogólnym przeznaczeniu, które rozszerzają fukcjonalność już istniejącej platformy! Natomiast XULRunner jest środowiskiem w którym uruchamia się samodzielne programy, bądź wbudowane programy bazowane na framework'u Mozilli.

+

Gecko SDK posiada wszelkie niezbędne narzędzia oraz nagłówki do tworzenia skryptowalnych wtyczek NPAPI, włącznie z kompilatorem/linkerem xpidl i najnowszą wersją npapi.h.

+

Jak zdobyć SDK?

+

Aktualizacje

+

Nie ma potrzeby pobierania, czy też ponownego budowania Gecko SDK nawiązując do aktualizacji zabezpieczeń od Mozilli(np. Mozilla 1.7.3), ponieważ nagłówki i 'biblioteki klejące' w Gecko SDK zazwyczaj nie są zmieniane w przypadku aktualizacji zabezpieczeń. Aczkolwiek musisz rozprowadzać najnowsze komponenty Gecko, takie jak gklayout.dll itd.

+

Pobieranie

+

Dla wersji przed Gecko 2.0 powinieneś wybrać wersje Gecko SDK dla najwcześniejszej wersji Mozilli którą planujesz używać. Dla wersji Gecko 2.0 i nowszych, musisz zrekompilować twój komponent dla każdej publikacji, ponieważ kompatybilność z różnymi wersjami nie jest obsługiwana!

+

Nawiązując do poniższych wersji, możesz znaleść inne wersje(także niestabilne) pod tym adresem: Wersje XULRunner (pliki z 'sdk' w nazwie).  SDK ma ustalony plan wydawnictwa tak jak Firefox/Thunderbird.  Tylko gdy SDK wejdzie w stadium Beta, nadaje się do budowania rozszerzeń; twój komponent powienien współpracować z wydawnictwami SDK bez żadnych zmian.  Z powodu bardzo szybkiego wypuszczania nowych wersji, rozsądnie jest wybierać SDK w wersji Beta.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Linki do plikówNajnowszy Gecko (Najnowszy Firefox)Gecko 1.9.2 (Firefox 3.6)Gecko 1.9.1 (Firefox 3.5)Gecko 1.9 (Firefox 3.0)Gecko 1.8 (Firefox 1.5 i 2.0)
WindowsPobierzPobierzPobierzPobierzPobierz
Mac x86_64PobierzBrakBrakBrakBrak
Mac i386PobierzPobierzPobierzPobierzBrak
Mac ppcBrakPobierzPobierzPobierzPobierz
Linux x86_64PobierzBrakBrakBrakBrak
Linux i686PobierzPobierzPobierzPobierzPobierz
+

SDK oficjalnie nie jest publikowane na pozostałych wersjach, jeżeli masz potrzebę używania SDK na innych wersjach, musisz sam je zbudować.

+
+

Uwaga: możesz zasubskrybować kalendarz wydań Firefox'a. Możesz także przejrzeć plan online .

+
+

Wypakuj tarball SDK do odpowiadającej Ci lokalizacji.

+

Błędy w SDK OS X

+

Jeżeli zaistnieje potrzeba użycia narzędzia xpidl do kompilacji plików IDL na OS X, prawdopodobnie otrzymasz dziwny komunikat błędu podobny do tego ponieżej:

+
dyld: Library not loaded: /opt/local/lib/libintl.3.dylib
+  Referenced from: /Users/varmaa/xulrunner-sdk/bin/./xpidl
+  Reason: image not found
+Trace/BPT trap
+
+

Niestety, ten problem jest wywoływany przez błąd procesu budowy SDK, który nie może zostać rozwiazany narazie (zobacz Bugzilla bug #430274). By go ominąć, musisz zainstalować MacPorts jak podkreślono w  wstępnych wymaganiach budowy w Mac OS X oraz zainstalować libidl. na 64 bitowych wersjach Mac OS X, musisz zainstalować libidl z parametrem +universal.

+

Gdy ta czynność zostanie wykonana, wykonaj te polecenie:

+
ln -s /opt/local/lib/libintl.8.dylib /opt/local/lib/libintl.3.dylib
+

To powinno naprawić błąd.

+

Budowanie SDK

+

By zbudować SDK, pierw zbuduj XULRunner (Gecko SDK jest budowane jako część procesu budowy XULRunner, stąd też nazwa XULRunner SDK). Zapoznaj się z dokumentacją budowy dla poznania szczegółowych danych. Po zakończeniu budowy XULRunner wykonanie make sdk z twojego katalogu stworzy paczkę SDK w dist.

+

Zawartości SDK

+

SDK zawiera:

+ +

By lepiej poznać się na bezpiecznym łączeniu komponentów XPCOM uzywając "klejącej" biblioteki XPCOM zobacz Klej XPCOM.

+

Jak używać Systemu Budowy Mozilli z SDK?

+

Istnieje możliwość używania Systemy Budowy Mozilli z SDK. Można tego dokonać przez pobranie kodu źródłowego Firefox'a i użyć opcji --with-libxul-sdk  z poleceniem configure.

+

Zasoby

+ +

{{ languages( { "zh-cn": "cn/Gecko_SDK", "fr": "fr/SDK_Gecko", "ja": "ja/Gecko_SDK" } ) }}

diff --git a/files/pl/generowanie_guid/index.html b/files/pl/generowanie_guid/index.html new file mode 100644 index 0000000000..8878563905 --- /dev/null +++ b/files/pl/generowanie_guid/index.html @@ -0,0 +1,78 @@ +--- +title: Generowanie GUID +slug: Generowanie_GUID +tags: + - Dodatki + - 'Programowanie_Mozilli:Narzędzia' + - Rozszerzenia + - Wszystkie_kategorie + - XPCOM +translation_of: Mozilla/Tech/XPCOM/Generating_GUIDs +--- +

+

GUIDy są używane w programowaniu Mozilli do identyfikacji rożnych rzeczy włączając w to interfejsy XPCOM (ten typ GUID nazywany jest IID), komponenty (CID) oraz dodatki jak rozszerzenia oraz motywy. Dodatki mogą (i powinny) być identyfikowane za pomocą ID typu <tt>extensionname@organization.tld</tt> począwszy od Firefoksa 1.5. +

+

Forma kanoniczna

+

Typową formą GUID jest <tt>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx</tt>, gdzie każdy <tt>x</tt> reprezentuje cyfrę szestnastkową. Istnieje wiele narzędzi do generacji GUID w formie kanonicznej. +

+

Narzędzia online

+ +

Windows

+

Użytkownicy Windows mogą użyć narzędzia Microsoftu GuidGen. (Jest ono również częścią MS Visual C++) +

+

Linux

+

Użyj /usr/bin/uuidgen. Można go znaleźć w paczce libuuid1 (Debian). +

+

Perl

+

Narzędzie Mozilli jkeiser's zawiera generator UUID tworzący zarówno format C++ jak i styl IDL. +

+

nsIUUIDGenerator

+

UUID może zostać wygenerowany za pomocą wolnego kodu Mozilli nsIUUIDGenerator. Patrz odnośniki do strony. +

+

Format COM/XPCOM

+

Podczas definiowania IID i CID za pomocą #define w kodzie C++ Mozilli możesz używać poniższego formatu: +

+
// xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
+#define NS_...ID \
+{ 0xXXXXXXXX, 0xXXXX, 0xXXXX, \
+  { 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX, 0xXX } }
+
+

Możesz wygenerować kod w powyższym formacie używając poniższych narzędzi. +

+

Narzędzia online

+ +

guidgen

+

guidgen.exe jest częścią Microsoft Visual Studio i może generować UUID w tym formacie. +

+

bash

+

Możesz wpisać poniższy tekst do swojego pliku <tt>.bashrc</tt>: +

+
uuidgen-c++()
+{
+       local UUID=$(uuidgen)
+       echo "// $UUID"
+       echo "#define NS__IID \\"
+       echo "{ 0x${UUID:0:8}, 0x${UUID:9:4}, 0x${UUID:14:4}, \\"
+       echo -n "  { 0x${UUID:19:2}, 0x${UUID:21:2}, 0x${UUID:24:2}, "
+       echo -n "0x${UUID:26:2}, 0x${UUID:28:2}, 0x${UUID:30:2}, "
+       echo "0x${UUID:32:2}, 0x${UUID:34:2} } }"
+}
+
+

Perl

+
#!/usr/bin/perl
+$uuid = `uuidgen`;
+chomp $uuid;
+print $uuid, "\n";
+@parts = ($uuid =~ /^(.{8})-(.{4})-(.{4})-(..)(..)-(..)(..)(..)(..)(..)(..)$/);
+print "{ 0x$parts[0], 0x$parts[1], 0x$parts[2], \\", "\n", " { ";
+for (3 .. 9) {
+    print "0x$parts[$_], ";
+}
+print "0x$parts[10] } }", "\n";
+
+{{ languages( { "en": "en/Generating_GUIDs", "fr": "fr/G\u00e9n\u00e9ration_de_GUID", "ja": "ja/Generating_GUIDs" } ) }} diff --git a/files/pl/glossary/404/index.html b/files/pl/glossary/404/index.html new file mode 100644 index 0000000000..c745150e06 --- /dev/null +++ b/files/pl/glossary/404/index.html @@ -0,0 +1,15 @@ +--- +title: '404' +slug: Glossary/404 +tags: + - Kod odpowiedzi +translation_of: Glossary/404 +--- +

404 to standardowy kod odpowiedzi oznaczający, że {{Glossary("Server", "server")}} nie może odnaleźć szukanego zasobu.

+ +

Znajdź więcej

+ + diff --git a/files/pl/glossary/abstrakcja/index.html b/files/pl/glossary/abstrakcja/index.html new file mode 100644 index 0000000000..0c56198083 --- /dev/null +++ b/files/pl/glossary/abstrakcja/index.html @@ -0,0 +1,55 @@ +--- +title: Abstrakcja +slug: Glossary/Abstrakcja +translation_of: Glossary/Abstraction +--- +

Abstrakcja w {{Glossary("computer programming")}} to sposób na zmniejszenie złożoności i umożliwienie wydajnego projektowania i wdrażania w złożonych systemach oprogramowania. Ukrywa złożoność techniczną systemów za prostszą {{Glossary("API", "APIs")}}.

+ +

Zalety Abstrakcji Danych

+ + + +

Przykład

+ +
#include <iostream>
+using namespace std;
+
+class implementAbstraction {
+
+    private:
+        int a, b;
+
+    public:
+        // method to set values of
+        // private members
+
+        void set(int x, int y) {
+            a = x;
+            b = y;
+        }
+
+        void display() {
+            cout<<"a = " <<a << endl;
+            cout<<"b = " << b << endl;
+        }
+};
+
+int main() {
+    implementAbstraction obj;
+    obj.set(10, 20);
+    obj.display();
+    return 0;
+}
+ +

Ucz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/accessibility/index.html b/files/pl/glossary/accessibility/index.html new file mode 100644 index 0000000000..7eda4457c6 --- /dev/null +++ b/files/pl/glossary/accessibility/index.html @@ -0,0 +1,32 @@ +--- +title: Accessibility +slug: Glossary/Accessibility +tags: + - Accessibility +translation_of: Glossary/Accessibility +--- +

Web Accessibility (A11Y) odnosi się do najlepszych praktyk służących w celu utrzymywania strony internetowej przystępnej pomimo fizycznych i technologicznych ograniczeń. Web Accessibility jest formalnie określona i omawiana w {{Glossary("W3C")}} przez {{Glossary("WAI","Web Accessibility Initiative")}} (WAI).

+ +

Learn more

+ +

General knowledge

+ + + +

Learn web accessibility

+ + + +

Technical reference

+ + diff --git a/files/pl/glossary/accessibility_tree/index.html b/files/pl/glossary/accessibility_tree/index.html new file mode 100644 index 0000000000..e67c81a88e --- /dev/null +++ b/files/pl/glossary/accessibility_tree/index.html @@ -0,0 +1,41 @@ +--- +title: Drzewo dostępności (AOM) +slug: Glossary/Accessibility_tree +tags: + - AOM + - DOM + - Dostępność + - Słownik + - źródło +translation_of: Glossary/Accessibility_tree +--- +

Drzewo dostępności, lub model dostępności obiektu (AOM), zawiera {{Glossary("accessibility")}}-informacje związane z dostępnością dla większości elementów HTML.

+ +

Przeglądarki konwertują znaczniki HTML w wewnętrzną reprezentacje zwaną drzewem DOM.  Drzewo DOM zawiera obiekty dla wszytskich elementów, atrybutów i węzłów tekstowych danego znacznika HTML. Na podstawie drzewa DOM, przeglądarki tworzą drzewo dostępności, które następnie jest używane przez, konkretne dla danej platformy, API dostępności do technologi wspomagających, takich jak czytniki ekranu.

+ +

Istnieją cztery składniki w obiekcie drzewa dostępności:

+ +
+
nazwa
+
Jak możemy się odnieść do danego elementu? Na przykład, hiperłącze zawierające tekst ‘Czytaj’ będzie miało nazwę 'Czytaj’ (więcej na temat w jaki sposób nazwy są kalkulowane mozesz dowiedzieć się z artykułu Specyfikacja kalkulacji dostępnej nazwy i opisu).
+
opis
+
W jaki sposób możemy opisać element, jeśli chcemy dodać coś do nazwy? Opis tabeli może wyjaśnić jakiego rodzaju informacje ona prezentuje.
+
rola
+
Czym jest dany element? Czy jest to przycisk, pasek nawigacyjny czy lista obiektów?
+
stan
+
Czy posiada stan? Na przykład, zaznaczone/odznaczone pole wyboru, zwinięty/rozwinięty element <summary>.
+
+ +

Dodatkowo, drzewo dostępności często zawiera informacje o tym co można z danym elementem, zrobić: hiperłącze można kliknąć, pole tekstowe wypełnić, itd.

+ + diff --git a/files/pl/glossary/algorithm/index.html b/files/pl/glossary/algorithm/index.html new file mode 100644 index 0000000000..d53b1064f8 --- /dev/null +++ b/files/pl/glossary/algorithm/index.html @@ -0,0 +1,34 @@ +--- +title: Algorithm +slug: Glossary/Algorithm +translation_of: Glossary/Algorithm +--- +

Algorytm jest samodzielną serią instrukcji służących do wykonywania funkcji.

+ +

Innymi słowy, algorytm jest sposobem opisywania sposobu rozwiązania problemu, aby mógł być wielokrotnie rozwiązywany przez ludzi lub maszyny. Informatycy porównują efektywność algorytmów poprzez pojęcie "złożoności algorytmu" lub zapisu "Big O".

+ +

Na przykład:

+ + + +

Powszechnymi algorytmami są algorytmy wyszukiwania, takie jak: problem komiwojażera, przechodzenie drzewa, itd..

+ +

Występują również systemy uczące: Linear Regression (regresja liniowa), Logistic Regression (regresja logistyczna), Decision Tree (drzewo decyzyjne), Random Forrest (las losowy), Support Vector Machine (maszyna wektorów nośnych), Recurrent Neural Network (sztuczne sieci neuronowe), Long Short Term Memory (LSTM) Neural Network, Convolutional Neural Network (CNN), Deep Convolutional Neural Network etc.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Odnośniki techniczne

+ + diff --git a/files/pl/glossary/api/index.html b/files/pl/glossary/api/index.html new file mode 100644 index 0000000000..2ac7a9121f --- /dev/null +++ b/files/pl/glossary/api/index.html @@ -0,0 +1,31 @@ +--- +title: API +slug: Glossary/API +translation_of: Glossary/API +--- +

API (Application Programming Interface) jest zbiorem funkcji oraz reguł wewnątrz aplikacji, które umożliwiają interakcję z tą aplikacją za pośrednictwem oprogramowania - w przeciwieństwie do interakcji przez interfejs użytkownika. API można postrzegać jako interfejs pomiędzy aplikacją, która go oferuje, a innymi elementami, np. aplikacjami lub urządzeniami stron trzecich.

+ +

Ogólnie rzecz ujmując, w tworzeniu aplikacji internetowych, API jest zbiorem funkcji kodu np. {{glossary("method","metod")}}, {{Glossary("property","właściwości")}}, zdarzeń oraz {{Glossary("URL","adresów")}}, które deweloper może wykorzystać w swojej aplikacji np. do interakcji z komponentami przeglądarki internetowej użytkownika, programami na komputerze użytkownika lub stronami internetowymi i usługami stron trzecich.

+ +

Przykłady:

+ + + +

Zobacz też

+ +

Informacje ogólne

+ + + +

Dokumentacja techniczna

+ + diff --git a/files/pl/glossary/argument/index.html b/files/pl/glossary/argument/index.html new file mode 100644 index 0000000000..407158f173 --- /dev/null +++ b/files/pl/glossary/argument/index.html @@ -0,0 +1,22 @@ +--- +title: Argument +slug: Glossary/Argument +tags: + - Argument +translation_of: Glossary/Argument +--- +

Argument jest {{glossary("value")}} ({{Glossary("primitive")}} lub {{Glossary("object")}}) przekazanym na wejściu do {{Glossary("function")}} .

+ +

Learn more

+ +

Wiedza ogólna

+ + + +

Odniesienie techniczne

+ + diff --git a/files/pl/glossary/arpanet/index.html b/files/pl/glossary/arpanet/index.html new file mode 100644 index 0000000000..38127c6c6a --- /dev/null +++ b/files/pl/glossary/arpanet/index.html @@ -0,0 +1,14 @@ +--- +title: Arpanet +slug: Glossary/Arpanet +translation_of: Glossary/Arpanet +--- +

ARPAnet (Advanced Research Projects Agency Network) była pierwszą siecią komputerową, zbudowaną w 1969 roku jako rozrosły nośnik do nadawania newralgicznych wojskowych danych oraz do łączenia wiodących grup badawczych w Stanach Zjednoczonych. ARPAnet pierwotnie działał przez NCP (Network Control Protocol), następnie poprzez pierwszą wersję protokołu Internetu lub pakietu {{glossary("TCP")}}/{{glossary("IPv6","IP")}}, ustanawiając ARPAnet czołową częścią powstającego {{glossary("Internet")}}. ARPAnet został zamknięty na początku 1990 roku.

+ +

Learn more

+ +

General knowledge

+ + diff --git a/files/pl/glossary/array/index.html b/files/pl/glossary/array/index.html new file mode 100644 index 0000000000..4215b382be --- /dev/null +++ b/files/pl/glossary/array/index.html @@ -0,0 +1,30 @@ +--- +title: Array +slug: Glossary/array +tags: + - Tablica +translation_of: Glossary/array +--- +

Tablica jest uporządkowanym zbiorem danych (either {{Glossary("primitive")}} or {{Glossary("object")}} w zależności od języka). Tablice są używane do przechowywania wielu wartości w pojedynczej zmiennej. Porównajmy to do zmiennej która może przechowywać tylko jedną wartość.

+ +

Każdy element tablicy ma numer przydzielony do niego, zwany indeksem liczbowym, który zezwala na dostęp do tego elementu. W języku JavaScript tablice zaczynają się od indeksu zero i mogą być manipulowane za pomocą wielu {{Glossary("Method", "methods")}}. 

+ +

Tak wygląda tablica w JavaScript:

+ +
var myArray = [1, 2, 3, 4];
+var catNamesArray = ["Jacqueline", "Sophia", "Autumn"];
+//Tablice w języku JavaSript mogą przechowywać różne typy danych, jak pokazano powyżej. 
+ +

Learn more

+ +

General knowledge

+ + + +

Technical reference

+ + diff --git a/files/pl/glossary/ascii/index.html b/files/pl/glossary/ascii/index.html new file mode 100644 index 0000000000..e5aab19ce1 --- /dev/null +++ b/files/pl/glossary/ascii/index.html @@ -0,0 +1,17 @@ +--- +title: ASCII +slug: Glossary/ASCII +tags: + - ASCII + - Glossary + - Infrastructure + - Kodowanie +translation_of: Glossary/ASCII +--- +

ASCII (American Standard Code for Information Interchange) jest jednym z najpopularniejszych standardów kodowania używanym przez komputery. Służy do zamiany liter, cyfr oraz kodów kontrolnych do zapisu binarnego. Od 2007 roku, {{Glossary("UTF-8")}} zastąpiło ASCII.

+ +

Learn more

+ +

General knowledge

+ +

{{Interwiki("wikipedia", "ASCII")}} on Wikipedia

diff --git a/files/pl/glossary/boolean/index.html b/files/pl/glossary/boolean/index.html new file mode 100644 index 0000000000..62f6776639 --- /dev/null +++ b/files/pl/glossary/boolean/index.html @@ -0,0 +1,54 @@ +--- +title: Boolean +slug: Glossary/Boolean +tags: + - Boolean + - CodingScripting + - Glossary + - JavaScript + - Programming Languages + - data types +translation_of: Glossary/Boolean +--- +

Boolean jest typem danych, który może przyjmować jedynie dwie wartośći - true, lub false, czyli prawda i fałsz.W JavaScripcie naprzykład używa się ich by zadecydować, które części kodu wykonać (instrukcje if) lub powtórzyć (pętle typu for)

+ +

Pseudokod obrazujący koncept.

+ +
/* JavaScript if statement */
+if (boolean conditional) {
+   // ten kod się wykona jeśli warunek jest prawdziy
+}
+
+if (boolean conditional) {
+  console.log("warunek jest prawdziwy");
+} else {
+  console.log("warunek jest fałszywy");
+}
+
+
+/* JavaScript for loop */
+for (control variable; boolean conditional; counter) {
+  // kod się wykonuje dopóki warunek jest prawdziwy
+}
+
+for (var i=0; i < 4; i++) {
+  console.log("Ten kod wykona się 4 razy - dla i = 0,1,2,3");
+}
+
+ +

Nazwa pochodzi od angielskiego matematyka {{interwiki("wikipedia", "George Boole")}}, który był pionierem logiki matematycznej.

+ +

Learn more

+ +

General knowledge

+ + + +

Technical reference

+ + diff --git a/files/pl/glossary/buffer/index.html b/files/pl/glossary/buffer/index.html new file mode 100644 index 0000000000..9669b330c8 --- /dev/null +++ b/files/pl/glossary/buffer/index.html @@ -0,0 +1,16 @@ +--- +title: buffer +slug: Glossary/buffer +tags: + - Buffer +translation_of: Glossary/buffer +--- +

Bufor jest magazynem w pamięci fizycznej używanym  do tymczasowego przechowywania danych podczas ich transferu z jednego miejsca w drugie.

+ +

Learn more

+ +

General knowledge

+ + diff --git a/files/pl/glossary/chrome/index.html b/files/pl/glossary/chrome/index.html new file mode 100644 index 0000000000..0ae93c94e4 --- /dev/null +++ b/files/pl/glossary/chrome/index.html @@ -0,0 +1,12 @@ +--- +title: Chrome +slug: Glossary/Chrome +translation_of: Glossary/Chrome +--- +

W przeglądarce, chrome jest to każdy jej widoczny aspekt, oprócz samej strony internetowej (np. paski narzędzi, pasek menu, zakładki). Nie mylić z przeglądarką {{glossary("Google Chrome")}}.

+ +

Learn more

+ + diff --git a/files/pl/glossary/computer_programming/index.html b/files/pl/glossary/computer_programming/index.html new file mode 100644 index 0000000000..2da4d655d2 --- /dev/null +++ b/files/pl/glossary/computer_programming/index.html @@ -0,0 +1,17 @@ +--- +title: Programowanie komputerowe +slug: Glossary/Computer_Programming +translation_of: Glossary/Computer_Programming +--- +

Programowanie komputerowe jest procesem komponowania i organizowania zbioru instrukcji. Mówią one komputerowi / oprogramowaniu, co robić w języku zrozumiałym dla komputera. Instrukcje te są w postaci wielu różnych języków, takich jak C++, Java, JavaScript, HTML, Python, Ruby, and Rust.  

+ +

Za pomocą odpowiedniego języka można zaprogramować / stworzyć wszelkiego rodzaju oprogramowanie. Na przykład program, który pomaga naukowcom w złożonych obliczeniach, bazę danych, która przechowuje ogromne ilości danych, stronę internetową, która pozwala ludziom pobierać muzykę lub oprogramowanie do animacji, które pozwala ludziom tworzyć animowane filmy.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/cookie/index.html b/files/pl/glossary/cookie/index.html new file mode 100644 index 0000000000..a1f44e3199 --- /dev/null +++ b/files/pl/glossary/cookie/index.html @@ -0,0 +1,18 @@ +--- +title: Cookie +slug: Glossary/Cookie +translation_of: Glossary/Cookie +--- +

Cookie jest to niewielki fragment informacji pozostawiony na komputerze odwiedzającego stronę internetową, przez przeglądarkę internetową.

+ +

Cookies są używane by spersonalizować doświadczenie użytkownika ze stroną internetową. Mieszczą się w tym preferencje użytkownika lub dane wejściowe podczas wczytywania danej strony. Użytkownik może dostosować swoją przeglądarkę by akceptowała, odrzucała lub usuwała cookies.

+ +

Cookies mogą być ustawiane i modyfikowane z poziomu serwera używając Set-Cookie HTTP header, albo przez JavaScript stosując document.cookie.

+ +

Learn more

+ +

General Knowledge

+ + diff --git a/files/pl/glossary/doctype/index.html b/files/pl/glossary/doctype/index.html new file mode 100644 index 0000000000..a7be56246c --- /dev/null +++ b/files/pl/glossary/doctype/index.html @@ -0,0 +1,28 @@ +--- +title: Doctype +slug: Glossary/Doctype +tags: + - Browser + - CodingScripting + - DOCTYPE + - Glossary + - HTML + - Intro +translation_of: Glossary/Doctype +--- +

W {{Glossary("HTML")}}, doctype jest wymaganą preambułą "<!DOCTYPE html>" znajdującą się na początku wszystkich dokumentów. Jego jedynym celem jest uniemożliwienie {{Glossary("browser", "przeglądarce")}} przełączenia się w tak zwany “tryb zgodności” podczas renderowania dokumentu; to znaczy, doctype "<!DOCTYPE html>" zapewnia, że przeglądarka podejmie najlepszą próbę zastosowania się do odpowiednich specyfikacji, zamiast używania innego trybu renderowania, który jest niezgodny z niektórymi specyfikacjami.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Odniesienia techniczne

+ + diff --git a/files/pl/glossary/dom/index.html b/files/pl/glossary/dom/index.html new file mode 100644 index 0000000000..0fe53af3d3 --- /dev/null +++ b/files/pl/glossary/dom/index.html @@ -0,0 +1,29 @@ +--- +title: DOM +slug: Glossary/DOM +tags: + - DOM + - obiektowy model dokumentu + - węzeł +translation_of: Glossary/DOM +--- +

DOM (Obiektowy Model Dokumentu, ang. Document Object Model) to {{glossary("API")}}, które reprezentuje dokumenty {{glossary("HTML")}} i {{glossary("XML")}} oraz pozwala na komunikowanie się z nimi. DOM jest modelem dokumentu ładowanego w {{glossary("browser")}} reprezentowanego jako drzewo, w którym każdy węzeł reprezentuje część dokumentu (np {{Glossary("element")}}, ciągi znaków, komentarze).

+ +

DOM jest jednym z najczęściej używanych {{Glossary("API")}} w {{glossary("World Wide Web","Web")}} ponieważ pozwala ono na dostęp i interakcję z węzłami dokumentu. Węzły te mogą być tworzone, przenoszone i zmieniane. Do węzłów można także dodać nasłuchiwanie zdarzeń (ang. event listener).

+ +

DOM początkowo nie posiadało specyfikacji —zaczęła się ona pojawiać w momencie gdy przeglądarki zaczęły implementować {{Glossary("JavaScript")}}. Przestarzała już wersja DOMu nazywana jest czasem DOM 0. Obecnie, WHATWG rozwija DOM Living Standard.

+ +

Zobacz więcej

+ +

Wiedza ogólna

+ + + +

Informacje techniczne

+ + diff --git a/files/pl/glossary/firefox_os/index.html b/files/pl/glossary/firefox_os/index.html new file mode 100644 index 0000000000..7ebcd878ab --- /dev/null +++ b/files/pl/glossary/firefox_os/index.html @@ -0,0 +1,23 @@ +--- +title: Firefox OS +slug: Glossary/Firefox_OS +tags: + - Firefox OS + - Gecko +translation_of: Glossary/Firefox_OS +--- +

Firefox OS to system operacyjny dla urządzeń mobilnych Mozilli, oparty na Linuksie oraz {{glossary("Mozilla Firefox","Firefox's")}} wydajnym mechaniźmie renderowania {{glossary("Gecko")}}. Firefox OS składa się głównie z {{glossary("Gaia")}}, {{glossary("Gecko")}}, i {{glossary("Gonk")}}.

+ +

Zobacz więcej

+ +

Wiedza ogólna

+ + + +

Informacje techniczne

+ + diff --git a/files/pl/glossary/hipertekst/index.html b/files/pl/glossary/hipertekst/index.html new file mode 100644 index 0000000000..e699949584 --- /dev/null +++ b/files/pl/glossary/hipertekst/index.html @@ -0,0 +1,26 @@ +--- +title: Hipertekst +slug: Glossary/Hipertekst +tags: + - Glossary + - Web + - WebMechanics +translation_of: Glossary/Hypertext +--- +

Hipertekst to tekst, który zawiera odnośniki do innych tekstów, w przeciwieństwie do pojedynczego przepływu liniowego jak w powieści.

+ +

Termin ten został wymyślony przez Teda Nelsona około 1965 roku.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Odniesienia techniczne

+ + diff --git a/files/pl/glossary/hoisting/index.html b/files/pl/glossary/hoisting/index.html new file mode 100644 index 0000000000..cc9b2babd6 --- /dev/null +++ b/files/pl/glossary/hoisting/index.html @@ -0,0 +1,64 @@ +--- +title: Hoisting +slug: Glossary/Hoisting +translation_of: Glossary/Hoisting +--- +

W języku {{Glossary("JavaScript")}}, {{Glossary("Function", "funkcje")}} oraz {{Glossary("Variable", "zmienne")}} są windowane. Windowanie (hoisting) w JavaScripcie oznacza przeniesienie deklaracji na samą górę (do globalnego {{Glossary("scope", "zasięgu")}} lub do zasięgu funkcji).

+ +

Oznacza to, że możesz użyć funkcji lub zmiennej przed jej zadeklarowaniem lub innymi słowy: funkcje lub zmienne mogę być deklarowane po ich użyciu.

+ +

Naucz się więcej

+ +

Przykład

+ +

Zmienne:

+ +
foo = 2
+var foo;
+
+// można to rozumieć jako:
+
+var foo;
+foo = 2;
+ +

Funkcje:

+ +
hoisted(); // w consoli zobaczymy "foo"
+
+function hoisted() {
+  console.log("foo");
+}
+ +

Tylko deklaracje są windowane

+ +

W języku JavaScript tylko deklaracje są windowane, nie inicjalizacje. Jeśli zmienna zostanie zadeklarowana i zainicjalizowana po jej użyciu, wartość zmiennej będzię niezdefiniowana (undefined).

+ +
console.log(num); // zwróci undefined
+var num;
+num = 6;
+ +

Jeśli zadeklarujesz zmienną po tym jak zostanie użyta, ale zainicjalizujesz jej wartość przed tym, owa wartość zostanie zwrócona:

+ +
num = 6;
+console.log(num); // zwróci 6
+var num;
+ +

Dwa przykłady poniżej obrazują to samo zachowanie.

+ +
var x = 1; // inicjalizacja x
+console.log(x + " " + y); // '1 undefined'
+var y = 2; // inicjalizacja y
+
+// Powyższy przykład jest rozumiany jako:
+var x = 1; // inicjalizacja x
+var y; // deklaracja y
+console.log(x + " " + y); // '1 undefined'
+y = 2; // inicjalizacja y
+ +

Odnośniki

+ + diff --git a/files/pl/glossary/html/index.html b/files/pl/glossary/html/index.html new file mode 100644 index 0000000000..e76af7ecf8 --- /dev/null +++ b/files/pl/glossary/html/index.html @@ -0,0 +1,51 @@ +--- +title: HTML +slug: Glossary/HTML +tags: + - CodingScripting + - Glossary + - HTML + - 'l10n:priority' +translation_of: Glossary/HTML +--- +
{{QuickLinksWithSubpages("/en-US/docs/Glossary")}}
+ +

HTML (HyperText Markup Language) jest językiem opisowym, który określa strukturę strony internetowej.

+ +

Skrócona historia

+ +

W 1990 roku, w ramach swojej wizji {{Glossary("World Wide Web","Sieci")}}, Tim Berners-Lee zdefiniował pojęcie {{Glossary("hypertext","hipertekstu")}}, które Berners-Lee sformalizował w następnym roku za pomocą znacznika opartego głównie na {{Glossary("SGML")}}. {{Glossary("IETF")}} zaczął formalnie określać kod HTML w 1993 roku, a po kilku projektach wydał wersję 2.0 w 1995. W 1994 Berners-Lee założył {{Glossary("W3C")}} w celu rozwijania Sieci Web. W 1996 roku, the W3C przejęło prace nad HTML i rok później opublikowało rekomendację HTML 3.2. HTML 4.0 został wydany w 1999 roku i stał się standardem {{Glossary("ISO")}} w 2000 roku.

+ +

W tym czasie W3C prawie porzuciło HTML na rzecz {{Glossary("XHTML")}}, co skłoniło do założenia w 2004 roku niezależnej grupy o nazwie {{Glossary("WHATWG")}}. Dzięki WHATWG, prace nad {{Glossary("HTML5")}} były kontynuowane: obie organizacje wydały pierwszy projekt w 2008 roku i ostateczny standard w 2014 roku.

+ +

Koncepcja i składnia

+ +

Dokument HTML jest dokumentem tekstowym zbudowanym z {{Glossary("element","elementów")}}. Elementy są otoczone pasującymi {{Glossary("tag","znacznikami")}} otwierającymi i zamykającymi. Każdy znacznik zaczyna się i kończy nawiasami kątowymi (<>). Istnieje kilka pustych lub nieważnych znaczników, które nie mogą zawierać żadnego tekstu, na przykład {{htmlelement("img")}}.

+ +

Można rozszerzyć znaczniki HTML o {{Glossary("attribute","atrybuty")}}, które dostarczają dodatkowych informacji wpływających na interpretację elementu przez przeglądarkę:

+ +

Szczegóły dotyczące struktury elementu HTML

+ +

Plik HTML jest zwykle zapisywany z rozszerzeniem .htm lub .html, obsługiwanym przez {{Glossary("Server","serwer WWW")}}, i może być renderowany przez dowolną {{Glossary("Browser","przeglądarkę internetową")}}.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Nauka HTML

+ + + +

Odniesienia techniczne

+ + diff --git a/files/pl/glossary/ietf/index.html b/files/pl/glossary/ietf/index.html new file mode 100644 index 0000000000..e2ab6168e2 --- /dev/null +++ b/files/pl/glossary/ietf/index.html @@ -0,0 +1,19 @@ +--- +title: IETF +slug: Glossary/IETF +tags: + - Glossary + - IETF + - Infrastructure + - Internet +translation_of: Glossary/IETF +--- +

Internet Engineering Task Force (IETF) jest ogólnoświatową organizacją, która opracowuje {{glossary('specification','specyfikacje')}} regulujące mechanizmy stojące za {{glossary("Internet","Internetem")}}, w szczególności {{glossary("TCP")}}/{{glossary("IPv6","IP")}} lub Pakiet {{glossary("Protocol","Protokołów")}} Internetowych. IETF jest otwarty, prowadzony przez wolontariuszy i sponsorowany przez Internet Society.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/index.html b/files/pl/glossary/index.html new file mode 100644 index 0000000000..8254a4fb42 --- /dev/null +++ b/files/pl/glossary/index.html @@ -0,0 +1,27 @@ +--- +title: Glossary +slug: Glossary +tags: + - Beginner + - Glossary + - Index + - Landing + - NeedsTranslation + - TopicStub +translation_of: Glossary +--- +
{{LearnBox({"title":"Poznaj nowe pojęcie:"})}}
+ +

Technologie internetowe zawierają mnóstwo terminów, żargonu technicznego i skrótów  używanych  w dokumentacji i kodowaniu. Ten słownik zwiera definicje pojęć i skrótów, które musisz znać, aby rozumieć zagadnienia związane z tworzeniem stron i aplikacji internetowych.

+ +

{{GlossaryList({"split":"h3", "css":"multiColumnList"})}}

+ +

Przyczyń się do tworzenia słownika

+ +

Nasz słownik, to niekończąca się praca w toku. Możesz pomóc w jego ulepszaniu pisząc nowe wpisy lub poprawiając istniejące. Najprościej ropocząć można od kliknięcia nastęþującego przycisku  lub wybranie jednego z poniżej sugerowanych pojęć, które trzeba zdefiniować.

+ +

Dodaj nowy wpis do słownika

+ +

{{GlossaryList({"terms":["character encoding","DMZ","event","Firewall","HMAC","condition","modem","OVP","TTL","UX","Unicode"], "filter":"notdefined", "css":"multiColumnList"})}}

+ +

Jeśłi chcesz dowiedzieć się węcej o współpracy nad naszym słownikiem, sprawdź stronę ze stanem dokumentacji poświęconą słownikowi.

diff --git a/files/pl/glossary/iso/index.html b/files/pl/glossary/iso/index.html new file mode 100644 index 0000000000..6aad2c5efa --- /dev/null +++ b/files/pl/glossary/iso/index.html @@ -0,0 +1,20 @@ +--- +title: ISO +slug: Glossary/ISO +tags: + - Glossary + - ISO + - Infrastructure + - Web Standards + - web specifications +translation_of: Glossary/ISO +--- +

ISO (ang. International Organization for Standardization - Międzynarodowa Organizacja Standaryzacji) jest globalnym stowarzyszeniem, które opracowuje jednolite kryteria koordynujące firmy w każdej większej branży.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/javascript/index.html b/files/pl/glossary/javascript/index.html new file mode 100644 index 0000000000..04623f0f83 --- /dev/null +++ b/files/pl/glossary/javascript/index.html @@ -0,0 +1,41 @@ +--- +title: JavaScript +slug: Glossary/JavaScript +translation_of: Glossary/JavaScript +--- +

JavaScript (JS) jest językiem programowania głównie używanym po stronie klienta do dynamicznego skryptowania stron internetowych, jednakże często znajduje zastosowanie po stronie serwara, używając oprogramowania takiego jak Node.js.

+ +

Nie należy mylić pojęcia JavaScript z językiem programowania Java. Zarówno "Java" jak i "JavaScript" są znakami towarowymi firmy Oracle w Stanach Zjednoczonych i innych krajach. Pomimo podobnej nazwy, języki te mają różną składnię, semantykę i zastosowanie.

+ +

Stworzony początkowo do zastosowań server-side, przez Brendana Eicha (zatrudnionego wtedy w Netscape Corporation), JavaScript wkrótce został dodany do przeglądarki Netscape Navigator 2.0 w wrześniu 1995 roku. JavaScript stał się natychmiastowym sukcesem przez co w sierpniu 1996 roku {{glossary("Microsoft Internet Explorer", "Internet Explorer 3.0")}} wprowadził wsparcie JavaScriptu pod nazwą JScript.

+ +

W listpoadzie 1996 roku, Netscape rozpoczął wraz z ECMA International pracę nad ustandaryzowaniem JavaScriptu. Od tamtego momentu JavaScript, nazywany ECMAScript, jest zdefiniowamy w standardzie ECMA-262, którego ostatnia (siódma) wersja jest dostępna od czerwca 2016.

+ +

JavaScript główne jest używany w przeglądarkach internetowych, umożliwiając programistom manipujację zawartością dokumentu poprzez {{Glossary("DOM")}}, przetwarzanie danych przez {{Glossary("AJAX")}} oraz {{Glossary("IndexedDB")}}, rysowanie grafiki używając {{Glossary("canvas")}}, interakcję z urządzeniem uruchamiającym przeglądarkę przez różne {{Glossary("API","API")}} i tym podobne. JavaScript jest jednym z najczęściej używanych języków programowania ze względu na ostatni wzrost ilości {{Glossary("API","API")}} dostępnych w przeglądarkach oraz poprawy ich wydanjości.

+ +

Ostatnio, JavaScript wrócił do zastosowań po stronie serwera dzięki sukcesowi Node.js, najpopularniejszego wieloplatformowego środowiska uruchomieniowego JavaScript poza przeglądarką. Node.js pozwala na użycie JavaScriptu jako języka skryptowego do automatyzacji zadań komputera i budowania w pełni funkcjonalnych serwerów {{Glossary("HTTP")}} i {{Glossary("Web Sockets")}}.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Nauka JavaScriptu

+ + + +

Technical reference

+ + diff --git a/files/pl/glossary/klasa/index.html b/files/pl/glossary/klasa/index.html new file mode 100644 index 0000000000..8782d0d017 --- /dev/null +++ b/files/pl/glossary/klasa/index.html @@ -0,0 +1,19 @@ +--- +title: Klasa +slug: Glossary/Klasa +tags: + - glorariusz +translation_of: Glossary/Class +--- +

W {{glossary("OOP","programowaniu obiektowym")}} klasa określa cechy {{glossary("object","obiektu")}}. Klasa definiuje {{glossary("property","właściwości")}} i {{glossary("method","metody")}} obiektu, stanowi model, na podstawie którego tworzone są konkretne instancje klasy (obiekty). 

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/kryptografia/index.html b/files/pl/glossary/kryptografia/index.html new file mode 100644 index 0000000000..e03fc5e0b1 --- /dev/null +++ b/files/pl/glossary/kryptografia/index.html @@ -0,0 +1,13 @@ +--- +title: Kryptografia +slug: Glossary/Kryptografia +translation_of: Glossary/Cryptography +--- +

Kryptografia lub kryptologia, to nauka, która bada jak kodować i przekazywać wiadomości w bezpieczny sposób. Projekty kryptograficzne i opracowane algorytmy są używane do kodowania i dekodowania wiadomości w niezabezpieczonym środowisku oraz ich aplikacji. Poza zagadnieniem poufności danych, kryptografia porusza również temat identyfikacji, uwierzytelniania, niezaprzeczalności i integralności danych. Dlatego też badania metod kryptografii są używane w kontekście, kryptosystemów.

+ +

Dowiedz się więcej
+ Wiedza ogólna

+ +

     {{Interwiki("wikipedia", "Kryptografia")}}  Wikipedia
+      {{Glossary( "Cryptography")}}
+     Informacje poradnik bezpieczeństwa

diff --git a/files/pl/glossary/metadata/index.html b/files/pl/glossary/metadata/index.html new file mode 100644 index 0000000000..0b4d64ed85 --- /dev/null +++ b/files/pl/glossary/metadata/index.html @@ -0,0 +1,25 @@ +--- +title: Metadane +slug: Glossary/Metadata +tags: + - CodingScripting + - Glossary + - HTML + - metadata +translation_of: Glossary/Metadata +--- +

Metadane to — w swojej najprostszej definicji — dane opisujące dane. Na przykład dokument {{glossary("HTML")}} to dane, ale HTML może również zawierać metadane w swoim elemencie {{htmlelement("head")}} opisującym dokument — np. kto go napisał i jego podsumowanie.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Metadane HTML

+ + diff --git a/files/pl/glossary/mozilla_firefox/index.html b/files/pl/glossary/mozilla_firefox/index.html new file mode 100644 index 0000000000..488bac88e5 --- /dev/null +++ b/files/pl/glossary/mozilla_firefox/index.html @@ -0,0 +1,22 @@ +--- +title: Mozilla Firefox +slug: Glossary/Mozilla_Firefox +translation_of: Glossary/Mozilla_Firefox +--- +

Mozilla Firefox jest darmową przeglądarką internetową {{Glossary("browser")}} o otwartym kodzie źródłowym, której rozwojem nadzoruje Mozilla Corporation. Firefox działa na Windows, OS X, Linux oraz na Android.

+ +

Po raz pierwszy wydana w listopadzie 2004 roku, Firefox jest całkowicie przystosowywalna w motywy, wtyczki oraz dodatki. Firefox używa {{glossary("Gecko")}} do generowania stron internetowych oraz wprowadzania w życie obecnych i przyszłych standardów {{glossary("world wide web", "Web")}}.

+ +

Learn more

+ +

General knowledge

+ + + +

Technical reference

+ + diff --git a/files/pl/glossary/obiekt/index.html b/files/pl/glossary/obiekt/index.html new file mode 100644 index 0000000000..3c9dc807da --- /dev/null +++ b/files/pl/glossary/obiekt/index.html @@ -0,0 +1,20 @@ +--- +title: Obiekt +slug: Glossary/Obiekt +tags: + - Obiekt + - glosariusz + - podstawy +translation_of: Glossary/Object +--- +

Obiekt to struktura danych zawierająca dane i instrukcje odnoszące się do przetwarzania tych danych. Czasami obiekty odpowiadają prawdziwym przedmiotom, np. samochód lub mapa w grze wyścigowej. JavaScript, Java, C++, Python i Ruby to przykłady {{glossary("OOP","obiektowych")}} języków programowania.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/przegladarka/index.html b/files/pl/glossary/przegladarka/index.html new file mode 100644 index 0000000000..82a7b0997b --- /dev/null +++ b/files/pl/glossary/przegladarka/index.html @@ -0,0 +1,27 @@ +--- +title: Przeglądarka +slug: Glossary/Przegladarka +tags: + - Glossary + - Navigation +translation_of: Glossary/Browser +--- +

Przeglądarka internetowa lub przeglądarka to program, który pobiera i wyświetla strony internetowe z {{Glossary("World Wide Web","Sieci Web")}} i umożliwia dostęp do kolejnych stron poprzez {{Glossary("hyperlink","hiperłącza")}}. Przeglądarka jest najbardziej znanym typem {{Glossary("user agent","agenta użytkownika")}}.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + + +

Pobierz przeglądarkę

+ + diff --git a/files/pl/glossary/pusty_element/index.html b/files/pl/glossary/pusty_element/index.html new file mode 100644 index 0000000000..9606f17176 --- /dev/null +++ b/files/pl/glossary/pusty_element/index.html @@ -0,0 +1,34 @@ +--- +title: Pusty element +slug: Glossary/Pusty_element +tags: + - CodingScripting + - Glossary + - Intermediate +translation_of: Glossary/Empty_element +--- +

Pusty element to {{Glossary("element")}} HTML, SVG lub MathML który nie może mieć żadnych węzłów dziecięcych (tj. elementów zagnieżdżonych lub węzłów tekstowych).

+ +

Specyfikacje HTML, SVG i MathML określają bardzo dokładnie, co każdy element może zawierać. Wiele kombinacji nie ma znaczenia semantycznego, na przykład element {{HTMLElement("audio")}} zagnieżdżony wewnątrz elementu {{HTMLElement("hr")}}.

+ +

W HTML, użycie znacznika zamykającego na pustym elemencie jest zazwyczaj nieważne. Na przykład, <input type="text"></input> jest nieprawidłowy.

+ +

Puste elementy w HTML są następujące:

+ + diff --git a/files/pl/glossary/semantyka/index.html b/files/pl/glossary/semantyka/index.html new file mode 100644 index 0000000000..f05fe7c547 --- /dev/null +++ b/files/pl/glossary/semantyka/index.html @@ -0,0 +1,97 @@ +--- +title: Semantyka +slug: Glossary/Semantyka +translation_of: Glossary/Semantics +--- +

W programowaniu Semantyka oznacza znaczenie kawałka kodu — na przykład: "Jaki efekt da ta linia kodu w JavaScripcie?" lub "Jaki cel lub rolę odgrywa ten element HTML?" (ale nie "Jak to wygląda?").

+ +

Semantyka w języku JavaScript

+ +

Załóżmy, że chcemy stworzyć funkcję, która przyjmuje string jako parametr i zwraca element {{htmlelement("li")}} z tym napisem jako jego textContent. Zwróć uwagę na to, czy potrzebowałbyć przeczytać kod, by dowiedzieć się co dokładnie robi ta funkcja, gdyby była nazwana build('Peach') lub createLiWithContent('Peach').

+ +

Semantyka w języku CSS

+ +

Załóżmy, że chcesz ostylować listę li elementów reprezentującą różne owoce. Zwróć uwagę na to, czy wiedziałbyć do której części DOM jest odnosi się selektor div > ul > li lub .fruits__item.

+ +

Semantyka w języku HTML

+ +

W języku HTML, element semantyczny {{htmlelement("h1")}}, nadaje rolę (lub znaczenie) napisowi pomiędzy znacznikami: "najważniejszy nagłówek na twojej stronie"

+ +
<h1>To jest najważniejszy nagłówek</h1>
+ +

Domyślnie, większość przeglądarek ostylowuje element {{htmlelement("h1")}} dużą czcionką by wyglądał jak nagłówek (jednak możesz go ostylować jak chcesz).

+ +

Z drugiej strony, możesz dowolny element możesz ostylować tak by wyglądał jak nagłówek. Tak jak poniżej:

+ +
<span style="font-size: 32px; margin: 21px 0;">Czy to jest najważniejszy nagłówek?</span>
+ +

Powyższy element będzie wyglał jak najważniejszy nagłówek, nie ma wartości semantycznej. Dlatego najlepiej używać elementów HTML zgodnie z ich przeznaczeniem.

+ +

Kod HTML powinien reprezentować dane i nie być oparty na domyślnym stylowaniu. Prezentacja (czyli jak powinny one wyglądać) to zadanie wyłącznie języka CSS.

+ +

Poniżej przedstawiono niektóre zalety poprawnego stosowania semantycznych znaczników:

+ + + +

Gdy zastanawiasz się, który znacznik należy użyć, zapytaj się, "Który element najlepiej określa/reprezentuje zawartość, którą chcę podać?". Na przykład: Czy to lista ponumerowana czy nie? Czy to artykuł podzielony na sekcję i częścią boczną? Czy to lista definicji? Czy to powinno mieć własny nagłówek? Czy ten obrazek potrzebuje podpisu? itp.

+ +

Elementy semantyczne

+ +

Oto niektóre z około 100 elementów semantycznych:

+ + + +

Zobacz także

+ + + + diff --git a/files/pl/glossary/sgml/index.html b/files/pl/glossary/sgml/index.html new file mode 100644 index 0000000000..6036e873ff --- /dev/null +++ b/files/pl/glossary/sgml/index.html @@ -0,0 +1,20 @@ +--- +title: SGML +slug: Glossary/SGML +tags: + - CodingScripting + - Composing + - Glossary + - SGML +translation_of: Glossary/SGML +--- +

Standard Generalized Markup Language (SGML) jest specyfikacją {{Glossary("ISO")}} służącą do definiowania deklaratywnych języków znaczników.

+ +

W sieci, {{Glossary("HTML")}} 4, {{Glossary("XHTML")}} i {{Glossary("XML")}} są popularnymi językami opartymi na SGML. Warto zauważyć, że od piątej edycji HTML nie jest już oparty na SGML i ma własne reguły parsowania.

+ +

Dowiedz się więcej

+ + diff --git a/files/pl/glossary/slug/index.html b/files/pl/glossary/slug/index.html new file mode 100644 index 0000000000..e56c89ccc9 --- /dev/null +++ b/files/pl/glossary/slug/index.html @@ -0,0 +1,15 @@ +--- +title: Slug +slug: Glossary/Slug +translation_of: Glossary/Slug +--- +

Slug to unikalna część identyfikująca adres internetowy, zazwyczaj na końcu adresu URL. W konteście MDN, jest to część URL następująca po "<locale>/docs/".

+ +

Może to być również ostatni składnik, gdy nowy dokument zostanie utworzony w dokumencie nadrzędnym;
+ Na przykład, slug tej strony to: Glossary/Slug .

+ +

Zobacz też:

+ + diff --git a/files/pl/glossary/truthy/index.html b/files/pl/glossary/truthy/index.html new file mode 100644 index 0000000000..9c38aa1f49 --- /dev/null +++ b/files/pl/glossary/truthy/index.html @@ -0,0 +1,34 @@ +--- +title: Prawda (ang. truthy) +slug: Glossary/Truthy +tags: + - JavaScript + - Słownik +translation_of: Glossary/Truthy +--- +

W {{Glossary("JavaScript")}}, prawda jest wartością uważaną za prawdziwą, w  kontekście {{Glossary("Wyrażenie logiczne", "wyrażenia logicznego")}}, reprezentowaną przez wartość wbudowaną true. Z definicji, prawdziwe są wszystkie wartości, z wyjątkiem tych, które są zdefiniowane jako  {{Glossary("Nieprawda", "nieprawdziwe")}} (czyli false, 0, "", null, undefined i NaN).

+ +

{{Glossary("JavaScript")}} używa {{Glossary("Type_Conversion", "konwersji typów")}} w kontekście logicznym.

+ +

Przykładami wartości prawdziwych w JavaScript (które będą przetłumaczone na wbudowaną wartość true i wykonane w bloku if) są:

+ +
if (true)
+if ({})
+if ([])
+if (42)
+if ("foo")
+if (new Date())
+if (-42)
+if (3.14)
+if (-3.14)
+if (Infinity)
+if (-Infinity)
+
+ +

Zobacza też

+ + diff --git a/files/pl/glossary/utf-8/index.html b/files/pl/glossary/utf-8/index.html new file mode 100644 index 0000000000..546a8dc038 --- /dev/null +++ b/files/pl/glossary/utf-8/index.html @@ -0,0 +1,23 @@ +--- +title: UTF-8 +slug: Glossary/UTF-8 +tags: + - CodingScripting + - Glossary + - HTML + - JavaScript + - Utf-8 +translation_of: Glossary/UTF-8 +--- +

UTF-8 (Format Transformacji UCS 8) to najpopularniejsze {{Glossary("Character encoding", "kodowanie znaków")}} w sieci WWW. Każdy znak jest reprezentowany przez jeden do czterech bajtów. UTF-8 jest wstecznie kompatybilny z {{Glossary("ASCII")}} i może reprezentować dowolny standardowy znak Unicode.

+ +

Pierwsze 128 znaków UTF-8 dokładnie odpowiada pierwszym 128 znakom ASCII  (numerowanym 0-127), co oznacza, że istniejący tekst ASCII jest zgodny z UTF-8. Wszystkie pozostałe znaki używają od dwóch do czterech bajtów. Każdy bajt ma kilka bitów zarezerwowanych do celów kodowania. Ponieważ znaki nie-ASCII wymagają do przechowywania więcej niż jednego bajtu, istnieje ryzyko ich uszkodzenia, jeżeli bajty są rozdzielone i nie są ponownie łączone.

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/w3c/index.html b/files/pl/glossary/w3c/index.html new file mode 100644 index 0000000000..663b383e4c --- /dev/null +++ b/files/pl/glossary/w3c/index.html @@ -0,0 +1,26 @@ +--- +title: W3C +slug: Glossary/W3C +tags: + - Community + - Consortium + - Glossary + - Intro + - W3C + - Web consortium +translation_of: Glossary/W3C +--- +

World Wide Web Consortium (W3C) jest międzynarodową organizacją, która utrzymuje zasady i ramy związane z {{Glossary("World Wide Web", "Internetem")}}.

+ +

Składa się z ponad 350 organizacji członkowskich, które wspólnie opracowują standardy sieciowe, uruchamiają programy informacyjne i utrzymują otwarte forum do rozmów o sieci. W3C koordynuje firmy z branży, aby upewnić się, że wdrażają te same standardy W3C.

+ +

Każdy standard przechodzi przez cztery etapy dojrzałości: Working Draft (WD), Candidate Recommendation (CR), Proposed Recommendation (PR) i W3C Recommendation (REC).

+ +

Dowiedz się więcej

+ +

Wiedza ogólna

+ + diff --git a/files/pl/glossary/webgl/index.html b/files/pl/glossary/webgl/index.html new file mode 100644 index 0000000000..2916136704 --- /dev/null +++ b/files/pl/glossary/webgl/index.html @@ -0,0 +1,34 @@ +--- +title: WebGL +slug: Glossary/WebGL +tags: + - Słownik + - WebGL + - grafika webowa + - kodowanie skryptowe + - zaawansowane +translation_of: Glossary/WebGL +--- +

WebGL (Web Graphics Library) jest {{Glossary("JavaScript")}} {{Glossary("API")}}, które umożliwia tworzenie interaktywnych grafik 2D oraz 3D.

+ +

Khronos Group czuwa nad WebGL, którego bazę stanowi {{Glossary("OpenGL")}} ES 2.0.

+ +

WebGL można wywoływać poprzez element {{Glossary("HTML")}} {{HTMLElement("canvas")}}, który zapewnia przestrzeń do renderowania.

+ +

Wszystkie współczesne {{Glossary("Browser","browsers")}} aktualnie wspierają WebGL, ale jego dostępność jest zależna również od zewnętrznych czynników (np. wparcie GPU).

+ +

Więcej informacji

+ +

Informacje ogólne

+ + + +

Artykuły techniczne

+ + diff --git a/files/pl/glossary/world_wide_web/index.html b/files/pl/glossary/world_wide_web/index.html new file mode 100644 index 0000000000..86cb98d7d4 --- /dev/null +++ b/files/pl/glossary/world_wide_web/index.html @@ -0,0 +1,41 @@ +--- +title: World Wide Web +slug: Glossary/World_Wide_Web +tags: + - Glossary + - Infrastructure + - WWW + - World Wide Web +translation_of: Glossary/World_Wide_Web +--- +

World Wide Web—powszechnie nazywane WWW, W3 lub Sieć Web—jest połączonym systemem publicznych stron internetowych dostępnych przez {{Glossary("Internet")}}. Sieć Web nie jest taka sama jak Internet: Sieć jest tylko jedną z wielu aplikacji zbudowanych na szczycie Internetu.

+ +

Tim Berners-Lee zaproponował architekturę tego, co stało się znane jako World Wide Web. W 1990 roku w laboratorium CERN-u stworzył pierwszy {{Glossary("Server","serwer WWW")}}, {{Glossary("Browser","przeglądarkę internetową")}} i stronę internetową na swoim komputerze. W 1991 r. ogłosił swoje dzieło w grupie dyskusyjnej alt.hypertext, zaznaczając moment, w którym zostało po raz pierwszy upublicznione.

+ +

System, który dziś znamy jako "Web" składa się z kilku komponentów:

+ + + +

Linkowanie, czy łączenie zasobów poprzez {{Glossary("Hyperlink","hiperłącza")}}, jest definiowaną koncepcją Sieci Web, wspomagającą jej tożsamość jako zbioru powiązanych ze sobą dokumentów.

+ +

Wkrótce po wynalezieniu sieci Web, Tim Berners-Lee założył {{Glossary("W3C")}} (World Wide Web Consortium) w celu dalszej standaryzacji i rozwoju sieci. Konsorcjum to składa się z głównym grup interesu internetowego, takich jak programiści przeglądarek internetowych, jednostki rządowe, naukowcy i uniwersytety. Jego misja obejmuje edukację i działania informacyjne.

+ +

Dowiedz się więcej

+ +

Poczytaj o tym

+ + + +

Wiedza ogólna

+ + diff --git a/files/pl/gry/index.html b/files/pl/gry/index.html new file mode 100644 index 0000000000..cd9a3cdb47 --- /dev/null +++ b/files/pl/gry/index.html @@ -0,0 +1,84 @@ +--- +title: Tworzenie gier +slug: Gry +translation_of: Games +--- +
{{GamesSidebar}}
+ +
+

Granie w gry od lat należy do naszych najczęstszych aktywności komputerowych. Stale pojawiają się nowe technologie umożliwiające tworzenie lepszych i potężniejszych gier przeglądarkowch.

+
+ +
{{EmbedGHLiveSample("web-tech-games/index.html", '100%', 820)}}
+ +
+
+

Twórz gry przeglądarkowe.

+ +

Witaj w strefie rozwoju gier MDN. W tej części strony możesz znaleźć informacje, które pozwolą ci poznać narzędzia i techniki wykorzystywane do produkcji gier przeglądakrowych. 

+ +
+

Notka: Tworzenie gier bazuje na kilku głównych technologiach internetowych takich jak HTML, CSS i JavaScript. Learning Area jest doskonałym miejscem do poznania ich podstaw.

+
+
+ +
+

Przenieś natywne gry do internetu.

+ +

Jeśli jesteś programistą aplikacji natywnych (na przykład tworzysz gry w C++) i zastanawiasz się jak przenieść swoje aplikacje do internetu, powinieneś zapoznać się z narzędziem Emscripten — kompilatorem LLVM do JavaScript, który który kompiluje kod bajtowy do kodu asm.js.

+ +

Na początek sprawdź:

+ + +
+
+ +
+
+

Przykłady

+ +

Zapraszamy do zapoznania się z przykładami. Więcej informacji i przykładów najdziesz na openwebgames.com.

+
+
+ +

+ +

Zobacz również

+ +
+
+
+
Build New Games
+
Kolaboratywna strona z wieloma przykładami tworzenia i rozwoju gier internetowych. Ostatnio niezbyt aktywna, lecz nadal stanowi swietne źródło informacji.
+
Creative JS
+
Kolekcja przydatnych technik i trików z dziedziny JavaScript. Mimo , że nie odnosi się wyłącznie do tworzenia gier internetwoych, jest doskonałbym źródłem wiedzy.
+
Game programming patterns
+
Książka internetowa napisana przez Bob 'a Nystrom'a, w której autor omawia programistyczne wzorce projektowe w oparciu o rozwój gier internetowych.
+
Gamedev.js Weekly
+
Tygodniowy biuletyn na temat tworzenia gier w HTML5, rozsyłany w każdy piątek. Zawiera najnowsze informacje, artykuły i poradniki.
+
HTML5 Game Devs Forum
+
Forum dla programistów zajmujących się rozwojem gier internetowych. 
+
+
+ +
+
+
HTML5 Game Engine
+
Lista najpopularniejszych platform programistycznych do rozwoju gier w HTML5 wraz z opisami, ocenami oraz przykładami. 
+
JSBreakouts
+
Gra Breakout stworzona w oparciu o napopularniejsze platformy programistyczne do tworzenia gier w HTML5 dającea możliwość porównania i wyboru optymalnego narzędzia.
+
Tuts+ Game Development
+
Artykuły i tutoriale dotyczące rozwoju gier.
+
HTML5 Gamedev Starter
+
Lista przydatnych linków do różnego typu źródeł wiedzy na temat gier HTML5.
+
js13kGames
+
Zawody w tworzeniu gier HTML5 o rozmiarze do 13 KB. Na stornie wiele przykładowych gier.
+
Mozilla Hacks blog
+
Strefa gier na Mozilla Hacks blog zawierająca przydatne artykuły.
+
+
+
diff --git a/files/pl/html/html5/index.html b/files/pl/html/html5/index.html new file mode 100644 index 0000000000..77e7775ce2 --- /dev/null +++ b/files/pl/html/html5/index.html @@ -0,0 +1,172 @@ +--- +title: HTML5 +slug: HTML/HTML5 +tags: + - CSS3 + - HTML + - HTML 5 +translation_of: Web/Guide/HTML/HTML5 +--- +

HTML5 jest najnowszą wersją standardu opisującego język HTML. Termin ten możemy zdefiniować na dwa sposoby:

+ + + +

Zawarta poniżej treść przeznaczona jest do zastosowania przez wszystkich programistów, strona zawiera dużo informacji na temat technologii HTML5, która została opisana w kilku grupach podzielonych według ich funkcji.

+ + + +
+

Semantyka

+ +
+
Elementy sekcji zawarte w dokumencie HTML5
+
Poznaj nowe elementy przedstawiające sekcje dokumentu wprowadzone do HTML5: {{HTMLElement("section")}}, {{HTMLElement("article")}}, {{HTMLElement("nav")}}, {{HTMLElement("header")}}, {{HTMLElement("footer")}} i {{HTMLElement("aside")}}.
+
Zastosowanie elementów audio i video
+
Elementy {{HTMLElement("audio")}} i {{HTMLElement("video")}} pozwalają zagnieżdżać i zarządzać zawartością multimediów.
+
Formularze w HTML5
+
Spojrzenie na ulepszenia formularzy sieciowych w HTML5: wymuszenie poprawności API, kilka nowych atrybutów, nowe wartości dla atrybutów {{HTMLElement("input")}} {{htmlattrxref("type", "input")}} i nowego elementu {{HTMLElement("output")}}.
+
Nowe semantyczne elementy 
+
Obok sekcji, elementów mediów i formularzy, są liczne, nowe elementy takie jak: {{HTMLElement("mark")}}, {{HTMLElement("figure")}}, {{HTMLElement("figcaption")}}, {{HTMLElement("data")}}, {{HTMLElement("time")}}, {{HTMLElement("output")}}, {{HTMLElement("progress")}}, lub {{HTMLElement("meter")}} i {{HTMLElement("main")}}, zwiększenie ilości elementów poprawności HTML 5.
+
Ulepszenia w {{HTMLElement("iframe")}}
+
Używając atrybutów {{htmlattrxref("sandbox", "iframe")}}, {{htmlattrxref("seamless", "iframe")}} i {{htmlattrxref("srcdoc", "iframe")}} , autorzy mogą teraz precyzyjniej określać poziom bezpieczeństwa i pożądane wyświetlanie elementów {{HTMLElement("iframe")}}.
+
MathML
+
Pozwala na bezpośrednie umieszczanie formuł matematycznych.
+
Wprowadzenie do HTML5
+
Ten artykuł pokazuje jak przekazać przeglądarce, że używasz HTML 5 na swojej stronie internetowej lub w aplikacji.
+
Parser zgodny z HTML5
+
Parser, który przetwarza dokument HTML na DOM, został rozszerzony i teraz precyzyjnie definiuje zachowanie we wszystkich przypadkach, nawet w wypadku niepoprawnego HTML-a. To prowadzi do znacznie większej przewidywalności zachowania strony i współpracy między przeglądarkami zgodnymi z HTML 5.
+
+ +

Połączenia

+ +
+
Web Sockets (dwukierunkowa komunikacja z serwerem)
+
Pozwala tworzyć stabilne połączenie pomiędzy stroną i serwerem, i  wymieniać nie-HTML-owe dane.
+
Server-Sent Events (zdarzenia wysłane przez serwer)
+
Pozwala serwerowi na "własnowolne" wysyłanie zdarzeń do klienta, inaczej niż w przypadku klasycznego paradygmatu, w którym serwer mógł wysyłać dane tylko w odpowiedzi na zapytanie klienta.
+
WebRTC
+
Ta technologia, w której RTC oznacza Komunikację Czasu Rzeczywistego(Real-Time Communication), pozwala na łączenie się z innymi i kontrolowanie wideokonferencji bezpośrednio z przeglądarki, bez potrzeby korzystania z wtyczek lub zewnętrznych aplikacji.
+
+ +

Tryb Offline i przechowywanie

+ +
+
Zasoby offline: pamięć cache aplikacji
+
Firefox w pełni wspiera specyfikację zasobów offline HTML5. Większość innych przeglądarek wspiera ją w podobnym stopniu.
+
Zdarzenia online i offline
+
Firefox 3 wspiera zdarzenia WHATWG online i offline, dzięki czemu aplikacje i dodatki mogą wykryć czy istnieje aktywne połączenie internetowe, a także wykrywać kiedy połączenie wygaśnie i kiedy jest aktywne.
+
Sesje WHATWG po stronie klienta i trwałe przechowywanie (aka Magazyn DOM)
+
Sesje po stronie klienta i trwałe magazynowanie pozwalają aplikacjom sieciowym przechowywać dane strukturalne po stronie klienta.
+
IndexedDB
+
IndexedDB jest sieciowym standardem przechowywania znacznych ilości danych strukturalnych w przeglądarce i wysokiej wydajności wyszukiwania w tych danych za pomocą indeksów.
+
Używanie plików z aplikacji internetowych
+
Wsparcie dla nowego API plików HTML5 zostało dodane do Gecko, tworząc możliwość dostępu aplikacji internetowych do plików lokalnych wybranych przez użytkownika. Obejmuje też wsparcie dla wielokrotnego wyboru plików z użyciem {{HTMLElement("input")}} z atrybutem type file i nowym atrybutem elementu: multiple. Istnieje także FileReader.
+
+ +

Multimedia

+ +
+
Zastosowanie elementów audio i video w HTML5
+
Znaczniki {{HTMLElement("audio")}} i {{HTMLElement("video")}} pozwalają osadzać i manipulować nowymi zawartościami multimedialnymi.
+
WebRTC
+
Ta technologia, w której RTC oznacza Komunikację Czasu Rzeczywistego(Real-Time Communication), pozwala na łączenie się z innymi i kontrolowanie wideokonferencji bezpośrednio z przeglądarki, bez potrzeby korzystania z wtyczek lub zewnętrznych aplikacji.
+
Używanie API kamery internetowej
+
Pozwala używać, manipulować i przechowywać obrazy z kamerki komputerowej.
+
Track and WebVTT
+
Znacznik {{HTMLElement("track")}} pozwala  tworzyć napisy i rozdziały. WebVTT jest formatem ścieżek tekstowych.
+
+ +

EFEKTY I GRAFIKA 3D

+ +
+
Przewodnik po Canvas
+
Informacje o nowym elemencie {{HTMLElement("canvas")}} wraz z opisem jak działa użyty do rysowania grafik i obiektów w Firefoksie.
+
HTML5 text API dla elementów <canvas>
+
HTML5 text API jest teraz wspierane przez elementy {{HTMLElement("canvas")}}.
+
WebGL
+
WebGL przenosi grafikę 3D do sieci poprzez wprowadzenie API, które ściśle odpowiada OpenGl ES 2.0 i może być używane w znacznikach HTML5 {{HTMLElement("canvas")}}.
+
SVG (Scalable Vector Graphics) - skalowalna grafika wektorowa
+
Bazujący na XML-u format grafiki wektorowej, który może być bezpośrednio osadzony w HTML-u.
+
+ +
+

WYDAJNOŚĆ i iNTEGRACJA

+ +
+
Web Workers
+
Umożliwia przekazanie działania JavaScript do wątków w tle, dzięki czemu zapobiega spowalnianiu wydarzeń interaktywnych.
+
XMLHttpRequest Poziom 2
+
Umożliwia asynchroniczne pobieranie części strony, co umożliwia wyświetlanie elementów dynamicznych, zmieniających się w zależności od czasu i działań użytkownika. Jest to "następca" Ajax-a.
+
JIT-compiling JavaScript engines (kompilowalne silniki JavaScript)
+
Nowa generacja silników JavaScript jest o wiele potężniejsza i ma świetną wydajność.
+
API do obsługi przycisku wstecz (History API)
+
Pozwala manipulować historią przeglądania. Jest użyteczne zwłaszcza na stronach ładujących interaktywnie nowe informacje.
+
Atrybut contentEditable: przekształć swoją stronę w encyklopedię!
+
HTML5 ustandaryzował atrybut contentEditable. Dowiedz się więcej o tej właściwości.
+
Przeciągnij i upuść
+
API 'przeciągnij i upuść' w HTML5 wspiera przeciąganie i upuszczanie elementów wewnątrz strony i pomiędzy stronami. Upraszcza to także API dla dodatków i aplikacji bazujących na technologiach Mozilli.
+
Zarządzanie aktywnością w HTML
+
Nowe atrybuty HTML5 activeElement i hasFocus są już wspierane.
+
Obsługa protokołów opartych na sieci
+
Możesz teraz zarejestrować aplikacje internetowe jako obsługę protokołów używając funkcji navigator.registerProtocolHandler().
+
requestAnimationFrame
+
Pozwala kontrolować renderowanie animacji dla uzyskania optymalnej wydajności.1
+
Pełnoekranowe API
+
Kontroluje użycie całego ekranu dla stron internetowych lub aplikacji sieciowych bez wyświetlania UI przeglądarki.
+
Blokowanie kursora
+
Powala zablokować wskaźnik do zawartości, więc  gry i podobne aplikacje nie utracą aktywności kiedy kursor będzie na granicy okna.
+
Zdarzenia online i offline
+
Aby stworzyć dobrze obsługującą tryb offline aplikację internetową trzeba wiedzieć, kiedy aplikacja jest rzeczywiście offline. Prawdę mówiąc, musisz wiedzieć też, kiedy aplikacja powróci do stanu online.
+
+ +

DOSTĘP DO URZĄDZENIA

+ +
+
+
Używanie API kamery internetowej
+
Pozwala używać, manipulować i przechowywać obrazy z kamerki komputerowej.
+
Zdarzenia dotykowe
+
Narzędzia do obsługi zdarzeń tworzonych przez użytkownika używającego ekranu dotykowego.
+
Geolokacja
+
Pozwól przeglądarce zlokalizować pozycję użytkownika przy użyciu geolokacji.
+
Wykrywanie orientacji urządzenia
+
Pobierz informację o zmianie orientacji urządzenia na którym pracuje przeglądarka. Może ona być użyta jako urządzenie wejściowe( np w grach reagujących na zmianę pozycji urządzenia) lub służyć przystosowaniu layoutu strony do aktualnej orientacji urządzenia (portrait lub landscape)
+
+
Blokowanie kursora
+
Powala zablokować wskaźnik do zawartości, więc  gry i podobne aplikacje nie utracą aktywności kiedy kursor będzie na granicy okna.
+
+ +

stylizacja

+ +

CSS zostało rozszerzone, aby móc o wiele wygodniej stylizować elementy. Jest często nazywane CSS3, choć CSS nie jest monolitycznym tworem, w którym wszystkie elementy są na poziomie 3. Część jest na poziomie 1, część na 4, Lub którymś z poziomów pośrednich.

+ +
+
Nowe właściwości stylizacji tła
+
Teraz jest możliwe dodanie cienia do box-ów używając {{cssxref("box-shadow")}}, a także można ustawić wielokrotne tło.
+
Bardziej fantazyjne obramowania
+
Teraz nie tylko możliwe jest stylizowanie obramowań za pomocą obrazów, używając {{cssxref("border-image")}} i związanych z pismem odręcznym właściwościami, ale także zaokrąglenia obramowań są wspierane przez właściwość {{cssxref("border-radius")}}.
+
Wpraw w ruch swój styl
+
Używając Przejść CSS do animacji przejść pomiędzy różnymi stanami lub używając Animacji CSS do animowania części strony, bez zdarzenia wywołującego, możesz teraz kontrolować elementy interaktywne na twojej stronie.
+
Poprawa typografii Typography improvement
+
Autorzy mają większą kontrolę dla osiągnięcia lepszej typografii. Mogą kontrolować {{cssxref("text-overflow")}} i dzielenie wyrazów, a także mogą dodawać cienie i precyzyjniej kontrolować dekoracje tekstu. Niestandardowe kroje można pobrać i zastosować za pomocą {{cssxref("@font-face")}}.
+
Nowe, prezentacyjne layouty
+
W celu polepszenia elastyczności designów zostały dodane dwa nowe layouty: CSS multi-column layout(wielokolumnowy layout CSS) i CSS flexible box layout(layout elastycznego pudełka CSS).
+
+
+
+ +
+
+
diff --git a/files/pl/ikony_okna/index.html b/files/pl/ikony_okna/index.html new file mode 100644 index 0000000000..f354f1e484 --- /dev/null +++ b/files/pl/ikony_okna/index.html @@ -0,0 +1,19 @@ +--- +title: Ikony okna +slug: Ikony_okna +tags: + - Dodatki + - Rozszerzenia + - Toolkit API + - Wszystkie_kategorie + - XPInstall + - XUL +translation_of: Archive/Mozilla/XUL/Window_icons +--- +

+

Pracując z Firefox 1.5, Thunderbird 1.5, i XULRunner 1.8, możesz określić ikonę dla okna XUL poprzez nazwanie plików <tt>mywindow.ico</tt> (dla Windows) i <tt>mywindow.xpm</tt> (Linux), gdzie: mywindow jest id okna (<window>), do którego chcesz dołączyć ikonę umieszczoną w podkatalogu <tt>chrome/icons/default</tt> Twojej paczki. +

Te ikony nadpiszą globalne pliki ikon, które są umieszczona w <tt>app_dir/chrome/icons/default</tt>. +

+

Starsze wersje

+

Do obsługi starszych aplikacji, takich jak Firefox 1.0, będzie trzeba najpierw wykonać kopię ikony i ręcznie przenieść ją do <tt>app_dir/chrome/icons/default</tt> (przykładowy kod). +

diff --git "a/files/pl/istotne_b\305\202\304\231dy_poprawione_w_firefoksie_3/index.html" "b/files/pl/istotne_b\305\202\304\231dy_poprawione_w_firefoksie_3/index.html" new file mode 100644 index 0000000000..f774d5c25b --- /dev/null +++ "b/files/pl/istotne_b\305\202\304\231dy_poprawione_w_firefoksie_3/index.html" @@ -0,0 +1,34 @@ +--- +title: Istotne błędy poprawione w Firefoksie 3 +slug: Istotne_błędy_poprawione_w_Firefoksie_3 +tags: + - Strony_wymagające_dopracowania +translation_of: Mozilla/Firefox/Releases/3/Notable_bugs_fixed +--- +
{{FirefoxSidebar}}
+ +

W tym artykule przedstawiono listę ważnych błędów, które zostały poprawione w Firefoksie 3, lecz nie zostały szczegółowo uwzględnione w dokumentacji.

+ + + +

Zobacz również

+ + diff --git a/files/pl/javaxpcom/index.html b/files/pl/javaxpcom/index.html new file mode 100644 index 0000000000..0f1019e4f6 --- /dev/null +++ b/files/pl/javaxpcom/index.html @@ -0,0 +1,28 @@ +--- +title: JavaXPCOM +slug: JavaXPCOM +tags: + - JavaXPCOM + - Wszystkie_kategorie + - 'XPCOM:Language Bindings' +translation_of: Mozilla/Tech/XPCOM/Language_bindings/JavaXPCOM +--- +
+

JavaXPCOM pozwala na komunikacje pomiędzy Javą i XPCOM, such that a Java application can access XPCOM objects, and XPCOM can access any Java class that implements an XPCOM interface. With JavaXPCOM, a developer can talk to XPCOM or embed Gecko from a Java application. JavaXPCOM is very similar to XPConnect (JavaScript-XPCOM bridge), and uses XPIDL.

+

JavaXPCOM is now built by default as part of XULRunner. Pobierz ostatni build XULRunner 1.8.0.4, aby go wypróbować.

+
+ +

Dokumentacja

Programowanie JavaXPCOM
How to get and build the source, as well as how to view and report bugs.
Przykładowy kod
There are several Java test applications checked in to the tree that give examples on how to embed Gecko or init XPCOM from within Java.

; Embedding Mozilla in a Java Application using JavaXPCOM: <small>XULRunner ships with the JavaXPCOM component, which allows Java code to interact with XPCOM objects. As you will see in this article, working with XPCOM objects in Java is not that much different than doing so in C++.</small> Pokaż wszystkie...

Społeczność

  • Obejrzyj fora Mozilli...

  • Obejrzyj zagnieżdżone fora Mozilli...

Powiązane tematy

XPCOM, Zagnieżdżanie Mozilli
+

diff --git a/files/pl/json/index.html b/files/pl/json/index.html new file mode 100644 index 0000000000..6d023ee69c --- /dev/null +++ b/files/pl/json/index.html @@ -0,0 +1,59 @@ +--- +title: JSON +slug: JSON +translation_of: Glossary/JSON +--- +

JSON (JavaScript Object Notation) jest formatem wymiany danych. Przypomina podzbiór składni JavaScriptu, choć nie jest nim w ścisłym sensie tego terminu. (Zobacz JSON w Dokumentacji JavaScript aby poznać szczegóły). Użyteczny w dowolnym rodzaju aplikacji opartej o JavaScript, m.in. na stronach internetowych i w rozszerzeniach przeglądarek. Przykładowo, dane użytkownika w formacie JSON mogą być przechowywane w ciasteczku (cookie), zaś preferencje rozszerzenia mogą być przechowywane w formacie JSON przez przeglądarkę.

+

JSON może przechowywać liczby (number), wartości logiczne (boolean), ciagi znaków (string), null, tablice (uporządkowane sekwencje wartości) oraz obiekty (zbiory odwzorowań ciąg znaków-wartość) złożone z powyższych wartości (lub z innych tablic i obiektów). Nie definiuje naturalnej reprezentacji dla bardziej złożonych typów danych, jak funkcje, wyrażenia regularne, daty itd. (Obiekty typu Date są domyślnie serializowane w postaci ciągu znaków zawierającego datę w formacie ISO, zatem choć nie zostają odtworzone w oryginalnym formacie, informacja nie jest bezpowrotnie tracona). Gdy niezbędne jest przechowanie tego rodzaju danych, można przekształcić wartości w momencie serializacji, lub przed ich deserializacją, umożliwiając w ten sposób przechowanie w JSON dodatkowych typów danych.

+

Użycie JSON poprzez obiekt JSON w JavaScripcie

+

Najprościej użyć JSON za pośrednictwem standardowego obiektu JSON w JavaScripcie. Użyj JSON.stringify do serializacji wartości w formacie JSON, natomiast do deserializacji - JSON.parse.

+

Na przykład, do serializacji obiektu JavaScript używamy metody JSON.stringify():

+
var foo = {};
+foo.bar = "new property";
+foo.baz = 3;
+
+var JSONfoo = JSON.stringify(foo);
+
+

JSONfoo ma teraz postać {"bar":"new property","baz":3}. Aby przywrócić JSONfoo do postaci obiektu JavaScript wystarczy wykonać:

+
var backToJS = JSON.parse(JSONfoo);
+
+

Więcej informacji znajdziesz w dokumentacji obiektu JSON.

+

Metoda toJSON()

+

Jeśli obiekt definiuje metodę toJSON(), wówczas JSON.stringify wywoła tę metodę aby określić reprezentację obiektu w formacie JSON. Na przykład:

+
x = {};
+x.foo = "foo";
+x.toJSON = function() { return "bar"; };
+var json1 = JSON.stringify(x);
+
+

json1 zawiera teraz '"bar"'.

+

Ograniczenia

+

Nie można serializować obiektu zawierającego funkcje. Specyfikacja JSON nie pozwala na takie działanie. Na przykład:

+
foo.qwerty = function(){alert('foobar');};
+foo.qwerty()
+var JSONfoo = JSON.toString(foo);
+
+

zwróci błąd TypeError on line XXX: No JSON representation for this object!

+

Użycie JSON poprzez nsIJSON

+

Wersje Firefoksa wcześniejsze niż 3.5 nie zawierały wsparcia dla formatu JSON, zaś jedynym sposobem dotarcia do funkcjonalności JSON było wykorzystanie komponentu nsIJSON, dostępnego począwszy od Firefox 3. Kodowanie i dekodowanie wykonywane są przez metody encode i decode komponentu nsIJSON. Metody te zakresem możliwości ustępują metodom dostarczanym przez obiekt JSON, zapewniając wsparcie jedynie tablicom i obiektom, z pominięciem ciągów znaków, wartości logicznych, liczb, czy null. (Wymienione wartości są obsługiwane jedynie wewnątrz tablic i obiektów: sama liczba 5 nie zadziała, lecz obiekt { "value": 5 } już tak).

+

Ze względu na ograniczenia nsIJSON, jego metody encode i decode zostały usunięte począwszy od wersji Firefox 7. Deweloperom zaleca się używanie obiektu JSON.

+

Poniższy kod serializuje obiekt JavaScript przy użyciu nsIJSON:

+
var Ci = Components.interfaces;
+var Cc = Components.classes;
+
+var foo = {};
+foo.bar = "new property";
+foo.baz = 3;
+
+var nativeJSON = Cc["@mozilla.org/dom/json;1"].createInstance(Ci.nsIJSON);
+var JSONfoo = nativeJSON.encode(foo);
+
+

Zmienna JSONfoo przyjmuje teraz wartość {"bar":"new property","baz":3}. Aby stworzyć obiekt odpowiadający JSONfoo, wystarczy wykonać:

+
var backToJS = nativeJSON.decode(JSONfoo);
+
+

Inne sposoby użycia JSON

+

Choć teoretycznie możliwe jest użycie JSON korzystając z eval (lecz tylko do deserializacji do obiektu, nie do serializacji do postaci ciągu znaków), lub z json2.js, nie jest to dobrym pomysłem. Parsowanie JSON przy użyciu eval nie jest bezpieczne, gdyż eval dopuszcza znacznie więcej rodzajów składni niż JSON (w tym nawet wykonywanie całkiem arbitralnego fragmentu kodu). Z kolei problemem json2.js jest dodawanie metod do wbudowanych obiektów, jak Object.prototype, co może skutkować błędami w kodzie, w którym nie przewidziano z góry takiej możliwości. Dlatego w niemal wszystkich przypadkach zaleca się pozostanie przy normalnych metodach użycia JSON. 

+

Zobacz także

+ +

{{ languages( { "ja": "ja/JSON", "zh-cn": "zh-cn/JSON" } ) }}

diff --git "a/files/pl/konsola_b\305\202\304\231d\303\263w/index.html" "b/files/pl/konsola_b\305\202\304\231d\303\263w/index.html" new file mode 100644 index 0000000000..09ffa36387 --- /dev/null +++ "b/files/pl/konsola_b\305\202\304\231d\303\263w/index.html" @@ -0,0 +1,23 @@ +--- +title: Konsola błędów +slug: Konsola_błędów +tags: + - 'JavaScript:Narzędzia' + - 'Programowanie_WWW:Narzędzia' + - 'Rozszerzenia:Narzędzia' +translation_of: Archive/Mozilla/Error_console +--- +

Konsola błędów to narzędzie dostępne w większości aplikacji opartych na technologiach Mozilli, które służy do powiadamiania o błędach w warstwie chrome aplikacji oraz na otwartych przez użytkownika stronach WWW. Zgłąszane są błędy i ostrzeżenia związane z JavaScriptem, błędy w arkuszach CSS oraz różne komunikaty z kodu warstwy chrome.

+

Przed Gecko 1.8.1 (tj. w programach starszych niż Firefox 2), konsola ta nazywana była "Konsolą JavaScript" (zob. {{ Bug(265871) }}).

+

Rozszerzenie Console2 jest zamiennikiem wbudowanej konsoli błędów, poprawiającym szereg błędów i wprowadzającym wiele długo oczekiwanych funkcji.

+

Rodzaje błędów

+ +

Manipulowanie danymi wyświetlanymi w konsoli błędów

+

Dostęp do informacji wyświetlanych w konsoli błędów możliwy jest z poziomu interfejsu nsIConsoleService. Prostszym sposobem na dodawanie komunikatów do konsoli jest metoda Components.utils.reportError, albo, jeśli chcemy korzystać z konsoli systemu operacyjnego, dump().

+

Aby otworzyć okno konsoli błędów z poziomu okna przeglądarki lub klienta poczty, należy użyć funkcjitoJavaScriptConsole().

+
+  
diff --git a/files/pl/learn/accessibility/index.html b/files/pl/learn/accessibility/index.html new file mode 100644 index 0000000000..6f11284331 --- /dev/null +++ b/files/pl/learn/accessibility/index.html @@ -0,0 +1,62 @@ +--- +title: Accessibility +slug: Learn/Accessibility +tags: + - ARIA + - Accessibility + - Articles + - Beginner + - CSS + - CodingScripting + - HTML + - JavaScript + - Landing + - Learn + - Module + - NeedsTranslation + - TopicStub +translation_of: Learn/Accessibility +--- +
{{LearnSidebar}}
+ +

Learning some HTML, CSS, and JavaScript is useful if you want to become a web developer, but your knowledge needs to go further than just using the technologies — you need to use them responsibly so that you maximize the audience for your websites and don't lock anyone out of using them. To achieve this, you need to adhere to general best practices (which are demonstrated throughout the HTML, CSS, and JavaScript topics), do cross browser testing, and consider accessibility from the start. In this module we'll cover the latter in detail.

+ +

Prerequisites

+ +

To get the most out of this module, it would be a good idea to either work through at least the first two modules of the HTML, CSS, and JavaScript topics, or perhaps even better, work through the relevant parts of the accessibility module as you work through the related technology topics.

+ +
+

Note: If you are working on a computer/tablet/other device where you don't have the ability to create your own files, you can try out most of the code examples in an online coding program such as JSBin or Thimble.

+
+ +

Guides

+ +
+
What is accessibility?
+
This article starts the module off with a good look at what accessibility actually is — this includes what groups of people we need to consider and why, what tools different people use to interact with the web, and how we can make accessibility part of our web development workflow.
+
HTML: A good basis for accessibility
+
A great deal of web content can be made accessible just by making sure the correct HTML elements are used for the correct purpose at all times. This article looks in detail at how HTML can be used to ensure maximum accessibility.
+
CSS and JavaScript accessibility best practices
+
CSS and JavaScript, when used properly, also have the potential to allow for accessible web experiences, but if misused they can significantly harm accessibility. This article outlines some CSS and JavaScript best practices that should be considered to ensure that even complex content is as accessible as possible.
+
WAI-ARIA basics
+
Following on from the previous article, sometimes making complex UI controls that involve unsemantic HTML and dynamic JavaScript-updated content can be difficult. WAI-ARIA is a technology that can help with such problems by adding in further semantics that browsers and assistive technologies can recognize and use to let users know what is going on. Here we'll show how to use it at a basic level to improve accessiblity.
+
Accessible multimedia
+
Another category of content that can create accessibility problems is multimedia — video, audio, and image content need to be given proper textual alternatives so they can be understood by assistive technologies and their users. This article shows how.
+
Mobile accessibility
+
With web access on mobile devices being so popular, and popular platforms such as iOS and Android having fully-fledged accessibility tools, it is important to consider the accessibility of your web content on these plartforms. This article looks at mobile-specific accessibility considerations.
+
+ +

Assessments

+ +
+
Accessibility troubleshooting
+
In the assessment for this module, we present to you a simple site with a number of accessibility issues that you need to diagnose and fix.
+
+ +

See also

+ + diff --git a/files/pl/learn/accessibility/what_is_accessibility/index.html b/files/pl/learn/accessibility/what_is_accessibility/index.html new file mode 100644 index 0000000000..c9461540df --- /dev/null +++ b/files/pl/learn/accessibility/what_is_accessibility/index.html @@ -0,0 +1,193 @@ +--- +title: Czym jest dostępność? +slug: Learn/Accessibility/What_is_accessibility +tags: + - AT + - CSS + - Dostępność + - HTML + - JavaScript + - artykuł + - czytnik ekranu + - technologie wspomagające + - użytkownicy +translation_of: Learn/Accessibility/What_is_accessibility +--- +
{{LearnSidebar}}
+ +
{{NextMenu("Learn/Accessibility/HTML", "Learn/Accessibility")}}
+ +

Niniejszy artykuł stanowi wstęp do modułu i jednocześnie obszerną odpowiedź na pytanie, czym właściwie jest dostępność — w tym jakie grupy ludzi powinniśmy brać pod uwagę i dlaczego, jakich narzędzi używają oni do interakcji z siecią oraz jak uczynić dostępność częścią naszej organizacji zadań.

+ + + + + + + + + + + + +
WymaganiaPodstawowe umiejętności obsługi komputera, podstawowa znajomość HTML i CSS.
Cel:Zaznajomienie z ideą dostępności, z uwzględnieniem jej definicji oraz wpływu na pracę programisty Web.
+ +

Czym więc jest dostępność?

+ +

Dostępność jest praktyką dostosowywania stron internetowych do użytku przez tak wielu ludzi, jak jest to możliwe — przyjęło się, że mamy w tym miejscu na myśli osoby niepełnosprawne, jednak w praktyce pojęcie to odwołuje się też do ludzi używających urządzeń mobilnych czy tych z wolnym połączeniem sieciowym.

+ +

Możemy myśleć o dostępności jako o zapewnieniu tych samych możliwości wszystkim ludziom, bez względu na ich ograniczenia. W taki sam sposób, w jaki nie jest w porządku wykluczenie kogoś z korzystania z budynku, ponieważ porusza się on na wózku inwalidzkim (obecnie większość budynków publicznych posiada podjazdy dla wózków inwalidzkich albo windy), nie jest w porządku wykluczenie z używania strony internetowej osoby z ograniczeniami wzroku lub używającej urządzenia z małym wyświetlaczem. Każdy z nas jest inny, ale przecież wszyscy jesteśmy ludźmi, mamy więc te same (ludzkie) prawa.

+ +

Toteż dostępność jest czymś co po prostu powinniśmy robić, bo jest właściwe. Z drugiej strony w niektórych państwach obowiązują wymogi prawne wymuszające jej stosowanie, dostępność może też pomóc w dotarciu do ważnych grup docelowych, które bez niej nie będą w stanie używać naszych usług, kupować naszych produktów itd.

+ +

Dostępność i dobre praktyki które pociąga ona za sobą mogą przynieść korzyść każdemu:

+ + + +

Jakie rodzaje ograniczeń bierzemy pod uwagę?

+ +

Ludzie z niepełnosprawnościami są równie bardzo zróżnicowani jak ludzie bez nich, również pod względem swoich ograniczeń. Kluczową lekcją jest tutaj myślenie wykraczające poza schemat naszego codziennego użytkowania Internetu na naszym komputerze i zastanowienie się nad tym, jak robią to inni —użytkownicy naszych stron to nie my. Główne rodzaje niepełnosprawności które należy rozważyć są opisane poniżej, wraz ze specjalnymi narzędziami, które ułatwiają cierpiącym na nie ludziom dostęp do treści internetowej (znane jako technologie wspomagające, ang. AT - assistive technologies).

+ +
+

Uwaga: Według dokumentu Disability and health Światowej Organizacji Zdrowia, „ponad miliard ludzi, około 15% światowej populacji, posiada jakąś formę niepełnosprawności” i „od 110 do 190 milionów dorosłych boryka się ze znacznymi trudnościami w funkcjonowaniu”.

+
+ +

Osoby niepełnosprawne wzrokowo

+ +

Ta grupa obejmuje użytkowników z ślepotą, obniżoną ostrością wzroku, daltonizmem itp. Wielu z nich używa powiększalników (zarówno fizycznych urządzeń, jak i programów typu lupa ekranowa — większość współczesnych przeglądarek i systemów operacyjnych ma taką funkcjonalność), inni korzystają z czytników ekranu, czyli oprogramowania umożliwiającego odsłuchanie treści tekstowej strony. Wśród nich wyróżniamy:

+ + + +

Dobrym pomysłem jest zapoznanie się działaniem czytników ekranowych, na przykład poprzez skonfigurowanie takiego czytnika na swoim urządzeniu i eksperymentowanie z różnymi rodzajami odczytywanej treści. Więcej informacji o ich używaniu można znaleźć w naszych testach obsługi czytników ekranu w różnych przeglądarkach, a poniższy film prezentuje doświadczenie używania takiego programu.

+ +

{{EmbedYouTube("IK97XMibEws")}}

+ +

Pod względem statystycznym, według Światowej Organizacji Zdrowia „szacuje się, że 285 milionów ludzi na całym świecie jest niedowidzących: 39 milionów cierpi na ślepotę, a 246 ma obniżoną ostrość wzroku.” (zob. Visual impairment and blindness). To bardzo liczna i znacząca grupa użytkowników, do których możemy nie dotrzeć z powodu nieprawidłowo wykonanej strony internetowej — niemal tak liczna jak populacja Stanów Zjednoczonych.

+ +

Osoby niepełnosprawne słuchowo

+ +

Znane także jako osoby niedosłyszące, osoby głuche. Ci użytkownicy charakteryzują się problemami ze słuchem lub całkowitym brakiem zdolności słuchowych i wprawdzie używają oni technologii wspomagających (zob. Assistive Devices for People with Hearing, Voice, Speech, or Language Disorders), nie istnieją żadne ułatwienia tego typu zadedykowane użytkowaniu komputera/Internetu.

+ +

Warto więc mieć na uwadze techniki zapewniania wizualnej alternatywy dla dźwiękowej treści strony, takie jak transkrypty nagrań czy napisy wyświetlane na filmach. Jeden z kolejnych artykułów porusza ten temat.

+ +

Osoby z zaburzeniami słuchu również stanowią znaczącą grupę odbiorców — jak podaje Światowa Organizacja Zdrowia w Deafness and hearing loss, „360 milionów ludzi na całym świecie jest niepełnosprawnych słuchowo”.

+ +

Osoby niepełnosprawne ruchowo

+ +

Ci użytkownicy odznaczają się ograniczeniami ruchowymi, które mają zarówno typowo fizyczne przyczyny (takie jak utrata kończyny czy paraliż) jak i neurologiczne/genetyczne, prowadzące do osłabienia zmniejszającego zdolności ruchowe lub niedowładu kończyn. Niektórym osobom mogą sprawiać trudność precyzyjne ruchy dłoni wymagane do operowania myszką, podczas gdy inne dotknięte są poważniejszymi upośledzeniami,  na przykład byciem sparaliżowanym w takim stopniu, że interakcja z komputerem jest niemożliwa bez używania head pointera.

+ +

Ten rodzaj utrudnień dostępu może być również następstwem podeszłego wieku lub wynikać z ograniczeń sprzętowych — niektórzy użytkownicy mogą nie posiadać myszki.

+ +

W praktyce programisty Web, odpowiedź na niepełnosprawność ruchową użytkownika oznacza najczęściej wdrożenie możliwości nawigowania po stronie za pomocą klawiatury — zajmiemy się tym zagadnieniem w dalszej części modułu, natomiast teraz polecamy mały test poruszania się po kilku stronach internetowych bez użycia myszki. Podczas niego zwracajmy uwagę na kwestie typu: czy możemy przemieszczać się między różnymi polami formularza używając klawisza tab? Więcej o nawigacji na stronach internetowych za pomocą klawiatury możesz znaleźć w naszych testach obsługi ułatwień dostępu za pomocą klawiatury w różnych przeglądarkach.

+ +

Jeśli chodzi o statystyki, znaczący odsetek ludzi posiada ograniczenia ruchowe. Zgodnie z oceną Amerykańskiego Ośrodka Kontroli Chorób w artykule Disability and Functioning (Noninstitutionalized Adults 18 Years and Over, „odsetek dorosłych z borykających się z ograniczeniami ruchu: 15,1%”.

+ +

Osoby z zaburzeniami funkcji poznawczych

+ +

Do tej ostatniej kategorii należy prawdopodobnie najszerszy zakres różnych niepełnosprawności — pojęcie zaburzeń funkcji poznawczych pokrywa szereg utrudnień w funkcjonowaniu, od chorób psychicznych, trudności w uczeniu się, trudności w rozumieniu i koncentracji takich jak ADHD (zespół nadpobudliwości z deficytem uwagi), do spektrum autystycznego, schizofrenii i wielu innych typów zaburzeń. Tego rodzaju utrudnienia mogą mieć wpływ na wiele aspektów codziennego życia związanych z pamięcią, rozwiązywaniem problemów, rozumieniem, skupieniem uwagi itp.

+ +

Osoby z takimi niepełnosprawnościami mogą mieć problemy ze zrozumieniem tego jak wykonać konkretną czynność na stronie, pamiętaniem jak zrobiły to poprzednim razem lub wzrostem rozdrażnienia spowodowanego dezorientującą dla nich organizacją pracy i niespójnymi elementami układu i interfejsu strony.

+ +

W przeciwieństwie do poprzednich zagadnień dostępności, w tym przypadku niemożliwe jest zdefiniowanie szybkich i prostych technik ułatwiającym użytkowanie strony takim osobom; zamiast tego należy zadbać o zaprojektowanie strony w sposób jak najbardziej logiczny, konsekwentny i prosty w użytku, na przykład przez upewnienie się, że:

+ + + +

Powyższe zasady nie są tak naprawdę „technikami zapewnienia dostępności” — są po prostu dobrymi praktykami projektowania stron. Usprawnią korzystanie z naszej strony wszystkim użytkownikom i powinny być stałym standardem naszej pracy.

+ +

Jeśli chodzi o statystyki, znów mamy do czynienia z wyraźnym odsetkiem ludzi. 2014 Disability Status Report (PDF, 511KB) przygotowany przez Uniwersytet Cornella wskazuje, że w 2014 roku 4,5% populacji USA w przedziale wiekowym 21–64 lat borykała się z jakąś formą zaburzenia funkcji poznawczych.

+ +
+

Note: Na stronie WebAIM's Cognitive znajduje się szersze omówienie powyższych praktyk, zdecydowanie polecamy się z nią zapoznać.

+
+ +

Wdrażanie dostępności

+ +

Powszechnie panującym (i przeważnie błędnym) jest przekonanie, że dostępność jest drogim „ekstra dodatkiem” do projektu. To przekonanie może być prawdziwe, jeśli:

+ + + +

Jeśli jednak rozważamy dostępność od samego początku projektu, koszt jej implementacji powinien być dosyć niski.

+ +

Już na etapie planowania naszego projektu ustalmy dostępność jako stały element rutyny testowania i to element równie ważny, co pozostałe czynniki wpływające na odbiór strony w ważnych grupach docelowych (np. użytkowników komputerów stacjonarnych czy przeglądarek mobilnych). Testujmy ją często, poczynając od wczesnych etapów projektu, najlepiej wspomagając się automatycznymi testami poszukujących zdefiniowanych wcześniej błędów (takich jak brakujący tekst alternatywny przy obrazkach czy błędna budowa linku — zob. Relacje między elementami a kontekst). Nie zapominajmy też o przeprowadzaniu testów z grupami niepełnosprawnych użytkowników w celu przekonać się, jak radzą sobie oni z bardziej złożonymi funkcjonalnościami strony. Na przykład:

+ + + +

Możemy i powinniśmy sporządzać listy potencjalnych problemów w projekcie, które wymagać będą wypracowania dostępności. Upewnijmy się, że zostaną starannie przetestowane i pomyślmy o rozwiązaniach/alternatywach. Zawartość tekstowa (o czym przekonamy się w następnym artykule) jest łatwa do wypracowania dostępności, ale co z multimediami czy nowatorskimi grafikami 3D? Powinniśmy wziąć pod uwagę budżet projektu i racjonalnie podejść do wyboru możliwych do zrealizowania ułatwień dostępności. Możemy np. zapłacić za transkrypcję wszystkich plików dźwiękowych, co będzie drogie, ale jak najbardziej możliwe do zrealizowania.

+ +

Poza tym, bądźmy realistyczni. „Stuprocentowa dostępność” jest nieosiągalnym celem — nie unikniemy sytuacji, w których dla wielu testujących użytkowników jakaś funkcjonalność strony ciągle będzie trudna do użytkowania — jednak powinniśmy zrobić tak dużo, jak jesteśmy w stanie. Jeśli planujemy zawrzeć na stronie trójwymiarowy wykres kołowy stworzony z użyciem WebGL, możemy np. zamieścić też tabelkę z danymi jako bardziej dostępną alternatywę. Możemy też zawrzeć samą tabelkę i pozbyć się wykresu 3D — tabelka jest łatwo dostępna dla wszystkich, szybsza w wykonaniu, zużywa mniej zasobów i łatwiejsza do późniejszej edycji.

+ +

Z drugiej strony, jeśli pracujemy nad galerią internetową zawierającą ciekawe trójwymiarowe obrazy, nieracjonalnie byłoby oczekiwać, że uda się nam wypracować dostępność każdego z dzieł sztuki dla osób z zaburzeniami wzroku, w końcu jest to czysto wizualny środek przekazu.

+ +

Możemy pokazać użytkownikom, że staramy się zapewnić im jak najwięcej ułatwień dostępu — na przykład przez dodanie komunikatu wyjaśniającego, że staramy się robić wszystko co w naszej mocy, aby ułatwić im korzystanie ze strony, oraz jakie kroki poczyniliśmy, aby to osiągnąć. Jeśli ktoś zgłasza skargę na utrudnienia na naszej stronie, bądźmy empatyczni, gotowi na otwarcie dialogu, a w razie możliwości podejmijmy właściwe kroki, aby rozwiązać ten problem.

+ +
+

Uwaga: W naszym artykule Najczęstsze problemy dostępności i ich rozwiązania omawiamy aspekty dostępności na które powinno się zwracać szczególną uwagę.

+
+ +

Podsumowując:

+ + + +

Wytyczne dostępności i przepisy prawne

+ +

Istnieje wiele list i wytycznych opisujących dostępność na stronach internetowych, co może wydawać się przytłaczające na pierwszy rzut oka. Naszą radą jest oswojenie się z konkretnymi wskazówkami, które okażą się najbardziej przydatne dla danego programisty, jak również zrozumienie ogólnej logiki stojącej za wytycznymi testów istotnych dla specyfiki projektu.

+ + + +

Więc podczas gdy WCAG jest po prostu zbiorem wytycznych przydatnych w projektowaniu i wdrażaniu, w twoim państwie prawdopodobnie obowiązują przepisy regulujące dostępność w Internecie, lub dostępność publicznych usług (takich jak strony internetowe, telewizja, budynki publiczne itd.). Dobrym pomysłem jest zapoznanie się z tymi prawami. Jeśli nie poczyniłeś żadnych kroków aby stworzyć odpowiednie ułatwienia dostępu, możesz mieć problemy prawne w momencie, gdy niepełnosprawni użytkownicy złożą skargę na twoją stronę.

+ +

Brzmi to poważnie, jednak aby tego uniknąć wystarczy uznać dostępność jako główny priorytet programistycznych i projektowych praktyk, tak jak przedstawiono powyżej. Jeśli masz wątpliwości co do prawnego tła dostępności, zapytaj o radę wykwalifikowanego prawnika. Nie możemy zaoferować żadnej innej rady, ponieważ nie jesteśmy prawnikami.

+ +

API dostępności

+ +

Przeglądarki internetowe używają specjalnych API dostępności (dostarczanych przez system operacyjny, na którym działają) umożliwiających operowanie na informacjach użytecznych dla technologii wspomagających (AT). AT pracują głównie na informacjach semantycznych, ignorują więc style czy skrypty JavaScript. Informacje te tworzą drzewo informacji nazwane drzewem dostępności.

+ +

Różne systemy operacyjne posiadają różne API dostępności:

+ + + +

Gdy lokalne dane semantyczne dostarczane przez elementy HTML naszej aplikacji internetowej zawiodą, możemy zastąpić je funkcjami ze specyfikacji WAI-ARIA, które uzupełniają drzewo dostępności o semantyczne informacje, tym samym usprawniając dostępność. Więcej o WAI-ARIA można przeczytać w naszym artykule Podstawy WAI-ARIA.

+ +

Podsumowanie

+ +

Niniejszy artykuł powinien stanowić obszerny wstęp do kwestii dostępności, pokazać czemu jest ona tak ważna i objaśnić główne metody wdrażania jej do organizacji pracy programisty. Zakładamy, że teraz czytelnik czuje głód wiedzy odnośnie szczegółowych instrukcji implementacji dostępności na stronach internetowych. Temat ten zaczniemy omawiać w następnej sekcji, skupiając się na tym, czemu HTML jest dobrą podstawą do wypracowania dostępności.

+ +

{{NextMenu("Learn/Accessibility/HTML", "Learn/Accessibility")}}

diff --git a/files/pl/learn/common_questions/index.html b/files/pl/learn/common_questions/index.html new file mode 100644 index 0000000000..a534656334 --- /dev/null +++ b/files/pl/learn/common_questions/index.html @@ -0,0 +1,135 @@ +--- +title: Common questions +slug: Learn/Common_questions +tags: + - CodingScripting + - Infrastructure + - Learn + - NeedsTranslation + - TopicStub + - Web + - WebMechanics +translation_of: Learn/Common_questions +--- +
{{LearnSidebar}}
+ +

Tę sekcję Strefy Nauki zaprojektowano w celu podania odpowiedzi na popularne pytania, które mogą się pojawić, a niekoniecznie są częścią innych, ustrukturyzowanych ścieżek nauki (na przykład artykułów o HTML czy CSS). Jest to luźny zbiór pytań i odpowiedzi na nie.

+ +

Jak działa Sieć

+ +

Ta sekcja zawiera zasady działania sieci - pytania dotyczące ogólnej wiedzy o Sieci.

+ +
+
+

Jak działa Internet?

+
+
Internet jest podstawą Sieci, techniczną infrastrukturą, która umożliwia jej funkcjonowanie. W swojej podstawie, Internet jest wielką siecią komputerów, które komunikują się ze sobą. Ten artykuł pokazuje jak to działa - na podstawowym poziomie.
+
+

Jaka jest różnica między serwisem internetowym, stroną internetową, serwerem i wyszukiwarką?

+
+
Ten artykuł opisuje różne pojęcia związane z siecią - serwisy internetowe, strony, serwery i wyszukiwarki. Te pojęcia są często mylone przez początkujących albo używane w niewłaściwym kontekście. Nauczymy się, co każde z nich oznacza!
+
+

Co to jest URL?

+
+
Obok {{Glossary("Hypertext")}} i {{Glossary("HTTP")}}, URL (Uniform Resource Locator) to jest jedno z kluczowych pojęć związanych z Internetem. Jest to mechanizm używany przez przeglądarki do znajdowania i wydobywania zasobów opublikowanych w Sieci.
+
+

What is a domain name?

+
+
Domain names are a key part of the Internet infrastructure. They provide a human-readable address for any web server available on the Internet.
+
+

What is a web server?

+
+
The term "Web server" can refer to the hardware or software that serves web sites to clients across the Web — or both of them working together. In this article we go over how web servers work, and why they're important.
+
+ +
+
In this article, we'll go over what hyperlinks are and why they matter.
+
+ +

Tools and setup

+ +

Questions related to the tools/software you can use to build websites.

+ +
+
+

How much does it cost to do something on the Web?

+
+
When you're launching a website, you may spend nothing or your costs may go through the roof. In this article we discuss how much everything costs and what you get for what you pay (or don't pay).
+
+

What software do I need to build a website?

+
+
In this article we explain which software components you need when you're editing, uploading, or viewing a website.
+
+

What text editors are available?

+
+
In this article we highlight some things to think about when choosing and installing a text editor for web development.
+
+

What are browser developer tools?

+
+
Every browser features a set of devtools for debugging HTML, CSS, and other web code. This article explains how to use the basic functions of your browser's devtools.
+
+

How do you make sure your website works properly?

+
+
So you've published your website online — very good! But are you sure it works properly? This article provides some basic troubleshooting steps.
+
+

How do you set up a local testing server?

+
+
+
+

This article explains how to set up a simple local testing server on your machine, and the basics of how to use it.

+
+
+
+

How do you upload files to a web server?

+
+
This article shows how to publish your site online with FTP tools — one of the most common ways to get a website online so others can access it from their computers.
+
+

How do I use GitHub Pages?

+
+
This article provides a basic guide to publishing content using GitHub's gh-pages feature.
+
+

How do you host your website on Google App Engine?

+
+
Looking for a place to host your website? Here's a step-by-step guide to hosting your website on Google App Engine.
+
+

What tools are available to debug and improve website performance?

+
+
This set of articles shows you how to use the Developer Tools in Firefox to debug and improve performance of your website, using the tools to check the memory usage, the JavaScript call tree, the amount of DOM nodes being rendered, and more.
+
+ +

Design and accessibility

+ +

This section lists questions related to aesthetics, page structure, accessibility techniques, etc.

+ +
+
+

How do I start to design my website?

+
+
This article covers the all-important first step of every project: define what you want to accomplish with it.
+
+

What do common web layouts contain?

+
+
When designing pages for your website, it's good to have an idea of the most common layouts. This article runs thorugh some typical web layouts, looking at the parts that make up each one.
+
+

What is accessibility?

+
+
This article introduces the basic concepts behind web accessibility.
+
+

How can we design for all types of users?

+
+
This article provides basic techniques to help you design websites for any kind of user — quick accessibility wins, and other such things.
+
+

What HTML features promote accessibility?

+
+
This article describes specific features of HTML that can be used to make a web page more accessible to people with different disabilities.
+
+ +

HTML, CSS and JavaScript questions

+ +

For common solutions to HTML/CSS/JavaScript problems, try the following articles:

+ + diff --git a/files/pl/learn/common_questions/jak_dziala_internet/index.html b/files/pl/learn/common_questions/jak_dziala_internet/index.html new file mode 100644 index 0000000000..1ee3d15096 --- /dev/null +++ b/files/pl/learn/common_questions/jak_dziala_internet/index.html @@ -0,0 +1,100 @@ +--- +title: Jak działa Internet? +slug: Learn/Common_questions/Jak_dziala_Internet +tags: + - Beginner + - Tutorial + - WebMechanics +translation_of: Learn/Common_questions/How_does_the_Internet_work +--- +
{{LearnSidebar}}
+ +
+

W tym artykule omówiono, czym jest Internet i jak działa.

+
+ + + + + + + + + + + + +
Wymagania:Żadnych, ale zachęcamy do przeczytania najpierw artykułu o wyznaczaniu celów projektu.
Cel:Poznasz podstawy technicznej infrastruktury sieciowej i różnicę między Internetem a siecią.
+ +

Streszczenie

+ +

Internet jest szkieletem sieci, infrastruktury technicznej, która umożliwia korzystanie z sieci. W swojej najbardziej podstawowej postaci, Internet jest dużą siecią komputerów, które komunikują się ze sobą nawzajem.

+ +

Historia Internetu jest nieco niejasna. Zaczęło się w latach 60. jako projekt badawczy finansowany przez USA, a następnie przekształciło się w infrastrukturę publiczną w latach 80. przy wsparciu wielu publicznych uniwersytetów i firm prywatnych. Różne technologie wspierające Internet ewoluowały z czasem, ale sposób jego funkcjonowania nie zmienił się tak bardzo: Internet to sposób na połączenie komputerów razem i zapewnienie, że cokolwiek się wydarzy, znajdą one sposób na pozostanie w kontakcie.

+ +

Aktywna Nauka

+ + + +

Głębsze zanurzenie

+ +

Prosta sieć

+ +

Kiedy dwa komputery muszą się komunikować, trzeba je połączyć albo fizycznie (zazwyczaj za pomocą kabla Ethernet), albo bezprzewodowo (na przykład przy pomocy Wi-Fi lub Bluetooth). Wszystkie nowoczesne komputery mogą utrzymywać dowolne z tych połączeń.

+ +
+

Uwaga: W dalszej części tego artykułu będziemy mówić tylko o kablach fizycznych, ale sieci bezprzewodowe działają tak samo.

+
+ +

Dwa komputery połączone razem

+ +

Taka sieć nie jest ograniczona do dwóch komputerów. Można podłączyć tyle komputerów, ile się chce. Ale to się szybko komplikuje. Jeśli próbujesz połączyć, powiedzmy dziesięć komputerów, potrzebujesz 45 kabli, z dziewięcioma wtyczkami na komputer!

+ +

Dziesięć komputerów, wszystkie razem

+ +

Aby rozwiązać ten problem, każdy komputer w sieci jest podłączony do specjalnego malutkiego komputera zwanego routerem. Ten router ma tylko jedno zadanie: podobnie jak sygnalizator na stacji krajowej, dba o to, aby wiadomość wysłana z danego komputera dotarła do właściwego komputera docelowego. Aby wysłać wiadomość do komputera B, komputer A musi wysłać wiadomość do routera, który z kolei przekazuje wiadomość do komputera B i upewnia się, że wiadomość nie zostanie dostarczona do komputera C.

+ +

Po dodaniu routera do systemu, nasza sieć składająca się z 10 komputerów wymaga tylko 10 kabli: jedna wtyczka na każdy komputer i router z 10 wtyczkami.

+ +

Dziesięć komputerów z routerem

+ +

Sieć sieci

+ +

Na razie w porządku. Ale co z podłączeniem setek, tysięcy, miliardów komputerów? Oczywiście pojedynczy router nie działa na tak dużą skalę, ale jeśli uważnie czytasz, powiedzieliśmy, że router jest komputerem jak każdy inny, więc co powstrzymuje nas przed połączeniem dwóch routerów? Nic, więc zróbmy to.

+ +

Dwa routery połączone razem

+ +

Podłączając komputery do routerów, a następnie routery do routerów, jesteśmy w stanie skalować w nieskończoność.

+ +

Routery połączone z routerami

+ +

Taka sieć jest bardzo zbliżona do tego, co nazywamy Internetem, ale czegoś nam brakuje. Zbudowaliśmy tę sieć dla naszych własnych celów. Są inne sieci: twoi przyjaciele, sąsiedzi, każdy może mieć swoją własną sieć komputerów. Ale tak naprawdę nie jest możliwe ułożenie kabli między domem a resztą świata, więc jak sobie z tym poradzić? Cóż, są już kable podłączone do twojego domu, na przykład zasilanie elektryczne i telefon. Infrastruktura telefoniczna już łączy Twój dom z kimkolwiek na świecie, więc jest to idealny przewód, którego potrzebujemy. Aby połączyć naszą sieć z infrastrukturą telefoniczną, potrzebujemy specjalnego urządzenia zwanego modemem. Modem ten zamienia informacje z naszej sieci w informacje zarządzane przez infrastrukturę telefoniczną i na odwrót.

+ +

Router połączony z modemem

+ +

Więc jesteśmy podłączeni do infrastruktury telefonicznej. Następnym krokiem jest wysłanie wiadomości z naszej sieci do sieci, do której chcemy dotrzeć. W tym celu podłączymy naszą sieć do Dostawcy Usług Internetowych (ISP). Dostawca usług internetowych to firma, która zarządza kilkoma specjalnymi routerami, które są ze sobą połączone i mogą również uzyskać dostęp do routerów innych dostawców usług internetowych. Tak więc wiadomość z naszej sieci jest przekazywana przez sieć dostawców usług internetowych do sieci docelowej. Internet składa się z całej tej infrastruktury sieci.

+ +

Pełny stos Internetowy

+ +

Wyszukiwanie komputerów

+ +

Jeśli chcesz wysłać wiadomość do komputera, musisz określić, do którego. Tak więc każdy komputer podłączony do sieci ma unikalny adres, który go identyfikuje, zwany "adresem IP" (gdzie IP oznacza Internet Protocol - Protokół Internetowy). Jest to adres złożony z szeregu czterech liczb oddzielonych od siebie kropkami, na przykład 192.168.2.10.

+ +

To doskonale pasuje do komputerów, ale my, ludzie, mamy problem z zapamiętywaniem tego typu adresów. Aby to ułatwić, możemy nadać adres IP z czytelną dla człowieka nazwą zwaną nazwą domeny. Na przykład (w momencie pisania; adresy IP mogą się zmieniać) google.com to nazwa domeny używana do adresu IP 172.217.165.131. Tak więc używanie nazwy domeny jest dla nas najłatwiejszym sposobem dotarcia do komputera przez Internet.

+ +

Pokazuje, jak nazwa domeny może zmienić adres IP na inny

+ +

Internet i sieć

+ +

Jak można zauważyć, podczas przeglądania stron internetowych za pomocą przeglądarki internetowej, zwykle używamy nazwy domeny, aby dotrzeć do witryny. Czy to oznacza, że Internet i sieć są tym samym? To nie jest takie proste. Jak widzieliśmy, Internet jest infrastrukturą techniczną, która pozwala połączyć ze sobą miliardy komputerów. Wśród tych komputerów, niektóre (zwane serwerami sieciowymi) mogą wysyłać wiadomości zrozumiałe dla przeglądarek internetowych. Internet jest infrastrukturą, podczas gdy Sieć to usługa zbudowana na bazie tej infrastruktury. Warto zauważyć, że istnieje kilka innych usług zbudowanych na bazie Internetu, takich jak poczta elektroniczna i {{Glossary("IRC")}}.

+ +

Dalsze kroki

+ + diff --git a/files/pl/learn/css/css_layout/flexbox/index.html b/files/pl/learn/css/css_layout/flexbox/index.html new file mode 100644 index 0000000000..1a06738b54 --- /dev/null +++ b/files/pl/learn/css/css_layout/flexbox/index.html @@ -0,0 +1,340 @@ +--- +title: Flexbox +slug: Learn/CSS/CSS_layout/Flexbox +tags: + - Nauka + - Początkujący + - Poradnik + - Poradnik dla początkujących + - flexibox + - po polsku + - podstawa + - podstawowy + - wygląd + - wyświetlanie zawartości +translation_of: Learn/CSS/CSS_layout/Flexbox +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/CSS/CSS_layout/Practical_positioning_examples", "Learn/CSS/CSS_layout/Grids", "Learn/CSS/CSS_layout")}}
+ +

Flexbox to nowa technologia która już ma szerokie wsparcie wśród przeglądarek, dlatego jego używanie staje się coraz bardziej powszechne. Flexbox wykorzystuje narzędzia, które pozwalają na szybkie tworzenie kompleksowego i elastycznego układu strony. Flexbox to jednowymiarowa metoda rozmieszczania elementów w wierszach lub kolumnach, przedmioty rozciągają się aby wypełnić dodatkową przestrzeń lub kurczą się aby dopasować się do mniejszych przestrzeni. W tym artykule zawarto podstawowe informacje na ten temat.

+ + + + + + + + + + + + +
Wymogi:Podstawy HTML (zajrzyj do Introduction to HTML) oraz znajomość zasad funkcjonowania CSS ( więcej na ten temat znajdziesz tu Introduction to CSS.)
Cel:Nauczenie się jak używać Flexboxa do tworzenia kreatywnego układu strony.
+ +

Dlaczego Flexbox?

+ +

Przez długi czas jedynymi rzeczowymi narzędziami działającymi w przeglądarkach, do tworzenia układu strony w CSS były właściwości: float i position. Są dobre i działają, ale w niektórych przypadkach mogą być ograniczające i frustrujące.

+ +

Poniższe wymagania dotyczące układu są trudne lub niemożliwe do osiągnięcia dzięki wcześniej wspomnianym narzędziom:

+ + + +

Jak zauważysz w kolejnych sekcjach, flexbox ułatwia tworzenie układów strony. Zabawmy się!

+ +

Wprowadzenie i prosty przykład

+ +

W tym artykule będziemy zachęcać cię do pracy poprzez serię ćwiczeń, które ułatwią ci zrozumienie jak działa flexbox. Aby zacząć musisz zrobić kopię pliku startowego — flexbox0.html z naszego repozytorium na gitHubie — załadować w przeglądarce ( Firefox albo Chrome), i spojrzeć na kod w twoim edytorze kodu. Możesz także podejrzeć kod na żywo - see it live here.

+ +

Zauważ, że mamy element {{htmlelement("header")}} z nagłówkiem w środku oraz {{htmlelement("section")}} zawierający trzy  {{htmlelement("article")}}. Użyjemy tego do stworzenia dość standardowego układu trzy-kolumnowego.

+ +

+ +

Określanie, które elementy układu wykorzystać jako elastyczne pudełka.

+ +

Aby zacząć musimy wybrać elementy, które mają zmienić położenie. Żeby to zrobić, ustawiamy specjalną wartość {{cssxref("display")}} na rodzicu elementu, na który chcemy oddziaływać.  W tym przypadku musimy poukładać elementy {{htmlelement("article")}}, więc display ustawiamy na{{htmlelement("section")}} (section staje się elastycznym kontenerem dla trzech bloków "article").

+ +
section {
+  display: flex;
+}
+ +

Rezultatem tego powinno być takie coś:

+ +

+ +

Pojedyncza deklaracja daje nam wszystko czego potrzebujemy — niewiarygodne, co nie? Mamy nasz układ kolumn z kilkoma kolumnami o jednakowych rozmiarach i mających tą samą wysokość. Dzieje się tak dlatego że domyślne wartości ustawione są w taki sposób żeby rowiązywać problem nierównych kolumn. Więcej o tym później.

+ +
+

Zanotuj: Możesz także ustawić display o wartości inline-flex jeśli życzysz sobie ułożenia liniowych elementów jako blokowe.

+
+ +

Aside 

+ +

Elementy blokowe w modelu flex box układają się względem dwóch osi:

+ +

flex_terms.png

+ + + +

Pamiętaj o tej terminologii podczas następujących sekcji. Zawsze możesz tu wrócić jeśli zagubisz się w jakimś używanym tutaj terminie.

+ +

Kolumny czy wiersze?

+ +

Flexbox wprowadza wartość nazywaną {{cssxref("flex-direction")}}, która określa w którym kierunku main axis - oś główna biegnie (w jakim kierunku układają się dzieci typu flexbox) - domyślnie ustawiona jest wartość row, co powoduje że elementy układają się w wierszu w kierunku, w którym działa domyśny język przegądarki (z lewej do prawej w przypadku Angielskich przegądarek) 

+ +

Spróbuj dodać następującą deklarację do pliku css:

+ +
flex-direction: column;
+ +

Jak widzisz elementy ponownie ułożyły się kolumnowo tak jak przed dodaniem jakiegokolwiek css. Zanim zaczniemy dalej usuń tą deklarację ze swojego przykładu.

+ +
+

Zanotuj: Możesz również ułożyć elementy w odwrotnym kierunku używając wartośći row-reverse and column-reverse. Poeksperymentuj także z tymi właściwościami!

+
+ +

Zawijanie

+ +

Jednym z problemów który pojawia się kiedy umieszczasz dużą liczbę elementów różnej szerokości i wysokości mogą one zacząć się wylewać z elementu rodzica niszcząc układ strony.

+ +

Zajrzyjmy do przykłady  flexbox-wrap0.html, i wypróbujmy viewing it live (zrób kopię pliku jeśli chcesz podążać za tym przykładem):

+ +

+ +

Widzimy tutaj że elementy potomne rzeczywiście się wylewają poza rodzica. Jednym ze sposobów który umożliwia umiejscowienie tych elementów jest następująca deklaracja :

+ +
flex-wrap: wrap;
+ +

Przetestuj to teraz; jak widzisz układ strony wygląda lepiej w tym zestawieniu:

+ +

+ +

Teraz musimy powielić wiersze - w każdym wierszu mieści się sensowna liczba elementów potomnych, a wszystkie przepełnienia przenoszą się do kolejnego wiersza. Deklaracja flex: 200px ustawia właściwość dla każdego elementu "articles", która mówi że szerokość ma wynosić co najmniej 200px; wrócimy do tego trochę później. Jak mogłeś zauważyć ostatnie kilka dzieci w ostatnim wierszu są trochę szersze, więc cały wiersz jest wypełniony.

+ +

Ale jest jeszcze coś co możemy zrobić. Po pierwsze, spróbuj zmienić twój flex-direction na wartość row-reverse - teraz jak widzisz, masz nadal wielowierszowy układ strony, ale zaczynający się od przeciwnego rogu okna przeglądarki i płynący w przeciwnym kierunku.

+ +

flex-flow w skrócie

+ +

W tym punkcie dobrze zauważyć że istnieje skrót  {{cssxref("flex-direction")}} i {{cssxref("flex-wrap")}} — {{cssxref("flex-flow")}}. Na przykład możesz zamienić to:

+ +
flex-direction: row;
+flex-wrap: wrap;
+ +

na to:

+ +
flex-flow: row wrap;
+ +

Elastyczne wymiarowanie elementów flex

+ +

Wróćmy teraz do naszego pierwszego przykładu, spójrzmy jak możemy kontrolować jaką przestrzeń zajmują elementy. Uruchom kopię flexbox0.html, albo zrób kopię z pliku flexbox1.html jako nowy punkt startowy (see it live).

+ +

Po pierwsze dodaj następującą regułę na dole twojego pliku CSS:

+ +
article {
+  flex: 1;
+}
+ +

Jest to niepodzielna wartość procentowa określająca jaką część dostęnej przestrzeni wzdłuż głównej osi będzie zajmować każdy element elastyczny. W tym przypadku nadajemy każdemu elementowi {{htmlelement("article")}} wartość 1, co znaczy że wszystkie zajmują tyle samo wolnego miejsca, ile pozostało po ustawieniu dopełnienia i marginesu. Jest to proporcja co oznacza że nadanie każdemu elementowi wartośći 400000 dałoby dokładnie ten sam efekt.

+ +

Teraz dodaj następującą zasadę poniżej poprzedniej:

+ +
article:nth-of-type(3) {
+  flex: 2;
+}
+ +

Teraz kiedy odświeżysz zauważysz że trzeci element {{htmlelement("article")}} zajmuje dwa razy tyle szerokości co pozostałe dwa — w sumie dostęne są cztery jednostki procentowe. Pierwsze dwa elementy mają po jeden, każdy więc zajmuje 1/4 dostępnej przestrzeni. Trzeci ma dwie jednostki, więc zajmuje 2/4 dostęnej przestrzeni (czyli 1/2).

+ +

Możesz także ustawić minimalną wartość rozmiaru wewnątrz wartości flex. Spróbuj zaktualizować twój przykład następującymi zasadami:

+ +
article {
+  flex: 1 200px;
+}
+
+article:nth-of-type(3) {
+  flex: 2 200px;
+}
+ +

To w zasadzie stwierdza "Każdy element najpierw będzie otrzymywał 200px dostępnej przetrzeni. Potem reszta dostępnej przestrzeni będzie dzielona według wartości procentowych." Spróbuj odświeżyć i zobaczysz różnicę w tym jaka przestrzeń jest dzielona przez elementy. 

+ +

+ +

Prawdziwą wartość flexbox można zauważyć w flexibility/responsiveness — jeśli zmienisz rozmiar okna przeglądarki i dodasz {{htmlelement("article")}} element, układ strony nadal będzie działał prawidłowo.

+ +

flex: shorthand versus longhand

+ +

{{cssxref("flex")}} to wartość skrótowa, którą możesz opisać trzy różne wartości:

+ + + +

We'd advise against using the longhand flex properties unless you really have to (for example, to override something previously set). They lead to a lot of extra code being written, and they can be somewhat confusing.

+ +

Horizontal and vertical alignment

+ +

You can also use flexbox features to align flex items along the main or cross axes. Let's explore this by looking at a new example — flex-align0.html (see it live also) — which we are going to turn into a neat, flexible button/toolbar. At the moment you'll see a horizontal menu bar, with some buttons jammed into the top left hand corner.

+ +

+ +

First, take a local copy of this example.

+ +

Now, add the following to the bottom of the example's CSS:

+ +
div {
+  display: flex;
+  align-items: center;
+  justify-content: space-around;
+}
+ +

Refresh the page and you'll see that the buttons are now nicely centered, horizontally and vertically. We've done this via two new properties.

+ +

{{cssxref("align-items")}} controls where the flex items sit on the cross axis.

+ + + +

You can override the {{cssxref("align-items")}} behavior for individual flex items by applying the {{cssxref("align-self")}} property to them. For example, try adding the following to your CSS:

+ +
button:first-child {
+  align-self: flex-end;
+}
+ +

Have a look at what effect this has, and remove it again when you've finished.

+ +

{{cssxref("justify-content")}} controls where the flex items sit on the main axis.

+ + + +

We'd like to encourage you to play with these values to see how they work before you continue.

+ +

Ordering flex items

+ +

Flexbox also has a feature for changing the layout order of flex items, without affecting the source order. This is another thing that is impossible to do with traditional layout methods.

+ +

The code for this is simple: try adding the following CSS to your button bar example code:

+ +
button:first-child {
+  order: 1;
+}
+ +

Refresh, and you'll now see that the "Smile" button has moved to the end of the main axis. Let's talk about how this works in a bit more detail:

+ + + +

You can set negative order values to make items appear earlier than items with 0 set. For example, you could make the "Blush" button appear at the start of the main axis using the following rule:

+ +
button:last-child {
+  order: -1;
+}
+ +

Nested flex boxes

+ +

It is possible to create some pretty complex layouts with flexbox. It is perfectly ok to set a flex item to also be a flex container, so that its children are also laid out like flexible boxes. Have a look at complex-flexbox.html (see it live also).

+ +

+ +

The HTML for this is fairly simple. We've got a {{htmlelement("section")}} element containing three {{htmlelement("article")}}s. The third {{htmlelement("article")}} contains three {{htmlelement("div")}}s. :

+ +
section - article
+          article
+          article - div - button
+                    div   button
+                    div   button
+                          button
+                          button
+ +

Let's look at the code we've used for the layout.

+ +

First of all, we set the children of the {{htmlelement("section")}} to be laid out as flexible boxes.

+ +
section {
+  display: flex;
+}
+ +

Next, we set some flex values on the {{htmlelement("article")}}s themselves. Take special note of the 2nd rule here — we are setting the third {{htmlelement("article")}} to have its children laid out like flex items too, but this time we are laying them out like a column.

+ +
article {
+  flex: 1 200px;
+}
+
+article:nth-of-type(3) {
+  flex: 3 200px;
+  display: flex;
+  flex-flow: column;
+}
+
+ +

Next, we select the first {{htmlelement("div")}}. We first use flex:1 100px; to effectively give it a minimum height of 100px, then we set its children (the {{htmlelement("button")}} elements) to also be laid out like flex items. Here we lay them out in a wrapping row, and align them in the center of the available space like we did in the individual button example we saw earlier.

+ +
article:nth-of-type(3) div:first-child {
+  flex:1 100px;
+  display: flex;
+  flex-flow: row wrap;
+  align-items: center;
+  justify-content: space-around;
+}
+ +

Finally, we set some sizing on the button, but more interestingly we give it a flex value of 1. This has a very interesting effect, which you'll see if you try resizing your browser window width. The buttons will take up as much space as they can and sit as many on the same line as they can, but when they can no longer fit comfortably on the same line, they'll drop down to create new lines.

+ +
button {
+  flex: 1;
+  margin: 5px;
+  font-size: 18px;
+  line-height: 1.5;
+}
+ +

Cross browser compatibility

+ +

Flexbox support is available in most new browsers — Firefox, Chrome, Opera, Microsoft Edge and IE 11, newer versions of Android/iOS, etc. However you should be aware that there are still older browsers in use that don't support Flexbox (or do, but support a really old, out-of-date version of it.)

+ +

While you are just learning and experimenting, this doesn't matter too much; however if you are considering using flexbox in a real website you need to do testing and make sure that your user experience is still acceptable in as many browsers as possible.

+ +

Flexbox is a bit trickier than some CSS features. For example, if a browser is missing a CSS drop shadow, then the site will likely still be usable. Not supporting flexbox features however will probably break a layout completely, making it unusable.

+ +

We'll discuss strategies for overcoming tricky cross browser support issues in a future module.

+ +

Podsumowanie

+ +

Tu kończy się nasza krótka wycieczka po flexboxie. Mamy nadzieję że dobrze się bawiłeś i będziesz się dobrze bawił robiąc postępy w nauce.

+ +

W dalszych artykułach przyjrzymy się innnemu ważnemu aspektowi układu strony w CSS - grid system (układ siatkowy).

+ +
{{PreviousMenuNext("Learn/CSS/CSS_layout/Practical_positioning_examples", "Learn/CSS/CSS_layout/Grids", "Learn/CSS/CSS_layout")}}
+ +
+

W tym module

+ + +
diff --git a/files/pl/learn/css/css_layout/index.html b/files/pl/learn/css/css_layout/index.html new file mode 100644 index 0000000000..f84177e392 --- /dev/null +++ b/files/pl/learn/css/css_layout/index.html @@ -0,0 +1,57 @@ +--- +title: CSS layout +slug: Learn/CSS/CSS_layout +tags: + - Beginner + - CSS + - Floating + - Grids + - Guide + - Landing + - Layout + - Learn + - Module + - Multiple column + - NeedsTranslation + - Positioning + - TopicStub + - flexbox + - float +translation_of: Learn/CSS/CSS_layout +--- +
{{LearnSidebar}}
+ +

At this point we've already looked at CSS fundamentals, how to style text, and how to style and manipulate the boxes that your content sits inside. Now it's time to look at how to place your boxes in the right place in relation to the viewport, and one another. We have covered the necessary prerequisites so we can now dive deep into CSS layout, looking at different display settings, traditional layout methods involving float and positioning, and modern layout tools like flexbox.

+ +

Prerequisites

+ +

Before starting this module, you should already:

+ +
    +
  1. Have basic familiarity with HTML, as discussed in the Introduction to HTML module.
  2. +
  3. Be comfortable with CSS fundamentals, as discussed in Introduction to CSS.
  4. +
  5. Understand how to style boxes.
  6. +
+ +
+

Note: If you are working on a computer/tablet/other device where you don't have the ability to create your own files, you could try out (most of) the code examples in an online coding program such as JSBin or Thimble.

+
+ +

Guides

+ +

These articles will provide instruction on the fundamental layout tools and techniques available in CSS.

+ +
+
Introduction to CSS layout
+
This article will recap some of the CSS layout features we've already touched upon in previous modules — such as different {{cssxref("display")}} values — and introduce some of the concepts we'll be covering throughout this module.
+
Floats
+
Originally for floating images inside blocks of text, the {{cssxref("float")}} property has become one of the most commonly used tools for creating multiple column layouts on webpages. This article explains all.
+
Positioning
+
Positioning allows you to take elements out of the normal document layout flow, and make them behave differently, for example sitting on top of one another, or always remaining in the same place inside the browser viewport. This article explains the different {{cssxref("position")}} values, and how to use them.
+
Practical positioning examples
+
With the basics of positioning covered in the last article, we will now look at building a couple of real world examples, to illustrate what kinds of things you can do with positioning.
+
Flexbox
+
A new technology, but with support now fairly widespread across browsers, Flexbox is starting to become ready for widespread use. Flexbox provides tools to allow rapid creation of complex, flexible layouts, and features that historically proved difficult with CSS. This articles explains all the fundamentals.
+
Grids
+
Grid systems are another very common feature used in CSS layouts, which tend to be implemented using floats or other layout features. You imagine your layout as a set number of columns (e.g. 4, 6, or 12), and then fit your content columns inside these imaginary columns. In this article we'll explore the basic idea behind creating a grid system, look at using a ready-made grid system provided by a grid framework, and end by experimenting with CSS Grids — a nascent new browser feature that makes implementing grid design on the Web a lot easier.
+
diff --git a/files/pl/learn/css/howto/generated_content/index.html b/files/pl/learn/css/howto/generated_content/index.html new file mode 100644 index 0000000000..b027725c1a --- /dev/null +++ b/files/pl/learn/css/howto/generated_content/index.html @@ -0,0 +1,140 @@ +--- +title: Treść +slug: Learn/CSS/Howto/Generated_content +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Howto/Generated_content +--- +

+

Ta strona opisuje niektóre metody, dzięki którym możesz użyć CSS-a, aby dodać treść do dokumentu w trakcie jego wyświetlania. +

Zmodyfikujesz swój arkusz stylów, aby dodać treść oraz obrazek. +

+

Informacja: Treść

+

Jedną z ważnych zalet CSS-a jest to, że pomaga on oddzielić warstwę prezentacyjną dokumentu od jego treści. +Zdarzają się jednak sytuacje, kiedy dobrym rozwiązaniem jest określenie treści jako elementu arkusza stylów, a nie dokumentu. +

Treść określona w arkuszach stylów może składać się z tekstu i obrazów. Możesz określić treść w arkuszu stylów, kiedy jest ona blisko związana ze strukturą dokumentu. +

+ + +
Więcej szczegółów +
Wstawianie treści w arkusz stylów może spowodować komplikacje. Na przykład możesz mieć wiele wersji językowych dokumentu, które dzielą arkusz stylów. +

Jeżeli jakiś fragment arkusza stylów zawiera ciągi wymagające tłumaczenia, to musisz go wyciągnąć do osobnego pliku i przygotować osobną wersję dla każdej wersji językowej. +

Unikniesz takich komplikacji, jeśli treść określona w arkuszach stylów będzie zawierała tylko symbole i obrazki, które pasują do wszystkich języków i kultur. +

Treść określona w arkuszu stylów nie staje się częścią DOM-u. +

+
+

Teksty

+

CSS pozwala umieścić tekst przed i po elemencie. Stwórz regułę i dodaj +:before lub :after do selektora. Ustaw własność content z tekstem jako wartością. +

+ + +
Przykład +
Ta reguła dodaje tekst Dokumentacja: przed każdym elementem należącym do klasy ref: +
+

.ref:before { +

+
 font-weight: bold;
+ color: navy;
+ content: "Dokumentacja: ";
+ }
+
+
+
+ + +
Więcej szczegółów +
Arkusz stylów domyślnie zakodowany jest jako UTF-8, ale można to zmienić w odnośniku, w samym arkuszu stylów lub w inny sposób. Aby dowiedzieć się więcej, zajrzyj do specyfikacji CSS, do rozdziału 4.4 reprezentacja arkuszy stylów CSS. +

Pojedyncze znaki mogą także być zakodowane przy użyciu znaku odwróconego ukośnika. Na przykład \265B jest symbolem szachów dla czarnej królowej ♛. Aby dowiedzieć się więcej, zajrzyj do dokumentacji CSS, do rozdziałów Korzystanie ze znaków nie reprezentowanych w kodowaniu oraz Characters and case. +

+
+

Obrazki

+

Aby dodać obrazek przed lub po jakimś elemencie, możesz określić URL pliku obrazka jako wartość własności content. +

+ + +
Przykład +
Ta reguła dodaje wolną przestrzeń oraz ikonę po każdym odnośniku, który posiada klasę glossary: +
+

a.glossary:after {content: " " url("../images/glossary-icon.gif");} +

+
+
+

Aby dodać obrazek jako element tła, określ URL pliku obrazu jako wartość własności background. Jest to skrótowa własność, która określa kolor tła, obrazek tła, jak ten obrazek jest powielany i inne szczegóły. +

+ + +
Przykład +
Ta reguła określa tło podanego elementu, używając URL-a do określenia pliku obrazu. +

Selektor określa identyfikator elementu. +Wartość no-repeat powoduje, że obrazek wyświetlany jest tylko raz: +

+
+
  1. sidebar-box {background: url("../images/sidebar-ground.png") no-repeat;} +
+
+
+ + +
Więcej szczegółów +
Aby dowiedzieć się więcej o poszczególnych własnościach tła oraz innych opcjach określanych dla obrazków tła, zajrzyj do dokumentacji CSS, rozdział Tła. +
+

Zadanie: Dodawanie obrazu tła

+

Poniższy obrazek to biały prostokąt z niebieską linią na dole. +Pobierz ten obrazek do katalogu, w którym trzymasz plik CSS: +

+ + +
Grafika:Blue-rule.png +
+

(Na przykład wciśnij prawy klawisz myszy, aby otworzyć menu kontekstowe, i wybierz Zapisz Obraz Jako... a następnie określ katalog, którego używasz w tym kursie.) +

Wyedytuj swój plik CSS i dodaj tę regułę, aby ustawić obrazek tła dla całej strony. +

+
+

background: url("Blue-rule.png"); +

+
+

Wartość repeat jest domyślna i nie musi być określana. +Obrazek jest powtarzany horyzontalnie i wertykalnie, sprawiając wrażenie, jakby strona była kartką papieru w linie: +

+
+

Grafika:Blue-rule-ground.png

+
+
+

Cascading Style Sheets +

+
+
+

Cascading Style Sheets +

+
+
+
+ + +
Wyzwanie +
Pobierz ten obraz: + + +
Grafika:Yellow-pin.png +
+

Dodaj jedną regułę do Twojego arkusza stylów, aby wyświetlał obrazek na początku każdej linii: +

+
+

Grafika:Blue-rule-ground.png

+
+
Grafika:Yellow-pin.png Cascading Style Sheets +
+
Grafika:Yellow-pin.png Cascading Style Sheets +
+
+
+
+

Co dalej?

+

Zazwyczaj treść jest dodawana przez arkusz stylów podczas modyfikowania list. +

Następna strona opisuje, jak określić style dla elementów listy: +Listy +

+
+
+{{ languages( { "en": "en/CSS/Getting_Started/Content", "fr": "fr/CSS/Premiers_pas/Contenu", "ja": "ja/CSS/Getting_Started/Content", "pt": "pt/CSS/Como_come\u00e7ar/Conte\u00fado" } ) }} diff --git a/files/pl/learn/css/howto/index.html b/files/pl/learn/css/howto/index.html new file mode 100644 index 0000000000..1f087d3e22 --- /dev/null +++ b/files/pl/learn/css/howto/index.html @@ -0,0 +1,86 @@ +--- +title: Use CSS to solve common problems +slug: Learn/CSS/Howto +translation_of: Learn/CSS/Howto +--- +
Translation in progress{{LearnSidebar}}
+ +

The following links provide solutions to common problems you can solve with CSS.

+ +

Common use cases

+ +
+ + + +
+ +

Uncommon and advanced techniques

+ +

CSS allows very advanced design techniques. These articles help demistify the harder use cases you may face.

+ +

General

+ + + +

Advanced effects

+ + + +

Layout

+ + + +

See also

+ +

CSS FAQ — A variety of topics: from debugging to selector usage.

diff --git a/files/pl/learn/css/index.html b/files/pl/learn/css/index.html new file mode 100644 index 0000000000..1859c169ff --- /dev/null +++ b/files/pl/learn/css/index.html @@ -0,0 +1,52 @@ +--- +title: CSSs +slug: Learn/CSS +translation_of: Learn/CSS +--- +
{{LearnSidebar}}
+ +

Kaskadowe arkusze styli (ang. Cascading Style Sheets) — lub po prostu CSS — jest drugą technologią której powinieneś się nauczyć po HTML, który jest używany do zdefiniowania struktury i semantyki zawartości strony. CSS jest używany do nadania jej wyglądu i rozmieszczenia elementów. Dla przykładu CSS możesz użyć do zmiany czcionki, koloru, wielkości, odstępu twojej zawartości, podzielenia jej na wiele kolumn, lub dodaniaanimacji i innych dekoracyjnych cech.

+ +

Ścieżka nauczania

+ +

Zanim przystąpisz do nauki CSS, powinieneś w pierwszej kolejności poznać podstawy HTML. Rekomendujemy, byś przerobił najpierw rozdział Wprowadzenie do HTML — później możesz uczyć się o:

+ + + +

Kiedy już zrozumiesz absolutne podstawy HTML, rekomendujemy byś uczył się HTML i CSS jednocześnie, skacząc wte i wewte między tymi dwoma tematami. Powodem jest to, że HTML jest dalece bardziej interesujący z CSS, a z drugiej strony nie możesz naprawdę poznać CSS bez znajomości HTML.

+ +

Zanim zaczniesz ten temat, powinieneś również mieć co najmniej podstawową umiejętność korzystania z komputera oraz biernego używania Internetu (tzn. przeglądania stron internetowych). Powinieneś mieć skonfigurowane podstawowe środowisko pracy w sposób wyszczególniony w rozdziale Instalowanie podstawowego oprogramowania, a także rozumieć jak się tworzy i zarządza plikami, jak zostało to wyszczególnione w rozdziale Radzenie sobie z plikami — oba te rozdziały są częścią naszego modułu dla zupełnych początkujących Rozpocznij pracę z siecią.

+ +

Zalecane jest, byś przerobił najpierw moduł Rozpocznij pracę z siecią zanim przystąpisz do tego tematu, jednak nie jest to absolutnie konieczne; wiele z tego, co zostało poruszone w artykule Podstawy CSS, znajduje się także w module Wprowadzenie do CSS, jednak opisane jest dużo bardziej szczegółowo.

+ +

Moduły

+ +

Ten rozdział zawiera następujące moduły, w sugerowanej kolejności przerabiania ich. Zdecydowanie powinieneś zacząć po kolei, od pierwszego.

+ +
+
Wprowadzenie do CSS
+
Ten moduł pozwoli Ci zapoznać się z podstawami działania CSS, obejmującymi selektory i właściwości, pisanie reguł CSS, załączanie CSS do HTML, określanie wymiarów, kolorów i innych jednostek w CSS, kaskadowość i dziedziczenie, podstawy modelu pudełkowego (box model) oraz debugowanie CSS.
+
Stylowanie tekstu
+
W tym module spojrzymy na podstawy stylowania tekstu, takie jak ustawianie czcionki, pogrubienia i kursywy, interlinie i odstępy między literami, cieniowania i inne cechy tekstu. Na koniec załączymy niestandardowe czcionki do Twojej strony oraz ostylujemy listy i linki.
+
Stylowanie kontenerów
+
Następnie zajmiemy się stylowaniem kontenerów, jednym z fundamentalnych kroków w kierunku tworzenia układów (layoutów) stron internetowych. W tym module powtórzymy model pudełkowy (box model), dalej spojrzymy na sposoby kontrolowania układu kontenerów poprzez ustawianie dopełnienia (padding), ramek (borders) i marginesów (margins), ustawimy spersonalizowane kolory tła, obrazków i innych cech, a także zajmiemy się bardziej wyszukanymi cechami jak cieniowania i filtry na kontenerach.
+
Układ (layout) CSS
+
W tym momencie spojrzeliśmy już na podstawy CSS, na to jak stylować tekst, a także na to jak stylować i manipulować kontenerami, w których zawarta jest Twoja treść. Teraz pora przyjrzeć się jak umieścić Twoje kontenery we właściwych miejscach na stronie, zarówno względem siebie, jak i w relacji do okna przeglądarki. Poznaliśmy już niezbędne warunki, można teraz się zagłębić w kwestię układu (layoutu) CSS, przyglądając się różnym ustawieniom wyświetlania, tradycyjnym metodom projektowania układów (layoutów) takimi jak floaty i pozycjonowanie, oraz tym świeżo wprowadzonym narzędziom jak flexbox.
+
+ +

Rozwiązywanie częstych problemów w CSS

+ +

Rozwiązywanie częstych problemów przy użyciu CSS zapewnia linki do sekcji, w których dowiesz się jak rozwiązywać najczęstsze problemy w budowaniu stron internetowych.

+ +

Na początku beziesz zmieniał kolory elementów kodu HTML oraz ich tła; rozmiary, kształty, pozycje na stronie oraz dodawał i definiował ich obramowania.Możesz zrobić wiele jeśli dobrze rozumiesz podstawy CSS. Jedną z najlepszych rzeczy w nauce CSS jest to, że kiedy poznasz podstawy, zazwyczaj masz dobre wyczucie, co można, a czego nie można zrobić, nawet jeśli tak naprawdę nie wiesz, jak to zrobić!

+ +

Zobacz również

+ +
+
CSS w MDN
+
Główny punkt wejścia do dokumentacji CSS w MDN, gdzie znajdziesz szczegółową dokumentację dla wszystkich funkcji języka CSS. Chcesz się dowiedzieć więcej? Tutaj możesz zacząć.
+
diff --git a/files/pl/learn/getting_started_with_the_web/css_basics/index.html b/files/pl/learn/getting_started_with_the_web/css_basics/index.html new file mode 100644 index 0000000000..44783a7f55 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/css_basics/index.html @@ -0,0 +1,272 @@ +--- +title: CSS podstawy +slug: Learn/Getting_started_with_the_web/CSS_basics +translation_of: Learn/Getting_started_with_the_web/CSS_basics +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Getting_started_with_the_web/HTML_basics", "Learn/Getting_started_with_the_web/JavaScript_basics", "Learn/Getting_started_with_the_web")}}
+ +
+

Kaskadowe arkusze stylów CSS (ang. Cascading Style Sheets) to kod służący do nadawania wyglądu strony. CSS Podstawy przeprowadzi cię przez bazowe zagadnienia, abyś mógł zacząć modyfikować wygląd swojej strony. Odpowiemy na takie pytania jak: Jak zrobić, żeby mój tekst był czarny albo czerwony? Jak wyświetlić poszczególną zawartość strony w wybranych miejscach ekranu? Jak dekorować stronę obrazami czy nadać kolor tła?

+
+ +

Czym właściwie jest CSS?

+ +

Podobnie jak HTML, CSS nie jest językiem programowania. Nie jest jednak też językiem znaczników — jest językiem arkuszy stylów (ang. style sheet language). Oznacza to, że pozwala on selektywnie stosować style do elementów w dokumentach HTML. Na przykład, aby zaznaczyć wszystkie paragrafy na stronie HTML i zmienić w nich kolor tekstu na czerwono, należy napisać ten kod CSS:

+ +
p {
+  color: red;
+}
+ +

Sprawdźmy: wklej te trzy linie kodu do nowego pliku. Plik nazwij style.css i umieść go w katalogu styles.

+ +

Wciąż jednak musimy powiązać ten kod CSS z twoim dokumentem HTML. W przeciwnym wypadku stworzony kod CSS nie będzie miał wpływu na wygląd twojej strony. (Jeśli nie śledzisz naszego projektu od poczatku, przeczytaj Struktura plików witryny oraz HTML podstawy, żeby dowiedzieć się co wpierw należy wykonać.)

+ +
    +
  1. Otwórz plik index.html i wklej poniższy kod gdzieś w sekcji nagłówka (czyli pomiędzy elementami <head> i </head>): + +
    <link href="styles/style.css" rel="stylesheet" type="text/css">
    +
  2. +
  3. Zapisz plik index.html a następnie otwórz go w przeglądarce. Powinieneś móc zobaczyć coś takiego:
  4. +
+ +

A mozilla logo and some paragraphs. The paragraph text has been styled red by our css.Jeśli tekst twoich akapitów jest czerwony, gratulacje! Właśnie napisałeś swój pierwszy skuteczny kod CSS.

+ +

Anatomia reguł CSS

+ +

Przyjrzyjmy się nieco bardziej szczegółowo naszemu kodowi CSS:

+ +

+ +

Cała struktura jest nazywana listą dyrektyw - reguł. Oto nazwy poszczególnych części:

+ +
+
Selektor
+
Element HTML na początku reguły. Wybiera poszczególne elementy (bądź też tylko jeden) do wystylizowania - w tym wypadku wszystkie elementy p. Aby dodać styl do innego elementu, po prostu zmień selektor;
+
Deklaracja
+
Pojedyncza reguła, taka jak color: red;, która ustala jakie właściwości elementu chcesz wystylizować.
+
Właściwości
+
Sposoby stylizowania danego elementu HTML. (W powyższym przykładzie color jest właściwością selektrora p.) W CSS wybierasz, która właściwość ma być nadana w danej deklaracji.
+
Wartość właściwości
+
Po prawej stronie właściwości za dwukropkiem mamy wartość właściwości, która wybiera jeden z wielu możliwych wyglądów dla danej właściwości (istnieje wiele wartości color oprócz red).
+
+ +

Zauważ inne ważne części składni:

+ + + +

Aby zmodyfikować wiele wartości właściwości jednocześnie, wystarczy napisać je oddzielone średnikami, np.:

+ +
p {
+  color: red;
+  width: 500px;
+  border: 1px solid black;
+}
+ +

Wybieranie wielu elementów

+ +

Możesz również wybrać wiele typów elementów i zastosować dla nich jeden zestaw deklaracji. Wypisz kilka selektorów oddzielonych przecinkami. Na przykład:

+ +
p,li,h1 {
+  color: red;
+}
+ +

Inne typy selektorów

+ +

Istnieje wiele innych typów selektorów. Do tej pory używaliśmy tylko selektorów elementów, które wybierają wszystkie elementy danego typu z kodu HTML. Ale możemy stworzyć bardziej szczegółowe selektory. Oto kilka powszechnych typów selektorów:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Nazwa selektoraCo wybiera?Przykład
Selektor elementu (czasem nazywany selektorem tagu lub typu)Element(y) HTML o podanym typie.p
+ Wybiera elementy <p>
Selektor IDElement na stronie o podanym ID (na jednej stronie HTML możesz użyć konkretnego ID tylko raz).#my-id
+ Wybiera <p id="my-id"> lub <a id="my-id">
Selektor klasyElement(y) na stronie o podanej klasie (Tej samej klasy możesz użyć wiele razy na stronie)..my-class
+ Wybiera <p class="my-class"> oraz <a class="my-class">
Selektor atrybutuElement(y) na stronie o podanym atrybucie.img[src]
+ wybiera <img src="myimage.png"> ale nie <img>
Selektor pseudo-klasyElement(y) o określonym stanie np. najechanie myszą na elementa:hover
+ Wybiera <a>, ale tylko gdy kursor znajduje się nad elementem.
+ +

Istnieje wiele innych typów selektorów, możesz je poznać w naszym Selectors guide.

+ +

Czcionki i tekst

+ +

Teraz, gdy poznaliśmy podstawy CSS, dodajmy więcej reguł i informacji do naszego pliku style.css żeby nasz przykład wyglądał lepiej. Zacznijmy od zmiany wyglądu czcionek i tekstu.

+ +
    +
  1. Na początek, cofnij się i znajdź output from Google Fonts, który przechowałeś w bezpiecznym miejscu. Dodaj element {{htmlelement("link")}} gdzieś wewnątrz sekcji head w pliku index.html (gdziekolwiek pomiędzy tagami <head> i </head>). Linijka będzie wyglądała podobnie do: + +
    <link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
    +
  2. +
  3. Następnie, usuń istniejące reguły w pliku style.css. To był dobry test, ale czerwony tekst nie wygląda najlepiej.
  4. +
  5. Dodaj poniższy kod, zastępując linie "placeholder" z font-family wygenerowanym w Google Fonts. (font-family oznacza czcionkę lub czcionki których chcesz używać). Pierwsza reguła ustala bazową wielkość tekstu i czcionkę dla całej strony (ponieważ <html> to element-rodzic całej strony i wszystkie elementy wewnątrz niego dziedziczą ten sam font-size i font-family): +
    html {
    +  font-size: 10px; /* px oznacz 'piksele': bazowy rozmiar tekstu to teraz 10 pikseli wysokości  */
    +  font-family: placeholder; /* tu powinnien być font-family wygenerowany w Google fonts */
    +}
    + +
    +

    Uwaga: Wszystko w dokumencie CSS pomiędzy /* i */ jest komentarzem CSS, który przyglądarka zignoruje podczas wyświetlania strony. To miejsce dla Ciebie na notatki dotyczące tego co dzieje się w danym miejscu.

    +
    +
  6. +
  7. Teraz ustawimy rozmiar czcionki dla elementów zawierających tekst wewnątrz ciała (body) HTML: ({{htmlelement("h1")}}, {{htmlelement("li")}}, i {{htmlelement("p")}}). Wycentrujemy również tekst naszego nagłówka i ustawimy wysokość linii tekstu i odstęp między znakami dla głównej treści aby uczynić ją bardziej czytelną: +
    h1 {
    +  font-size: 60px;
    +  text-align: center;
    +}
    +
    +p, li {
    +  font-size: 16px;
    +  line-height: 2;
    +  letter-spacing: 1px;
    +}
    +
  8. +
+ +

Możesz dostosować wartości px na jakiekolwiek chcesz, aby uzyskać wygląd jaki chcesz, ale generalnie twoja strona powinna wyglądać podobnie jak ta:

+ +

a mozilla logo and some paragraphs. a sans-serif font has been set, the font sizes, line height and letter spacing are adjusted, and the main page heading has been centered

+ +

Pudełka, pudełka, wszędzie pudełka

+ +

Jedną z rzeczy którą zauważysz podczas pisania CSS to, że wiele z nich dotyczy pudełek (ang. boxes) — ustawianie ich rozmiaru, koloru, pozycji etc. O większości elementów na stronie możesz myśleć jak o pudełkach stawianych jedne na drugim.

+ +

a big stack of boxes or crates sat on top of one another

+ +

Nic dziwnego, że układ CSS opiera się głównie na modelu pudełkowym (ang. box model). Każdy z bloków zajmujących miejsce na Twojej stronie ma takie właściwości:

+ + + +

three boxes sat inside one another. From outside to in they are labelled margin, border and padding

+ +

W tej sekcji możemy także użyć:

+ + + +

Dodajmy trochę więcej CSS do naszej strony! Dodawaj nowe reguły na dole pliku i nie bój się eksperymentować ze zmianą wartości, aby zobaczyć, jak działają.

+ +

Zmiana koloru strony

+ +
html {
+  background-color: #00539F;
+}
+ +

Ten zestaw reguł ustawi kolor tła dla całej strony. Zmień powyższy kod koloru na dowolny wybrany podczas planning your site.

+ +

Sortowanie elementów body

+ +
body {
+  width: 600px;
+  margin: 0 auto;
+  background-color: #FF9500;
+  padding: 0 20px 20px 20px;
+  border: 5px solid black;
+}
+ +

Teraz element {{htmlelement("body")}}. Jest tu kilka deklaracji, więc przejrzyjmy je wszystkie jedna po drugiej:

+ + + +

Ustawianie i stylowanie głównego nagłówka

+ +
h1 {
+  margin: 0;
+  padding: 20px 0;
+  color: #00539F;
+  text-shadow: 3px 3px 1px black;
+}
+ +

Być może zauważysz paskudną szparę na górze ciała strony. Dzieje się tak dlatego, że przeglądarki stosują pewne domyślne style dla elementu {{htmlelement("h1")}} (oraz innych), nawet jeżeli nie użyjesz żadnego stylu CSS! To może brzmieć jak zła koncepcja, ale chcemy by nawet nieostylowana strona wyglądała czytelnie. Aby pozbyć się luki, zmieniliśmy domyślny styl, ustawiając margin: 0;.

+ +

Następnie ustawiliśmy górny i dolny margines nagłówka na 20 pikseli i nadaliśmy tekstowi nagłówka taki sam kolor, jak kolor tła dla html.

+ +

Ciekawą właściwością, którą tutaj wykorzystaliśmy, jest text-shadow, który nadaje cień dla tekstu wewnątrz elementu. Jego cztery wartości są następujące: 

+ + + +

Ponownie, eksperymentuj z innymi wartościami i zobacz co możesz zrobić!

+ +

Centrowanie obrazka

+ +
img {
+  display: block;
+  margin: 0 auto;
+}
+ +

Wreszcie wycentrujemy obrazek żeby wyglądał lepiej. Możemy użyć ponownie triku margin: 0 auto którego użyliśmy w przypadku body, ale dodatkowo musimy zrobić coś jeszcze. Element {{htmlelement("body")}} jest blokowy (ang. block), co oznacza, że zajmuje całą dostępną przestrzeń na stronie i możesz zastosować dla niego marginesy i inne ustawienia wielkości. Z drugiej strony, obrazki są elementali liniowymi (ang.inline) i nie posiadają takich właściwości. Dlatego żeby zastosować marginesy dla grafiki musimy zmienić jej sposób wyświetlania na blokowy używając display: block;.

+ +
+

Note: Powyższe instrukcje zakładają, że używasz obrazu o szerokości mniejszej niż szerokość ustawiona dla elementu body (600 pikseli). Jeśli obraz jest większy, spowoduje to przelanie treści i rozlanie jej na resztę strony. Aby temu zapobiec możesz 1) zmniejszyć wielkość obrazu za pomocą editora graficznego, lub 2) zmniejszyć obraz przy użyciu CSS ustawiając właściwość {{cssxref("width")}} dla elementu <img> na mniejszą wartość (np., 400 px;).

+
+ +
+

Uwaga: Nie przejmuj się jeżeli jeszcze nie rozumiesz display: block; i różnicy między elementami liniowymi a blokowymi. Zrozumiesz z czasem zgłębiania wiedzy o CSS. Więcej o różnych dostępnych sposobach wyświetlania możesz znaleźć w naszym display reference page.

+
+ +

Konkluzja

+ +

Jeżeli prześledziłeś instrukcje z tego artykułu powinieneś zakończyć ze stroną wyglądającą jak ta (możesz również zobaczyć naszą wersję tutaj):

+ +

a mozilla logo, centered, and a header and paragraphs. It now looks nicely styled, with a blue background for the whole page and orange background for the centered main content strip.

+ +

Jeżeli utkniesz możesz zawsze porównać swój kod z naszym gotowym przykładem na GitHub.

+ +

To naprawdę podstawowe informacje o CSS. Aby dowiedzieć się więcej sprawdź nasz CSS Learning topic.

+ +

{{PreviousMenuNext("Learn/Getting_started_with_the_web/HTML_basics", "Learn/Getting_started_with_the_web/JavaScript_basics", "Learn/Getting_started_with_the_web")}}

diff --git a/files/pl/learn/getting_started_with_the_web/dealing_with_files/index.html b/files/pl/learn/getting_started_with_the_web/dealing_with_files/index.html new file mode 100644 index 0000000000..fe33799b70 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/dealing_with_files/index.html @@ -0,0 +1,95 @@ +--- +title: Struktura plików witryny +slug: Learn/Getting_started_with_the_web/Dealing_with_files +translation_of: Learn/Getting_started_with_the_web/Dealing_with_files +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web/HTML_basics", "Learn/Getting_started_with_the_web")}}
+ +
+

Strona internetowa zawiera wiele plików: pliki z treścią, kod, arkusze stylów, media, i więcej. Kiedy budujesz stronę internetową, musisz zebrać je wszystkie razem i stworzyć z nich rozsądną strukturę na swoim komputerze oraz upewnić się, że mogą się one między sobą komunikować, zanim wyślesz je na serwer hostingowy. Sekcja Struktura plików witryny omawia podstawowe kwestie jakich powinieneś być świadomy, aby zbudować racjonalną strukturę plików dla twojej strony internetowej.

+
+ +

Gdzie na twoim komputerze powinna znajdować się twoja strona internetowa?

+ +

Kiedy pracujesz lokalnie na swoim komputerze, powinieneś wszystkie pliki zwiazane z daną stroną trzymać w pojedynczym folderze, który będzie odzwierciedlał folder na serwerze, na którym zamierzasz publikować stronę.  Ten folder może się znajdować gdzie tylko chcesz, na twoim komputerze, choć raczej powinieneś go przechowywać w miejscu, które łatwo odnajdziesz. Może to być twój Pulpit czy folder domowy linuxa, albo bezpośrednio na dysku twardym bez katalogów nadrzędnych.

+ +
    +
  1. Wybierz miejsce przechowywania projektu strony. Utwórz katalog o nazwie web-projects (lub podobnej). Tu będzie się znajdował projekt twojej strony.
  2. +
  3. Wewnątrz katalogu utwórz kolejny folder do przechowywania twojej pierwszej strony internetowej. Nazwij go test-site (lub w bardziej kreatywny sposób).
  4. +
+ +

Nazewnictwo folderów i plików

+ +

Jak zauważysz, w tym artykule poprosimy cię o nazywanie folderów i plików tylko małymi literami i bez spacji w nazwie. A to dlatego, że:

+ +
    +
  1. Wiele komputerów, a w szczególności serwerów sieciowych, jest wrażliwych na wielkość liter w nazwach. Tak więc na przykłąd, jeśli umieścisz obraz z twojej strony w test-site/MyImage.jpg, a następnie w innym pliku odwołasz się do niego jako test-site/myimage.jpg, to może nie zadziałać.
  2. +
  3. Przeglądarki, serwery sieciowe oraz języki programowania nie do końca radzą sobie ze spacjami w nazwach. Na przykład, jeśli użyjesz spacji w nazwie pliku, niektóre systemy potraktują tę nazwę jako dwie nazwy dwóch plików. Niektóre serwery zastąpią spacje w nazwie symbolem "%20" (kod znaku dla spacji w URIs), w rezultacie przestaną działać wszystkie twoje odnośniki do takiego pliku. Lepiej jest stosować myślniki niż podkreślenia: my-file.html vs. my_file.html.
  4. +
+ +

Krótko mówiąc powinieneś używać myślników w nazwach plików (oczywiście jeśli chcesz używać kilkuwyrazowych nazw). Wyszukiwarka Google traktuje myślnik jako separator słów, ale podkreślenie już nie. Z tego powodu najlepiej jest wyrobić sobie nawyk pisania nazw plików i folderów małymi literami i bez spacji, i raczej nie używać myślników czy podkreśleń, chyba że wiesz co robisz. W ten sposób unikniesz już części problemów jakie możesz napotkać.

+ +

Jaką strukturę powinna mieć twoja strona internetowa?

+ +

Następnie zobaczmy jaką strukturę powinna mieć twoja strona internetowa. Najczęściej rzeczy, które będziemy mieli w każdym projekcie strony internetowej, który tworzymy, to podstawowy plik HTML index.html i foldery zawierające obrazy, pliki stylów i pliki skryptów . Stwórzmy je teraz:

+ +
    +
  1. index.html: Ten plik zawiera podstawową treść strony głównej twojej witryny, czyli tekst i obrazy jakie ludzie widzą wchodząc na twoją stronę. Przy pomocy twojego edytora tekstowego stwórz plik o nazwie index.html i zapisz go w twoim folderze projektu test-site.
  2. +
  3. katalog images: Ten folder będzie zawierał obrazy jakie użyjesz na twojej stronie. Utwórz katalog images wewnątrz folderu test-site.
  4. +
  5. katalog styles: Ten folder będzie zawierał pliki CSS do nadania wyglądu twojej strony (np. ustawieni koloru tekstu i tła strony). Utwórz katalog styles wewnątrz folderu test-site.
  6. +
  7. katalog scripts: Ten folder będzie zawierał cały JavaScript użyty do uczynienia twojej strony interaktywną (np. przyciski wczytujące dane po kliknięciu). Utwórz folder o nazwie scripts wewnątrz katalogu test-site.
  8. +
+ +
+

Uwaga: W systemie Windows, możesz napotkać na problem z wyświetlaniem nazw plików, ponieważ domyślnie włączona jest opcja folderów zwana Ukryj rozszeżenia znanych typów plików. Możesz ją wyłączyć w prosty sposób. Otwórz Eksplorator Plików, kliknij opcję w menu Organizuj a następnie  Opcje folderów i wyszukiwania. W zakładce Widok odzdnacz opcję Ukryj rozszeżenia... Po bardziej szczegółowe informacje (w zależności od twojej wersji systemu Windows) sięgnij do strony Microsoft lub po prostu poszukaj w Internecie!

+
+ +

Ścieżki do plików

+ +

Aby pliki mogły się między sobą komunikować, musisz ustawić odpowiednie ścieżki między nimi — po prostu chodzi o takie ścieżki, żeby pliki wiedziały wzajemnie, gdzie który się znajduje. Pokażemy ci o co chodzi tworząc nieco kodu w naszym pliku index.html, tak aby wyświetlał obraz jaki wybrałeś zgodnie ze wskazówkami artykułu "Jak będzie wyglądała twoja strona internetowa?"

+ +
    +
  1. Skopiuj uprzednio wybrany obrazek do katalogu images.
  2. +
  3. Otwórz plik index.html i wklej do niego poniższy kod. Nie martw się na razie tym co on oznacza - przyjżymy się jego strukturze dalej. +
    <!DOCTYPE html>
    +<html>
    +  <head>
    +    <meta charset="utf-8">
    +    <title>My test page</title>
    +  </head>
    +  <body>
    +    <img src="" alt="My test image">
    +  </body>
    +</html> 
    +
  4. +
  5. W linii <img src="" alt="My test image"> znajduje się kod HTML, który odpowiada za umieszczenie obrazu na twojej stronie. Musimy mu tylko wskazać, gdzie znajduje się plik z obrazem. Obrazek jest w katalogu images, który z kolei jest w tym samym folderze co index.html. Aby przejść od pliku index.html do naszego obrazu, ścieżka jaką potrzebujemy wskazać to images/your-image-filename. Na przykład, jeśli plik z obrazkiem nazywa się firefox-icon.png, ścieżką do niego jest images/firefox-icon.png.
  6. +
  7. Wstaw sieżkę do pliku we wskazanej wcześniej linii w cudzysłowie atrybutu src="".
  8. +
  9. Zapisz plik HTML i otwórz go w przeglądarce (klikając na niego dwa razy). Powinieneś zobaczyć w oknie przeglądarki swój obrazek!
  10. +
+ +

A screenshot of our basic website showing just the firefox logo - a flaming fox wrapping the world

+ +

Kilka ogólnych reguł tworzenia ścieżek:

+ + + +

Jak narazie to wszystko co powinieneś o tym wiedzieć.

+ +
+

Uwaga: W systemie Windows w ścieżkach do plików używa się znaku backslash a nie slash, enp. C:\windows. To jest nieistotne dla HTML — nawet jeśli tworzysz strony na Windowsie, nadal powinieneś używać w ścieżkach znaku slash.

+
+ +

Co jeszcze należy zrobić?

+ +

Na razie to tyle, a twoja struktura plików i folderów powinna wyglądać mniej więcej tak:

+ +

A file structure in mac os x finder, showing an images folder with an image in, empty scripts and styles folders, and an index.html file

+ +

{{PreviousMenuNext("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web/HTML_basics", "Learn/Getting_started_with_the_web")}}

diff --git a/files/pl/learn/getting_started_with_the_web/html_basics/index.html b/files/pl/learn/getting_started_with_the_web/html_basics/index.html new file mode 100644 index 0000000000..1b7835d180 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/html_basics/index.html @@ -0,0 +1,223 @@ +--- +title: HTML podstawy +slug: Learn/Getting_started_with_the_web/HTML_basics +translation_of: Learn/Getting_started_with_the_web/HTML_basics +--- +
    +
  1. +

    {{LearnSidebar}}

    +
  2. +
+ +
{{PreviousMenuNext("Learn/Getting_started_with_the_web/Dealing_with_files", "Learn/Getting_started_with_the_web/CSS_basics", "Learn/Getting_started_with_the_web")}}
+ +
+

HTML (Hypertext Markup Language) jest to kod używany do tworzenia struktury strony i jej zawartości. Na przykład treść może być uporządkowana w obrębie zestawu akapitów, listy punktowanych punktów lub tabel obrazów i danych. Jak sugeruje tytuł, ten artykuł daje podstawy do zrozumienia HTML i jego funkcji.

+
+ +

Czym właściwie jest HTML?

+ +

HTML nie jest językiem programowania; jest językiem znaczników (ang. markup language). HTML składa się z serii znaczników (tagów), których używa się do zamknięcia, opakowania różnych części treści, tak aby wyglądały i/lub działały w określony sposób. Z pomocą tagów możesz ze słów czy obrazów zrobić linki do innych stron, sprawić by były napisane kursywą, większą czcionką, wytłuścić je itd. Na przykład weźmy poniższą treść:

+ +
My cat is very grumpy
+ +

Jeśli chcemy utworzyć z niej paragraf, wystarczy użyć odpowiednich tagów:

+ +
<p>My cat is very grumpy</p>
+ +

Anatomia elementu HTML

+ +

Przyjrzyjmy się nieco dokładniej jak tworzymy paragraf.

+ +

+ +

Główne składniki naszego elementu to:

+ +
    +
  1. Tag otwierający: Znacznik ten zawiera nazwę elementu (w tym wypadku "p") otoczony parą ostrych nawiasów (znak mniejszości i większości na klawiaturze - przyp. tłum.)
  2. +
  3. Tag zamykający: Jest w zasadzie taki sam jak tag otwierajacy z wyjątkiem tego, że obowiązkowo musi zawierać znak slash przed nazwą tagu. Oznacza to, że w tym miejscu kończy się dany element. Jeśli w kodzie nie umieścisz znaku końca elementu, co jest częstym błędem poczatkujących twórców stron, może to spowodować nieoczekiwane błędy podczas wyświetlania i działania strony.
  4. +
  5. Zawartość: Po prostu treść elementu, w tym wypadku jest to tekst.
  6. +
  7. Element: Element to całość tej konstrukcji: tag otwierający plus zawartość plus tag zamykajacy.
  8. +
+ +

Elementy mogą zawierać atrybuty, np:

+ +

+ +

Atrybuty zawierają dodatkowe informacje o elemencie, które nie są widoczne dla odwiedzających stronę. W tym przykładzie class jest nazwą atrybutu, a editor-note jest jego wartością. Atrybut class pozwala nadać elementowi indentyfikator, który potem może być użyty do nadania stylu elementowi przez CSS lub do innych celów.

+ +

Atrybut zawsze powinien mieć:

+ +
    +
  1. Spację między nazwą tagu a nazwą atrybutu (lub innego atrybutu, jeśli dany element ma więcej atrybutów).
  2. +
  3. Nazwę atrybutu oraz znak równości.
  4. +
  5. Wartość podaną w cudzysłowie.
  6. +
+ +
+

Uwaga: Proste wartości atrybutów, które nie zawierają białych znaków ASCII (ani żadnego ze znaków " ' ` = < > ) mogą pozostać bez cudzysłowów, ale zaleca się używać cudysłowów dla wszystkich wartości atrybutów, ponieważ czyni to kod bardziej spójnym i zrozumiałym.

+
+ +

Zagnieżdżanie elementów

+ +

Możesz elementy umieszczać wewnąrz innych elementów kodu HTML — nazywa się to zagnieżdżaniem. Jeśli chcemy podkreślić, że nasz kot jest bardzo gderliwy, możemy otoczyć slowo "bardzo" tagiem wytluszczającym {{htmlelement("strong")}}:

+ +
<p>My cat is <strong>very</strong> grumpy.</p>
+ +

Jednak musisz upewnić się, że elementy te są odpowiednio zagnieżdżone: w powyższym przykładzie najpierw otwieramy element {{htmlelement("p")}}, następnie element {{htmlelement("strong")}}, dalej musimy zamknąć element {{htmlelement("strong")}} a dopiero potem {{htmlelement("p")}}. Poniższy przykład jest błędny:

+ +
<p>My cat is <strong>very grumpy.</p></strong>
+ +

Elementy muszą zaczynać się i kończyć we właściwy sposób, tak aby jeden zawierał się w drugim. Jeśli elementy będą niewłaściwie domknięte, jak w przykładzie wyżej, przeglądarka będzie próbowała zgadnąć co miałeś na myśli, co może prowadzić do nieoczekiwanych rezultatów. Nie rób tak!

+ +

Elementy puste

+ +

Czasem elementy nie mają zawartości i nazwyamy je elementami pustymi. Weźmy element {{htmlelement("img")}}, który używaliśmy wcześniej w naszym kodzie HTML:

+ +
<img src="images/firefox-icon.png" alt="My test image">
+ +

Element ten zawiera dwa atrybuty, ale nie posiada tagu zamykającego </img>ani żadnej treści. To dlatego, że element ten nie opakowuje żadnej treści, której miałby nadawać wygląd. Jego zadaniem jest załączenie do strony obrazka, który pojawi się na stronie.

+ +

Anatomia dokumentu HTML

+ +

Na razie tyle podstaw poszczgólnych elementów. Teraz przyjrzymy się, w jaki sposób są one łączone, aby utworzyć całą stronę HTML. Powróćmy do kodu, który umieściliśmy w naszym przykładzie index.html (który poznaliśmy po raz pierwszy w artykule Struktura plików witryny):

+ +
<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <title>My test page</title>
+  </head>
+  <body>
+    <img src="images/firefox-icon.png" alt="My test image">
+  </body>
+</html>
+ +

Mamy tutaj:

+ + + +

Obrazy

+ +

Zajmijmy się teraz ponownie elementem {{htmlelement("img")}}:

+ +
<img src="images/firefox-icon.png" alt="My test image">
+ +

Jak powiedzieliśmy wcześniej, ten element odpowiada za wyświetlanie obrazu na stronie. Atrybut src (źródło - ang. source) wskazuje ścieżkę do pliku z obrazem.

+ +

Mamy również załączony atrybut alt (ang. alternative). Ten atrybut określa jaki napis powinien pojawić się na stronie, jeśli użytkownikowi nie został z jakiegoś powodu wyświetlony obraz:

+ +
    +
  1. Użytkownicy niewidzący lub z poważnymi wadami wzroku często korzystają z narzędzi nazywanymi czytnikami ekranu, które pozwalają im odczytać tekst alternatywny.
  2. +
  3. Czasem coś pójdzie nie tak i obraz nie jest wyświetlany na stronie. Na przykład spróbuj zmienić ścieżkę wewnątrz atrybutu src na błędną. Jeśli zapiszesz i ponownie załadujesz stronę, powinieneś zobaczyć coś takiego zamiast obrazu:
  4. +
+ +

+ +

Kluczowe dla atrybutu alt jest użycie dobrego opisu obrazka. Piszący tekst alternatywny powinien zapewnić czytelnikowi wystarczającą ilość informacji, aby ten mógł dobrze zrozumieć co przekazuje obraz. W tym przykładzie nasz alternatywny tekst "Mój obraz testowy" wcale nie jest dobry. Znacznie lepiej dla naszego obrazka z logo Firefoxa będzie napisać "Logo Firefoxa: płonący lis otaczający Ziemię".

+ +

Teraz spróbuj wymyślić dobre teksty alternatywne dla swojego obrazka.

+ +
+

Uwaga: Dowiedz się więcej na temat dostępności na stronie MDN's Accessibility landing page.

+
+ +

Tagowanie tekstu

+ +

W tej sekcji omowimy podstawowe znaczniki HTML do tagowania tekstu strony.

+ +

Nagłówki

+ +

Elementy nagłówków pozwalają określić, że określone części treści są nagłówkami - lub podtytułami - treści. W taki sam sposób, w jaki książka ma tytuł główny, tytuły rozdziałów i napisy, może również wyglądać dokument HTML. HTML zawiera sześć poziomów nagłówków, {{htmlelement ("h1")}} - {{htmlelement ("h6")}}, chociaż najczęściej będziesz używać tylko co najwyżej 3-4 z nich:

+ +
<h1>My main title</h1>
+<h2>My top level heading</h2>
+<h3>My subheading</h3>
+<h4>My sub-subheading</h4>
+ +

Teraz spróbuj dodać odpowiedni nagłówej do twojej strony w pliku HTML, tuż nad elementem {{htmlelement("img")}}.

+ +
+

Note: Zobaczysz, że Twój nagłówek na poziomie 1 ma już ustawiony niejawny styl. Nie używaj elementów nagłówka po to, aby uzyskać tekst większy lub pogrubiony, ponieważ są one używane z powodów semantycznych i innych przyczyn, takich jak SEO. Spróbuj utworzyć znaczącą sekwencję nagłówków na swoich stronach, bez pomijania poziomów.

+
+ +

Paragrafy

+ +

Jak wyjaśniono wcześniej, elementy {{htmlelement("p")}} służą do formatowania parafrafów tekstu; będziesz ich często używać podczas oznaczania zwykłej treści tekstowej:

+ +
<p>This is a single paragraph</p>
+ +

Dodaj do swojego tekstu na stronie jeden lub więcej paragrafów (powinieneś go mieć po lekturze artykułu Jak powinna wyglądać twoja strona internetowa?). Paragrafy umieść bezpośrednio pod elementem {{htmlelement("img")}}.

+ +

Listy

+ +

Wiele stron internetowych posiada listy, a HTML ma odpowiedni element do ich utworzenia. Tworzenie listy zawsze wymaga przynajmniej dwóch elementów. Najpopularnieszymi typami list są lista numerowana i lista wypunktowana

+ +
    +
  1. Lista wypunktowana jest rodzajem listy, gdzie kolejność jej elementów nie ma znaczenia, np. lista zakupów. Aby ją utworzyć użyj znacznika {{htmlelement("ul")}} (ang. unordered list).
  2. +
  3. Lista numerowana jest rodzajem listy, gdzie kolejność jej elementów ma znaczenie, np. przepis na coś. Do tego rodzaju listy używany jest znacznik {{htmlelement("ol")}} (ang. ordered list).
  4. +
+ +

Każdy element listy musi być umieszczony w swoim znaczniku {{htmlelement("li")}} (ang. list item).

+ +

Na przykład, jeśli chcielibyśmy utworzyć listę z poniższego paragrafu:

+ +
<p>At Mozilla, we’re a global community of technologists, thinkers, and builders working together ... </p>
+ +

Możemy to zrobić w następujący sposób:

+ +
<p>At Mozilla, we’re a global community of</p>
+
+<ul>
+  <li>technologists</li>
+  <li>thinkers</li>
+  <li>builders</li>
+</ul>
+
+<p>working together ... </p>
+ +

Spróbuj dodać oba rodzaje list do swojej przykładowej strony.

+ +

Linki (odnośniki)

+ +

Odnośniki są bardzo ważne — są tym co sprawia, że Sieć jest Siecią! Aby utworzyć odnośnik musimy użyć prostego elementu — {{htmlelement("a")}} — "a" jest skrótem od angielskiego "anchor", czyli kotwica. Aby zrobić z twojego teksu w paragrafie link, wykonaj następujące czynności:

+ +
    +
  1. Wybierz jakiś tekst. My wybraliśmy "Mozilla Manifesto".
  2. +
  3. Umieść go wewnątrz elementu {{htmlelement("a")}}: +
    <a>Mozilla Manifesto</a>
    +
  4. +
  5. Nadaj elementowi {{htmlelement("a")}} atrybut href: +
    <a href="">Mozilla Manifesto</a>
    +
  6. +
  7. Wypełnij atrybut href odpowiednią zawartością, tj. adresem strony do jakiej twoj odnośnik ma prowadzić: +
    <a href="https://www.mozilla.org/en-US/about/manifesto/">Mozilla Manifesto</a>
    +
  8. +
+ +

Możesz otrzymać nieoczekiwany rezultat jeśli w adresie pominiesz część https:// lub http://, zwana  protokołem. Po dodaniu linku przetestuj stronę czy odnośnik prowadzi tam gdzie chciałeś.

+ +
+

href może się wydawać niejasnym wyborem dla nazwy atrybutu. Jeśli masz problem z zapamiętaniem go, pamietaj że oznacza on hipertekstową referencję (ang. hypertext reference)

+
+ +

Jeśli tego jeszcze nie zrobiłeś, dodaj odnośnik na twojej stronie.

+ +

Podsumowanie

+ +

Jeśli podążałeś za instrukcjami zawartymi w tym artykule, obecnie twoja strona powinna wyglądać podobnie do tej poniżej (możesz ją również zobaczyć tutaj):
+
+ A web page screenshot showing a firefox logo, a heading saying mozilla is cool, and two paragraphs of filler text

+ +

Jeśli gdzieś po drodze utknąłeś, zawsze możesz porównać swój kod z  GitHub ukończonymi przykładami na GitHubie.

+ +

Tutaj jedynie prześlizgnęliśmy się po powierzchni HTMLa. Aby dowiedzieć się więcej przejdź do strony Nauka HTMLa .

+ +

{{PreviousMenuNext("Learn/Getting_started_with_the_web/Dealing_with_files", "Learn/Getting_started_with_the_web/CSS_basics", "Learn/Getting_started_with_the_web")}}

diff --git a/files/pl/learn/getting_started_with_the_web/index.html b/files/pl/learn/getting_started_with_the_web/index.html new file mode 100644 index 0000000000..622e465103 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/index.html @@ -0,0 +1,59 @@ +--- +title: Rozpocznij pracę z Siecią +slug: Learn/Getting_started_with_the_web +tags: + - Beginner + - CSS + - Design + - Guide + - HTML + - Index + - NeedsTranslation + - TopicStub + - publishing + - theory +translation_of: Learn/Getting_started_with_the_web +--- +
{{LearnSidebar}}
+ +
+

Rozpocznij pracę z Siecią to zwięzła seria wprowadzająca w praktyczne aspekty tworzenia stron internetowych. Skonfigurujesz narzędzia potrzebne do zbudowania prostej strony internetowej i opublikowania własnego prostego kodu.

+
+ +

Historia twojej pierwszej strony internetowej

+ +

Stworzenie profesjonalnej strony internetowej to dużo pracy, więc jeśli dopiero zaczynasz tworzenie stron internetowych, zachęcamy do rozpoczęcia od czegoś małego. Nie zbudujesz od razu drugiego Facebooka, ale nie jest trudno zbudować własną, prostą stronę internetową, więc zaczniemy od tego.

+ +

Przeglądając poniższe artykuły w sugerowanej kolejności, przejdziesz od zera do pierwszej strony internetowej. Zacznijmy naszą podróż!

+ +

Instalacja podstawowego oprogramowania

+ +

Jeśli chodzi o narzędzia do budowy strony internetowej, jest wiele do wyboru. Jeżeli dopiero zaczynasz, możesz być zdezorientowany przez szereg edytorów kodu, frameworków i narzędzi do testowania. Instalując podstawowe oprogramowanie pokazujemy ci krok po kroku, jak zainstalować tylko takie oprogramowanie, które jest Ci potrzebne do rozpoczęcia podstawowego tworzenia stron internetowych.

+ +

Jak będzie wyglądała twoja strona internetowa?

+ +

Zanim zaczniesz pisanie kodu dla swojej strony internetowej, należy ją najpierw zaplanować. Jakie informacje prezentujesz? Jakich czcionek i kolorów używasz? Jak będzie wyglądać twoja strona internetowa? Przedstawiamy prostą metodę, którą możesz zastosować, aby zaplanować treść i wygląd witryny.

+ +

Radzenie sobie z plikami

+ +

Strona składa się z wielu plików: treści tekstowych, kodu, arkuszy stylów, treści multimedialnych itp. Kiedy budujesz stronę internetową, musisz zebrać te pliki w sensowną strukturę i upewnić się, że mogą się one między sobą komunikować. Sekcja Radzenie sobie z plikami wyjaśnia, jak utworzyć sensowną strukturę plików dla swojej strony internetowej i jakich zagadnień trzeba mieć świadomość.

+ +

Podstawy HTML

+ +

Hipertekstowy język znaczników (HTML) to kod, którego używasz do strukturyzowania treści internetowych i nadawania im znaczenia i celu. Na przykład, czy zawartość mojej strony to zestaw akapitów, czy wypunktowana lista? Czy na mojej stronie znajdują się obrazy? Czy mam tabelę danych? Nie przytłaczając cię, podstawy HTML zapewniają wystarczającą ilość informacji, aby zapoznać Cię z HTML.

+ +

Podstawy CSS

+ +

Kaskadowe arkusze stylów (CSS) to kod, którego używasz do stylizacji swojej strony internetowej. Na przykład, czy chcesz, aby tekst był czarny, czy czerwony? W którym miejscu na ekranie ma być wyświetlana dana zawartość strony? Jakie obrazy i kolory tła powinny być użyte do udekorowania twojej strony? Podstawy CSS przeprowadzą Cię przez to, czego potrzebujesz, aby zacząć.

+ +

Podstawy JavaScript

+ +

JavaScript to język programowania, którego używasz do dodawania interaktywnych funkcji do swojej strony internetowej. Przykładami mogą być gry, rzeczy, które zdarzają się po naciśnięciu przycisków lub wprowadzeniu danych w formularzach, dynamiczne efekty stylizacji, animacje i wiele innych. Podstawy JavaScript dają ci wyobrażenie o tym, co jest możliwe z tym ekscytującym językiem i jak zacząć.

+ +

Publikowanie swojej strony internetowej

+ +

Po zakończeniu pisania kodu i organizowania plików, które składają się na twoją stronę internetową, musisz umieścić to wszystko w Internecie, aby ludzie mogli ją znaleźć.Publikowanie swojej witryny opisuje, jak przy minimalnym wysiłku można uzyskać prosty przykładowy kod online.

+ +

Jak działa sieć

+ +

Kiedy wchodzisz na swoją ulubioną stronę internetową, w tle dzieje się wiele skomplikowanych rzeczy, o których możesz nie wiedzieć. Sposób działania sieci określa, co dzieje się podczas przeglądania strony internetowej na komputerze.

diff --git a/files/pl/learn/getting_started_with_the_web/installing_basic_software/index.html b/files/pl/learn/getting_started_with_the_web/installing_basic_software/index.html new file mode 100644 index 0000000000..86fd252681 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/installing_basic_software/index.html @@ -0,0 +1,80 @@ +--- +title: Instalacja podstawowego oprogramowania +slug: Learn/Getting_started_with_the_web/Installing_basic_software +tags: + - Beginner + - Browser + - Learn + - Setup + - Tools + - WebMechanics + - 'l10n:priority' + - text editor +translation_of: Learn/Getting_started_with_the_web/Installing_basic_software +--- +
{{LearnSidebar}}
+ +
{{NextMenu("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web")}}
+ +
+

W sekcji Instalacja podstawowego oprogramowania pokazujemy, jakie narzędzia są potrzebne do podstawowego tworzenia stron internetowych i jak je prawidłowo zainstalować.

+
+ +

Jakich narzędzi używają profesjonaliści?

+ + + +

Jakich właściwie narzędzi potrzebuję na teraz?

+ +

Wygląda to na przerażającą listę, ale na szczęście można zacząć tworzyć strony internetowe, nie wiedząc nic o większości z nich. W tym artykule przedstawimy Ci tylko minimum - edytor tekstu i kilka nowoczesnych przeglądarek internetowych.

+ +

Instalacja edytora tekstowego

+ +

Prawdopodobnie masz już podstawowy edytor tekstu na swoim komputerze. Domyślnie Windows zawiera Notatnik a macOS dostarczany jest z TextEdit. Dystrybucje Linuksa różnią się od siebie; na Ubuntu jest to gedit.

+ +

W przypadku tworzenia stron internetowych, przydałby ci się jednak lepszy edytor tekstowy. Polecamy zacząć od Visual Studio Code, który jest darmowym edytorem, oferującym podglądy na żywo i podpowiedzi do kodu.

+ +

Instalacja nowoczesnych przeglądarek internetowych

+ +

Na razie zainstalujemy kilka przeglądarek internetowych, aby przetestować nasz kod. Wybierz swój system operacyjny poniżej i kliknij odpowiednie linki aby pobrać instalatory swoich ulubionych przeglądarek:

+ + + +

Zanim przejdziesz dalej, należy zainstalować co najmniej dwie z tych przeglądarek i mieć je gotowe do testów.

+ +
+

Uwaga: Internet Explorer nie jest kompatybilny z niektórymi nowoczesnymi funkcjami sieciowymi i może nie być w stanie uruchomić twojego projektu. Zazwyczaj nie musisz się martwić o to, aby twoje projekty były z nim kompatybilne, ponieważ bardzo niewiele osób nadal z niego korzysta - na pewno nie martw się o niego zbytnio podczas nauki. Czasami możesz natknąć się na projekt, który wymaga wsparcia.

+
+ +

Instalacja lokalnego serwera sieciowego

+ +

Niektóre przykłady będą musiały być uruchamiane przez serwer sieciowy, aby działały poprawnie. Możesz dowiedzieć się jak to zrobić w Jak skonfigurować lokalny serwer testowy?

+ +

{{NextMenu("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web")}}

+ +

W tym module

+ + diff --git a/files/pl/learn/getting_started_with_the_web/jak_dziala_siec/index.html b/files/pl/learn/getting_started_with_the_web/jak_dziala_siec/index.html new file mode 100644 index 0000000000..6d1a97d33c --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/jak_dziala_siec/index.html @@ -0,0 +1,110 @@ +--- +title: Jak działa Sieć +slug: Learn/Getting_started_with_the_web/Jak_dziala_Siec +tags: + - Beginner + - Client + - DNS + - HTTP + - IP + - Infrastructure + - Learn + - Server + - TCP + - 'l10n:priority' +translation_of: Learn/Getting_started_with_the_web/How_the_Web_works +--- +
{{LearnSidebar}}
+ +
{{PreviousMenu("Learn/Getting_started_with_the_web/Publishing_your_website", "Learn/Getting_started_with_the_web")}}
+ +
+

Jak działa Sieć zapewnia uproszczony wgląd w to, co dzieje się podczas przeglądania witryny w przeglądarce internetowej na komputerze lub telefonie.

+
+ +

Teoria ta nie jest niezbędna do pisania kodu, ale na dłuższą metę zrozumienie tego, co dzieje się w tle, przynosi korzyści.

+ +

Klienci i serwery

+ +

Komputery podłączone do sieci są nazywane klientami i serwerami. Uproszczony schemat ich interakcji może wyglądać w ten sposób:

+ +

Dwa kółka reprezentujące klienta i serwer. Strzałka oznaczona jako zapytanie przechodzi z klienta do serwera, a strzałka oznaczona jako odpowiedź przechodzi z serwera do klienta.

+ + + +

Pozostałe części składowe

+ +

Klient i serwer, o których pisaliśmy powyżej, nie opowiadają całej historii. Jest wiele innych części, które są związane z tym tematem, a my opiszemy je poniżej.

+ +

Na razie, wyobraźmy sobie, że sieć to droga. Na jednym końcu tej drogi jest klient, który jest jak twój dom. Na drugim końcu drogi jest serwer, który jest sklepem, w którym chcesz coś kupić.

+ +

+ +

Oprócz klienta i serwera, musimy się również przywitać z:

+ + + +

Więc co się dokładnie dzieje?

+ +

Po wpisaniu adresu strony internetowej w przeglądarce (dla naszej analogii jest to jak chodzenie do sklepu):

+ +
    +
  1. Przeglądarka przechodzi do serwera DNS i znajduje rzeczywisty adres serwera, na którym znajduje się strona internetowa (znajduje się adres sklepu).
  2. +
  3. Przeglądarka wysyła do serwera wiadomość z żądaniem HTTP, prosząc go o przesłanie kopii strony internetowej do klienta (wchodzisz do sklepu i zamawiasz towar). Ta wiadomość i wszystkie inne dane wysyłane pomiędzy klientem a serwerem są przesyłane przez twoje połączenie internetowe przy użyciu TCP/IP.
  4. +
  5. Jeśli serwer zaakceptuje prośbę klienta, serwer wysyła do niego wiadomość "200 OK", co oznacza "Oczywiście możesz zajrzeć na tę stronę! Tutaj jest", a następnie zaczyna wysyłać pliki strony do przeglądarki w postaci serii małych kawałków zwanych pakietami danych (sklep daje Ci towar, a Ty przynosisz go z powrotem do domu).
  6. +
  7. Przeglądarka składa małe kawałki w kompletną stronę internetową i wyświetla ją Tobie (towar dociera do Twoich drzwi - nowe błyszczące rzeczy, niesamowite!).
  8. +
+ +

Wyjaśnienie DNS

+ +

Prawdziwe adresy internetowe nie są miłymi, zapadającymi w pamięć słowami, które wpisujesz do paska adresu, aby znaleźć swoje ulubione strony. Są to specjalne numery, które wyglądają tak: 63.245.215.20.

+ +

Nazywa się to {{Glossary("IP Address", "adresem IP")}} i reprezentuje on unikalną lokalizację w sieci. Jednakże, nie jest to łatwe do zapamiętania, prawda? Właśnie dlatego wynaleziono system nazw domen. Są to specjalne serwery, które dopasowują adres internetowy, który wpisujesz do przeglądarki (np. "mozilla.org") do rzeczywistego adresu strony internetowej (IP).

+ +

Do stron internetowych można dotrzeć bezpośrednio poprzez ich adresy IP. Adres IP strony internetowej można znaleźć wpisując jej domenę do narzędzia takiego jak IP Checker.

+ +

Objaśnienie pakietów

+ +

Wcześniej używaliśmy terminu "pakiety" do określenia formatu, w jakim dane są wysyłane z serwera do klienta. Co mamy tu na myśli? Zasadniczo, gdy dane są wysyłane przez sieć, są one wysyłane w postaci tysięcy małych kawałków, dzięki czemu wielu różnych użytkowników sieci może pobrać tę samą stronę w tym samym czasie. Gdyby strony internetowe były wysyłane jako pojedyncze duże kawałki, tylko jeden użytkownik mógłby pobrać jeden na raz, co oczywiście uczyniłoby sieć bardzo nieefektywną i mało przyjemną w użyciu.

+ +

Zobacz także

+ + + +

Uznanie

+ +

Zdjęcie ulicy: Street composing, autorstwa Kevin D.

+ +

{{PreviousMenu("Learn/Getting_started_with_the_web/Publishing_your_website", "Learn/Getting_started_with_the_web")}}

+ +

W tym module

+ + diff --git a/files/pl/learn/getting_started_with_the_web/javascript_basics/index.html b/files/pl/learn/getting_started_with_the_web/javascript_basics/index.html new file mode 100644 index 0000000000..cf62e22bb7 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/javascript_basics/index.html @@ -0,0 +1,395 @@ +--- +title: Podstawy JavaScript +slug: Learn/Getting_started_with_the_web/JavaScript_basics +tags: + - Początkujący +translation_of: Learn/Getting_started_with_the_web/JavaScript_basics +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Getting_started_with_the_web/CSS_basics", "Learn/Getting_started_with_the_web/Publishing_your_website", "Learn/Getting_started_with_the_web")}}
+ +
+

JavaScript to język programowania, który dodaje interaktywność do Twojej witryny (na przykład: gry, odpowiedzi po naciśnięciu przycisków lub wprowadzeniu danych do formularza, dynamiczne stylowanie, animacja). Ten artykuł pomoże Ci rozpocząć przygodę z tym ekscytującym językiem oraz przedstawi przedsmak tego, co dzięki niemu jest możliwe.

+
+ +

Czym naprawdę jest JavaScript?

+ +

{{Glossary("JavaScript")}} (w skrócie "JS") jest pełnoprawnym {{Glossary("Dynamic programming language", "dynamicznym językiem programowania")}}, który po dodaniu do dokumentu {{Glossary("HTML")}}, może dostarczyć dynamiczną zawartość do stron internetowych. Został stworzony przez Brendan'a Eich, współtwórcę projektu Mozilla, Mozilla Foundation i Mozilla Corporation.

+ +

JavaScript jest niezwykle wszechstronny. Możesz zacząć z czymś małym, z karuzelami, galeriami obrazków, zmiennymi układami strony i odpowiedziami na kliknięcia przycisków. Z większym doświadczeniem, będziesz w stanie stworzyć gry, animowane grafiki 2D i 3D, kompleksowe aplikacje oparte na bazach danych i wiele więcej!

+ +

JavaScript jest dość zwarty, ale jednocześnie bardzo elastyczny. Programiści napisali wiele różnych narzędzi z wykorzystaniem rdzenia języka JavaScript, otwierając mnóstwo dodatkowych funkcjonalności przy minimalnym wysiłku. Obejmują one:

+ + + +

Ponieważ ten artykuł ma być jedynie lekkim wprowadzeniem do JavaScript, nie będziemy mieszać Ci na tym etapie mówiąc szczegółowo o tym, jaka jest różnica między jądrem języka JavaScript, a różnymi narzędziami wymienionymi powyżej. Możesz później nauczyć się tego wszystkiego szczegółowo, w naszym JavaScript learning area i w pozostałych artykułach MDN.

+ +

Poniżej przedstawimy kilka aspektów podstaw języka, będziesz miał także okazje pobawić się kilkoma funkcjonalnościami interfejsu API przeglądarki. Baw się dobrze!

+ +

Przykład "hello world"

+ +

Powyższa sekcja może brzmieć naprawdę ekscytująco i tak powinno być — JavaScript jest jedną z najbardziej żywych technologii internetowych i kiedy zaczniesz się nią dobrze posługiwać to twoje witryny internetowe wejdą w nowy wymiar mocy i kreatywności.

+ +

Jednak uzyskanie poczucia komfortu w używaniu JavaScript jest trudniejsze niż w przypadku korzystania z HTML i CSS. Być może lepiej będzie zacząć powoli i kontynuować pracę za pomocą małych konsekwentnych kroków. Na początek pokażemy, jak dodać podstawowy kod JavaScript do Twojej strony tworząc przykład "hello world!" (standard w podstawowych przykładach programowania).

+ +
+

Ważne: Jeśli nie podążałeś za wcześniejszą częścią naszego kursu, pobierz ten przykładowy kod i użyj go jako punktu wyjścia.

+
+ +
    +
  1. Po pierwsze, przejdź do swojej strony testowej i utwórz nowy folder o nazwie „scripts” (bez cudzysłowów). Następnie w nowym folderze skryptów utwórz nowy plik o nazwie main.js. Zapisz go w folrderze scripts.
  2. +
  3. Następnie w pliku index.html wprowadź następujący element w nowej linii, tuż przed zamknięciem tagu </body>: +
    <script src="scripts/main.js"></script>
    +
  4. +
  5. W zasadzie, ten kod działa identycznie, jak element {{htmlelement("link")}} w CSS — dodaje JavaScript do strony, więc może mieć wpływ na HTML (wraz z CSS i czymkolwiek innym na stronie).
  6. +
  7. Teraz dodaj następujący kod do pliku main.js: +
    var myHeading = document.querySelector('h1');
    +myHeading.textContent = 'Hello world!';
    +
  8. +
  9. Na koniec upewnij się, że pliki HTML i JavaScript są zapisane, a następnie załaduj index.html w przeglądarce. Powinieneś zobaczyć coś takiego:
  10. +
+ +
+

Notatka: Powód, dla którego wstawiliśmy element {{htmlelement("script")}} w dolnej części pliku HTML jest to, że elementy w HTML są ładowane przez przeglądarkę w kolejności pojawienia się ich w pliku. Jeśli JavaScript jest ładowany jako pierwszy i ma wpływać na HTML poniżej, może to nie zadziałać, ponieważ JavaScript byłby ładowany przed HTML na którym ma pracować. Dlatego umieszczenie kodu JavaScript w dolnej części strony HTML jest często najlepszą strategią.

+
+ +

Co się wydarzyło?

+ +

Twój tekst nagłówka został zmieniony na "Hello world!" przy użyciu JavaScript. Zrobiłeś to najpierw, używając funkcji zwanej {{domxref("Document.querySelector", "querySelector()")}} by chwycić referencje do nagłówka i przechowywać ją w zmiennej o nazwie myHeading. Jest to bardzo podobne do tego, co zrobiliśmy przy użyciu selektorów CSS. Kiedy chcesz coś zrobić z elementem, najpierw musisz go wybrać.

+ +

Następnie ustawiłeś wartość właściwości{{domxref("Node.textContent", "textContent")}} zmiennej myHeading (która reprezentuje zawartość nagłówka) na "Hello world!".

+ +
+

Zanotuj: Obie funkcje, których używałeś powyżej, są częścią Document Object Model (DOM) API, który pozwala na manipulowanie treścią strony.

+
+ +

Podstawy języka

+ +

Wytłumaczmy niektóre podstawowe cechy języka JavaScript, aby lepiej zrozumieć, jak to wszystko działa. Warto zauważyć, że te cechy są wspólne dla wszystkich języków programowania, więc jeśli opanujesz te podstawy, jesteś na dobrej drodze aby móc programować w czymkolwiek!

+ +
+

Ważne: W tym artykule spróbuj wprowadzać przykładowe linie kodu do konsoli JavaScript, aby zobaczyć, co się zdarzy. Więcej informacji na temat konsoli JavaScript można znaleźć w sekcji Discover browser developer tools.

+
+ +

Zmienne

+ +

{{Glossary("Variable", "Zmienne")}} są kontenerami w których można zapisywać wartości. Zacznij od zadeklarowania zmiennej za pomocą słowa kluczowego var, a następnie dowolnej nazwy, której chcesz użyć:

+ +
var myVariable;
+ +
+

Zanotuj: Średnik na końcu wiersza wskazuje, gdzie kończy się instrukcja; jest to bezwzględnie wymagane tylko w przypadku, gdy musisz oddzielić poszczególne instrukcje w jednej linii. Jednak niektórzy uważają, że dobrą praktyką jest umieszczenie ich pod koniec każdej instrukcji. Istnieją inne zasady kiedy należy, a kiedy nie powinno się ich używać — po więcej szczegółów zobacz Your Guide to Semicolons in JavaScript.

+
+ +
+

Zanotuj: Możesz dowolnie nazwać zmienną, ale istnieją pewne zastrzeżone nazwy (zobacz w tym artykule o regułach nazewnictwa zmiennych). Jeśli nie jesteś pewien, możesz sprawdzić nazwę zmiennej, aby upewnić się, czy jest prawidłowa.

+
+ +
+

Zanotuj: JavaScript rozróżnia małe i duże litery — myVariablejest inną zmienną niż myvariable. Jeśli pojawiają się problemy w kodzie, sprawdź wielkość liter!

+
+ +

Po zadeklarowaniu zmiennej możesz nadać jej wartość:

+ +
myVariable = 'Bob';
+ +

Jeśli chcesz, możesz wykonać obydwie operacje w tej samej linii:

+ +
var myVariable = 'Bob';
+ +

Możesz pobrać wartość przez wywołanie zmiennej po nazwie:

+ +
myVariable;
+ +

Po podaniu wartości zmiennej można ją później zmienić:

+ +
var myVariable = 'Bob';
+myVariable = 'Steve';
+ +

Warto zauważyć, że zmienne mają różne typy danych:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypWyjaśnieniePrzykład
{{Glossary("String")}}Sekwencja tekstu znana jako ciąg znaków. Aby potwierdzić, że zmienna jest ciągiem, należy zamknąć jej wartość w apostrofach.var myVariable = 'Bob';
{{Glossary("Number")}}Liczba. Liczb nie zamyka się w apostrofach.var myVariable = 10;
{{Glossary("Boolean")}}Prawda / Fałsz. Słowa true i false to specjalne słowa kluczowe w JS i nie potrzebują apostrofów.var myVariable = true;
{{Glossary("Array")}}Konstrukcja, która pozwala na przechowywanie wielu wartości w jednym odniesieniu.var myVariable = [1,'Bob','Steve',10];
+ Odwołaj się do każdego elementu tej tablicy:
+ myVariable[0], myVariable[1], itd.
{{Glossary("Object")}}Zasadniczo cokolwiek. Wszystko w JavaScript jest obiektem i może być przechowywane w zmiennej. Pamiętaj o tym podczas nauki.var myVariable = document.querySelector('h1');
+ Również wszystkie powyższe przykłady.
+ +

Więc dlaczego potrzebujemy zmiennych? Cóż, zmienne są potrzebne, aby zrobić cokolwiek interesującego w programowaniu. Jeśli nie moglibyśmy zmieniać wartości, to nie możnaby zrobić nic dynamicznego, jak personalizacja powitania lub zmiana wyświetlanego obrazu w galerii.

+ +

Komentarze

+ +

Możesz umieścić komentarze w kodzie JavaScript, tak samo jak w CSS:

+ +
/*
+Wszystko pomiędzy to komentarz.
+*/
+ +

Jeśli Twój komentarz nie zawiera przerw między wierszami, często łatwiej jest umieścić go za dwoma ukośnikami:

+ +
// To jest komentarz
+
+ +

Operatory

+ +

{{Glossary("Operator")}} jest symbolem matematycznym, który generuje wynik w oparciu o dwie wartości (lub zmienne). W poniższej tabeli można zobaczyć niektóre z najprostszych operatorów oraz kilka przykładów, które można wypróbować w konsoli JavaScript.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OperatorWyjaśnienieSymbolePrzykład
DodawanieSłuży do dodawania dwóch liczb lub sklejenia dwóch ciągów znaków.+6 + 9;
+ "Hello " + "world!";
Odejmowanie, Mnożenie, DzielenieRobią to, co można oczekiwać od nich w podstawowej matematyce.-, *, /9 - 3;
+ 8 * 2; // mnożenie w JS jest gwiazdką
+ 9 / 3;
Przypisanie wartościWidzieliście już to: przypisuje wartość zmiennej.=var myVariable = 'Bob';
Znak równościWykonuje test sprawdzający, czy dwie wartości są sobie równe i zwraca wynik true / false (Boolean).===var myVariable = 3;
+ myVariable === 4;
Zaprzeczenie, Nie równa sięZwraca logicznie odwrotną wartość tego, co poprzedza; zmienia true w false, itd. Kiedy jest używany wraz z operatorem równości, operator negacji sprawdza, czy dwie wartości nie są równe.!, !== +

Podstawowe wyrażenie jest true, ale porównanie zwraca false, ponieważ zostało ono zanegowane:

+ +

var myVariable = 3;
+ !(myVariable === 3);

+ +

Tu testujemy "czy myVariable NIE równa się 3". To zwraca wartość false ponieważ myVariable JEST równa 3.

+ +

var myVariable = 3;
+ myVariable !== 3;

+
+ +

Istnieje wiele więcej operatorów, ale to wystarczy na razie. Jeśli chcesz zobacz pełną listę sprawdź w Expressions and operators.

+ +
+

Zanotuj: Mieszanie typów danych może powodować dziwne efekty podczas wykonywania obliczeń, dlatego należy uważać, aby prawidłowo odwoływać się do zmiennych i uzyskać spodziewane wyniki. Na przykład wprowadź "35" + "25" do konsoli. Dlaczego nie dostaniesz oczekiwanego rezultatu? Ponieważ znaki cudzysłowów zmieniają liczby w ciągi znaków, więc skończyłeś na łączeniu łańcuchów zamiast dodawać liczby. Jeśli wpiszesz, 35 + 25 otrzymasz poprawny wynik.

+
+ +

Warunki

+ +

Warunkami są struktury kodu, które pozwalają na sprawdzenie, czy wyrażenie zwraca true, czy nie, i uruchamia inny kod ujawniony przez jego wynik. Bardzo popularną formą warunku są instrukcje if ... else. Na przykład:

+ +
var iceCream = 'chocolate';
+if (iceCream === 'chocolate') {
+  alert('Yay, I love chocolate ice cream!');
+} else {
+  alert('Awwww, but chocolate is my favorite...');
+}
+ +

Wyrażenie wewnątrz if (...) jest testem — który używa operatora tożsamości (opisanego powyżej) w celu porównania zmiennej iceCream z ciągiem znaków chocolate, aby sprawdzić, czy te dwa są równe. Jeśli to porównanie zwróci true, uruchomiony zostanie pierwszy blok kodu. Jeśli porównanie nie jest prawdziwe, pierwszy blok jest pomijany, a drugi blok kodu, po wywołaniu else, jest uruchamiany.

+ +

Funkcje

+ +

{{Glossary("Function", "Funkcje")}} są sposobem na zapakowanie funkcjonalności, które chcesz wykorzystać ponownie. Gdy potrzebujesz procedury, zamiast pisać cały kod za każdym razem, możesz wywołać funkcję z nazwą funkcji. Powyżej widzieliście już niektóre zastosowania funkcji, na przykład:

+ +
    +
  1. +
    var myVariable = document.querySelector('h1');
    +
  2. +
  3. +
    alert('hello!');
    +
  4. +
+ +

Funkcje te, document.querySelector i alert, są wbudowane w przeglądarkę, aby używać w dowolnym momencie.

+ +

Jeśli widzisz coś, co wygląda jak nazwa zmiennej, ale ma nawiasy — () — po niej, to prawdopodobnie jest to funkcja. Funkcje często biorą {{Glossary("Argument", "argumenty")}} — bity danych potrzebne do wykonywania ich pracy. Znajdują się one w nawiasach, oddzielone przecinkami jeśli jest więcej niż jeden argument.

+ +

Na przykład, funkcja alert () powoduje pojawienie się okna podręcznego wewnątrz okna przeglądarki, ale musimy dać mu ciąg znaków jako argument, aby powiedzieć użytkownikowi o tym, co należy wyświetlić w wyskakującym okienku.

+ +

Dobrą wiadomością jest możliwość zdefiniowania własnych funkcji — w następnym przykładzie napiszemy prostą funkcję, która przyjmuje dwie liczby jako argumenty i mnoży je:

+ +
function multiply(num1,num2) {
+  var result = num1 * num2;
+  return result;
+}
+ +

Spróbuj uruchomić powyższą funkcję w konsoli, a następnie przetestuj kilka argumentów. Na przykład:

+ +
multiply(4,7);
+multiply(20,20);
+multiply(0.5,3);
+ +
+

Zanotuj: return informuje przeglądarkę o zwróceniu zmiennej result z funkcji, dzięki czemu jest ona dostępna. Jest to konieczne, ponieważ zmienne zdefiniowane wewnątrz funkcji są dostępne tylko w tych funkcjach. Jest to tak zwany {{Glossary("Scope", "zakres")}} zmiennej. (Poczytaj więcej o zakresie zmiennej.)

+
+ +

Zdarzenia

+ +

Prawdziwa interaktywność na stronie internetowej potrzebuje zdarzeń. Są to struktury kodu nasłuchające rzeczy, które dzieją się w przeglądarce i uruchamiajace kod w odpowiedzi. Najbardziej oczywistym przykładem jest zdarzenie kliknięcia, które jest uruchamiane przez przeglądarkę po kliknięciu na coś za pomocą myszy. Aby to zademonstrować, wpisz następujący kod w konsoli, a następnie kliknij na bieżącej stronie internetowej:

+ +
document.querySelector('html').onclick = function() {
+    alert('Ouch! Stop poking me!');
+}
+ +

Istnieje wiele sposobów dołączania zdarzenia do elementu. Tutaj wybieramy element {{htmlelement("html")}} i ustawiamy obsługę jego właściwości onclick równą funkcji anonimowej (tj. bezimiennej), która zawiera kod, który ma być uruchamiany.

+ +

Zauważ że

+ +
document.querySelector('html').onclick = function() {};
+ +

jest równe temu

+ +
var myHTML = document.querySelector('html');
+myHTML.onclick = function() {};
+ +

To jest po prostu krócej.

+ +

Podrasowanie naszej przykładowej strony

+ +

Omówiliśmy kilka podstawowych zasad JavaScript, dodajmy kilka ciekawych funkcji do naszej przykładowej witryny, aby zobaczyć, co jest możliwe.

+ +

Dodawanie zmieniarki obrazu

+ +

W tej sekcji dodajemy dodatkowy obraz do naszej witryny, korzystając z kilku innych funkcji DOM API, używając JavaScript, aby przełączać się między nimi, gdy klikniesz obraz.

+ +
    +
  1. Na samym początku znajdź inne zdjęcie, które chciałbyś pokazać na stronie. Upewnij się, że jest tego samego rozmiaru, co pierwsze - albo przynajmniej jak najbliżej się da.
  2. +
  3. Zachowaj zdjęcie w swoim katalogu images.
  4. +
  5. Nazwij je 'firefox2.png' (bez apostrofów).
  6. +
  7. Otwórz swój plik main.js, następnie dopisz następujący kod (jeżeli nadal znajduje się tam skrypt "witaj, świecie" - usuń go). +
    var myImage = document.querySelector('img');
    +
    +myImage.onclick = function() {
    +    var mySrc = myImage.getAttribute('src');
    +    if(mySrc === 'images/firefox-icon.png') {
    +      myImage.setAttribute ('src','images/firefox2.png');
    +    } else {
    +      myImage.setAttribute ('src','images/firefox-icon.png');
    +    }
    +}
    +
  8. +
  9. Zapisz wszystko i otwórz index.html w przeglądarce. Teraz gdy klikniesz na obrazek, zmieni on się w inny!
  10. +
+ +

Przechowujesz odwołanie do elementu {{htmlelement("img")}} w zmiennej myImage. Następnie ustawiasz dla tej zmiennej obsługę zdarzenia onclick jako funkcję bez nazwy (finkcja anonimowa). Teraz za każdym razem, gdy kliknięty zostanie ten element:

+ +
    +
  1. Pobierasz wartość atrybutu src tego obrazu.
  2. +
  3. Za pomocą wyrażenia warunkowego sprawdzasz, czy wartość src jest równa ścieżce do oryginalnego obrazu: +
      +
    1. Jeśli tak, zmienisz wartość src na ścieżkę do drugiego obrazu, zmuszając drugi obraz do załadowania do elementu {{htmlelement("img")}}.
    2. +
    3. Jeśli nie (to oznacza, że ​​już musiała się zmienić), wartość src zmienia się z powrotem na ścieżkę oryginalnego obrazu, do stanu oryginalnego.
    4. +
    +
  4. +
+ +

Dodanie spersonalizowanej wiadomości powitalnej

+ +

Następnie dodamy kolejny fragment kodu, zmieniając tytuł strony na spersonalizowaną wiadomość powitalną, gdy użytkownik po raz pierwszy odwiedzi witrynę. Ta wiadomość powitalna będzie trwała, nawet jeśli użytkownik opuści witrynę, a później wróci - zapiszemy ją za pomocą interfejsu Web Storage API. Będzie również zawierać opcję zmiany użytkownika, a zatem będziemy mogli zmienić wiadomość powitalną w dowolnym momencie.

+ +
    +
  1. W pliku index.html, dodaj następujący wiersz tuż przed elementem {{htmlelement("script")}}: + +
    <button>Change user</button>
    +
  2. +
  3. Na końcu pliku main.js, umieść następujący kod, dokładnie tak, jak napisano — pobiera on odwołania do nowego przycisku i nagłówka, przechowując je w zmiennych: +
    var myButton = document.querySelector('button');
    +var myHeading = document.querySelector('h1');
    +
  4. +
  5. Teraz dodaj następującą funkcję, aby ustawić spersonalizowane powitanie — to jeszcze nic nie zrobi, ale poprawimy to za chwilę: +
    function setUserName() {
    +  var myName = prompt('Please enter your name.');
    +  localStorage.setItem('name', myName);
    +  myHeading.textContent = 'Mozilla is cool, ' + myName;
    +}
    + Ta funkcja zawiera funkcję prompt(), która wyświetla okno dialogowe, przypominające komunikat alert(). Jednak ten komunikat prompt(), prosi użytkownika o wprowadzenie danych i zapisanie ich w zmiennej po naciśnięciu przycisku OK. W takim przypadku prosimy użytkownika o podanie jego nazwy. Następnie wywołujemy interfejs API o nazwie localStorage, który pozwala nam przechowywać dane w przeglądarce, a następnie je odzyskać. Używamy funkcji setItem() dla localStorage, aby utworzyć i przechować element danych o nazwie 'name', ustawiając jego wartość jako wartość zmiennej myName która zawiera dane wprowadzone przez użytkownika. Na koniec ustawiamy textContent nagłówka jako string, oraz nowo zapisaną nazwę użytkownika.
  6. +
  7. Następnie dodaj poniższy blok if ... else, który możemy nazwać kodem inicjalizacji, ponieważ tworzy strukturę aplikacji podczas pierwszego ładowania: +
    if(!localStorage.getItem('name')) {
    +  setUserName();
    +} else {
    +  var storedName = localStorage.getItem('name');
    +  myHeading.textContent = 'Mozilla is cool, ' + storedName;
    +}
    + W tym bloku najpierw używamy operatora negacji (logiczne NIE, reprezentuje znak wykrzyknika !) aby sprawdzić, czy obiekt name istnieje. Jeśli nie, to uruchamiana jest funkcja setUserName(), aby go utworzyć. Jeśli on istnieje (to znaczy, że użytkownik ustawił go podczas poprzedniej wizyty), pobieramy zapisaną nazwę za pomocą getItem() i ustawiamy textContent nagłówka jako string oraz nazwę użytkownika, podobnie jak robiliśmy to w setUserName().
  8. +
  9. Na koniec poniższą funkcję przypisujemy do zdarzenia onclick przycisku. Kiedy zostanie on kliknięty, zostanie uruchomiona funkcja setUserName(). Dzięki temu użytkownik może ustawić nową nazwę, kiedy chce, naciskając przycisk: +
    myButton.onclick = function() {
    +  setUserName();
    +}
    +
    +
  10. +
+ +

Teraz, kiedy po raz pierwszy odwiedzisz witrynę, poprosi ona o podanie nazwy użytkownika, a następnie otrzymasz spersonalizowaną wiadomość. Możesz zmienić nazwę w dowolnym momencie, naciskając przycisk. Dodatkowym bonusem jest to, że nazwa utrzymuje się po zamknięciu strony, zachowując spersonalizowaną wiadomość przy następnym otwarciu strony! Dzieje się tak, ponieważ nazwa przechowywana jest w localStorage.

+ +

Wniosek

+ +

Jeśli wykonałeś wszystkie instrukcje zawarte w tym artykule, powinieneś otrzymać stronę, która wygląda mniej więcej tak (możesz również zobaczyć naszą wersję tutaj):

+ +

+ +

Jeśli utkniesz, możesz porównać swoją pracę z naszym gotowym przykładowym kodem na GitHub.

+ +

Ledwo zarysowaliśmy powierzchnię JavaScript. Jeśli lubisz grać i chcesz posunąć się jeszcze dalej, przejdź do naszego następnego tematu kursu JavaScript.

+ +

{{PreviousMenuNext("Learn/Getting_started_with_the_web/CSS_basics", "Learn/Getting_started_with_the_web/Publishing_your_website", "Learn/Getting_started_with_the_web")}}

diff --git a/files/pl/learn/getting_started_with_the_web/publishing_your_website/index.html b/files/pl/learn/getting_started_with_the_web/publishing_your_website/index.html new file mode 100644 index 0000000000..ac173eef00 --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/publishing_your_website/index.html @@ -0,0 +1,124 @@ +--- +title: Publikacja strony internetowej +slug: Learn/Getting_started_with_the_web/Publishing_your_website +tags: + - GitHub + - Początkujący + - Silnik Aplikacji Google + - Uczyć się + - serwer internetowy + - sieć +translation_of: Learn/Getting_started_with_the_web/Publishing_your_website +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Getting_started_with_the_web/JavaScript_basics", "Learn/Getting_started_with_the_web/How_the_Web_works", "Learn/Getting_started_with_the_web")}}
+ +
+

Once you finish writing the code and organizing the files that make up your website, you need to put it all online so people can find it. This article explains how to get your simple sample code online with little effort.

+
+ +

Jakie są możliwości?

+ +

Opublikowanie strony internetowej jest tematem złożonym, ponieważ istnieje wiele sposobów, aby to osiągnąć. W tym artykule nie probujemy udokumentować wszystkie możliwe metody. Zamiast tego wyjaśniamy zalety i wady trzech podejść, które są praktyczne dla początkujących. Następnie przechodzimy przez jedną metodę, która może działać od razu dla wielu użytkowników.

+ +

Getting hosting and a domain name

+ +

To have more control over content and website appearance, most people choose to buy web hosting and a domain name:

+ + + +

Many professional websites go online this way.

+ +

In addition, you will need a {{Glossary("FTP", "File Transfer Protocol (FTP)")}} program (see How much does it cost: software for more details) to actually transfer the website files over to the server. FTP  programs vary widely, but generally, you have to connect to your web server using details provided by your hosting company (typically username, password, hostname). Then the program shows you your local files and the web server's files in two windows, and provides a way for you to transfer files back and forth.

+ +

+ +

Tips for finding hosting and domains

+ + + +

Using an online tool like GitHub or Google App Engine

+ +

Some tools let you publish your website online:

+ + + +

These options are usually free, but you may outgrow the limited feature-set.

+ +

Using a web-based IDE such as CodePen

+ +

There are a number of web apps that emulate a website development environment, allowing you to enter HTML, CSS and JavaScript, and then display the result of that code as a website — all in one browser tab. Generally speaking, these tools are relatively easy, great for learning, good for sharing code (for example, if you want to share a technique with or ask for debugging help from colleagues in a different office), and free (for basic features). They host your rendered page at a unique web address. However, the features are limited, and these apps usually don't provide hosting space for assets (like images).

+ +

Try playing with some of these examples to find out which one works best for you:

+ + + +

+ +

Publishing via GitHub

+ +

Now let's examine how to easily publish your site via GitHub Pages.

+ +
    +
  1. First of all, sign up for GitHub and verify your email address.
  2. +
  3. Next, you need to create a repository to store files.
  4. +
  5. On this page, in the Repository name box, enter username.github.io, where username is your username. For example, our friend Bob Smith would enter bobsmith.github.io.
    + Check the "Initialize this repository with a README" box. Then click Create repository.
  6. +
  7. Drag and drop the content of your website folder into your repository. Then click Commit changes.
    + +
    +

    Note: Make sure your folder has an index.html file.

    +
    +
  8. +
  9. +

    Navigate your browser to username.github.io to see your website online. For example, for the username chrisdavidmills, go to chrisdavidmills.github.io.

    + +
    +

    Note: It may take a few minutes for your website to go live. If your website does not display immediately, wait a few minutes. Try again.

    +
    +
  10. +
+ +

To learn more, see GitHub Pages Help.

+ +

Further reading

+ + + +

{{PreviousMenuNext("Learn/Getting_started_with_the_web/JavaScript_basics", "Learn/Getting_started_with_the_web/How_the_Web_works", "Learn/Getting_started_with_the_web")}}

+ +

W tym module

+ + diff --git a/files/pl/learn/getting_started_with_the_web/what_will_your_website_look_like/index.html b/files/pl/learn/getting_started_with_the_web/what_will_your_website_look_like/index.html new file mode 100644 index 0000000000..da94d8989d --- /dev/null +++ b/files/pl/learn/getting_started_with_the_web/what_will_your_website_look_like/index.html @@ -0,0 +1,99 @@ +--- +title: Jak będzie wyglądała twoja strona internetowa? +slug: Learn/Getting_started_with_the_web/What_will_your_website_look_like +tags: + - Assets + - Beginner + - Composing + - Content + - Deprecated + - Design + - Fonts + - Learn + - Simple + - 'l10n:priority' + - step by step +translation_of: Learn/Getting_started_with_the_web/What_will_your_website_look_like +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Getting_started_with_the_web/Installing_basic_software", "Learn/Getting_started_with_the_web/Dealing_with_files", "Learn/Getting_started_with_the_web")}}
+ +

Jak będzie wyglądać twoja strona internetowa? Omawia prace planistyczne i projektowe, które trzeba wykonać przed rozpoczęciem pisania kodu, w tym "Jakie informacje zawiera moja strona internetowa?", "Jakich czcionek i kolorów chcę użyć?" oraz "Co robi moja strona?".

+ +
+

Pierwsza sprawa: planowanie

+ +

Zanim cokolwiek zrobisz, potrzebujesz kilku pomysłów. Co właściwie powinna robić twoja strona? Strona internetowa może robić w zasadzie wszystko, ale przy pierwszej próbie lepiej zachować prostotę. Zaczniemy od stworzenia prostej strony internetowej z nagłówkiem, obrazem i kilkoma akapitami.

+ +

Na początek, musisz odpowiedzieć sobie na te pytania:

+ +
    +
  1. O czym jest twoja strona internetowa? Lubisz psy, Nowy York albo Pac-Mana?
  2. +
  3. Jakie informacje prezentujesz na ten temat? Napisz tytuł i kilka akapitów i pomyśl o obrazku, który chcesz pokazać na swojej stronie.
  4. +
  5. Jak wygląda twoja strona internetowa, w prostych, ogólnych założeniach. Jaki jest kolor tła? Jaka czcionka jest odpowiednia: formalna, kreskówkowa, pogrubiona i donośna, subtelna?
  6. +
+ +
+

Uwaga: Złożone projekty wymagają dokładnych wytycznych, które zagłębiają się we wszystkie szczegóły dotyczące kolorów, czcionek, odstępów między elementami na stronie, odpowiedniego stylu pisania itd. Nazywa się to czasem przewodnikiem projektanta, systemem projektowania lub księgą marki, a przykład można zobaczyć w systemie projektowania Firefox Photon Design System.

+
+ +
+

Szkicowanie twojego projektu

+ +

Następnie złap za ołówek i papier i naszkicuj z grubsza, jak chcesz, aby twoja strona wyglądała. Na pierwszej prostej stronie internetowej, nie ma zbyt wiele do szkicowania, ale należy już teraz wyrobić sobie ten nawyk. To naprawdę pomaga — nie musisz być jak Van Gogh!

+ +

+ +
+

Uwaga: Nawet przy prawdziwych, skomplikowanych stronach internetowych, zespoły projektowe zazwyczaj rozpoczynają od szkiców wstępnych na papierze, a następnie budują cyfrowe makiety przy użyciu edytora graficznego lub technologii sieciowych.

+ +

W skład zespołów webowych często wchodzi zarówno grafik, jak i projektant {{Glossary("UX", "doświadczeń użytkownika")}} (UX). Graficy przygotowują wizualizacje strony internetowej. Projektanci UX mają nieco bardziej abstrakcyjną rolę w zajmowaniu się tym, jak użytkownicy będą doświadczać i wchodzić w interakcję ze stroną internetową.

+
+ +
+

Dobieranie zasobów

+ +

W tym momencie warto zacząć kompletować treść, która ma pojawić się na twojej stronie.

+ +

Tekst

+ +

Nadal powinieneś mieć te kilka paragrafów i tytuł przygotowany wcześniej. Miej je w zanadrzu.

+ +

Kolor motywu strony

+ +

Aby wybrać kolor, użyj tej strony, przygotowanej przez W3Schools i znajdź kolor, jaki ci się podoba. Kiedy klikniesz na wybrany kolor, zobaczysz dziwny, sześciocyfrowy kod, jak np. #660066. To jest tzw. kod hexadecymalny (ang. hex code), który reprezentuje twój kolor. Na razie skopiuj go w jakieś bezpieczne miejsce.

+ +

+ +

Obrazy

+ +

Aby wybrać jakiś obraz, odwiedź Grafikę Google i znajdź coś, co ci odpowiada.

+ +
    +
  1. Kiedy wybierzesz jakiś obraz, kliknij na niego aby zobaczyć go w większym rozmiarze.
  2. +
  3. Kliknij na obraz prawym klawiszem myszy (Ctrl + klik na Macu), wybierz Zapisz obraz jako... i wybierz miejsce na komputerze, gdzie chcesz go zapisać. Możesz też skopiować adres URL obrazu, z paska adresowego twojej przeglądarki, aby mieć go pod ręką i skorzystać z niego w przyszłości
  4. +
+ +

+ +

Pamiętaj jednak o tym, że większość obrazów w internecie, również tych w Grafice Google, jest chronione prawami autorskimi. Żeby zminimalizować prawdopodobieństwa naruszenia czyichś praw, możesz skorzystać z narzędzi filtrowania Google. Kliknij w przycisk Narzędzia, następnie w Prawa użytkowania i wybierz Oznaczone do ponownego wykorzystania

+ +

+ +

Czcionki

+ +

Aby wybrać czcionkę:

+ +
    +
  1. Odwiedź witrynę Google Fonts i poszukaj takiej czcionki, która ci odpowiada. Aby ułatwić sobie wyszukiwanie, możesz skorzystać z filtrów, które znajdują się po prawej stronie.
  2. +
  3. Kliknij znaczek plusa obok nazwy czcionki, która ci się podoba.
  4. +
  5. Kliknij na panel, który pojawi się na dole strony.
  6. +
  7. Skopiuj kod, który się pojawił i zapisz go dla późniejszego użycia
  8. +
+ +

+ +

+ +

{{PreviousMenuNext("Learn/Getting_started_with_the_web/Installing_basic_software", "Learn/Getting_started_with_the_web/Dealing_with_files", "Learn/Getting_started_with_the_web")}}

diff --git a/files/pl/learn/html/howto/index.html b/files/pl/learn/html/howto/index.html new file mode 100644 index 0000000000..5343bdbaad --- /dev/null +++ b/files/pl/learn/html/howto/index.html @@ -0,0 +1,155 @@ +--- +title: Use HTML to solve common problems +slug: Learn/HTML/Howto +tags: + - CodingScripting + - HTML + - NeedsTranslation + - TopicStub +translation_of: Learn/HTML/Howto +--- +
{{LearnSidebar}}
+ +

The following links point to solutions to common everyday problems you'll need to solve with HTML.

+ +
+
+

Basic structure

+ +

The most basic application of HTML is document structure. If you're new to HTML you should start with this.

+ + + +

Basic text-level semantics

+ +

HTML specializes in providing semantic information for a document, so HTML answers many questions you might have about how to get your message across best in your document.

+ + +
+ +
+ + +

One of the main reasons for HTML is make navigation easy with {{Glossary("hyperlink", "hyperlinks")}}, which can be used in many different ways:

+ + + +

Images & multimedia

+ + + +

Scripting & styling

+ +

HTML only sets up document structure. To solve presentation issues, use {{glossary("CSS")}}, or use scripting to make your page interactive.

+ + + +

Embedded content

+ + +
+
+ +

Uncommon or advanced problems

+ +

Beyond the basics, HTML is very rich and offers advanced features for solving complex problems. These articles help you tackle the less common use cases you may face:

+ +
+
+

Forms

+ +

Forms are a complex HTML structure made to send data from a webpage to a web server. We encourage you to go over our full dedicated guide. Here is where you should start:

+ + + +

Tabular information

+ +

Some information, called tabular data, needs to be organized into tables with columns and rows. It's one of the most complex HTML structures, and mastering it is not easy:

+ + + +

Data representation

+ + + +

Interactivity

+ + +
+ + +
+ +

     

diff --git a/files/pl/learn/html/howto/use_data_attributes/index.html b/files/pl/learn/html/howto/use_data_attributes/index.html new file mode 100644 index 0000000000..9cd0b47a1c --- /dev/null +++ b/files/pl/learn/html/howto/use_data_attributes/index.html @@ -0,0 +1,82 @@ +--- +title: Używanie atrybutów danych +slug: Learn/HTML/Howto/Use_data_attributes +tags: + - Atrybuty data + - HTML5 + - Web +translation_of: Learn/HTML/Howto/Use_data_attributes +--- +
+ + +

{{LearnSidebar}}
+ HTML5 został zaprojektowany z myślą o rozszerzalności dla danych, które powinny być powiązane z konkretnym elementem, ale nie muszą mieć określonego znaczenia. Atrybuty data-* pozwalają nam przechowywać dodatkowe informacje w standardowych, semantycznych elementach HTML bez zbędnych obejść takich jak niestandardowe atrybuty, dodatkowe właściwości w DOMie, lub używanie {{domxref("Node.setUserData()")}}.

+
+ +

Składnia HTML

+ +

Składnia jest prosta. Jakikolwiek atrybut, którego nazwa zaczyna się od data- jest atrybutem danych. Powiedzmy, że masz element taki jak article, w którym chcesz przechowywać dodatkowe dane. W tym celu możesz użyć atrybutu data :

+ +
<article
+  id="electriccars"
+  data-columns="3"
+  data-index-number="12314"
+  data-parent="cars">
+...
+</article>
+ +

Dostęp w JavaScript

+ +

Odczytanie wartości tych atrybutów w JavaScript jest także bardzo proste. Mógłbyś użyć {{domxref("Element.getAttribute", "getAttribute()")}} podając pełną nazwę HTML atrybutów by je odczytać, jednakże standard wskazuje na łatwiejszą metodę: {{domxref("DOMStringMap")}} można odczytać przez właściwość {{domxref("HTMLElement.dataset", "dataset")}}.

+ +

By odczytać atrybut data przez obiekt dataset, użyj części nazwy atrybutu zaraz po data- (pauzy zamieniane są na camelCase).

+ +
var article = document.getElementById('electriccars');
+
+article.dataset.columns // "3"
+article.dataset.indexNumber // "12314"
+article.dataset.parent // "cars"
+ +

Każda wartość jest łańcuchem znaków i może zostać odczytania i zapisana. W powyższym przykładzie, użycie article.dataset.columns = 5 zamieni wartość tego atrybutu na "5".

+ +

Dostęp w CSS

+ +

Warto zwrócić uwagę, że atrybuty danych to zwyczajne atrybuty HTML, więc można się do nich dostać w CSS-ie. By np. pokazać zawartość takiego atrybutu można użyć content w CSS z funkcją {{cssxref("attr")}}:

+ +
article::before {
+  content: attr(data-parent);
+}
+ +

Możesz też użyć selektorów atrybutu w CSS by zmienić styl głównego elementu w zależności od wartości atrybutów danych:

+ +
article[data-columns='3'] {
+  width: 400px;
+}
+article[data-columns='4'] {
+  width: 600px;
+}
+ +

Możesz zobaczyć jak to działa w tym przykładzie na JSBin.

+ +

Atrybuty danych można także używać do przechowywania danych, które stale się zmieniają, jak np. wyniki w grze. Używając selektorów CSS oraz JavaScript pozwala uzyskać fajne efekty bez pisania żmudnych procedur wyświetlania. Zobacz to nagranie dla przykładu użycia wygenerowanej treści i przejść w CSS-ie (przykład na JSBin).

+ +

Wartości tych atrybutów to łańcuchy znakow. Wartości numeryczne należy opakować w cudzysłów w selektorze by zostały one uwzględnione.

+ +

Problemy

+ +

Nie należy przechowywać w atrybutach danych treści, które powinny być widoczne dla użytkownika, ponieważ programy ułatwiające dostęp nie będą mogły się do nich dostać. Ponadto wyszukiwarki mogą nie indeksować wartości atrybutów danych.

+ +

Najważniejszym problemem jaki należy wziąć pod uwagę to wydajność i wsparcie w  przeglądarce Internet Explorer. Internet Explorer 11+ wspiera standard atrybutu danych, ale wcześniejsze wersje nie wspierają obiektu dataset. By wykorzystywać atrybuty danych w IE 10 i wcześniejszych wersach, musisz użyć {{domxref("Element.getAttribute", "getAttribute()")}}. Dodatkowo wydajność czytania atrybutów danych jest gorsza od trzymania danych w zwyczajnych obiektach JS.

+ +

Pomimo to, atrybuty danych są świetnym rozwiązaniem dla obsługi meta danych powiązanych z elementami HTML.

+ +

W Firefox 49.0.2 (i być może w nowszych lub starszych wersjach), atrybuty danych które przekraczają 1022 znaków nie zostaną odczytane przez Javascript (EcmaScript 4).

+ +

Zobacz też

+ + diff --git a/files/pl/learn/html/index.html b/files/pl/learn/html/index.html new file mode 100644 index 0000000000..e0fc65c2c9 --- /dev/null +++ b/files/pl/learn/html/index.html @@ -0,0 +1,50 @@ +--- +title: HTML +slug: Learn/HTML +translation_of: Learn/HTML +--- +
{{LearnSidebar}}
+ +

Aby budować strony internetowe, powinneś znać {{Glossary('HTML')}} — podstawową technologię wykorzystywaną do definiowania struktury strony internetowej. HTML służy do określania, czy treść internetowa powinna być rozpoznawana jako akapit, lista, nagłówek, link, obraz, odtwarzacz multimedialny, formularz lub jeden z wielu innych dostępnych elementów lub nawet nowego elementu, który definiujesz.

+ +

Ścieżka nauczania

+ +

Najlepiej zacząć naukę, ucząc się HTML. Zacznij od czytania wstępnych treści. Możesz następnie przejść do nauki o bardziej zaawansowanych tematach, takich jak:

+ + + +

Przed rozpoczęciem tego tematu należy mieć co najmniej podstawową znajomość korzystania z komputerów i używać pasywnej sieci Web (tzn. po prostu przeglądać internet). Powinieneś mieć podstawowe środowisko pracy skonfigurowane tak, jak to szczegółowo zostało opisane w części Instalowanie podstawowego oprogramowania i zrozumieć, jak tworzyć i zarządzać plikami, jak opisano szczegółowo w radzeniu sobie z plikami - są częścią naszego Pierwszego kroku z modułami dla początkujących.

+ +

Zalecane jest abyś przerobił Getting started with the web zanim podejdziesz do tego tematu, jednak nie jest to absolutnie konieczne; wiele z tego, co występuje w artykule HTML basics jest również wyjaśnione w module Introduction to HTML, aczkolwiek dużo bardziej szczegółowo.

+ +

Moduły

+ +

W tym temacie znajdziesz następujące moduły, w sugerowanej kolejności ich przerabiania. Z całą pewnością powinieneś zacząć od pierwszego.

+ +
+
Wstęp to HTML
+
Ten moduł pozwoli ci poznać podstawy, przyzwyczaić się do używanych pojęć i składni a także zobaczyć w jaki sposób używa się języka HTML do określania właściwości tekstu, tworzenia hiperłączy i definiowania struktury strony internetowej.
+
Multimedia and embedding
+
This module explores how to use HTML to include multimedia in your web pages, including the different ways that images can be included, and how to embed video, audio, and even entire other webpages.
+
Forms and buttons
+
Forms and buttons are a very important part of the Web — these allow your site visitors to input data and send it to you (e.g. registration, login and feedback forms), and you to implement controls for controlling complex functionality (for example submitting a form to the server, or pausing playback of a video.) This module gets you started.
+
Tables (TBD)
+
Representing tabular data on a webpage in an understandable, {{glossary("Accessibility", "accessible")}} way can be a challenge. This module covers basic table markup, along with more complex features such as implementing captions and summaries.
+
+ +

Solving common HTML problems

+ +

Use HTML to solve common problems provides links to sections of content explaining how to use HTML to solve very common problems when creating a webpage: dealing with titles, adding images or videos, emphasizing content, creating a basic form, etc.

+ +

See also

+ +
+
+
HTML (HyperText Markup Language) on MDN.
+
The main entry point for HTML documentation on MDN, including detailed element and attribute references — if you want to know what attributes an element has or what values an attribute has, for example, this is a great place to start.
+
+
diff --git a/files/pl/learn/html/introduction_to_html/getting_started/index.html b/files/pl/learn/html/introduction_to_html/getting_started/index.html new file mode 100644 index 0000000000..1f40b24429 --- /dev/null +++ b/files/pl/learn/html/introduction_to_html/getting_started/index.html @@ -0,0 +1,763 @@ +--- +title: Rozpoczynanie pracy z HTML +slug: Learn/HTML/Introduction_to_HTML/Getting_started +translation_of: Learn/HTML/Introduction_to_HTML/Getting_started +--- +
+
{{LearnSidebar}}
+ +
{{NextMenu("Learn/HTML/Introduction_to_HTML/The_head_metadata_in_HTML", "Learn/HTML/Introduction_to_HTML")}}
+
+ +

W tym artykule omówimy podstawy HTMLa. Żeby ułatwić ci rozpoczęcie nauki, zapoznamy się z elementami, atrybutami i innymi ważnymi terminami, które być może obiły ci się o uszy. Opowiemy też, jak te terminy odnoszą się do HTMLa. Nauczysz się jaką strukturę mają elementy wykorzystywane w HTMLu, jak wygląda struktura całej strony oraz poznasz inne ważne właściwości języka. W międzyczasie będzie okazja, aby też samemu poeksperymentować z pisaniem kodu!

+ + + + + + + + + + + + +
Warunki wstępne:Podstawowa umiejętność obsługi komputera, posiadanie podstawowego oprogramowania oraz typowa wiedza jak pracować z plikami.
Cel:Zapoznanie się z językiem HTML oraz zastosowanie w praktyce kilku jego elementów
+ +

Czym jest HTML?

+ +

{{glossary("HTML")}} (Hypertext Markup Language) nie jest językiem programowania. Jest to język znaczników, który mówi przeglądarce jaką strukturę ma strona, którą odwiedzasz. Może być ona albo bardzo skomplikowana albo bardzo prosta. Zależy to wyłącznie od osoby piszącej stronę. Na HTML składa się kolekcja {{glossary("Element", "elementów")}}, która służy do opisywania i grupowania treści, dzięki której zachowuje się ona, lub wygląda, w określony sposób. Okalające treść {{glossary("Tag", "tagi")}} mogą sprawić, że treść stanie się ona hiperłączem do innej strony, zostanie napisana kursywą oraz wiele innych rzeczy. Dla przykładu, spójrzmy na ten tekst:

+ +
Mój kot jest bardzo humorzasty
+ +

Jeżeli chcielibyśmy aby ten tekst się wyróżniał, możemy wydzielić go do oddzielnego akapitu, za pomocą elementu {{htmlelement("p")}}:

+ +
<p>Mój kot jest bardzo humorzasty</p>
+ +
+

Notka: Tagi HTMLa nie rozróżniają wielkości liter. Dla przykładu, tag {{htmlelement("title")}} może zostać zapisany jako <title>, <TITLE>, <Title>, <TiTlE>, etc. i nadal będzie działał. Jednakże dobrą praktyką jest pisanie nazw tagów małą literą, dla spójności, czytelność i kilku innych powodów

+
+ +

Anatomia elementu HTML

+ +

Zagłębmy się w nasz akapit, który napisaliśmy w poprzedniej sekcji:

+ +

+ +

Anatomia tego elementu to:

+ + + +

Podsumowując: Element to tag otwierający, po którym następuje jego treść, a po treści znajduje się tag zamykający

+ +

Aktywne uczenie się: tworzenie twojego pierwszego elementu HTML

+ +

Zedytuj poniższą linijkę, otaczając ją tagami <em> oraz </em>. Aby określić początek elementu, umieść tag otwierający <em> na początku linijki. Aby określić koniec elementu, umieść tag zamykający </em> na końcu linijki. Zrobienie tego powinno pokazać linijkę tekstu wypisaną kursywą!

+ +

Jeżeli popełnisz błąd, możesz przywrócić pracę do stanu początkowego za pomocą przycisku Reset. Gdybyś nie wiedział jak wykonać to zadanie, możesz kliknąć w przycisk Pokaż rozwiązanie, aby zobaczyć gotowe rozwiązanie

+ + + +

{{ EmbedLiveSample('Playable_code', 700, 400, "", "", "hide-codepen-jsfiddle") }}

+ +

Zagnieżdżanie elementów

+ +

Elementy mogą znajdować się wewnątrz innych elementów. Nazywa się to zagnieżdżaniem. Jeżeli chcielibyśmy zaznaczyć, że nasz kot jest bardzo humorzasty, możemy zamknąć słowo bardzo w elemencie {{htmlelement("strong")}}, który wytłuści podany mu tekst

+ +
<p>Mój kot jest <strong>bardzo</strong> humorzasty.</p>
+ +

Zagnieżdżanie można zrobić w poprawny oraz niepoprawny sposób. W powyższym przykładzie otworzyliśmy najpierw element p, potem element strong. Aby zadnieżdżanie zadziałało, musimy najpier zamknąć element strong, a następnie element p.

+ +

Poniżej znajduje się przykład niepoprawnego zagnieżdżania:

+ +
<p>Mój kot jest <strong>bardzo humorzasty.</p></strong>
+ +

Jeżeli tak jest otwarty w jakimś elemencie, musi też być w nim zamknięty. Jeżeli pomieszamy tagi zamykające, tak jak w powyższym przykładzie, przeglądarka będzie musiała zgadywać, o co nam chodziło. A to zgadywanie może prowadzić do nieoczekiwanych wyników

+ +

Elementy blokowe, a elementy w linii

+ +

There are two important categories of elements to know in HTML: block-level elements and inline elements.

+ + + +

Consider the following example:

+ +
<em>first</em><em>second</em><em>third</em>
+
+<p>fourth</p><p>fifth</p><p>sixth</p>
+
+ +

{{htmlelement("em")}} is an inline element. As you see below, the first three elements sit on the same line, with no space in between. On the other hand, {{htmlelement("p")}} is a block-level element. Each p element appears on a new line, with space above and below. (The spacing is due to default CSS styling that the browser applies to paragraphs.)

+ +

{{ EmbedLiveSample('Block_versus_inline_elements', 700, 200, "", "") }}

+ +
+

Note: HTML5 redefined the element categories: see Element content categories. While these definitions are more accurate and less ambiguous than their predecessors, the new definitions are a lot more complicated to understand than block and inline. This article will stay with these two terms.

+
+ +
+

Note: The terms block and inline, as used in this article, should not be confused with the types of CSS boxes that have the same names. While the names correlate by default, changing the CSS display type doesn't change the category of the element, and doesn't affect which elements it can contain and which elements it can be contained in. One reason HTML5 dropped these terms was to prevent this rather common confusion.

+
+ +
+

Note: Find useful reference pages that include lists of block and inline elements. See Block-level elements and Inline elements.

+
+ +

Puste elementy

+ +

Not all elements follow the pattern of an opening tag, content, and a closing tag. Some elements consist of a single tag, which is typically used to insert/embed something in the document. For example, the {{htmlelement("img")}} element embeds an image file onto a page:

+ +
<img src="https://raw.githubusercontent.com/mdn/beginner-html-site/gh-pages/images/firefox-icon.png">
+ +

This would output the following:

+ +

{{ EmbedLiveSample('Empty_elements', 700, 300, "", "", "hide-codepen-jsfiddle") }}

+ +
+

Note: Empty elements are sometimes called void elements.

+
+ +

Atrybuty

+ +

Elements can also have attributes. Attributes look like this:

+ +

&amp;amp;amp;amp;amp;amp;lt;p class="editor-note">My cat is very grumpy&amp;amp;amp;amp;amp;amp;lt;/p>

+ +

Attributes contain extra information about the element that won't appear in the content. In this example, the class attribute is an identifying name used to target the element with style information.

+ +

An attribute should have:

+ + + +

Aktywne uczenie się: Dodawanie atrybutów do elementu

+ +

Another example of an element is {{htmlelement("a")}}. This stands for anchor. An anchor can make the text it encloses into a hyperlink. Anchors can take a number of attributes, but several are as follows:

+ + + +

Edit the line below in the Input area to turn it into a link to your favorite website.

+ +
    +
  1. Add the <a> element.
  2. +
  3. Add the href attribute and the title attribute.
  4. +
  5. Specify the target attribute to open the link in the new tab.
  6. +
+ +

You'll be able to see your changes update live in the Output area. You should see a link—that when hovered over—displays the value of the title attribute, and when clicked, navigates to the web address in the href attribute. Remember that you need to include a space between the element name, and between each attribute.

+ +

If you make a mistake, you can always reset it using the Reset button. If you get really stuck, press the Show solution button to see the answer.

+ + + +

{{ EmbedLiveSample('Playable_code2', 700, 400, "", "", "hide-codepen-jsfiddle") }}

+ +

Atrybuty logiczne

+ +

Sometimes you will see attributes written without values. This is entirely acceptable. These are called Boolean attributes. Boolean attributes can only have one value, which is generally the same as the attribute name. For example, consider the {{htmlattrxref("disabled", "input")}} attribute, which you can assign to form input elements. (You use this to disable the form input elements so the user can't make entries. The disabled elements typically have a grayed-out appearance.) For example:

+ +
<input type="text" disabled="disabled">
+ +

As shorthand, it is acceptable to write this as follows:

+ +
<!-- using the disabled attribute prevents the end user from entering text into the input box -->
+<input type="text" disabled>
+
+<!-- text input is allowed, as it doesn't contain the disabled attribute -->
+<input type="text">
+
+ +

For reference, the example above also includes a non-disabled form input element.The HTML from the example above produces this result:

+ +

{{ EmbedLiveSample('Boolean_attributes', 700, 100, "", "", "hide-codepen-jsfiddle") }}

+ +

Pomijanie cudzysłowia przy wartościach atrybutu

+ +

If you look at code for a lot of other sites, you might come across a number of strange markup styles, including attribute values without quotes. This is permitted in certain circumstances, but it can also break your markup in other circumstances. For example, if we revisit our link example from earlier, we could write a basic version with only the href attribute, like this:

+ +
<a href=https://www.mozilla.org/>favorite website</a>
+ +

However, as soon as we add the title attribute in this way, there are problems:

+ +
<a href=https://www.mozilla.org/ title=The Mozilla homepage>favorite website</a>
+ +

As written above, the browser misinterprets the markup, mistaking the title attribute for three attributes:  a title attribute with the value The, and two Boolean attributes, Mozilla and homepage. Obviously, this is not intended! It will cause errors or unexpected behavior, as you can see in the live example below. Try hovering over the link to view the title text!

+ +

{{ EmbedLiveSample('Omitting_quotes_around_attribute_values', 700, 100, "", "", "hide-codepen-jsfiddle") }}

+ +

Always include the attribute quotes. It avoids such problems, and results in more readable code.

+ +

Cudzysłów pojedynczy czy podwójny?

+ +

In this article you will also notice that the attributes are wrapped in double quotes. However, you might see single quotes in some HTML code. This is a matter of style. You can feel free to choose which one you prefer. Both of these lines are equivalent:

+ +
<a href="http://www.example.com">A link to my example.</a>
+
+<a href='http://www.example.com'>A link to my example.</a>
+ +

Make sure you don't mix single quotes and double quotes. This example (below) shows a kind of mixing quotes that will go wrong:

+ +
<a href="http://www.example.com'>A link to my example.</a>
+ +

However, if you use one type of quote, you can include the other type of quote inside your attribute values:

+ +
<a href="http://www.example.com" title="Isn't this fun?">A link to my example.</a>
+ +

To use quote marks inside other quote marks of the same type (single quote or double quote), use HTML entities. For example, this will break:

+ +
<a href='http://www.example.com' title='Isn't this fun?'>A link to my example.</a>
+ +

Instead, you need to do this:

+ +
<a href='http://www.example.com' title='Isn&#39;t this fun?'>A link to my example.</a>
+ +

Anatomia dokumentu HTML

+ +

Individual HTML elements aren't very useful on their own. Next, let's examine how individual elements combine to form an entire HTML page:

+ +
<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <title>My test page</title>
+  </head>
+  <body>
+    <p>This is my page</p>
+  </body>
+</html>
+ +

Here we have:

+ +
    +
  1. <!DOCTYPE html>: The doctype. When HTML was young (1991-1992), doctypes were meant to act as links to a set of rules that the HTML page had to follow to be considered good HTML. Doctypes used to look something like this: + +
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    + More recently, the doctype is a historical artifact that needs to be included for everything else to work right. <!DOCTYPE html> is the shortest string of characters that counts as a valid doctype. That is all you need to know!
  2. +
  3. <html></html>: The {{htmlelement("html")}} element. This element wraps all the content on the page. It is sometimes known as the root element.
  4. +
  5. <head></head>: The {{htmlelement("head")}} element. This element acts as a container for eveything you want to include on the HTML page, that isn't the content the page will show to viewers. This includes keywords and a page description that would appear in search results, CSS to style content, character set declarations, and more. You'll learn more about this in the next article of the series.
  6. +
  7. <meta charset="utf-8">: This element specifies the character set for your document to UTF-8, which includes most characters from the vast majority of human written languages. With this setting, the page can now handle any textual content it might contain. There is no reason not to set this, and it can help avoid some problems later.
  8. +
  9. <title></title>: The {{htmlelement("title")}} element. This sets the title of the page, which is the title that appears in the browser tab the page is loaded in. The page title is also used to describe the page when it is bookmarked.
  10. +
  11. <body></body>: The {{htmlelement("body")}} element. This contains all the content that displays on the page, including text, images, videos, games, playable audio tracks, or whatever else.
  12. +
+ +

Aktywne uczenie się: Dodawanie paru właściwości do dokumentu HTML

+ +

If you want to experiment with writing some HTML on your local computer, you can:

+ +
    +
  1. Copy the HTML page example listed above.
  2. +
  3. Create a new file in your text editor.
  4. +
  5. Paste the code into the new text file.
  6. +
  7. Save the file as index.html.
  8. +
+ +
+

Note: You can also find this basic HTML template on the MDN Learning Area Github repo.

+
+ +

You can now open this file in a web browser to see what the rendered code looks like. Edit the code and refresh the browser to see what the result is. Initially the page looks like this:

+ +

A simple HTML page that says This is my pageIn this exercise, you can edit the code locally on your computer, as described previously, or you can edit it in the sample window below (the editable sample window represents just the contents of the {{htmlelement("body")}} element, in this case). Sharpen your skills by implementing the following tasks:

+ + + +

If you make a mistake, you can always reset it using the Reset button. If you get really stuck, press the Show solution button to see the answer.

+ + + +

{{ EmbedLiveSample('Playable_code3', 700, 600, "", "", "hide-codepen-jsfiddle") }}

+ +

Białe znaki w HTMLu

+ +

In the examples above, you may have noticed that a lot of whitespace is included in the code. This is optional. These two code snippets are equivalent:

+ +
<p>Dogs are silly.</p>
+
+<p>Dogs        are
+         silly.</p>
+ +

No matter how much whitespace you use inside HTML element content (which can include one or more space character, but also line breaks), the HTML parser reduces each sequence of whitespace to a single space when rendering the code. So why use so much whitespace? The answer is readability.
+
+ It can be easier to understand what is going on in your code if you have it nicely formatted. In our HTML we've got each nested element indented by two spaces more than the one it is sitting inside. It is up to you to choose the style of formatting (how many spaces for each level of indentation, for example), but you should consider formatting it.

+ +

Znaki specjalne w HTML

+ +

In HTML, the characters <, >,",' and & are special characters. They are parts of the HTML syntax itself. So how do you include one of these special characters in your text? For example, if you want to use an ampersand or less-than sign, and not have it interpreted as code.

+ +

You do this with character references. These are special codes that represent characters, to be used in these exact circumstances. Each character reference starts with an ampersand (&), and ends with a semicolon (;).

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Literal characterCharacter reference equivalent
<&lt;
>&gt;
"&quot;
'&apos;
&&amp;
+ +

The character reference equivalent could be easily remembered because the text it uses can be seen as less than for '&lt;' , quotation for ' &quot; ' and similarly for others. To find more about entity reference, see List of XML and HTML character entity references (Wikipedia).
+
+ In the example below, there are two paragraphs:

+ +
<p>In HTML, you define a paragraph using the <p> element.</p>
+
+<p>In HTML, you define a paragraph using the &lt;p&gt; element.</p>
+ +

In the live output below, you can see that the first paragraph has gone wrong. The browser interprets the second instance of <p> as starting a new paragraph. The second paragraph looks fine because it has angle brackets with character references.

+ +

{{ EmbedLiveSample('Entity_references_Including_special_characters_in_HTML', 700, 200, "", "", "hide-codepen-jsfiddle") }}

+ +
+

Note: You don't need to use entity references for any other symbols, as modern browsers will handle the actual symbols just fine as long, as your HTML's character encoding is set to UTF-8.

+
+ +

Komentarze HTML

+ +

HTML has a mechanism to write comments in the code. Browsers ignore comments,  effectively making comments invisible to the user. The purpose of comments is to allow you to include notes in the code to explain your logic or coding. This is very useful if you return to a code base after being away for long enough that you don't completely remember it. Likewise, comments are invaluable as different people are making changes and updates.

+ +

To write an HTML comment, wrap it in the special markers <!-- and -->. For example:

+ +
<p>I'm not inside a comment</p>
+
+<!-- <p>I am!</p> -->
+ +

As you can see below, only the first paragraph displays in the live output.

+ +

{{ EmbedLiveSample('HTML_comments', 700, 100, "", "", "hide-codepen-jsfiddle") }}

+ +

Podsumowanie

+ +

You made it to the end of the article! We hope you enjoyed your tour of the basics of HTML.
+
+ At this point, you should understand what HTML looks like, and how it works at a basic level. You should also be able to write a few elements and attributes. The subsequent articles of this module go further on some of the topics introduced here, as well as presenting other concepts of the language.

+ +
+

Note: As you start to learn more about HTML, consider learning the basics of Cascading Style Sheets, or CSS. CSS is the language used to style web pages. (for example, changing fonts or colors, or altering the page layout) HTML and CSS work well together, as you will soon discover.

+
+ +

Zobacz również

+ + + +
{{NextMenu("Learn/HTML/Introduction_to_HTML/The_head_metadata_in_HTML", "Learn/HTML/Introduction_to_HTML")}}
+ +
+ +

W tym module

+ + diff --git a/files/pl/learn/html/introduction_to_html/index.html b/files/pl/learn/html/introduction_to_html/index.html new file mode 100644 index 0000000000..055f512d4c --- /dev/null +++ b/files/pl/learn/html/introduction_to_html/index.html @@ -0,0 +1,67 @@ +--- +title: Wprowadzenie do HTML +slug: Learn/HTML/Introduction_to_HTML +translation_of: Learn/HTML/Introduction_to_HTML +--- +
{{LearnSidebar}}
+ +

W samym sercu, HTML jest dość prostym językiem składającym się z elementów, które można zastosować do fragmentów tekstu, aby nadać im różne znaczenie w dokumencie (Czy jest to akapit? Czy jest to wypunktowana lista? Czy jest to część tabeli?), ułożyć dokument w logiczne sekcje (Czy ma nagłówek? Trzy kolumny treści? Menu nawigacyjne?), a także osadzić treści takie jak obrazy i filmy na stronie. Ten moduł wprowadzi pierwsze dwa z nich i wprowadzi podstawowe pojęcia i składnie, które musisz znać, aby zrozumieć HTML.

+ + + +

Wymagania wstępne

+ +

Nie wymagamy od Ciebie żadnych umiejętności związanych z HTML na początku tego kursu. Wymagane są jednak umiejętności obsługi komputera, a także podstawowa "pasywna" znajomość sieci (umiejętność przeglądania i przyswajania stron internetowych). Powinieneś mieć ustawione podstawowe środowisko (zgodnie z instrukcją z Installing basic software), a także rozumieć, jak tworzyć i zarządzać plikami (tak jak zostało to dokładnie wytłumaczone w Dealing with files). Te dwie rzeczy są częścią naszego tutoriala dla początkujących Getting started with the web.

+ +
+

Notatka: Jeżeli pracujesz na komputerze/tablecie/innym urządzeniu, na którym nie możesz stworzyć plików, możesz wypróbować (przynajmniej większość) nasze przykłady w specjalnych serwisach, takich jak JSBin czy Thimble.

+
+ +

Tutoriale

+ +

Ten moduł składa się z poniższych artykułów, które wprowadzą Cię w podstawy HTML i dadzą możliwość wypróbowania nabytych umiejętności.

+ +
+
Rozgrzewanie silników HTML
+
Zajmuje się absolutnymi podstawani HTML - definiujemy elementy, atrybuty i inne ważne pojęcia, a także pokazuje jaką funkcję spełniają one w języku. Pokazuje w jaki sposób jest zbudowana typowa strona w HTML, wraz z budową samych elementów, a także wyjaśnia inne, podstawowe cechy języka. Podczas nauki zainteresujemy Cię HTML poprzez zabawę!
+
Co jest w głowie (headzie)? Metadata w HTML
+
Znacznik head i jego zawartość w dokumencie HTML nie jest wyświetlany kiedy strona zostaje załadowana. Zawiera on informacje takie jak {{htmlelement("title")}} (tytuł strony),  linki do {{glossary("CSS")}} (Jeżeli chcesz dodać stylowanie do zawartości html), linki do własnych faviconów, a także metadane (dane o stronie, takie jak autor i słowa, które opisują dokument).
+
Podstawy tekstu w HTML
+
Głównym zadaniem HTML jest nadanie znaczenia tekstowi (także znane jako semantyka), w taki sposób, aby przeglądarka wiedziała, jak wyświetlić go w prawidłowy sposób. Ten artykuł zajmuje się użyciem HTML w taki sposób, aby podzielić tekst na logiczne structury nagłówków i paragrafów, nadać większe znaczenie niektórym słowom, stworzyć listy, a także wiele innych.
+
Tworzenie hiperłączy
+
Hiperłącza są ważną częścią internetu - to one sprawiają, że sieć to sieć. Artykuł zajmuje się składnią hiperłączy a także omawia najlepsze praktyki ich tworzenia i użycia.
+
Zaawansowane formatowanie tekstu
+
Istnieją inne elementy HTMLa, których można użyć do formatowania i nie zostały omówione w artykule Podstawy tekstu w HTML. Elementy użyte tutaj są mniej znane, jednak nadal warte poznania. Artykuł ten zajmuje się oznaczaniem cytatów, list opisowych, kodu w językach programowania, a także innych podobnych, indeksów - górnego i dolnego, danych kontaktów, a także wielu innych.
+
Struktura strony i dokumentu
+
HTML używane jest nie tylko do definiowania pojedynczych części strony ("paragraf" czy "zdjęcie"), lecz także do zaznaczenia większych częci strony (na przykład "nagłówek", "menu nawigacyjne" czy "główna zawartość"). Ten artykuł zajmuje się planowaniem struktury strony, a także jak pisać HTML, aby odwzorować daną struktrurę.
+
Debugowanie HTML
+
Pisanie HTML jest fajne, ale nie zawsze wszystko idzie jak z płatka. Zdarzają się sytuacje gdy "coś nie działa", a Ty nie masz pojęcia, co jest nie tak. Ten artykuł pokaże techniki i narzędzia, które są przydatne w takich sytuacjach.
+
+ +

Zadania

+ +

Poniższe zadania mają na celu przetetowanie Twojej znajomości podstaw HTML, które zostały przedstawione w artykułach wyżej.

+ +
+
Dodawanie stylów do listu
+
Prędzej czy później każdy z nas uczy się, w jaki sposób napisać list. Może to zostać wykorzystane do przetestowania naszych zdolności formatowania tekstu - w tym zadaniu masz za zadanie dodanie formatowania do listu.
+
Dodanie struktury strony
+
To zadanie testuje twoje umiejętności używania HTML  to dodania struktury strony, która zawiera nagłówek, stopkę, menu nawigacyjne, główną zawartość i pasek boczny.
+
+ +

Zobacz także

+ +
+
Test zdolności w sieci 1
+
Doskonały kurs fundacji Mozilla, który przedstawia i testuje wiele umiejętności, o których mowa jest we Wprowadzeniu do HTML. Zainteresowani zaznajamiają sie w tym sześcioczęsciowym kursie z: czytaniem, pisaniem i byciem członkiem sieci Internet. Odkryj podstawy Internetu poprzez produkcję i współpracę.
+
+ +
+ + +

  Feedback

+ +

Pomóż nam doskonalić nasze poradniki takie jak ten poprzez wypełnienie naszej ankiety.

+ +

(Ankieta w języku angielskim)

+
diff --git a/files/pl/learn/index.html b/files/pl/learn/index.html new file mode 100644 index 0000000000..a19660883d --- /dev/null +++ b/files/pl/learn/index.html @@ -0,0 +1,141 @@ +--- +title: Naucz się pisać strony internetowe! +slug: Learn +tags: + - Beginner + - Index + - Landing + - Learn + - Nauka + - Początkujący + - TopicStub + - Web + - sieć +translation_of: Learn +--- +
+

Witamy w dziale nauki MDN. Ten zestaw artykułów pozwala wdrożyć całkowicie początkującego webmastera do wszystkiego, czego potrzebuje by zacząć tworzyć proste strony www.

+ +

Chcesz nauczyć się tworzyć strony i aplikacje internetowe? Dobrze trafiłeś!

+
+ +

Web design to bardzo obszerny dział, ale nie masz się co martwić. Jesteśmy po to, by ci pomóc. Nieważne, czy dopiero zaczynasz, czy szlifujesz developerskie zdolności.

+ +

Jeśli jesteś całkowicie zielony w technologiach webowych, a tworzenie stron jest dla ciebie wyzwaniem - poprowadzimy Cię za rekę i zapoznamy wystarczająco szczegółowo z poszczególnymi tematami. Powinieneś poczuć się jak w domu podczas nauki webmasteringu, niezależnie czy jesteś studentem (na własną rękę lub jako członek zespołu klasowego), nauczycielem poszukującym materiałów, hobbystą albo kimś kto chce dowiedzieć się więcej o technologiach stron internetowych.

+ + + + + +

Gdzie zacząć

+ +

Powiedz nam, ile umiesz. Który z tych opisów najlepiej do ciebie pasuje?

+ + + +
+

Info: W przyszłości pojawią się inne ścieżki nauki - dla doświadczonych programistów z poradnikami, jak korzystać z konkretnych zaawansowanych technik, programistów, którzy nie mieli styczności z technologiami webowymi, a także dla tych, którzy chcą nauczyć się technik projektowania.

+
+ +

{{LearnBox({"title":"Coś na szybko: Słownik"})}}

+ +

Ucz się w grupie

+ +

Jeśli masz jakieś pytania lub nadal nie wiesz, gdzie zacząć - Mozilla jest globalną społecznością entuzjastów, zrzeszającą mentorów i nauczycieli, którzy z chęcią ci pomogą! Skontaktuj się z nimi poprzez WebMaker:

+ + + +

Dziel się wiedzą

+ +

Cały ten dział jest tworzony przez użytkowników. Potrzebujemy cię w zespole. Nieważne, czy dopiero zaczynasz, czy znasz Web na wylot. Jeśli to cię interesuje, przejrzyj sekcję: "Jak mogę pomóc?". Zachęcamy także do rozmowy z nami poprzez listę mailingową i Kanał IRC. :)

+ + + +
+
EXLskills 
+
Bezpłatne i otwarte kursy do nauki umiejętności technicznych, z mentoringu i uczenia się opartego na projektach
+
+ +

Nawigacja

+ +
    +
  1. Podstawy tworzenia stron internetowych 
  2. +
  3. Naucz się tworzenia storn i aplikacji +
      +
    1. Mapa umiejętności webowych
    2. +
    3. Mechanika sieci
    4. +
    5. Infrastruktura
    6. +
    7. Kodowanie i skrypty
    8. +
    9. Projektowanie i dostępność
    10. +
    11. Tworzenie i planowanie
    12. +
    +
  4. +
  5. Naucz się technologii +
      +
    1. HTML
    2. +
    3. CSS
    4. +
    5. JavaScript
    6. +
    7. Python
    8. +
    +
  6. +
  7. Tutoriale +
      +
    1. Jak utworzyć stronę internetową?
    2. +
    3. Podstawy bezpieczeństwa informacji
    4. +
    +
  8. +
  9. Zasoby edukacyjne
  10. +
  11. Uzysaj pomoc +
      +
    1. FAQ
    2. +
    3. Słownik
    4. +
    5. Zadaj pytanie
    6. +
    7. Poznaj nauczycieli i mentorów
    8. +
    +
  12. +
  13. Jak uczestniczyć w projekcie
  14. +
+ +

Skontaktuj się z nami

+ +

+ +

Jeśli chcesz się z nami skontaktować w jakiejkolwiek sprawie, najlepszym sposobem jest przesłanie nam wiadomości w naszym wątku dyskursywnym lub kanałach IRC. Chcielibyśmy usłyszeć od Ciebie o wszystkim, co uważasz za błędne lub brakujące w witrynie, prośby o nowe tematy związane z uczeniem się, prośby o pomoc w przypadku przedmiotów, których nie rozumiesz, lub jakiekolwiek inne pytania lub wątpliwości. Jeśli chcesz pomóc w rozwijaniu / ulepszaniu treści, zobacz, jak możesz pomóc i skontaktuj się z nami! Chętnie z Tobą porozmawiamy, niezależnie od tego, czy jesteś uczniem, nauczycielem, doświadczonym programistą lub kimś innym zainteresowanym w ulepszaniu nauki.

+ +

Zobacz też

+ +

Biuletyn dla programistów Mozilli
+     Nasz biuletyn dla twórców stron internetowych, który jest świetnym źródłem informacji dla wszystkich poziomów doświadczenia.
+ Strona internetowa demystified
+     Wspaniała seria filmów objaśniających podstawy internetowe, które mają na celu pełne przygotowanie do tworzenia stron internetowych. Stworzony przez Jérémie Patonnier.
+ Codecademy
+     Świetna interaktywna strona do nauki języków programowania od zera.
+ Code.org
+     Podstawowa teoria i praktyka kodowania, skierowana głównie do dzieci / osób początkujących.
+ EXLskills
+     Bezpłatne i otwarte kursy do nauki umiejętności technicznych, z mentoringu i uczenia się opartego na projektach
+ freeCodeCamp.org
+     Strona interaktywna z samouczkami i projektami do nauki tworzenia stron internetowych.
+ Mapa umiejętności internetowych
+     Struktura początkowych umiejętności korzystania z Internetu i umiejętności XXI wieku, która zapewnia również dostęp do zajęć dydaktycznych według kategorii.
+ Działania dydaktyczne
+     Seria działań dydaktycznych do nauczania (i uczenia się) stworzona przez Fundację Mozilla, obejmująca wszystko od podstawowej znajomości stron internetowych i prywatności po JavaScript i hakowanie Minecrafta.
+ Edabit
+     Setki interaktywnych wyzwań w zakresie kodowania w różnych językach.

+ +

diff --git a/files/pl/learn/javascript/asynchronous/index.html b/files/pl/learn/javascript/asynchronous/index.html new file mode 100644 index 0000000000..5a445f8b99 --- /dev/null +++ b/files/pl/learn/javascript/asynchronous/index.html @@ -0,0 +1,67 @@ +--- +title: Asynchronous JavaScript +slug: Learn/JavaScript/Asynchronous +tags: + - Beginner + - CodingScripting + - Guide + - JavaScript + - Landing + - NeedsTranslation + - Promises + - TopicStub + - async + - asynchronous + - await + - callbacks + - requestAnimationFrame + - setInterval + - setTimeout +translation_of: Learn/JavaScript/Asynchronous +--- +
{{LearnSidebar}}
+ +

In this module we take a look at {{Glossary("asynchronous")}} {{Glossary("JavaScript")}}, why it is important, and how it can be used to effectively handle potential blocking operations such as fetching resources from a server.

+ +
+

Looking to become a front-end web developer?

+ +

We have put together a course that includes all the essential information you need to work towards your goal.

+ +

Get started

+
+ +

Prerequisites

+ +

Asynchronous JavaScript is a fairly advanced topic, and you are advised to work through JavaScript first steps and JavaScript building blocks modules before attempting this.

+ +

If you are not familiar with the concept of asynchronous programming, you should definitely start with the General asynchronous programming concepts article in this module. If you are, then you can probably skip to the Introducing asynchronous JavaScript module.

+ +
+

Note: If you are working on a computer/tablet/other device where you don't have the ability to create your own files, you can try out (most of) the code examples in an online coding program such as JSBin or Glitch.

+
+ +

Guides

+ +
+
General asynchronous programming concepts
+
+

In this article we'll run through a number of important concepts relating to asynchronous programming, and how this looks in web browsers and JavaScript. You should understand these concepts before working through the other articles in the module.

+
+
Introducing asynchronous JavaScript
+
In this article we briefly recap the problems associated with sychronous JavaScript, and take a first look at some of the different asynchronous JavaScript techniques you'll encounter, showing how they can help us solve such problems.
+
Cooperative asynchronous JavaScript: Timeouts and intervals
+
Here we look at the traditional methods JavaScript has available for running code asychronously after a set time period has elapsed, or at a regular interval (e.g. a set number of times per second), talk about what they are useful for, and look at their inherent issues.
+
Handling async operations gracefully with Promises
+
Promises are a comparatively new feature of the JavaScript language that allow you to defer further actions until after the previous action has completed, or respond to its failure. This is really useful for setting up a sequence of operations to work correctly. This article shows you how promises work, where you'll see them in use in WebAPIs, and how to write your own.
+
Making asynchronous programming easier with async and await
+
Promises can be somewhat complex to set up and understand, and so modern browsers have implemented async functions and the await operator. The former allows standard functions to implicitly behave asynchronously with promises, whereas the latter can be used inside async functions to wait for promises before the function continues. This makes chaining promises simpler and easier to read.
+
Choosing the right approach
+
To finish this module off, we'll consider the different coding techniques and features we've discussed throughout, looking at which ones you should use when, with recommendations and reminders of common pitfalls where appropriate.
+
+ +

See also

+ + diff --git a/files/pl/learn/javascript/asynchronous/introducing/index.html b/files/pl/learn/javascript/asynchronous/introducing/index.html new file mode 100644 index 0000000000..d7fda6b10b --- /dev/null +++ b/files/pl/learn/javascript/asynchronous/introducing/index.html @@ -0,0 +1,279 @@ +--- +title: Introducing asynchronous JavaScript +slug: Learn/JavaScript/Asynchronous/Introducing +translation_of: Learn/JavaScript/Asynchronous/Introducing +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/JavaScript/Asynchronous/Concepts", "Learn/JavaScript/Asynchronous/Timeouts_and_intervals", "Learn/JavaScript/Asynchronous")}}
+ +

W tym artykule po krótce omówimy problemy związane z synchronicznością JavaScriptu i zapoznamy się z innymi asynchronicznymi technikami, które napotkasz, pokazując jak mogą pomóc rozwiązać wymienione problemy.

+ + + + + + + + + + + + +
Wymagania:Podstawy obsługi komputera, rzetelna znajomość podstaw JavaScriptu.
Cel:Zapoznanie się z asynchronicznym JavaScriptem, czym się różni od synchronicznego JavaScriptu i w jakich przypadkach warto go użyć
+ +

Synchroniczny JavaScript

+ +

By pomóc nam zrozumieć czym asynchroniczny JavaScript jest, musimy pierw zrozumieć czym jest synchroniczny JavaScript. Ten rozdział podsumuje informacje które widzieliśmy w porzednim artykule.

+ +

Wiele funkcji, które widzieliśmy w poprzednich modułach do nauki jest synchroniczna - uruchamiasz kod, a wynik jest zwracany tak szybko jak tylko przeglądarka może to zrobić. Spójrz na prosty przykład (przykład użycia i kod źródłowy):

+ +
const btn = document.querySelector('button');
+btn.addEventListener('click', () => {
+  alert('You clicked me!');
+
+  let pElem = document.createElement('p');
+  pElem.textContent = 'This is a newly-added paragraph.';
+  document.body.appendChild(pElem);
+});
+
+ +

W tym bloku każda linia jest wykonywana po kolei:

+ +
    +
  1. Pobieramy referencje do elementu {{htmlelement("button")}}, który jest już zdefiniowany w DOM'ie.
  2. +
  3. Dodajemy obserwatora zdarzeń click do niego, więc kiedy przycisk zostanie naciśnięty: +
      +
    1. Wiadomość w funkcji alert() pojawi się w przeglądarce.
    2. +
    3. Kiedy zamkniemy wiadomość, stworzymy element typu {{htmlelement("p")}}.
    4. +
    5. Dodamuy do niego zawartość tekstową.
    6. +
    7. Na końcu dodamy akapit do ciała dokumentu HTML.
    8. +
    +
  4. +
+ +

Podczas gdy jest wykonywana każda z tych operacji, nic innego nie może się wydarzyć - renderowanie jest wstrzymane. Dzieje się to z powodu, który został opisany w poprzednim rozdziale, JavaScript jest jednowątkowy. Na głównym wątku nie można wykonywać kilku rzeczy na raz. Wszelkie inne działania są zablokowane dopóki nie zakończy obecnej operacji.

+ +

W powyższym przykładzie, po kliknięciu przycisku akapit nie pojawi się dopóki nie wciśniesz przycisku OK w powiadomieniu. Możesz spróbować to samemu:

+ + + +

{{EmbedLiveSample('Synchronous_JavaScript', '100%', '70px')}}

+ +
+

Notatka: Ważnym jest by pamiętać, iż alert(),  choć jest bardzo użyteczny by zademonstrować blokowanie wątku przez synchroniczne operacje, toteż jego użycie w prawdziwych aplikacjach jest okropne i wskazuje na brak wyczucia smaku.

+
+ +

Asynchroniczny JavaScript

+ +

Z powodów wymienionych wcześniej (np. blokowanie wątku), wiele funkcji Web API wykonuje kod asynchronicznie. Zwłaszcze te funkcje, które pobierają zasoby z zewnętrznego urządzenia, takie jak pliki z internetu, łączą się z bazą danych i zwracają z niej dane, łączą się ze strumieniem wideo z kamerki internetowej albo wyświetlają obraz w urządzeniach VR.

+ +

Dlaczego to jest problem pracować na kodzie synchronicznym? Spójrz na krótki przykład. Kiedy pobierasz obrazek z serwera, nie możesz od razu zwrócić wyniku. To znaczy, że poniższy pseudokod nie będzie działać: 

+ +
let response = fetch('myImage.png'); // fetch is asynchronous
+let blob = response.blob();
+// display your image blob in the UI somehow
+ +

Jest to spowodowane tym, że nie wiesz ile dokładnie czasu zajmie Tobie pobieranie obrazka i kiedy spróbujesz wykonać drugą linię kodu to zostanie zwrócony błąd (może czasami, może za każdym razem) ponieważ odpowiedź (response) z serwera nie jest jeszcze gotowy. Zamiast tego Twój kod musi poczekać zanim odpowiedź zostanie zwrócona nim spróbuje na niej wykonać operacje.

+ +

Wyróżniamy dwa główne typy składni asynchronicznego kodu w JavaScript'cie. Starsza wywołanie zwrotne(callback) oraz nowsza obietnice (promise). W następnych rozdziałach kolejno przyjrzymy się każdej z nich.

+ +

Async callbacks

+ +

Async callbacks are functions that are specified as arguments when calling a function which will start executing code in the background. When the background code finishes running, it calls the callback function to let you know the work is done, or to let you know that something of interest has happened. Using callbacks is slightly old-fashioned now, but you'll still see them in use in a number of older-but-still-commonly-used APIs.

+ +

An example of an async callback is the second parameter of the {{domxref("EventTarget.addEventListener", "addEventListener()")}} method (as we saw in action above):

+ +
btn.addEventListener('click', () => {
+  alert('You clicked me!');
+
+  let pElem = document.createElement('p');
+  pElem.textContent = 'This is a newly-added paragraph.';
+  document.body.appendChild(pElem);
+});
+ +

The first parameter is the type of event to be listened for, and the second parameter is a callback function that is invoked when the event is fired.

+ +

When we pass a callback function as an argument to another function, we are only passing the function's reference as an argument, i.e, the callback function is not executed immediately. It is “called back” (hence the name) asynchronously somewhere inside the containing function’s body. The containing function is responsible for executing the callback function when the time comes.

+ +

You can write your own function containing a callback easily enough. Let's look at another example that loads a resource via the XMLHttpRequest API (run it live, and see the source):

+ +
function loadAsset(url, type, callback) {
+  let xhr = new XMLHttpRequest();
+  xhr.open('GET', url);
+  xhr.responseType = type;
+
+  xhr.onload = function() {
+    callback(xhr.response);
+  };
+
+  xhr.send();
+}
+
+function displayImage(blob) {
+  let objectURL = URL.createObjectURL(blob);
+
+  let image = document.createElement('img');
+  image.src = objectURL;
+  document.body.appendChild(image);
+}
+
+loadAsset('coffee.jpg', 'blob', displayImage);
+ +

Here we create a displayImage() function that simply represents a blob passed to it as an object URL, then creates an image to display the URL in, appending it to the document's <body>. However, we then create a loadAsset() function that takes a callback as a parameter, along with a URL to fetch and a content type. It uses XMLHttpRequest (often abbreviated to "XHR") to fetch the resource at the given URL, then pass the response to the callback to do something with. In this case the callback is waiting on the XHR call to finish downloading the resource (using the onload event handler) before it passes it to the callback.

+ +

Callbacks are versatile — not only do they allow you to control the order in which functions are run and what data is passed between them, they also allow you to pass data to different functions depending on circumstance. So you could have different actions to run on the response downloaded, such as processJSON(), displayText(), etc.

+ +

Note that not all callbacks are async — some run synchronously. An example is when we use {{jsxref("Array.prototype.forEach()")}} to loop through the items in an array (see it live, and the source):

+ +
const gods = ['Apollo', 'Artemis', 'Ares', 'Zeus'];
+
+gods.forEach(function (eachName, index){
+  console.log(index + '. ' + eachName);
+});
+ +

In this example we loop through an array of Greek gods and print the index numbers and values to the console. The expected parameter of forEach() is a callback function, which itself takes two parameters, a reference to the array name and index values. However, it doesn't wait for anything — it runs immediately.

+ +

Promises

+ +

Promises are the new style of async code that you'll see used in modern Web APIs. A good example is the fetch() API, which is basically like a modern, more efficient version of {{domxref("XMLHttpRequest")}}. Let's look at a quick example, from our Fetching data from the server article:

+ +
fetch('products.json').then(function(response) {
+  return response.json();
+}).then(function(json) {
+  products = json;
+  initialize();
+}).catch(function(err) {
+  console.log('Fetch problem: ' + err.message);
+});
+ +
+

Note: You can find the finished version on GitHub (see the source here, and also see it running live).

+
+ +

Here we see fetch() taking a single parameter — the URL of a resource you want to fetch from the network — and returning a promise. The promise is an object representing the completion or failure of the async operation. It represents an intermediate state, as it were. In essence, it's the browser's way of saying "I promise to get back to you with the answer as soon as I can," hence the name "promise."

+ +

This concept can take practice to get used to; it feels a little like {{interwiki("wikipedia", "Schrödinger's cat")}} in action. Neither of the possible outcomes have happened yet, so the fetch operation is currently waiting on the result of the browser trying to complete the operation at some point in the future. We've then got three further code blocks chained onto the end of the fetch():

+ + + +
+

Note: You'll learn a lot more about promises later on in the module, so don't worry if you don't understand them fully yet.

+
+ +

The event queue

+ +

Async operations like promises are put into an event queue, which runs after the main thread has finished processing so that they do not block subsequent JavaScript code from running. The queued operations will complete as soon as possible then return their results to the JavaScript environment.

+ +

Promises versus callbacks

+ +

Promises have some similarities to old-style callbacks. They are essentially a returned object to which you attach callback functions, rather than having to pass callbacks into a function.

+ +

However, promises are specifically made for handling async operations, and have many advantages over old-style callbacks:

+ + + +

The nature of asynchronous code

+ +

Let's explore an example that further illustrates the nature of async code, showing what can happen when we are not fully aware of code execution order and the problems of trying to treat asynchronous code like synchronous code. The following example is fairly similar to what we've seen before (see it live, and the source). One difference is that we've included a number of {{domxref("console.log()")}} statements to illustrate an order that you might think the code would execute in.

+ +
console.log ('Starting');
+let image;
+
+fetch('coffee.jpg').then((response) => {
+  console.log('It worked :)')
+  return response.blob();
+}).then((myBlob) => {
+  let objectURL = URL.createObjectURL(myBlob);
+  image = document.createElement('img');
+  image.src = objectURL;
+  document.body.appendChild(image);
+}).catch((error) => {
+  console.log('There has been a problem with your fetch operation: ' + error.message);
+});
+
+console.log ('All done!');
+ +

The browser will begin executing the code, see the first console.log() statement (Starting) and execute it, and then create the image variable.

+ +

It will then move to the next line and begin executing the fetch() block but, because fetch() executes asynchronously without blocking, code execution continues after the promise-related code, thereby reaching the final console.log() statement (All done!) and outputting it to the console.

+ +

Only once the fetch() block has completely finished running and delivering its result through the .then() blocks will we finally see the second console.log() message (It worked :)) appear. So the messages have appeared in a different order to what you might expect:

+ + + +

If this confuses you, then consider the following smaller example:

+ +
console.log("registering click handler");
+
+button.addEventListener('click', () => {
+  console.log("get click");
+});
+
+console.log("all done");
+ +

This is very similar in behavior — the first and third console.log() messages will be shown immediately, but the second one is blocked from running until someone clicks the mouse button. The previous example works in the same way, except that in that case the second message is blocked on the promise chain fetching a resource then displaying it on screen, rather than a click.

+ +

In a less trivial code example, this kind of setup could cause a problem — you can't include an async code block that returns a result, which you then rely on later in a sync code block. You just can't guarantee that the async function will return before the browser has processed the sync block.

+ +

To see this in action, try taking a local copy of our example, and changing the fourth console.log() call to the following:

+ +
console.log ('All done! ' + image.src + 'displayed.');
+ +

You should now get an error in your console instead of the third message:

+ +
TypeError: image is undefined; can't access its "src" property
+ +

This is because at the time the browser tries to run the third console.log() statement, the fetch() block has not finished running so the image variable has not been given a value.

+ +
+

Note: For security reasons, you can't fetch() files from your local filesystem (or run other such operations locally); to run the above example locally you'll have to run the example through a local webserver.

+
+ +

Active learning: make it all async!

+ +

To fix the problematic fetch() example and make the three console.log() statements appear in the desired order, you could make the third console.log() statement run async as well. This can be done by moving it inside another .then() block chained onto the end of the second one, or by simply moving it inside the second then() block. Try fixing this now.

+ +
+

Note: If you get stuck, you can find an answer here (see it running live also). You can also find a lot more information on promises in our Graceful asynchronous programming with Promises guide, later on in the module.

+
+ +

Conclusion

+ +

In its most basic form, JavaScript is a synchronous, blocking, single-threaded language, in which only one operation can be in progress at a time. But web browsers define functions and APIs that allow us to register functions that should not be executed synchronously, and should instead be invoked asynchronously when some kind of event occurs (the passage of time, the user's interaction with the mouse, or the arrival of data over the network, for example). This means that you can let your code do several things at the same time without stopping or blocking your main thread.

+ +

Whether we want to run code synchronously or asynchronously will depend on what we're trying to do.

+ +

There are times when we want things to load and happen right away. For example when applying some user-defined styles to a webpage you'll want the styles to be applied as soon as possible.

+ +

If we're running an operation that takes time however, like querying a database and using the results to populate templates, it is better to push this off the main thread and complete the task asynchronously. Over time, you'll learn when it makes more sense to choose an asynchronous technique over a synchronous one.

+ + + +

{{PreviousMenuNext("Learn/JavaScript/Asynchronous/Concepts", "Learn/JavaScript/Asynchronous/Timeouts_and_intervals", "Learn/JavaScript/Asynchronous")}}

+ +

In this module

+ + diff --git a/files/pl/learn/javascript/building_blocks/index.html b/files/pl/learn/javascript/building_blocks/index.html new file mode 100644 index 0000000000..364b91c45e --- /dev/null +++ b/files/pl/learn/javascript/building_blocks/index.html @@ -0,0 +1,44 @@ +--- +title: JavaScript building blocks +slug: Learn/JavaScript/Building_blocks +translation_of: Learn/JavaScript/Building_blocks +--- +
{{LearnSidebar}}
+ +

W tym module kontynuujemy omówienie najważniejszych, podstawowych funkcji języka Javascript. Zwrócimy uwagę na często spotykane typy bloków kodu, takie jak: pętle, funkcje oraz zdarzenia. Mogłeś zobaczyć te treści w poprzednim module, jednak tutaj omówimy je bardziej szczegółowo.

+ +

Wymagania

+ +

Przed rozpoczęciem tego modułu powinieneś znać podstawy HTML-a oraz CSS-a. Powinieneś również przyswoić treści zawarte w poprzednim module - Pierwsze kroki w Javascript

+ +

Before starting this module, you should have some familiarity with the basics of HTML and CSS, and you should have also worked through our previous module, JavaScript first steps.

+ +
+

Informacja: Jeżeli pracujesz na komputerze/tablecie/innym urządzeniu na którym nie masz możliwości tworzenia własnych plików, możesz wypróbować przedstawione przykłady w programach online, takich jak: JSBin lub Thimble.

+
+ +

Przewodnik

+ +
+
Podejmowanie decyzji w kodzie — warunki
+
W każdym języku programowania kod musi podejmować decyje i odpowiednio reagować w zależności od wyniku operacji. Przykładem jest gra, w której jeżeli liczba graczy jest równa 0, wtedy gra się kończy. Inną aplikacją poglądową może być aplikacja pogodowa - jeżeli będziemy używać aplikacji rano, wtedy zostanie nam pokazany wschód słońca. Podziwiać gwiazdy i księżyć będziemy mogli podczas trwania nocy. W tym artykule odkryjemy jak działają struktury warunkowe w Javascript
+
Pętle
+
Czasami będziesz potrzebować, aby zadanie zostało wykonane więcej niż raz - przykładem może być tutaj wyświetlenie listy nazwisk. W programowaniu pętle wykonują świetną robotę. W tym artykule spojrzymy na nie w kontekście języka Javascript.
+
Funkcje — wielokrotne wykorzystanie jednego bloku kodu
+
Inną podstawową koncepcją w kodowaniu jest funkcja. Funkcje umożliwiają przechowywanie fragmentu kodu, który jest odpowiedzialny za jedno zadanie. Do uruchomienia tego bloku kodu jest potrzebna krótka komenda - zamiast wielokrotnego pisania tego samego kodu. W tym artykule zbadamy podstawowe pojęcia dotyczące funkcji, takie jak: składnia, sposób wywołania, definiowanie funkcji, zasięg i parametry.
+
Zbuduj własną funkcję
+
W przeciwieństwie do poprzednich, czysto teoretycznych artykułów, ten artykuł przedstawia praktyczne wykorzystanie funkcji. Tutaj otrzymasz zadanie praktyczne, w której napiszesz własną, niestandardową funkcję. W międzyczasie wyjaśnimy też kilka przydatnych szczegółów związanych z funkcjami.
+
Funkcje zwracają wartości
+
Jest jeszcze jedna zasadnicza koncepcja, którą przedstawimy Ci w naszym kursie. Powiązana jest z funkcjami - zwracanie wartości. Niektóre funkcje nie zwracają konkretnej wartości po wykonaniu, a inne tak. Ważne jest, abyś zrozumiał jakie mogą być ich wartości, jak możesz je użyć w swoim kodzie oraz jak sprawdzić by Twoje własne funkcje zwróciły pomocne wartości.
+
Wprowadzenie do zdarzeń
+
Wydarzenia są akcjami, które występują w aplikacji podczas programowania, a które aplikacja pokaże Ci, abyś mógł na nie zareagować, jeżeli jest taka potrzeba. Przykładem jest tutaj sytuacja, w której użytkownik naciska przycisk na stronie internetowej, a Ty chciałbyś powiązać to wydarzenie z wyświetleniem informacyjnego okna. W tym ostatnim artykule poruszymy kilka ważnych tematów związanych z wydarzeniami i zobaczymy jak działają w przeglądarkach internetowych.
+
+ +

Podsumowanie

+ +

Poniższe podsumowanie sprawdzi Twoje rozumienie podstaw języka Javascript z powyższego przewodnika.

+ +
+
Galeria zdjęć
+
Teraz, gdy przyjrzeliśmy się podstawowym elementom składowym JavaScript, przetestujemy Twoją wiedzę na temat pętli, funkcji, warunków i zdarzeń, budując dość popularny element, który zobaczysz na wielu stronach internetowych - galeria zdjęć z obsługą JavaScript .
+
diff --git a/files/pl/learn/javascript/client-side_web_apis/index.html b/files/pl/learn/javascript/client-side_web_apis/index.html new file mode 100644 index 0000000000..0d8a6ed2cd --- /dev/null +++ b/files/pl/learn/javascript/client-side_web_apis/index.html @@ -0,0 +1,37 @@ +--- +title: Interfejsy API działające po stronie klienta +slug: Learn/JavaScript/Client-side_web_APIs +translation_of: Learn/JavaScript/Client-side_web_APIs +--- +
{{LearnSidebar}}
+ +

Pisząc skrypty JavaScript po stronie klienta dla stron internetowych lub aplikacji szybko napotkamy Interfejsy Programowania Aplikacji (ang. Application Programming Interface - API). API to są funkcje programistyczne do manipulowania różnymi aspektami przeglądarki i systemu operacyjnego, na którym działa strona, lub manipulowania danymi z innych stron lub serwisów. W tym module dowiemy się czym są interfejsy API i jak korzystać z najbardziej popularnych interfejsów API, które często można napotkać w swoich pracach rozwojowych. 

+ +

Wymagania wstępne

+ +

By w pełni skorzystać z tego modułu, powinno się przejść przez poprzednie moduły JavaScript z tej serii (Pierwsze kroki w JavaScript, Klocki JavaScript, i Wprowadzenie do obiektów JavaScript). Moduły te, tak czy inaczej wymagają wielokrotnego użycia prostego API ponieważ trudno jest napisać przykłady JavaScriptu po stronie klienta, które wykonują bez nich coś uzytecznego! Wchodzimy tutaj na wyższy poziom, zkaładając znajomość podstawowego języka JavaScript i zgłębiając często używane interfejsy webowe API trochę bardziej szczegółowo.

+ +

Podstawowa wiedza o HTML i CSS będzie również użyteczna.

+ +
+

Uwaga: Jeśli pracujesz na urządzeniu, którym nie masz możliwości tworzenia swoich plików, możesz wypróbować przykłady kodu (większość z nich) w internetowych programach kodujących takich jak JSBin lub Thimble.

+
+ +

Przewodnik

+ +
+
Wprowadzenie do webowych interfejsów API
+
First up, we'll start by looking at APIs from a high level — what are they, how do they work, how do you use them in your code, and how are they structured? We'll also take a look at what the different main classes of APIs are, and what kind of uses they have.
+
Manipulowanie dokumentami
+
When writing web pages and apps, one of the most common things you'll want to do is manipulate web documents in some way. This is usually done by using the Document Object Model (DOM), a set of APIs for controlling HTML and styling information that makes heavy use of the {{domxref("Document")}} object. In this article, we'll look at how to use the DOM in detail, along with some other interesting APIs that can alter your environment in interesting ways.
+
Pobieranie danych z serwera
+
Another very common task in modern websites and applications is retrieving individual data items from the server to update sections of a webpage without having to load an entirely new page. This seemingly small detail has had a huge impact on the performance and behavior of sites, so in this article, we'll explain the concept, and look at technologies that make it possible, such as {{domxref("XMLHttpRequest")}} and the Fetch API.
+
Interfejsy API innych twórców
+
The APIs we've covered so far are built into the browser, but not all APIs are. Many large websites and services such as Google Maps, Twitter, Facebook, PayPal, etc. provide APIs allowing developers to make use of their data (e.g. displaying your twitter stream on your blog) or services (e.g. displaying custom Google Maps on your site, or using Facebook login to log in your users). This article looks at the difference between browser APIs and 3rd party APIs and shows some typical uses of the latter.
+
Rysowanie grafiki
+
The browser contains some very powerful graphics programming tools, from the Scalable Vector Graphics (SVG) language, to APIs for drawing on HTML {{htmlelement("canvas")}} elements, (see The Canvas API and WebGL). Ths article provides an introduction to the Canvas API, and further resources to allow you to learn more.
+
Interfejsy API wideo i audio
+
HTML5 comes with elements for embedding rich media in documents — {{htmlelement("video")}} and {{htmlelement("audio")}} — which in turn come with their own APIs for controlling playback, seeking, etc. This article shows you how to do common tasks such as creating custom playback controls.
+
Client-side storage
+
Modern web browsers feature a number of different technologies that allow you to store data related to web sites and retrieve it when necessary allowing you to persist data long term, save sites offline, and more. This article explains the very basics of how these work.
+
diff --git a/files/pl/learn/javascript/index.html b/files/pl/learn/javascript/index.html new file mode 100644 index 0000000000..9109a05447 --- /dev/null +++ b/files/pl/learn/javascript/index.html @@ -0,0 +1,78 @@ +--- +title: JavaScript +slug: Learn/JavaScript +tags: + - Dla początkujących + - JavaScript + - Kodowanie + - Początkujący +translation_of: Learn/JavaScript +--- +
{{LearnSidebar}}
+ +

{{Glossary("JavaScript")}} To język programowania, który pozwala na zaimplementowanie skomplikowanych rzeczy na stronach internetowych. Za każdym razem, gdy strona internetowa robi coś więcej ponad wyświetlanie statycznych informacji, na które możesz popatrzeć - np. wyświetlanie bieżących aktualizacji treści, interaktywnych map, animowanych obrazów, Grafiki 2D/3D lub przewijanie wideo itp. - można założyć, że prawdopodobnie jest w to zaangażowany JavaScript.

+ +

Ścieżka nauki

+ +

JavaScript jest trudniejszy do nauczenia się niż powiązane technologie, takie jak HTML oraz CSS. Zanim spróbujesz nauczyć się JavaScript, zalecamy zapoznanie się z przynajmniej tymi dwoma technologiami, a być może innymi. Zacznij od pracy poprzez następujące moduły:

+ + + +

Posiadanie wcześniejszego doświadczenia z innymi językami programowania może również pomóc.

+ +

Po zapoznaniu się z podstawami JavaScript powinieneś móc uczyć się o bardziej zaawansowanych kwestiach, takich jak:

+ + + +

Moduły

+ +

Ten temat zawiera następujące moduły, w sugerowanej kolejności ich pracy.

+ +
+
Pierwsze kroki z JavaScript
+
W naszym pierwszym module JavaScript najpierw udzielamy odpowiedzi na podstawowe pytania, na przykład "co to jest JavaScript?", "Jak to wygląda?" i "co można zrobić" przed przejściem do pierwszego doświadczenia Pisania JavaScript. Następnie omówimy szczegółowo kluczowe funkcje języka JavaScript, takie jak zmienne, łańcuchy, liczby i tablice.
+
Bloki budowy JavaScript
+
W tym module kontynuujemy omówienie najważniejszych podstawowych funkcji języka JavaScript, zwracając uwagę na często spotykane rodzaje bloków kodu, takie jak stwierdzenia warunkowe, pętle, funkcje i zdarzenia. Widziałeś to już wcześniej, ale tylko cząstkowo - tutaj omówimy to wszystko jednoznacznie.
+
Wprowadzenie do obiektów JavaScript
+
W JavaScript większość rzeczy to obiekty, od podstawowych funkcji JavaScript, takich jak ciągi znaków i tablice do interfejsów API przeglądarki na szczycie JavaScript. Można nawet tworzyć własne obiekty, aby zawęzić funkcje i zmienne do wydajnych pakietów. W JavaScript jest ważne, aby zrozumieć, czy chcesz poszerzyć swoją znajomość języka i napisać bardziej wydajny kod, dlatego udostępniliśmy ten moduł, aby Ci pomóc. Tutaj ukazujemy szczegółowo teorię obiektu i składnię, spójrzmy na sposób tworzenia własnych obiektów i wyjaśnijmy, jakie dane JSON są i jak z nimi pracować.
+
+ +
+
Asynchroniczny JavaScript
+
+

W tym module przyjrzymy się asynchronicznemu skryptowi JavaScript, dowiemy się dlaczego jest on ważny i jak można go wykorzystać do skutecznego radzenia sobie z potencjalnymi operacjami blokującymi, takimi jak pobieranie zasobów z serwera.

+
+
+ +
+
Interfejsy sieciowe stroną klienta
+
Podczas pisania JavaScript po stronie klienta w witrynach internetowych lub w aplikacjach nie zajdzie się daleko jeszcze przed rozpoczęciem korzystania z interfejsów API - interfejsów do manipulowania różnymi aspektami przeglądarki i systemu operacyjnego, na którym działa witryna, a nawet danych z innych stron internetowych lub usług. W tym module zbadamy, jakie interfejsy API są i jak posługiwać się najpopularniejszymi interfejsami API często spotykanymi w pracach rozwojowych.
+
+ +

Rozwiązywanie typowych problemów z JavaScript

+ +

Użyj Javascript do rozwiązywania typowych problemów zawiera linki do sekcji z treściami wyjaśniającymi sposób korzystania z JavaScript w celu rozwiązania bardzo typowych problemów podczas tworzenia strony internetowej.

+ +

Zobacz też

+ +
+
JavaScript na MDN
+
Główny punkt wejścia do podstawowej dokumentacji JavaScript na MDN - tutaj znajdziesz obszerne dokumenty referencyjne dotyczące wszystkich aspektów języka JavaScript oraz niektóre zaawansowane ćwiczenia skierowane do doświadczonych programistów.
+
+ +
+
Podstawy JavaScript w EXLskills
+
Ucz się JavaScript za darmo dzieki kursowi open-source EXLskills course, który zawiera wszystko, czego potrzebujesz, aby zacząć budować aplikacje w JS.
+
+ +
+
Matematyka kodowania
+
Doskonała seria instruktażowych materiałów wideo, do nauki matematyki, którą musisz zrozumieć by być efektywnym programistą, zrobiona przez: Keith Peters.
+
diff --git a/files/pl/learn/javascript/obiekty/index.html b/files/pl/learn/javascript/obiekty/index.html new file mode 100644 index 0000000000..9952e760a3 --- /dev/null +++ b/files/pl/learn/javascript/obiekty/index.html @@ -0,0 +1,47 @@ +--- +title: Wprowadzenie do obiektów JavaScript +slug: Learn/JavaScript/Obiekty +tags: + - JavaScript + - Objekt + - Początkujący + - samouczek +translation_of: Learn/JavaScript/Objects +--- +
{{LearnSidebar}}
+ +

W JavaScript większość rzeczy jest obiektami, począwszy od najbardziej fundamentalnych rzeczy jak stringi czy tablice, na API przeglądarek zbudowanym na szczycie JavaScriptu kończąc. Możesz nawet stworzyć własne obiekty do hermetyzowania powiązanych funkcji i zmiennych w "pakietach", które będą działały jako podręczne kontenery. Obiektowość w JavaScripcie jest kluczowa do dalszego zrozumienia języka, dlatego też przygotowaliśmy ten moduł, aby ci pomóc.  Na początku nauczymy cię teorii obiektowości i składni, później popatrzymy na to, jak tworzyć własne obiekty.

+ +

Wymagania

+ +

Zanim rozpoczniesz ten moduł powinieneś być nieco zaznajomiony z HTML i CSS. Radzimy przejść przez moduły Wprowadzenie do HTML i Wprowadzenie do CSS zanim rozpoczniesz naukę JavaScriptu.

+ +

Powinieneś również być nieco zaznajomiony z podstawami JavaScript zanim zaczniesz zgłębiać szczegóły dotyczące obiektów w tym języku. Zanim rozpoczniesz ten moduł zapoznaj się z JavaScript pierwsze kroki i JavaScript budowanie bloków.

+ +
+

Uwaga: Jeśli pracujesz na komputerze/tablecie/innym urządzeniu gdzie nie masz możliwości tworzenia swoich własnych plików, powinieneś wypróbować (większość) przykładów kodu w aplikacji webowej takiej jak JSBin lub Thimble.

+
+ +

Przewodniki

+ +
+
Object basics
+
W pierwszym artykule dotyczącym obiektów JavaScript przyjrzymy się podstawom składni dla obiektów i powrócimy do tematów, które przerabialiśmy wcześniej. Powtórzymy niektóre fakty, które wskazują, że wiele właściwości, którymi się już zajmowałeś, to faktycznie obiekty.
+
Object-oriented JavaScript for beginners
+
Po zapoznaniu się z podstawami skupimy się teraz na obiektowym JavaScript (OOJS) - ten artykuł przedstawia podstawowe spojrzenie na teorię programowania obiektowego (OOP), następnie bada, w jaki sposób JavaScript emuluje klasy obiektów za pomocą funkcji konstruktora, oraz jak tworzone są instancje obiektów.
+
Object prototypes
+
Prototypy są mechanizmem, za pomocą którego obiekty JavaScript dziedziczą cechy od siebie i działają inaczej niż mechanizmy dziedziczenia w klasycznych obiektowych językach programowania. W tym artykule badamy tę różnicę, wyjaśniamy, jak działają łańcuchy prototypów, i przyglądamy się, w jaki sposób można użyć właściwości prototypu do dodania metod do istniejących konstruktorów
+
Dziedziczenie w JavaScript
+
Po wyjaśnieniu większości pikantnych szczegółów OOJS, artykuł pokazuje, jak tworzyć "potomne" klasy obiektów (konstruktory), które dziedziczą cechy z ich klas "nadrzędnych". Ponadto przedstawiamy poradę dotyczącą tego, kiedy i gdzie możesz korzystać z OOJS
+
Praca z JSON
+
JavaScript Object Notation (JSON) to standardowy format tekstowy służący do reprezentowania danych strukturalnych, oparty na składni obiektów JavaScript, ktory jest powszechnie używany do reprezentowania i przesyłania danych w witrynach internetowych (t.j. wysyłanie niektórych danych z serwera do klienta, dzięki czemu mogą one być wyświetlane na stronie internetowej). Spotkasz to dość często, więc w tym artykule podajemy wszystko, czego potrzebujesz, aby pracować z JSON przy użyciu JavaScript, w tym analizować JSON w celu uzyskania dostępu do zawartych w nim danych oraz pisanie własnego JSON.
+
Praktyka budowania obiektów
+
W poprzednich artykułach zapoznaliśmy się ze wszystkimi niezbędnymi teoriami obiektów JavaScript i szczegółami składni, co daje Ci solidną podstawę do rozpoczęcia. W tym artykule zagłębiamy się w praktyczne ćwiczenie, dając Ci trochę więcej praktyki w budowaniu niestandardowych obiektów JavaScript, które tworzą coś ciekawego i kolorowego - jakieś kolorowe podskakujące kuleczki.
+
+ +

Oceny

+ +
+
Dodajemy nowe funkcje do naszego demo z odbijającymi się piłkami
+
W tej części, jako punkt wyjścia, należy użyć demo odbijających się piłek z poprzedniego artykułu i dodać do niego kilka nowych i interesujących funkcji.
+
diff --git a/files/pl/learn/javascript/pierwsze_kroki/a_first_splash/index.html b/files/pl/learn/javascript/pierwsze_kroki/a_first_splash/index.html new file mode 100644 index 0000000000..0d0f49c69a --- /dev/null +++ b/files/pl/learn/javascript/pierwsze_kroki/a_first_splash/index.html @@ -0,0 +1,687 @@ +--- +title: A first splash into JavaScript +slug: Learn/JavaScript/Pierwsze_kroki/A_first_splash +translation_of: Learn/JavaScript/First_steps/A_first_splash +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/JavaScript/First_steps/What_is_JavaScript", "Learn/JavaScript/First_steps/What_went_wrong", "Learn/JavaScript/First_steps")}}
+ +

Zaznajomiłeś się już nieco z teorią JavaScript i masz już pewne pojęcie co do zastosowania tego języka. Teraz zamierzamy udzielić Ci przyspieszonego kursu z podstawowych funkcji JavaScript'u poprzez ten, w pełni praktyczny, samouczek. Krok po kroku napiszesz tu prostą grę pod tytułem: "Zgadnij liczbę".

+ + + + + + + + + + + + +
Wymagania wstępne:Podstawowa umiejętność posługiwania się komputerem, podstawowa znajomość HTML i CSS, podstawowa znajomość czym jest JavaScript.
Cel:Pierwsze doświadczenia w pisaniu kodu w JavaScript i zrozumienie- przynajmniej w podstawowym stopniu- z czym związane jest pisanie programu w JavaScript.
+ +

Nie oczekujemy od Ciebie całkowitego zrozumienia kodu od zaraz - chcemy raczej przedstawić Ci nieco ogólniejsze spojrzenie i dać Ci odczuć sposób, w jaki działa JavaScript (jak również i inne języki programowania). W późniejszych artykułach wrócimy do użytych tu funkcjonalności w bardziej szczegółowy spsób.

+ +
+

Wiele funkcjonalności, które zobaczysz w JavaScript, jest takich samych, jak w innych językach programowania (funkcje, pętle itd.) Składnia języka wygląda inaczej, ale zasada działania jest przeważnie ta sama.

+
+ +

Myśleć jak programista

+ +

Składnia danego języka nie jest - wbrew pozorom - najtrudniejszym aspektem, z jakim trzeba zmierzyć się podczas nauki programowania. Sprawą znacznie poważniejszą jest bowiem nauczyć się stosować posiadaną wiedzę do rozwiązywania problemów ze świata realnego. Musisz zacząć myśleć jak programista. Wiąże się to z patrzeniem na opisy oczekiwanego efektu działania programu, przemyśleniem, jakich konstrukcji kodu w tym celu użyć i zaplanowaniem, jak połączyć je wszystkie w efektywnie współpracującą całość.

+ +

Wymaga to połączenia ciężkiej pracy, doświadczenia ze składnią języków i praktyki - wraz z odrobiną kreatywności. Im więcej napiszesz kodu, tym lepszy w tym się staniesz. Nie możemy obiecać, że wypracujesz  w sobie "mózg programisty" w pięć minut, ale damy Ci wiele możliwości praktykowania myślenia jak programista w czasie trwania tego kursu.

+ +

Pamiętając o tym, przyjrzyjmy się ogólnie procesowi pisania kodu dzieląc go na poszczególne konkretne zadania. Posłuży nam w tym celu poniższy przykładowy program.

+ +

Przykład: Gra "Zgadnij liczbę"

+ +

Oto przykład prostej gry:

+ + + +

{{ EmbedLiveSample('Top_hidden_code', '100%', 320, "", "", "hide-codepen-jsfiddle") }}

+ +

Nie krępuj się - pograj sobie chwilę. Zwróć uwagę na elementy tej gry zanim przejdziesz dalej.

+ +

Wyobraźmy sobie, że Twój szef postawił przed Tobą następujące zadanie:

+ +
+

Chcę, żebyś napisał prostą grę typu "zgadnij liczbę". Gra powinna wybierać losową liczbę pomiędzy 1 a 100. Zadaniem gracza jest odgadnąć tę liczbę w najwyżej 10 próbach. Po każdej próbie gracz powinien otrzymać informację, czy zgadł, czy też nie i - jeśli nie odgadł, powinien dodatkowo dowiedzieć się, czy jego liczba miała wartość za małą, czy za dużą. Ponadto gracz powinien widzieć wybrane poprzednio przez siebie liczby. Gra ma się zakończyć gdy gracz poda prawidłową odpowiedź, lub gdy wykorzysta ostatnią próbę. Po zakończeniu gry gracz powinien mieć możliwośc rozpocząć ją od nowa.

+
+ +

Zacznijmy od przedstawienia powyższego opisu w sposób bliższy myśleniu programisty i podzielmy go na proste pojedyncze zadania:

+ +
    +
  1. Wybierz losową liczbę z zakresu od 1 do 100.
  2. +
  3. Zapisz numer próby, którą podejmuje gracz. Zacznij od 1.
  4. +
  5. Podaj graczowi sposób, w jaki może odgadnąć tę liczbę.
  6. +
  7. Gdy padnie odpowiedź zapisz ją gdzieś, aby użytkownik mógł widzieć swoje poprzednie próby.
  8. +
  9. Sprawdź, czy padła prawidłowa odpowiedź.
  10. +
  11. Jeśli tak: +
      +
    1. Wyświetl gratulacje.
    2. +
    3. Zablokuj możliwość podawania dalszych odpowiedzi (to mogłoby namieszać w grze).
    4. +
    5. Udostępnij narzędzie, którym gracz może ponownie uruchomić grę.
    6. +
    +
  12. +
  13. Jeśli nie i graczowi pozostały jeszcze próby: +
      +
    1. Poinformuj o nieprawidłowej odpowiedzi.
    2. +
    3. Pozwól podać kolejną odpowiedź.
    4. +
    5. Zwiększ numer próby gracza o 1.
    6. +
    +
  14. +
  15. Jeśli nie i graczowi nie pozostała już ani jedna próba: +
      +
    1. Poinformuj o zakończeniu gry.
    2. +
    3. Zablokuj możliwość podawania dalszych odpowiedzi (to mogłoby namieszać w grze).
    4. +
    5. Udostępnij narzędzie, którym gracz może ponownie uruchomić grę.
    6. +
    +
  16. +
  17. Gdy gra uruchomi się ponownie, upewnij się, że dane z poprzedniej gry zostały całkowicie usunięte i interfejs powrócił do stanu początkowego. Przejdź do punktu nr 1.
  18. +
+ +

Zróbmy kolejny krok i spróbujmy zamienić powyższe punkty w kod, który zbuduje naszą grę. W ten sposób zobaczysz w działaniu kilka funcji JavaScript.

+ +

Przygotowanie

+ +

Aby rozpocząć pracę potrzebujesz mieć na swoim komputerze kopię pliku number-guessing-game-start.html (see it live here). Otwórz go w edytorze tekstowym i jednocześnie w swojej przeglądarce. Plik ten zawiera nagłówek, akapit z krótką instrukcją gry, oraz (jeszcze nie działający) formularz do wprowadzania odpowiedzi.

+ +

Nasz kod będziemy pisać w bloku określonym znacznikiem {{htmlelement("script")}} u dołu pliku HTML:

+ +
<script>
+
+  // Twój kod JavaScript
+
+</script>
+
+ +

Pojemniki na dane - zmienne

+ +

Zaczynamy. W pierwszej kolejności dodaj poniższe linijki kodu do bloku oznaczonego {{htmlelement("script")}}.

+ +
var randomNumber = Math.floor(Math.random() * 100) + 1;
+
+var guesses = document.querySelector('.guesses');
+var lastResult = document.querySelector('.lastResult');
+var lowOrHi = document.querySelector('.lowOrHi');
+
+var guessSubmit = document.querySelector('.guessSubmit');
+var guessField = document.querySelector('.guessField');
+
+var guessCount = 1;
+var resetButton;
+ +

Ta część kodu definiuje zmienne i stałe niezbędne do pracy programu. Najprościej rzecz ujmując, zmienne są pojemnikami na wartości takie jak liczby, czy ciągi znaków. Zmienną tworzymy używając słowo kluczowe let (lub var), po którym wpisujemy nazwę tej zmiennej. Następnie możemy tej zmiennej przypisać wartość. Robimy to za pomocą znaku równości (=), po którego prawej stronie wpisujemy żądaną wartość. Więcej informacji na temat różnic pomiędzy słowami kluczowymi let i var możesz znaleźć w tym artykule. Stałe natomiast mają za zadanie przechować dane, które mają się nie zmieniać i tworzy się je podobnie jak zmienne, ale przy użyciu słowa kluczowego const. W naszym przykładzie użyjemy stałych do przechowania odnośników (referencji) do poszczególnych części naszego interfejsu użytkownika. Tekst w niektórych z nich może w którymś momencie ulec zmianie, jednak bloki kodu HTML, do których odnoszą się nasze stałe pozostaną niezmienne.

+ +

W naszym przykładzie:

+ + + +
+

Na temat zmiennych i stałych będziesz dowiadywał się coraz więcej w toku trwania kursu, począwszy już od tego artykułu.

+
+ +

Funkcje

+ +

Wstaw następujący kod poniżej dodanego w poprzednim kroku:

+ +
function checkGuess() {
+  alert('I am a placeholder');
+}
+ +

Funkcje są blokami kodu "wielokrotnego użytku". Napisane raz, mogą być wywoływane wielokrotnie bez potrzeby ponownego pisania ich w całości. Ta cecha funkcji nie tylko oszczędza czas pisania kodu, ale również znacząco poprawia jego czytelność. Istnieje kilka sposobów definiowania funkcji. W tym przykładzie zajmiemy się jednym z prostszych. Rozpoczynamy od słowa kluczowego function, następnie piszemy nazwę naszej funkcji, a na jej końcu- nawiasy zwykłe. Potem wstawiamy dwa nawiasy klamrowe ({ }). To właśnie w nich zawarte jest ciało funkcji - kod, który będzie wykonywał się, ilekroć wywołamy tę funkcję.

+ +

Funkcje wywołuje się pisząc jej nazwę wraz z nawiasami zwykłymi.

+ +

Spróbujmy. Zapisz zmiany w swoim pliku z kodem i odśwież okno przeglądarki. Teraz przejdź do konsoli JavaScript w narzędziach programisty w przeglądarce i wprowadź tę linię:

+ +
checkGuess();
+ +

Po zatwierdzeniu klawiszem Return/Enter, powinno pojawić się okno alertu z tekstem: "I am a placeholder". Dzieje się tak, poniważ w naszym kodzie zdefiniowaliśmy funkcję, która uruchamia ten alert, kiedy tylko ją wywołamy.

+ +
+

dalszej części kursu dowiesz się znacznie więcej o funkcjach.

+
+ +

Operatory

+ +

Za pomocą operatorów w JavaScript możemy przeprowadzać porównania, dokonywać obliczeń, łączyć ze sobą ciągi znaków i robić wiele innych przydatnych rzeczy.

+ +

Jeśli jeszcze nie zapisałeś zmian w swoim pliku z kodem, oraz nie odświeżyłeś okna przeglądarki, zrób to teraz. Otwórz konsolę Javascript w narzędziach programisty w przeglądarce. Teraz będziesz mógł sprawdzić działanie operatorów. Przepisz dokładnie każde z poleceń z kolumny "Example" i zatwierdź każde z nich klawiszem Return/Enter. Obserwuj wyniki. Jeśli z jakiegoś powodu nie masz dostępu do  narzędzi programistycznych w Twojej przeglądarce, możesz użyć poniższej prostej konsoli:

+ + + +

{{ EmbedLiveSample('Hidden_code', '100%', 300, "", "", "hide-codepen-jsfiddle") }}

+ +

Najpierw zajmiemy się operatorami arytmetycznymi:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OperatorNameExample
+Dodawanie6 + 9
-Odejmowanie20 - 15
*Mnożenie3 * 7
/Dzielenie10 / 5
+ +

Operatora + możemy też użyć do łączenia ciągów znaków (takie działanie nazywa się w programowaniu konkatenacją). Wprowadź poniższe linie, oddzielając je klawiszem Return / Enter :

+ +
var name = 'Bingo';
+name;
+var hello = ' says hello!';
+hello;
+var greeting = name + hello;
+greeting;
+ +

Dostępne są również pewne ułatwiające życie skróty, zwane złożonymi operatorami przypisania. Jeśli na przykład chcielibyśmy w prosty sposób dodać nowy ciąg tekstowy do już istniejącego, możemy napisać tak:

+ +
name += ' says hello!';
+ +

Co jest równoznaczne z:

+ +
name = name + ' says hello!';
+ +

Kiedy dokonujemy sprawdzenia prawda / fałsz (na przykład w instrukcjach warunkowych - zobacz {{anch("Instrukcje warunkowe", "poniżej")}}) używamy operatorów porównania. Na przykład:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OperatorNameExample
===Ścisła równość (czy jest dokładnie tym samym?)5 === 2 + 4
!==Różne od (czy nie jest tym samym?)'Chris' !== 'Ch' + 'ris'
<Mniejsze od10 < 6
>Większe od10 > 20
+ +

Instrukcje warunkowe

+ +

Wrócmy teraz do naszej funkcji checkGuess().  Z pewnością lepiej mogłaby nam się przysłużyć, gdyby jej działanie nie ograniczało się tylko do wyświetlenia komunikatu "placeholder". Mamy dla niej o wiele ważniejsze zadanie - chcemy, by sprawdzała każdą odpowiedź gracza i odpowiednio reagowała.

+ +

W tym celu zastąp obecną funkcję checkGuess() jej nową wersją:

+ +
function checkGuess() {
+  var userGuess = Number(guessField.value);
+  if (guessCount === 1) {
+    guesses.textContent = 'Previous guesses: ';
+  }
+  guesses.textContent += userGuess + ' ';
+
+  if (userGuess === randomNumber) {
+    lastResult.textContent = 'Congratulations! You got it right!';
+    lastResult.style.backgroundColor = 'green';
+    lowOrHi.textContent = '';
+    setGameOver();
+  } else if (guessCount === 10) {
+    lastResult.textContent = '!!!GAME OVER!!!';
+    setGameOver();
+  } else {
+    lastResult.textContent = 'Wrong!';
+    lastResult.style.backgroundColor = 'red';
+    if(userGuess < randomNumber) {
+      lowOrHi.textContent = 'Last guess was too low!';
+    } else if(userGuess > randomNumber) {
+      lowOrHi.textContent = 'Last guess was too high!';
+    }
+  }
+
+  guessCount++;
+  guessField.value = '';
+  guessField.focus();
+}
+ +

Sporo kodu, prawda? Przyjrzyjmy mu się bliżej:

+ + + +

Zdarzenia (events)

+ +

Udało nam się całkiem zgrabnie zaimplementować funkcję checkGuess(), jednak na razie nie wykona ona żadnej akcji z tej prostej przyczyny, że jeszcze jej nie wywołaliśmy. Funkcja ta ma zostać wywołana przy naciśnięciu przycisku "Submit guess". W tym celu użyjemy zdarzenia. Zdarzenie jest tym, co dzieje się w przeglądarce (np. kliknięcie przycisku, załadowanie strony, odtwarzanie filmu, itd.) i czego możemy użyć  w celu wywołania konkretnego bloku kodu. Konstrukty, które "nasłuchują", czy miało miejsce zdarzenie nazywane są detektorami zdarzeń (event listeners), a wywoływane w odpowiedzi na nie bloki kodu - modułami obsługi zdarzeń (event handlers).

+ +

Do swojej funkcji checkGuess() dodaj poniższą linię:

+ +
guessSubmit.addEventListener('click', checkGuess);
+ +

W ten sposób dodałeś detektor zdarzenia do przycisku guessSubmit. Jest to metoda, która ma dwie dane wejściowe (zwane argumentami) zapisane w formie  ciągu znaków: typ zdarzenia, które ma zajść (w tym przypadku click), oraz fragment kodu, który ma zostać uruchomiony poprzez to zdarzenie (funkcja checkGuess()). Nazwę funkcji piszemy bez cudzysłowia. {{domxref("EventTarget.addEventListener", "addEventListener()")}}.

+ +

Zapisz i odśwież swój kod. Powinien już prawie w pełni działać. Pozostała jeszcze jedna kwestia: gdy odgadniesz właściwą odpowiedź, lub wykorzystasz wszystkie próby odpowiedzi, gra zostanie przerwana, ponieważ jak dotąd nie zdefiniowaliśmy funkcji setGameOver(), która ma zostać wywołana w przypadku zakończenia gry. Dodajmy zatem brakującą część kodu, aby nasza gra zyskała wszystkie funkcjonalności.

+ +

Finishing the game functionality

+ +

Let's add that setGameOver() function to the bottom of our code and then walk through it. Add this now, below the rest of your JavaScript:

+ +
function setGameOver() {
+  guessField.disabled = true;
+  guessSubmit.disabled = true;
+  resetButton = document.createElement('button');
+  resetButton.textContent = 'Start new game';
+  document.body.appendChild(resetButton);
+  resetButton.addEventListener('click', resetGame);
+}
+ + + +

Now we need to define this function too! Add the following code, again to the bottom of your JavaScript:

+ +
function resetGame() {
+  guessCount = 1;
+
+  var resetParas = document.querySelectorAll('.resultParas p');
+  for (var i = 0 ; i < resetParas.length ; i++) {
+    resetParas[i].textContent = '';
+  }
+
+  resetButton.parentNode.removeChild(resetButton);
+
+  guessField.disabled = false;
+  guessSubmit.disabled = false;
+  guessField.value = '';
+  guessField.focus();
+
+  lastResult.style.backgroundColor = 'white';
+
+  randomNumber = Math.floor(Math.random() * 100) + 1;
+}
+ +

This rather long block of code completely resets everything to how it was at the start of the game, so the player can have another go. It:

+ + + +

At this point you should have a fully working (simple) game — congratulations!

+ +

All we have left to do now in this article is talk about a few other important code features that you've already seen, although you may have not realized it.

+ +

Loops

+ +

One part of the above code that we need to take a more detailed look at is the for loop. Loops are a very important concept in programming, which allow you to keep running a piece of code over and over again, until a certain condition is met.

+ +

To start with, go to your browser developer tools JavaScript console again, and enter the following:

+ +
for (var i = 1 ; i < 21 ; i++) { console.log(i) }
+ +

What happened? The numbers 1 to 20 were printed out in your console. This is because of the loop. A for loop takes three input values (arguments):

+ +
    +
  1. A starting value: In this case we are starting a count at 1, but this could be any number you like. You could replace the letter i with any name you like too, but i is used as a convention because it's short and easy to remember.
  2. +
  3. An exit condition: Here we have specified i < 21 — the loop will keep going until i is no longer less than 21. When i reaches 21, the loop will no longer run.
  4. +
  5. An incrementor: We have specified i++, which means "add 1 to i". The loop will run once for every value of i, until i reaches a value of 21 (as discussed above). In this case, we are simply printing the value of i out to the console on every iteration using {{domxref("Console.log", "console.log()")}}.
  6. +
+ +

Now let's look at the loop in our number guessing game — the following can be found inside the resetGame() function:

+ +
var resetParas = document.querySelectorAll('.resultParas p');
+for (var i = 0 ; i < resetParas.length ; i++) {
+  resetParas[i].textContent = '';
+}
+ +

This code creates a variable containing a list of all the paragraphs inside <div class="resultParas"> using the {{domxref("Document.querySelectorAll", "querySelectorAll()")}} method, then it loops through each one, removing the text content of each.

+ +

A small discussion on objects

+ +

Let's add one more final improvement before we get to this discussion. Add the following line just below the var resetButton; line near the top of your JavaScript, then save your file:

+ +
guessField.focus();
+ +

This line uses the {{domxref("HTMLElement.focus", "focus()")}} method to automatically put the text cursor into the {{htmlelement("input")}} text field as soon as the page loads, meaning that the user can start typing their first guess right away, without having to click the form field first. It's only a small addition, but it improves usability — giving the user a good visual clue as to what they've got to do to play the game.

+ +

Let's analyze what's going on here in a bit more detail. In JavaScript, everything is an object. An object is a collection of related functionality stored in a single grouping. You can create your own objects, but that is quite advanced and we won't be covering it until much later in the course. For now, we'll just briefly discuss the built-in objects that your browser contains, which allow you to do lots of useful things.

+ +

In this particular case, we first created a guessField variable that stores a reference to the text input form field in our HTML — the following line can be found amongst our variable declarations near the top:

+ +
var guessField = document.querySelector('.guessField');
+ +

To get this reference, we used the {{domxref("document.querySelector", "querySelector()")}} method of the {{domxref("document")}} object. querySelector() takes one piece of information — a CSS selector that selects the element you want a reference to.

+ +

Because guessField now contains a reference to an {{htmlelement("input")}} element, it will now have access to a number of properties (basically variables stored inside objects, some of which can't have their values changed) and methods (basically functions stored inside objects). One method available to input elements is focus(), so we can now use this line to focus the text input:

+ +
guessField.focus();
+ +

Variables that don't contain references to form elements won't have focus() available to them. For example, the guesses variable contains a reference to a {{htmlelement("p")}} element, and guessCount contains a number.

+ +

Playing with browser objects

+ +

Let's play with some browser objects a bit.

+ +
    +
  1. First of all, open up your program in a browser.
  2. +
  3. Next, open your browser developer tools, and make sure the JavaScript console tab is open.
  4. +
  5. Type in guessField and the console will show you that the variable contains an {{htmlelement("input")}} element. You'll also notice that the console autocompletes the names of objects that exist inside the execution environment, including your variables!
  6. +
  7. Now type in the following: +
    guessField.value = 'Hello';
    + The value property represents the current value entered into the text field. You'll see that by entering this command, we've changed the text in the text field!
  8. +
  9. Now try typing in guesses and pressing return. The console will show you that the variable contains a {{htmlelement("p")}} element.
  10. +
  11. Now try entering the following line: +
    guesses.value
    + The browser will return undefined, because paragraphs don't have the value property.
  12. +
  13. To change the text inside a paragraph, you need the {{domxref("Node.textContent", "textContent")}} property instead. Try this: +
    guesses.textContent = 'Where is my paragraph?';
    +
  14. +
  15. Now for some fun stuff. Try entering the below lines, one by one: +
    guesses.style.backgroundColor = 'yellow';
    +guesses.style.fontSize = '200%';
    +guesses.style.padding = '10px';
    +guesses.style.boxShadow = '3px 3px 6px black';
    + Every element on a page has a style property, which itself contains an object whose properties contain all the inline CSS styles applied to that element. This allows us to dynamically set new CSS styles on elements using JavaScript.
  16. +
+ +

Finished for now...

+ +

So that's it for building the example. You got to the end — well done! Try your final code out, or play with our finished version here. If you can't get the example to work, check it against the source code.

+ +

{{PreviousMenuNext("Learn/JavaScript/First_steps/What_is_JavaScript", "Learn/JavaScript/First_steps/What_went_wrong", "Learn/JavaScript/First_steps")}}

+ +

In this module

+ + diff --git a/files/pl/learn/javascript/pierwsze_kroki/co_poszlo_nie_tak/index.html b/files/pl/learn/javascript/pierwsze_kroki/co_poszlo_nie_tak/index.html new file mode 100644 index 0000000000..1a88f2b797 --- /dev/null +++ b/files/pl/learn/javascript/pierwsze_kroki/co_poszlo_nie_tak/index.html @@ -0,0 +1,257 @@ +--- +title: Co poszło nie tak? Rozwiązywanie problemów w JavaScript +slug: Learn/JavaScript/Pierwsze_kroki/Co_poszlo_nie_tak +translation_of: Learn/JavaScript/First_steps/What_went_wrong +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/JavaScript/First_steps/A_first_splash", "Learn/JavaScript/First_steps/Variables", "Learn/JavaScript/First_steps")}}
+ +

Kiedy w poprzednim artykule budowałeś grę "Zgadnij numer", mogłeś stwierdzić, że ona po prostu nie działała. Nie martw się - ten artykuł ma na celu zatrzymanie cię przed wyrywaniem sobie włosów nad takimi problemami poprzez dostarczenie ci narzędzi do znajdowania i naprawienia błędów w programach napisanych w JavaScript.

+ + + + + + + + + + + + +
Wymagania wstępne:Podstawowa znajomość obsługi komputera, podstawowe rozumenie HTML i CSS oraz wiedza, czym jest JavaScript.
Cel:Zdobycie umiejętności i odwagi do rozwiązywania prostych problemów w twoim własnym kodzie.
+ +

Typy błędów

+ +

Każdy błąd w kodzie można w ogólności podzielić na dwa typy:

+ + + +

No dobra, nie jest to tak proste - istnieją także inne czynniki, które różnicują błędy. Powyższa klasyfikacja wystarczy jednak w tym początkowym etapie twojej kariery. W kolejnej częsci przyjrzymy się tym dwóm typom błędów.

+ +

Błędogenny przykład

+ +

Zaczniemy od naszej poprzedniej gry "Zgadnij numer" - tylko że tym razem będziemy zajmować się wersją w której umyślnie ukryto trochę błędów. Odwiedź GitHub i wykonaj lokalną wersję  number-game-errors.html (Zobacz live demo tutaj).

+ +
    +
  1. Aby zacząć, otwój lokalną wersję w swoim ulubionym edytorze tekstu i w twojej przeglądarce.
  2. +
  3. Spróbuj zagrać w tę - odkryjesz że kiedy wciskasz przycisk "Zgadnij" - on po prostu nie działa!
  4. +
+ +
+

Notatka: Równie dobrze możesz mieć swoją wersję gry, która ci nie działa. Wiemy, że może chciałbyś ją naprawić, ale chcemy, abyś wykorzystał naszą wersję, dzięki czemu nauczysz się technik, których tu uczymy. Następnie możesz  wykorzystać je do naprawienia własnego kodu.

+
+ +

W tym miejscu spójrzmy na narzędzia developerskie, dokładniej konsolę debugowania, aby sprawdzić, czy występują błędy składniowe, a jeżeli tak - naprawić je. Poniżej znajdują się instrukcje, jak tego dokonać.

+ +

Naprawa błędów składniowych

+ +

Wcześniej pokazaliśmy kilka prostych komend JavaScript, które wpisałeś do konsoli JavaScript w narzędziach deweloperskich (jeżeli nie pamiętasz jak je otworzyć, kliknij w link, aby sobie przypomnieć). Jej bardzo przydatną funkcją jest wyświetlanie błędów w momencie gdy interpreter JavaScript przeglądarki napotka na błąd. Wyruszmy na poszukiwanie błędów!

+ +
    +
  1. Idź do karty z otwartą stroną number-game-errors.html i otwórz konsolę JavaScript. Znajdziesz tam błąd:
  2. +
  3. Jest to prosty błąd do wytropienia, a przeglądarka daje wiele przydatnych  wskazówek: (powyższy screen jest z Firefoxa, ale inne przeglądarki pokazują podobne informacje). Od lewej do prawej znajdują się: +
      +
    • Czerwony "x" dla pokazania, że jest to błąd.
    • +
    • Wiadomość błędu dla pokazania, co poszło nie tak: "TypeError: guessSubmit.addeventListener is not a function"
    • +
    • Link do "Learn More", który przekierowuje do strony na MDN, która wyjaśnia szczegółowo dany błąd.
    • +
    • Nazwa pliku JavaScript, która po kliknięciu kieruje do karty debuggera. Jeżeli klikniesz go, pokaże ci się dokładna linia z danym błędem.
    • +
    • Numer linii oraz znak, gdzie wystąpił błąd. W tym przypadku linia 86, znak 3.
    • +
    +
  4. +
  5. Spoglądając na linię 86, zobaczymy następujący kod: +
    guessSubmit.addeventListener('click', checkGuess);
    +
  6. +
  7. The error message says "guessSubmit.addeventListener is not a function", so we've probably spelled something wrong. If you are not sure of the correct spelling of a piece of syntax, it is often good to look up the feature on MDN. The best way to do this currently is to search for "mdn name-of-feature" on your favourite search engine. Here's a shortcut to save you some time in this instance: addEventListener().
  8. +
  9. So, looking at this page, the error appears to be that we've spelled the function name wrong! Remember that JavaScript is case sensitive, so any slight different in spelling or casing will cause an error. Changing addeventListener to addEventListener should fix this. Do this now.
  10. +
+ +
+

Note: See our TypeError: "x" is not a function reference page for more details about this error.

+
+ +

Błędy składniowe - podejście drugie

+ +
    +
  1. Zapisz stronę i odśwież - zobaczysz, że błąd zniknął.
  2. +
  3. Spróbuj teraz wpisać liczbę. Po kliknięciu na przycisk "Wyślij" zobaczysz... inny błąd!
  4. +
  5. Tym razem błąd to "TypeError: lowOrHi is null", on line 78. +
    Notatka: Null jest specjalną wartością, która oznacza "nic" bądź "brak wartości" A więc lowOrHi został zadeklarowany i zainicjalizowany - ale wartością pustą.
    + +
    Notatka: Ten błąd pojawił się jak tylko strona została załadowana, dlatego że błąd wystąpił podczas wykonywania funkcji (w środku bloku checkGuess() { ... }). Jak dowiesz się później bardziej szczegółowo, kod wewnątrz funkcji jest wykonywany w innej przestrzeni niż kod poza funkcją. W tym przypadku kod nie został uruchomiony, a błąd wyrzucony do momentu, aż funkcja checkGuess() nie dotarła do linijki 86.
    +
  6. +
  7. Popatrz na linię 78. Zobaczysz tam następujący kod: +
    lowOrHi.textContent = 'Last guess was too high!';
    +
  8. +
  9. W tej linii następuje próba ustawienia właściwości textContent zmiennej lowOrHi na tekst, ale to się nie powiodło ze względu na fakt, że lowOrHi nie jest tym, czego oczekujemy.  Trzeba się dowiedzieć, dlaczego tak jest - wyszukajmy inne wystąpienia lowOrHi. Najwcześniejsze wystąpienie znajdziemy w linii 48: +
    var lowOrHi = document.querySelector('lowOrHi');
    +
  10. +
  11. W tej linii próbujemy przypisać zmiennej referencję do elementu w dokumencie HTML. Sprawdźmy, czy wartością tej zmiennej jest null po wykonaniu tej linijki. Aby to zrobić, dodaj ten kod w linii 49: +
    console.log(lowOrHi);
    + +
    +

    Notatka: console.log() jest bardzo użyteczną funkcją do debugowania, której celem jest wypisanie wartości zmiennej do konsoli. W tym przypadku wypisze ona wartośćlowOrHi do konsoli w takiej postaci, w jakiej została ona ustawiona w linii 48.

    +
    +
  12. +
  13. Zapisz plik i odśwież stronę. Po przejściu do konsoli zobaczysz efekt wywołania console.log().Możemy być pewni - w tym momencie wartością lowOrHi jest null. Oznacza to, że błąd jest zdecydowanie związany z linią 48.
  14. +
  15. Pomyślmy - co może być tutaj problemem? W linii 48 używamy document.querySelector() aby otrzymać referencję do elementu. Odbywa się to poprzez podanie selektora CSS jako parametr funkcji. W dalszej częsci pliku można znaleźć paragraf, którego referencji potrzebujemy: +
    <p class="lowOrHi"></p>
    +
  16. +
  17. To oznacza, że potrzebujemy tu selektora klasy. Zaczyna się on kropką (.) - ale selektor, którego używamy w querySelector() (linia 48) nie ma kropki. To może być nasz błąd! Spróbuj zmienić lowOrHi na .lowOrHi w linii 48.
  18. +
  19. Zapisz i odśwież stronę. Teraz console.log() powinien wyświetlić element  <p>, którego poszukiwaliśmy. Uff! Kolejny błąd naprawiony! Możesz już usunąć linię z console.log() (albo zostawić ją odniesienie na później - jak uważasz).
  20. +
+ +
+

Note: See our TypeError: "x" is (not) "y" reference page for more details about this error.

+
+ +

Błędy składniowe - podejście trzecie

+ +
    +
  1. Teraz gdy spróbujesz zagrać w grę, powinno Ci się więcej powieść - gra będzie grywalna, do momentu końca gry - nieważne, czy poprzez znalezienie właściwej liczby czy skończenie się żyć.
  2. +
  3. W tym miejscu gra nie działa, a w konsoli pojawie się ten sam błąd, co na początku - "TypeError: resetButton.addeventListener is not a function"! Tym razem jednak jest wywoływany z linii 94.
  4. +
  5. Spójrzmy na linię 94. Można łatwo zauważyć, że mamy do czynienia z tym samym błędem, co wcześniej - wystarczy zmienić addeventListener na .addEventListener. Zrób to teraz.
  6. +
+ +

Błąd logiczny

+ +

Na tym etapie gra powinna być grywalna, ale po kilku uruchomieniach można łatwo zauważyć, że "losowa" liczba to zawsze 0 bądź 1. Nie jest to to, czego można od takiej gry oczekiwać!

+ +

Musi to być jakiś problem z logiką aplikacji - gra nie zwraca błędu, jednak nie zachowuje się jak powinna.

+ +
    +
  1. Znajdźmy zmienną randomNumber  i linie, w których zmienna jest zadeklarowana i jej wartość ustalona. To miejsce znajduje się w okolicach linii 44: + +
    var randomNumber = Math.floor(Math.random()) + 1;
    + A linia, która generuje losową liczbę przed każdą grą, to linia 113: + +
    randomNumber = Math.floor(Math.random()) + 1;
    +
  2. +
  3. Aby sprawdzić czy to z tymi liniami jest problem, użyjmy naszego starego przyjaciela - polecenia console.log(). Wstaw następujący kod bezpośrednio pod wcześniej wymienionymi dwiema liniami kodu: +
    console.log(randomNumber);
    +
  4. +
  5. Zapisz i odśwież, następnie zagraj kilka razy - można zauważyć, że za każdym wywołaniem  randomNumber jest równe 1.
  6. +
+ +

Praca nad logiką

+ +

W celu naprawy tego błędu, należy najpierw pomyśleć, jak działa ten kod. Na samym początku wywołujemy Math.random(), który generuje zmiennoprzecinkową liczbę pomiędzy 0 i 1, na przykład 0.5675493843.

+ +
Math.random()
+ +

Następnie uzyskaną liczbę podajemy jako parametr funkcji Math.floor(), której zadanie jest zaokrąglenie uzyskanej w parametrze liczby do największej liczby całkowitej równej bądź mniejszej od parametru. Następnie dodajemy 1 do wyniku:

+ +
Math.floor(Math.random()) + 1
+ +

Zaokrąglanie liczby zmiennoprzecinkowej w zakresie od 0 do 1 zawsze da 0 . Dodanie do niej 1 da więc wynik 1. Aby naprawić wynik zgodnie z wymaganiami, pomnóżmy naszą losową liczbę przez 100. Sprawi to, że dostaniemy losową liczbę od 0 do 99:

+ +
Math.floor(Math.random()*100);
+ +

Jeżeli dodamy 1, dostaniemy liczbę z przedziału od 1 do 100:

+ +
Math.floor(Math.random()*100) + 1;
+ +

Zmień obie linie zgodnie z tym wzorem, zapisz i odśwież stronę - gra powinna zachowywać się tak jak od niej tego oczekujemy!

+ +

Inne popularne błędy

+ +

Istnieją inne popularne błędy, na które natkniesz się w swoim kodzie. Ta sekcja zawiera listę najpopularniejszych z nich.

+ +

SyntaxError: missing ; before statement

+ +

Ten błąd oznacza, że zapomniałeś o średniku na końcu linii. Czasem może jednak być bardziej enigmatyczny. Przykładem może być zmiana tej linii:

+ +
var userGuess = Number(guessField.value);
+ +

na

+ +
var userGuess === Number(guessField.value);
+ +

Ten kod wyrzuca błąd, gdyż myśli, że chcesz zrobić coś innego. Musisz być pewny, że nie mieszasz znaku przypisania (=) — zapisuje on wartość w zmiennej, z operatorem dokładnego porównania, który testuje czy jedna wartość jest dokładnie równa drugiej - zwraca ona wynik w postaci zmiennej logicznej true/false.

+ +
+

Notatka: Aby dowiedzieć się więcej o tym błędzie, odwiedź naszą stronę SyntaxError: missing ; before statement.

+
+ +

Program zawsze twierdzi, że wygrałeś, niezależnie od wprowadzonej liczby

+ +

Może to być objawem pomieszania operatorów przypisania i dokładnego porównania. Przykładowo jeżeli byśmy zmienili tę linię w funkcji checkGuess():

+ +
if (userGuess === randomNumber) {
+ +

na

+ +
if (userGuess = randomNumber) {
+ +

ten test zawsze zwróciłby true (prawdę), co sprawiłoby, że program za każdym razem twierdziłby, że gra została przez Ciebie wygrana. Uważaj na błędy!

+ +

SyntaxError: missing ) after argument list

+ +

Ten błąd jest prosty — oznacza po prostu, że zapomniałeś dodać nawias zamykający na końcu funkcji/wywołania metody.

+ +
+

Notatka: Zobacz naszą  stronę referencyjną: SyntaxError: missing ) after argument list, aby dowiedzieć się więcej o tym błędzie.

+
+ +

SyntaxError: missing : after property id

+ +

Ten błąd zwykle jest związany z niepoprawnie napisanym obiektem JavaScript. Tym razem jednak został spowodowany zmianą

+ +
function checkGuess() {
+ +

na

+ +
function checkGuess( {
+ +

Ten błąd spowodował, że przeglądarka zinterpretowała ten kod jako próbę podania wnętrza funkcji jako parametr funkcji. Uważaj na nawiasy!

+ +

SyntaxError: missing } after function body

+ +

This is easy — it generally means that you've missed one of your curly braces from a function or conditional structure. We got this error by deleting one of the closing curly braces near the bottom of the checkGuess() function.

+ +

SyntaxError: expected expression, got 'string' or SyntaxError: unterminated string literal

+ +

These errors generally mean that you've missed off a string value's opening or closing quote mark. In the first error above, string would be replaced with the unexpected character(s) that the browser found instead of a quote mark at the start of a string. The second error means that the string has not been ended with a quote mark.

+ +

For all of these errors, think about how we tackled the examples we looked at in the walkthrough. When an error arises, look at the line number you are given, go to that line and see if you can spot what's wrong. Bear in mind that the error is not necessarily going to be on that line, and also that the error might not be caused by the exact same problem we cited above!

+ +
+

Note: See our SyntaxError: Unexpected token and SyntaxError: unterminated string literal reference pages for more details about these errors.

+
+ +

Podsumowanie

+ +

A wieć to jest to - podstawy szukania błędów w prostych programach w JS. Nie zawsze znalezienie błędu jest tak proste , ale przynajmniej ten artykuł może ci pomóc w zaoszczędzeniu kilku godzin snu i pozwolić na szybsze postępy w nauce.

+ +

Zobacz także

+ +
+ +
+ +

{{PreviousMenuNext("Learn/JavaScript/First_steps/A_first_splash", "Learn/JavaScript/First_steps/Variables", "Learn/JavaScript/First_steps")}}

+ +

 

+ +

In this module

+ + + +

 

diff --git a/files/pl/learn/javascript/pierwsze_kroki/index.html b/files/pl/learn/javascript/pierwsze_kroki/index.html new file mode 100644 index 0000000000..ab90523dce --- /dev/null +++ b/files/pl/learn/javascript/pierwsze_kroki/index.html @@ -0,0 +1,61 @@ +--- +title: Pierwsze kroki w Javascript +slug: Learn/JavaScript/Pierwsze_kroki +tags: + - Artykuły + - Liczby + - Moduły + - Operatory + - Początkujący + - Przewodnik + - Pętle + - Zmienne +translation_of: Learn/JavaScript/First_steps +--- +
{{LearnSidebar}}
+ +

W pierwszym module, przed rozpoczęciem praktycznego pisania kodu w JavaScript, odpowiemy sobie na kilka fundamentalnych pytań takich jak: "czym jest JavaScript?", "czym się charakteryzuje?" oraz "co potrafi?". Następnie omówimy kilka kluczowych kwestii - zmienne, ciągi znaków, liczby oraz pętle w JavaScript.

+ +

Wymagania

+ +

Przed rozpoczęciem nauki tego modułu nie musisz posiadać żadnej wiedzy o JavaScript, ale powinieneś już znać podstawowe zagadnienia związane z HTML-em oraz CSS-em. Doradzamy Ci, abyś ukończył moduły przedstawione poniżej:

+ + + +
+

Informacja: Jeżeli pracujesz na komputerze/tablecie/innym urządzeniu na którym nie masz możliwości tworzenia własnych plików, możesz wypróbować przedstawione przykłady w programach online, takich jak:  JSBin lub Thimble.

+
+ +

Przewodnik

+ +
+
Czym jest JavaScript?
+
Witamy w MDN-owym kursie JavaScript dla początkujących! W tym artykule spojrzymy na JavaScript jeszcze nieco ogólne i odpowiemy sobie na podstawowe pytania:  "co to jest?" oraz "co robi?". To ważne, by znać cele stosowania tego języka.
+
Pierwsze spojrzenie na JavaScript
+
Najpierw nauczysz się teorii JavaScript, oraz tego, co możesz zrobić za jego pomocą. Następnie przejdziesz przez instruktarz oparty o podstawowe cechy JavaScript, który będzie miał formę praktyczną - napiszesz prostą grę - "Zgadnij liczbę". Proces pisania pokażemy Ci krok po kroku.
+
Coś poszło nie tak? Rozwiązywanie problemów w JavaScript
+
Podczas pisania gry "zgadnij liczbę" z poprzedniego artykułu możesz natrafić na trudności, które spowodują problemy z jej poprawnym działaniem. Spokojnie - ten artykuł uchroni Cię przed wyrywaniem sobie włosów podczas sprawdzania swojego kodu. Pokażemy Ci kilka prostych sposóbów wykrywania i eliminowania błędów w programie napisanym w Javascript.
+
Przechowywanie informacji, których potrzebujesz — Zmienne
+
Po przeczytaniu poprzednich artykułów powinieneś wiedzieć czym jest JavaScript, co może dla Ciebie zrobić, oraz jak możesz używać go wraz z innymi internetowymi technologiami. Ten artykuł poprowadzi Cię przez podstawowe "bloki", którymi będziesz posługiwać się podczas pisania programu w Javascript - zmienne.
+
Podstawy działań w JavaScript — liczby i operatory
+
W tym miesjcu kursu porozmawiamy o działaniach w JavaScript - dowiesz się jak możesz łączyć operatory oraz przeczytasz o innych cechach języka, aby poprawnie korzystać z liczb.
+
Przechowywanie tekstu — ciągi znaków w JavaScript
+
Następnie skupimy swoją uwagę na string-ach - tak nazywają się ciągi tekstu w programowaniu. W tym artykule spojrzymy na najważniejsze rzeczy, które potrzebujesz wiedzieć o ciągach znaków w JavaScript. Są nimi: tworzenie "string-ów", używanie cudzysłowia, oraz łączenie ze sobą ciągów znaków.
+
Użyteczne metody w string-ach
+
Po zaznajomieniu się z podstawami string-ów czas podnieść poprzeczkę. Zaczniemy mysleć o pomocnych operacjach, które możemy wykonać na ciągach znaków poprzez wbudowane funkcje, takie jak: obliczanie długości ciągu znaków, łączenie i rozdzielanie, zastępowanie jednego znaku innym i wiele więcej.
+
Pętle
+
W ostatnim artykule tego modułu przyjrzymy się pętlom - następnym sposobie przechowywania informacji w pojedynczej zmiennej. Dowiesz się tutaj dlaczego są one ważne, odkryjesz jak je stworzyć, dodać i usunąć z nich dane. 
+
+ +

Podsumowanie

+ +

Poniższe podsumowanie sprawdzi Twoje rozumienie podstaw języka Javascript z powyższego przewodnika.

+ +
+
Generator niemądrych opowieści
+
W tej części zastosujesz zdobytą wiedzę, zebraną w powyższych artykułach, do stworzenia aplikacji - "Generatora niemądrych opowieści". Baw się dobrze!
+
diff --git a/files/pl/learn/javascript/pierwsze_kroki/math/index.html b/files/pl/learn/javascript/pierwsze_kroki/math/index.html new file mode 100644 index 0000000000..3e5563d0da --- /dev/null +++ b/files/pl/learn/javascript/pierwsze_kroki/math/index.html @@ -0,0 +1,455 @@ +--- +title: Basic math in JavaScript — numbers and operators +slug: Learn/JavaScript/Pierwsze_kroki/Math +translation_of: Learn/JavaScript/First_steps/Math +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/JavaScript/First_steps/Variables", "Learn/JavaScript/First_steps/Strings", "Learn/JavaScript/First_steps")}}
+ +

At this point in the course we discuss math in JavaScript — how we can use {{Glossary("Operator","operators")}} and other features to successfully manipulate numbers to do our bidding.

+ + + + + + + + + + + + +
Prerequisites:Basic computer literacy, a basic understanding of HTML and CSS, an understanding of what JavaScript is.
Objective:To gain familiarity with the basics of math in JavaScript.
+ +

Wszyscy kochają matematykę

+ +

Ok, może nie. Niektórzy  kochają matematykę, inni nienawidzą  od kiedy musieli nauczyć się tabliczki mnożenia i dzielenia przez liczby wielocyfrowe w szkole podstawowej, a częśc jest gdzieś pośrodku. Ale nikt z nas nie może zaprzeczyć, temu że matematyka jest fundamentalną częścią życia, bez której nie zajdzie się daleko. Jest to szczególnie prawdziwe kiedy uczymy się programowania w JavaScript (lub jakimkolwiek innym języku) -   tak wiele z tego co robimy polega na przetwarzaniu danych liczbowych, obliczaniu nowych wartości i tak dalej, że nie będziesz zaskoczony, że JavaScript posiada w pełni funkcjonalny zestaw funkcji matematycznych.

+ +

Artykuł omawia podstawy, które musisz znać na ten moment.

+ +

Typy liczb

+ +

W programowaniu, nawet na pozór łatwy system dziesiętny, który tak dobrze znamy jest bardziej skąplikowany niż mógłbyś sądzić. Używamy różnych terminów do opisania różnych typów liczb dziesiętnych, dla przykładu: 

+ + + +

We even have different types of number systems! Decimal is base 10 (meaning it uses 0–9 in each column), but we also have things like:

+ + + +

Before you start to get worried about your brain melting, stop right there! For a start, we are just going to stick to decimal numbers throughout this course; you'll rarely come across a need to start thinking about other types, if ever.

+ +

The second bit of good news is that unlike some other programming languages, JavaScript only has one data type for numbers, both integers and decimals — you guessed it, {{jsxref("Number")}}. This means that whatever type of numbers you are dealing with in JavaScript, you handle them in exactly the same way.

+ +
+

Note: Actually, JavaScript has a second number type, {{Glossary("BigInt")}}, used for very, very large integers. But for the purposes of this course, we'll just worry about Number values.

+
+ +

It's all numbers to me

+ +

Let's quickly play with some numbers to reacquaint ourselves with the basic syntax we need. Enter the commands listed below into your developer tools JavaScript console.

+ +
    +
  1. First of all, let's declare a couple of variables and initialize them with an integer and a float, respectively, then type the variable names back in to check that everything is in order: +
    let myInt = 5;
    +let myFloat = 6.667;
    +myInt;
    +myFloat;
    +
  2. +
  3. Number values are typed in without quote marks — try declaring and initializing a couple more variables containing numbers before you move on.
  4. +
  5. Now let's check that both our original variables are of the same datatype. There is an operator called {{jsxref("Operators/typeof", "typeof")}} in JavaScript that does this. Enter the below two lines as shown: +
    typeof myInt;
    +typeof myFloat;
    + You should get "number" returned in both cases — this makes things a lot easier for us than if different numbers had different data types, and we had to deal with them in different ways. Phew!
  6. +
+ +

Useful Number methods

+ +

The Number object, an instance of which represents all standard numbers you'll use in your JavaScript, has a number of useful methods available on it for you to manipulate numbers. We don't cover these in detail in this article because we wanted to keep it as a simple introduction and only cover the real basic essentials for now; however, once you've read through this module a couple of times it is worth going to the object reference pages and learning more about what's available.

+ +

For example, to round your number to a fixed number of decimal places, use the toFixed() method. Type the following lines into your browser's console:

+ +
let lotsOfDecimal = 1.766584958675746364;
+lotsOfDecimal;
+let twoDecimalPlaces = lotsOfDecimal.toFixed(2);
+twoDecimalPlaces;
+ +

Converting to number data types

+ +

Sometimes you might end up with a number that is stored as a string type, which makes it difficult to perform calculations with it. This most commonly happens when data is entered into a form input, and the input type is text. There is a way to solve this problem — passing the string value into the Number() constructor to return a number version of the same value.

+ +

For example, try typing these lines into your console:

+ +
let myNumber = '74';
+myNumber + 3;
+ +

You end up with the result 743, not 77, because myNumber is actually defined as a string. You can test this by typing in the following:

+ +
typeof myNumber;
+ +

To fix the calculation, you can do this:

+ +
Number(myNumber) + 3;
+ +

Arithmetic operators

+ +

Arithmetic operators are the basic operators that we use to do sums in JavaScript:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OperatorNamePurposeExample
+AdditionAdds two numbers together.6 + 9
-SubtractionSubtracts the right number from the left.20 - 15
*MultiplicationMultiplies two numbers together.3 * 7
/DivisionDivides the left number by the right.10 / 5
%Remainder (sometimes called modulo) +

Returns the remainder left over after you've divided the left number into a number of integer portions equal to the right number.

+
+

8 % 3 (returns 2, as three goes into 8 twice, leaving 2 left over).

+
**ExponentRaises a base number to the exponent power, that is, the base number multiplied by itself, exponent times. It was first Introduced in EcmaScript 2016.5 ** 2 (returns 25, which is the same as 5 * 5).
+ +
+

Note: You'll sometimes see numbers involved in arithmetic referred to as {{Glossary("Operand", "operands")}}.

+
+ +
+

Note: You may sometimes see exponents expressed using the older {{jsxref("Math.pow()")}} method, which works in a very similar way. For example, in Math.pow(7, 3), 7 is the base and 3 is the exponent, so the result of the expression is 343. Math.pow(7, 3) is equivalent to 7**3.

+
+ +

We probably don't need to teach you how to do basic math, but we would like to test your understanding of the syntax involved. Try entering the examples below into your developer tools JavaScript console to familiarize yourself with the syntax.

+ +
    +
  1. First try entering some simple examples of your own, such as +
    10 + 7
    +9 * 8
    +60 % 3
    +
  2. +
  3. You can also try declaring and initializing some numbers inside variables, and try using those in the sums — the variables will behave exactly like the values they hold for the purposes of the sum. For example: +
    let num1 = 10;
    +let num2 = 50;
    +9 * num1;
    +num1 ** 3;
    +num2 / num1;
    +
  4. +
  5. Last for this section, try entering some more complex expressions, such as: +
    5 + 10 * 3;
    +num2 % 9 * num1;
    +num2 + num1 / 8 + 2;
    +
  6. +
+ +

Some of this last set of calculations might not give you quite the result you were expecting; the  section below might well give the answer as to why.

+ +

Operator precedence

+ +

Let's look at the last example from above, assuming that num2 holds the value 50 and num1 holds the value 10 (as originally stated above):

+ +
num2 + num1 / 8 + 2;
+ +

As a human being, you may read this as "50 plus 10 equals 60", then "8 plus 2 equals 10", and finally "60 divided by 10 equals 6".

+ +

But the browser does "10 divided by 8 equals 1.25", then "50 plus 1.25 plus 2 equals 53.25".

+ +

This is because of operator precedence — some operators are applied before others when calculating the result of a calculation (referred to as an expression, in programming).  Operator precedence in JavaScript is the same as is taught in math classes in school — Multiply and divide are always done first, then add and subtract (the calculation is always evaluated from left to right).

+ +

If you want to override operator precedence, you can put parentheses round the parts that you want to be explicitly dealt with first. So to get a result of 6, we could do this:

+ +
(num2 + num1) / (8 + 2);
+ +

Try it and see.

+ +
+

Note: A full list of all JavaScript operators and their precedence can be found in Expressions and operators.

+
+ +

Increment and decrement operators

+ +

Sometimes you'll want to repeatedly add or subtract one to or from a numeric variable value. This can be conveniently done using the increment (++) and decrement (--) operators. We used ++ in our "Guess the number" game back in our first splash into JavaScript article, when we added 1 to our guessCount variable to keep track of how many guesses the user has left after each turn.

+ +
guessCount++;
+ +
+

Note: These operators are most commonly used in loops, which you'll learn about later on in the course. For example, say you wanted to loop through a list of prices, and add sales tax to each one. You'd use a loop to go through each value in turn and do the necessary calculation for adding the sales tax in each case. The incrementor is used to move to the next value when needed. We've actually provided a simple example showing how this is done — check it out live, and look at the source code to see if you can spot the incrementors! We'll look at loops in detail later on in the course.

+
+ +

Let's try playing with these in your console. For a start, note that you can't apply these directly to a number, which might seem strange, but we are assigning a variable a new updated value, not operating on the value itself. The following will return an error:

+ +
3++;
+ +

So, you can only increment an existing variable. Try this:

+ +
let num1 = 4;
+num1++;
+ +

Okay, strangeness number 2! When you do this, you'll see a value of 4 returned — this is because the browser returns the current value, then increments the variable. You can see that it's been incremented if you return the variable value again:

+ +
num1;
+ +

The same is true of -- : try the following

+ +
let num2 = 6;
+num2--;
+num2;
+ +
+

Note: You can make the browser do it the other way round — increment/decrement the variable then return the value — by putting the operator at the start of the variable instead of the end. Try the above examples again, but this time use ++num1 and --num2.

+
+ +

Assignment operators

+ +

Assignment operators are operators that assign a value to a variable. We have already used the most basic one, =, loads of times — it simply assigns the variable on the left the value stated on the right:

+ +
let x = 3; // x contains the value 3
+let y = 4; // y contains the value 4
+x = y; // x now contains the same value y contains, 4
+ +

But there are some more complex types, which provide useful shortcuts to keep your code neater and more efficient. The most common are listed below:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OperatorNamePurposeExampleShortcut for
+=Addition assignmentAdds the value on the right to the variable value on the left, then returns the new variable valuex += 4;x = x + 4;
-=Subtraction assignmentSubtracts the value on the right from the variable value on the left, and returns the new variable valuex -= 3;x = x - 3;
*=Multiplication assignmentMultiplies the variable value on the left by the value on the right, and returns the new variable valuex *= 3;x = x * 3;
/=Division assignmentDivides the variable value on the left by the value on the right, and returns the new variable valuex /= 5;x = x / 5;
+ +

Try typing some of the above examples into your console, to get an idea of how they work. In each case, see if you can guess what the value is before you type in the second line.

+ +

Note that you can quite happily use other variables on the right hand side of each expression, for example:

+ +
let x = 3; // x contains the value 3
+let y = 4; // y contains the value 4
+x *= y; // x now contains the value 12
+ +
+

Note: There are lots of other assignment operators available, but these are the basic ones you should learn now.

+
+ +

Active learning: sizing a canvas box

+ +

In this exercise, you will manipulate some numbers and operators to change the size of a box. The box is drawn using a browser API called the {{domxref("Canvas API", "", "", "true")}}. There is no need to worry about how this works — just concentrate on the math for now. The width and height of the box (in pixels) are defined by the variables x and y, which are initially both given a value of 50.

+ +

{{EmbedGHLiveSample("learning-area/javascript/introduction-to-js-1/maths/editable_canvas.html", '100%', 620)}}

+ +

Open in new window

+ +

In the editable code box above, there are two lines marked with a comment that we'd like you to update to make the box grow/shrink to certain sizes, using certain operators and/or values in each case. Let's try the following:

+ + + +

Don't worry if you totally mess the code up. You can always press the Reset button to get things working again. After you've answered all the above questions correctly, feel free to play with the code some more or create your own challenges.

+ +

Comparison operators

+ +

Sometimes we will want to run true/false tests, then act accordingly depending on the result of that test — to do this we use comparison operators.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OperatorNamePurposeExample
===Strict equalityTests whether the left and right values are identical to one another5 === 2 + 4
!==Strict-non-equalityTests whether the left and right values are not identical to one another5 !== 2 + 3
<Less thanTests whether the left value is smaller than the right one.10 < 6
>Greater thanTests whether the left value is greater than the right one.10 > 20
<=Less than or equal toTests whether the left value is smaller than or equal to the right one.3 <= 2
>=Greater than or equal toTests whether the left value is greater than or equal to the right one.5 >= 4
+ +
+

Note: You may see some people using == and != in their tests for equality and non-equality. These are valid operators in JavaScript, but they differ from ===/!==. The former versions test whether the values are the same but not whether the values' datatypes are the same. The latter, strict versions test the equality of both the values and their datatypes. The strict versions tend to result in fewer errors, so we recommend you use them.

+
+ +

If you try entering some of these values in a console, you'll see that they all return true/false values — those booleans we mentioned in the last article. These are very useful, as they allow us to make decisions in our code, and they are used every time we want to make a choice of some kind. For example, booleans can be used to:

+ + + +

We'll look at how to code such logic when we look at conditional statements in a future article. For now, let's look at a quick example:

+ +
<button>Start machine</button>
+<p>The machine is stopped.</p>
+
+ +
const btn = document.querySelector('button');
+const txt = document.querySelector('p');
+
+btn.addEventListener('click', updateBtn);
+
+function updateBtn() {
+  if (btn.textContent === 'Start machine') {
+    btn.textContent = 'Stop machine';
+    txt.textContent = 'The machine has started!';
+  } else {
+    btn.textContent = 'Start machine';
+    txt.textContent = 'The machine is stopped.';
+  }
+}
+ +

{{EmbedGHLiveSample("learning-area/javascript/introduction-to-js-1/maths/conditional.html", '100%', 100)}}

+ +

Open in new window

+ +

You can see the equality operator being used just inside the updateBtn() function. In this case, we are not testing if two mathematical expressions have the same value — we are testing whether the text content of a button contains a certain string — but it is still the same principle at work. If the button is currently saying "Start machine" when it is pressed, we change its label to  "Stop machine", and update the label as appropriate. If the button is currently saying "Stop machine" when it is pressed, we swap the display back again.

+ +
+

Note: Such a control that swaps between two states is generally referred to as a toggle. It toggles between one state and another — light on, light off, etc.

+
+ +

Test your skills!

+ +

You've reached the end of this article, but can you remember the most important information? You can find some further tests to verify that you've retained this information before you move on — see Test your skills: Math.

+ +

Summary

+ +

In this article we have covered the fundamental information you need to know about numbers in JavaScript, for now. You'll see numbers used again and again, all the way through your JavaScript learning, so it's a good idea to get this out of the way now. If you are one of those people that doesn't enjoy math, you can take comfort in the fact that this chapter was pretty short.

+ +

In the next article, we'll explore text and how JavaScript allows us to manipulate it.

+ +
+

Note: If you do enjoy math and want to read more about how it is implemented in JavaScript, you can find a lot more detail in MDN's main JavaScript section. Great places to start are our Numbers and dates and Expressions and operators articles.

+
+ +

{{PreviousMenuNext("Learn/JavaScript/First_steps/Variables", "Learn/JavaScript/First_steps/Strings", "Learn/JavaScript/First_steps")}}

+ +

In this module

+ + diff --git a/files/pl/learn/javascript/pierwsze_kroki/what_is_javascript/index.html b/files/pl/learn/javascript/pierwsze_kroki/what_is_javascript/index.html new file mode 100644 index 0000000000..3898eb049c --- /dev/null +++ b/files/pl/learn/javascript/pierwsze_kroki/what_is_javascript/index.html @@ -0,0 +1,342 @@ +--- +title: Co to jest JavaScript? +slug: Learn/JavaScript/Pierwsze_kroki/What_is_JavaScript +translation_of: Learn/JavaScript/First_steps/What_is_JavaScript +--- +
{{LearnSidebar}}
+ +
{{NextMenu("Learn/JavaScript/First_steps/A_first_splash", "Learn/JavaScript/First_steps")}}
+ +

Witamy w MDN na kursie JavaScript dla początkujących! W tym pierwszym artykule przyjrzymy się JavaScript z pewnej odległości, odpowiadając na pytania w stylu "co to jest?" i "co on robi?" oraz upewnimy się, że rozumiesz cel, któremu służy JavaScript.

+ + + + + + + + + + + + +
Wymagania wstępne:Podstawowa znajomość komputera, podstawowa znajomość HTML i CSS.
Cel:Zapoznanie z istotą JavaScript, co on robi i jak jest dopasowywany do strony internetowej.
+ +

Definicja ogólna

+ +

JavaScript to język programowania, który umożliwia wdrożenie na stronie internetowej skomplikowanych elementów, dzięki którym strona ta może nie tylko wyświetlać statyczne informacje, ale również obsługiwać zmianę treść odpowiednio do sytuacji, wyświetlać interaktywne mapy i animacje grafiki 2D/3D , wyświetlać video itd. Jest to trzecia warstwa standardowych technologii internetowych, z których dwie (HTML i CSS) omówiliśmy w innych częściach "Strefy nauki".

+ +

+ + + +

Te trzy warstwy układają się jedna na drugiej. Jako przykład weźmy prostą etykietę tekstową. Możemy ją oznaczyć używajac kodu HTML, aby nadać jej strukturę:

+ +
<p>Player 1: Chris</p>
+ +

+ +

Następnie możemy dodać kod CSS, aby nadać ładny wygląd:

+ +
p {
+  font-family: 'helvetica neue', helvetica, sans-serif;
+  letter-spacing: 1px;
+  text-transform: uppercase;
+  text-align: center;
+  border: 2px solid rgba(0,0,200,0.6);
+  background: rgba(0,0,200,0.3);
+  color: rgba(0,0,200,0.6);
+  box-shadow: 1px 1px 2px rgba(0,0,200,0.4);
+  border-radius: 10px;
+  padding: 3px 10px;
+  display: inline-block;
+  cursor:pointer;
+}
+ +

+ +

Na końcu możemy dodać kod Javascript, aby zaimplementować dynamiczne zachowanie:

+ +
var para = document.querySelector('p');
+
+para.addEventListener('click', updateName);
+
+function updateName() {
+  var name = prompt('Enter a new name');
+  para.textContent = 'Player 1: ' + name;
+}
+
+ +

{{ EmbedLiveSample('A_high-level_definition', '100%', 80) }}

+ +

Kliknij na przycisk (etykietę tekstową), aby zobaczyć co się dzieje (na GitHub mozesz znależć kod źróðłowy i wersję demo — zobacz kod źródłowy lub przykład na żywo)!

+ +

JavaScript pozwala osiągać o wiele bardziej zaawansowane efekty - sprawdź poniżej jego możliwości.

+ +

Co można zrobić?

+ +

Rdzeń języka JavaScript składa się z kilku funkcjonalności, które umożliwiają wykonanie rzeczy, takich jak te: 

+ + + +

Jeszcze bardziej ekscytująca jest możliwość stosowania tzw. interfejsów programowania aplikacji (ang. Application Programming Interfaces - API), działających na szczycie rdzenia języka JavaScript.

+ +

Interfejsy API są gotowymi zestawami bloków kodu, które umożliwiają programistom implementować programy, które w przeciwnym razie byłyby bardzo trudne do napisania przez programistę a nawet często niemożliwe do napisania przez niego. Spełniają one w programowaniu tą samą rolę, co gotowe segmenty mebli przy umeblowaniu domu — o wiele łatwiej jest wykorzystać gotowe panele i je poskręcać, niż samemu opracować projekt mebli, znaleźć drewno, pociąć go na deski, wysuszyć, przyciąć je na elementy swoich mebli i w końcu je samemu zmontować.

+ +

Interfejsy API dzielą się ogólnie na dwie kategorie:

+ +

+ +

Interfesy API przeglądarek internetowych, które są wbudowane w przeglądarki. Służą do udostępniania danych z komputera, ale też mogą wykonywać bardziej zaawansowane rzeczy. Na przykład:

+ + + +
+

Uwaga: wiele z powyższych przykładów nie będzie działać w starszych przeglądarkach - podczas eksperymentowania warto używać najnowszych wersji przeglądarek takich jak Firefox, Chrome, Edge czy Opera. Powinieneś także brać pod uwagę konieczność testowania swoich rozwiązań w wielu przegladarkach. Kod, który działa dobrze w Chrome nie zawsze będzie działał w Edge. (sprawdź: Testowanie wieloprzegladarkowe).

+
+ +

Zewnętrzne interfejsy API nie są wbudowane w przeglądarki i trzeba samemu pobrać ich kod i informacje o zastosowaniu. Na przykład:

+ + + +
+

Uwaga:  Interfesy API są zaawansowane i nie będziemy ich tu opisywać, możesz znaleźć o nich więcej informacji w module Interfejsy API działające po stronie klienta.

+
+ +

W Internecie dostępnych jest bardzo dużo bibliotek API działających z przegladarkami internetowymi, ale jest to "temat na później". Nie zbudujesz następnego Facebooka czy Google Maps po 24 godzinach nauki JavaScriptu. Jest wiele zagadnień podstawowych, które musisz najpierw opanować. Ale przecież po to tu jesteś!

+ +

Co robi JavaScript na stronie internetowej?

+ +

Tutaj zaczniemy faktycznie przyglądać się pewnemu kodowi i robiąc to, zbadamy, co takiego dzieje się po uruchomieniu tego kodu na stronie internetowej.

+ +

Przypomnijmy sobie, co dzieje się podczas ładowania strony internetowej w przeglądarce (pierwsz raz omówiliśmy to w artykule Jak działa CSS). Po załadowaniu strony internetowej (dokumentu HTML) do przeglądarki, zostaje uruchomioney jej kod (HTML, CSS i JavaScript) w środowisku wykonawczym tworzonym przez przeglądarkę (zakładka przegladarki). Jest to podobne do fabryki, która przyjmuje surowe materiały (kod) a wypuszcza gotowy produkt (stronę internetową).

+ +

+ +

JavaScript jest wykonywany przez silnik JavaScriptu w przeglądarce, po tym jak HTML i CSS zostaną skompletowane w stronę internetową. To zapewnia to, że struktura i style strony są już na miejscu w momencie gdy JavaScript zaczyna pracę.

+ +

Jest to przydatne, jako że popularnym zastosowaniem JavaScriptu jest dynamiczne modyfikowanie HTMLa i CSSa aby edytować interfejs poprzez Document Object Model API. Jeżeli JavaScript załadowałby się i próbował wykonywać się przed tym jak HTML i CSS zostały załadowane, wtedy wystąpiłyby błędy.

+ +

Bezpieczeństwo przeglądarki

+ +

Każda karta przeglądarki jest swoim własnym kontenerem dla kodu, który w niej się wykonuje (te kontenery są nazywane technicznie "środowiskami wykonywania" (ang. "execution environments") - oznacza to, ze w większości przypadków kod w każdej karcie jest wykonywany oddzielnie i kod z jednej z kart nie jest w stanie bezpośrednio wpłynąć na ten wykonujący się w innej karcie. Jest to przykład dobrego środka bezpieczeństwa - jeżeli by tak nie było, wtedy możliwe stałoby się pisanie kodu, który wykradałby dane z innych witryn oraz  byłby w stanie wykonywać inne, podobnie złe rzeczy.

+ +
+

Notatka:  Istnieją sposoby na bezpieczne wysyłanie kodu i danych pomiędzy różnymi stronami/kartami. Wykraczają one jednak poziomem poza ten kurs i nie zostaną one tu omówione.

+
+ +

Kolejność wykonywania kodu JavaScript

+ +

Kiedy przeglądarka napotyka blok kodu JS, wykonuje go po kolei, od góry do dołu. Oznacza to, że musisz być ostrożny, w jakiej kolejności umieszczasz instrukcje. Aby ukazać to zjawisko, wróćmy do bloku kodu z pierwszego przykładu:

+ +
var para = document.querySelector('p');
+
+para.addEventListener('click', updateName);
+
+function updateName() {
+  var name = prompt('Enter a new name');
+  para.textContent = 'Player 1: ' + name;
+}
+ +

Na początku wybieramy pierwszy paragraf (linia 1), dołączamy do niego event listener (linia 3), aby kiedy zostanie on klinięty, blok  updateName() (linie 5- 8) został uruchomiony. Blok  updateName() (ten typ kodu możliwego do użycia ponownie jest nazywany funkcją) pyta użytkownika o nowe imię, po czym wstawia to podane imię do paragrafu, aby uaktualnić widok.

+ +

Jeżeli zamieniłbyś kolejność dwóch pierwszych linii kodu, przestałoby to działać - zamiast tego pojawiłby się błąd w konsoli przeglądarki - TypeError: para is undefined. Oznacza on, że ten obiekt jeszcze nie istnieje, a więc nie możemy dodać do niego event listenera.

+ +
+

Notatka: Jest to bardzo popularny błąd - musisz uważać na to, że obiekty do których istnieją odwołania istnieją przed tym jak cokolwiek z nimi zrobisz.

+
+ +

Kod interpretowany kontra kompilowany

+ +

Mogłeś usłyszeć pojęcie kodu interpretowanego i kompilowanego. JavaScript jest językiem interpretowanym - kod jest wykonywany od góry do dołu i wynik jest zwracany natychmiastowo. Nie musisz transformować kodu w jakąś inną postać przed tym jak przeglądarka go wykona.

+ +

Języki kompilowane są natomiast transformowane (kompilowane) do innej formy przed ich wykonaniem. Dla przykładu C/C++ jest kompilowane do kodu assemblera, który jest następnie wykonywany przez komputer.

+ +

Oba te podejścia mają swoje wady i zalety, które nie zostaną tutaj omówione.

+ +

Kod server-side kontra client-side

+ +

Mogłeś także słyszeć pojęcia server-side i client-side, szczególnie w odniesieniu do tworzenia stron internetowych. Kod client-side jest kodem, który jest wykonywany na komputerze użytkownika - kiedy strona jest wyświetlana, kod client-side jest pobierany, następnie uruchamiany i wyświetlany przez przeglądarkę. W tym module JavaScript mówimy jednoznacznie o client-side JavaScript.

+ +

Kod server-side jest natomiast wykonywany na serwerze, po czym wynik wykonania jest pobierany i wyświetlany przez przeglądarkę. Popularnymi przykładami języków server-side są PHP, Python, Ruby czy ASP.NET. I JavaScript! JavaScript może być także użyty jako język server-side, na przykład w popularnym środowisku Node.js - możesz więcej dowiedzieć się o tym w naszym poradniku Dynamic Websites – Server-side programming

+ +

Słowo dynamiczny jest użyte zarówno do opisania zarówno client-side JavaScript i języki server-side — odnosi się ono do możliwości uaktualnienia widoku strony/aplikacji, aby możliwe było pokazanie różnych rzeczy w różnych okolicznościach; generując nową zawartość w zależności od potrzeb. Kod server-side  dynamicznie generuje nową zawartość na serwerze, na przykład stworzenie nowej tabeli HTML, kiedy client-side JavaScript dynamicznie generuje nową zawartość, na przykład tworząc nową tabelę HTML, wstawiając dane pobrane z serwera, następnie pokazując użytkownikowi tabelę na stronie. Znaczenie słowa jest lekko inne, ale podobne,  w dwóch kontekstach użycia i te dwa podejścia (server-side i client-side) zwykle współpracują ramię w ramię.

+ +

Strona bez dynamicznie uaktualnianej zawartości nazywa się statyczną - zawsze pokazuje to samo.

+ +

W jaki sposób dodać JavaScript do twojej strony?

+ +

JavaScript jest dołączany do strony HTML w podobny sposób jak odbywa się to w wypadku CSS. Podczas gdy CSS używa elementów {{htmlelement("link")}} do dołączania zewnętrznych arkuszów i {{htmlelement("style")}} do dołączenia stylów bezpośrednio w dokumencie, JS potrzebuje tylko jednej rzeczy - elementu {{htmlelement("script")}}. Dowiedzmy się, jak to działa.

+ +

Osadzony JavaScript

+ +
    +
  1. Po pierwsze stwórz lokalną kopię naszego przykładowego pliku apply-javascript.html. Zapisz go gdzieś w katalogu.
  2. +
  3. Otwórz plik w twojej przeglądarce i edytorze tekstu. Ujrzysz prostą stronę z przyciskiem, który można kliknąć.
  4. +
  5. Następnie wejdź do edytora i dodaj następujący kod tuż przed końcem </body>: +
    <script>
    +
    +  // Kod JavaScript będzie tu umieszczony.
    +
    +</script>
    +
  6. +
  7. Teraz dodamy trochę kodu w naszym elemencie  {{htmlelement("script")}}, aby strona wykonała coś bardziej interesującego  — dodaj poniższy kod bezpośrednio pod linią "// Kod JavaScript będzie tu umieszczony.": +
    function stworzParagraf() {
    +  var para = document.createElement('p');
    +  para.textContent = 'Kliknąłeś przycisk!';
    +  document.body.appendChild(para);
    +}
    +
    +var przyciski = document.querySelectorAll('button');
    +
    +for (var i = 0; i < przyciski.length ; i++) {
    +  przyciski[i].addEventListener('click', stworzParagraf);
    +}
    +
  8. +
  9. Zapisz plik i odśwież stronę w przeglądarce - teraz gdy klikniesz przycisk, nowy paragraf jest generowany i umieszczany poniżej.
  10. +
+ +
+

Notatka: Jeżeli przykład nie działa, przejdź go znowu krok po kroku, sprawdzając czy zrobiłeś wszystko poprawnie. Czy zapisałeś swoją lokalną wersję początkowego kodu jako plik .html? Czy dodałeś element  {{htmlelement("script")}} tuż przed zamknięciem  </body>? Czy wprowadziłeś kod JavaScript dokładnie tak, jak podane w przykłądzie?

+ +

JavaScript uwzględnia wielkość liter i jest bardzo drobiazgowy, a więc musisz wprowadzić kod dokładnie tak,  jak zostało to pokazane. W innym wypadku może to nie zadziałać.

+
+ +
+

NotatkaMożesz zobaczyć ten kod także na GitHubie jako apply-javascript-internal.html (zobacz to także na żywo).

+
+ +

Zewnętrzny JavaScript

+ +

Działa to świetnie, ale co by było, gdybyśmy chcieli umieścić nasz kod JavaScript w oddzielnym pliku? Zróbmy to teraz.

+ +
    +
  1. Po pierwsze, stwórz nowy plik w tym samym katalogu, w którym umieściłeś twój plik HTML. Nazwij go script.js  - upewnij się, że ma on rozszerzenie .js, jako że w ten sposób jest rozpoznawany jako JavaScript.
  2. +
  3. Następnie przekopiuj wszystkie skrypty z obecnego {{htmlelement("script")}} i wklej je do pliku .js. Zapisz ten plik. 
  4. +
  5. Teraz zastąp obecny element {{htmlelement("script")}} poniższym kodem: +
    
    +<script src="script.js"></script>
    +
  6. +
  7. Zapisz i odśwież przeglądarkę - powinieneś zobaczyć to samo! Działa to w ten sam sposób, ale teraz mamy kod JavaScript w oddzielnym pliku. Jest to dobra praktyka organizowania kodu i umożliwiania jego ponownego wykorzystania między wieloma plikami HTML. Do tego HTML jest łatwiejszy do czytania bez bloków kodu pomiędzy.
  8. +
+ +

Notatka: Możesz zobaczyć ten kod na GitHubie -  apply-javascript-external.html i script.js (Możesz zobaczyć to także na żywo tu).

+ +

Interpretowanie kodu JavaScript inline

+ +

Czasami napotkasz kawałki prawdziwego kodu JavaScript pomiędzy kodem HTML. Może to wyglądać następująco:

+ +

+function stworzParagraf() {
+  var para = document.createElement('p');
+  para.textContent = 'Kliknąłeś przycisk!';
+  document.body.appendChild(para);
+}
+ +

+<button onclick="createParagraph()">Kliknij mnie!</button>
+ +

Możesz przetestować tę wersję poniżej:

+ +

{{ EmbedLiveSample('Inline_JavaScript_handlers', '100%', 150) }}

+ +

Ten przykład ma dokładnie tę samą funkcjonalność jak dwa poprzednie przykłady, za wyjątkiem tego, że element {{htmlelement("button")}} zawiera w sobie handler onclick . Sprawia to, że funkcja zostanie uruchomiona gdy zostanie wcisnięty przycisk.

+ +

Jednakże nie rób tego! Zanieczyszczanie HTMLa poprzez JavaScript jest uważane za złą praktykę. Jest to również nieefektywne - musiałbyś załączać atrybut onclick="stworzParagraf()"  do każdego przycisku, dla którego miałaby zastosowanie funkcja.

+ +

Używanie czystych konstrukcji JavaScript pozwala na wybranie wszystkich przycisków za pomocą jednej instrukcji. Kod, którego użyliśmy do wykonania tego wygląda następująco:

+ +
var buttons = document.querySelectorAll('button');
+
+for (var i = 0; i < buttons.length ; i++) {
+  buttons[i].addEventListener('click', createParagraph);
+}
+ +

Może to wyglądać na lekko dłuższe niż atrybut  onclick, ale zadziała to dla wszyskich przycisków, bez znaczenia ile ich jest na stronie i ile z nich zostanie dodane bądź usunięte. Kod JS nie musi być zmieniony.

+ +
+

Notatka:  Spróbuj edytować twoją wersję apply-javascript.html i dodaj kilka innych przycisków. Kiedy przeładujesz stronę, odkryjesz, że wszystkie przyciski tworzą paragraf po kliknięciu. Nieźle, co?

+
+ +

Komentarze

+ +

Tak samo jak w HTML i CSS, możliwe jest pisanie komentarzy w kodzie JavaScript. Zostaną one zignorowane przez przeglądarkę - istnieją tylko po to, aby służyć pomocą tym, którzy współpracują przy tym kodzie (i tobie, kiedy po 6 miesiącach wrócić do kodu i nie będziesz pamiętać, co on robi). Komentarze są bardzo użyteczne i powinieneś używać ich często, szczególnie w dużych aplikacjach. Istniają dwa typy komentarzy:

+ + + +

Przykładowo możemy skomentować nasz ostatni kod JavaScript w ten sposób:

+ +

+// Funkcja: tworzy nowy paragraf i dodaje na koniec <body>.
+
+function stworzParagraf() {
+  var para = document.createElement('p');
+  para.textContent = 'Kliknąłeś przycisk!';
+  document.body.appendChild(para);
+}
+
+/*
+  1. Pobierz listę wskaźników na wszystke przyciski na stronie.
+  2. Przejdź po wszystkich przycisków i dodaj każdemu z nich akcję pod klinięcie.
+
+  Kiedy przycisk jest wciśnięty, funkcja stworzParagraf() zostanie wywołana.
+*/
+
+var przyciski = document.querySelectorAll('button');
+
+for (var i = 0; i < buttons.length ; i++) {
+  przyciski[i].addEventListener('click', stworzParagraf);
+}
+ +

Podsumowanie

+ +

A więc proszę bardzo, oto twój pierwszy krok w kierunku świata JavaScript. Zaczęliśmy właśnie teorię, aby przyzwyczaić cię do używania JavaScript i do tego, co z jego pomocą można zrobić. W czasie trwania kursu między innymi zobaczyłeś kilka przykładów i nauczyłeś się, jak JavaScript jest używany z resztą kodu na twojej stronie.

+ +

JavaScript może wyglądać obecnie lekko odstraszająco, ale nie martw się - w tym kursie wprowadzimy cię w jego świat krok po kroku. W kolejnym artykule zanurzysz się w praktycznej częsci, poprzez budowanie twoich własnych przykładów kodu w JavaScript.

+ + + +

{{NextMenu("Learn/JavaScript/First_steps/A_first_splash", "Learn/JavaScript/First_steps")}}

+ +

W tym module

+ + diff --git a/files/pl/learn/javascript/pierwsze_kroki/zmienne/index.html b/files/pl/learn/javascript/pierwsze_kroki/zmienne/index.html new file mode 100644 index 0000000000..d1b55aea20 --- /dev/null +++ b/files/pl/learn/javascript/pierwsze_kroki/zmienne/index.html @@ -0,0 +1,453 @@ +--- +title: Przechowywanie potrzebnych informacji — Zmienne +slug: Learn/JavaScript/Pierwsze_kroki/Zmienne +translation_of: Learn/JavaScript/First_steps/Variables +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/JavaScript/First_steps/What_went_wrong", "Learn/JavaScript/First_steps/Math", "Learn/JavaScript/First_steps")}}
+ +

Po przeczytaniu kilku ostatnich artykułów, powinieneś juz wiedzieć czym jest JavaScript, co może dla Ciebie zrobić, jak używać go razem z innymi technologiami webowymi, oraz jak jego główne cechy wyglądają z wysokiego poziomu. W tym artykule, przejdziemy do fundamentów, poznamy jak wygląda pracowa z najbardziej podstawowym konceptem JavaScript - Zmiennymi. 

+ +
+ + + + + + + + + + + + +
Wymagania:Podstawowa znajomość komputera, podstawowe rozumienie HTML i CSS, oraz rozumienie czym jest JavaScript.
Cel:Zapoznać się z podstawami dotyczącymi zmiennych w JavaScript.
+ +

Potrzebne Narzędzia

+ +

Podczas tego artykułu, będziesz wpisywać linie kodu aby sprawdzić swoje rozumienie zawartości. Jeśli używasz przeglądarki desktopowej, najlepszym miejscem na wpisanie próbnego kodu jest konsola JavaScript Twojej przeglądarki (zobacz: What are browser developer tools aby zasięgnąć szczegółowych informacji, jak otworzyć to narzędzie).

+ +

Niemniej jednak, zapewniliśmy również prostą konsolę JavaScript wbudowaną w poniższą stronę, abyś mógł wpisywać kod w przypadku gdy nie używasz przeglądarki z łatwym dostępem do konsoli JavaScript lub konsola wewnątrz strony jest dla Ciebie wygodniejsza.

+ +

Czym jest zmienna?

+ +

Zmienna jest to kontener na wartość, jak liczba, którą możemy użyć w sumowaniu lub łańcuch znaków, który możemy wykorzystać jako część zdania. Ale jedną rzeczą, która wyróżnia zmienne jest to, że ich wartość może ulec zmianie. Popatrzmy na prosty przykład:

+ +
<button>Press me</button>
+ +
const button = document.querySelector('button');
+
+button.onclick = function() {
+  let name = prompt('What is your name?');
+  alert('Hello ' + name + ', nice to see you!');
+}
+ +

{{ EmbedLiveSample('What_is_a_variable', '100%', 50, "", "", "hide-codepen-jsfiddle") }}

+ +

W tym przykładzie, naciśnięcie przycisku uruchamia kilka linijek kodu. Pierwsza linia powoduje pojawienie się okna na ekranie, które pyta o imię, a następnie przechowuje wartość w zmiennej. Druga linia wyświetla wiadomość powitalną zawierajaca imię pobrane ze zmiennej.

+ +

Aby zrozumieć dlaczego jest to tak przydatne, pomyślmy o tym jak stworzylibyśmy ten przykład, nie używając zmiennej. W efekcie wygladałoby to mniej więcej tak:

+ +
var name = prompt('What is your name?');
+
+if (name === 'Adam') {
+  alert('Hello Adam, nice to see you!');
+} else if (name === 'Alan') {
+  alert('Hello Alan, nice to see you!');
+} else if (name === 'Bella') {
+  alert('Hello Bella, nice to see you!');
+} else if (name === 'Bianca') {
+  alert('Hello Bianca, nice to see you!');
+} else if (name === 'Chris') {
+  alert('Hello Chris, nice to see you!');
+}
+
+// ... i tak dalej ...
+ +

Możesz nie rozumieć w pełni składni której tu używamy (jeszcze!), ale powinieneś być w stanie zrozumieć o co chodzi - jeśli nie moglibyśmy używać zmiennych, musielibyśmy implementować gigantyczny blok kodu, który sprawdzałby jakie było wpisane imię, a następnie wyświetlał odpowiednią wiadomość dla tego imienia. Oczywiście jest to całkowicie nieefektywne (kod jest znacznie większy, nawet dla tylko pięciu możliwych wyborów) i po prostu nie działałoby - nie mógłbyś przecież przechowywać wszystkich możliwych wyborów.

+ +

Zmienne po prostu mają sens i jak tylko nauczysz się więcej o JavaScript, używanie ich stanie się dla Ciebie czyms naturalnym.

+ +

Kolejna rzecz, która wyróżnia zmienne jest to, że mogą one zawierać prawie wszystko - nie tylko łańcuchy znaków i liczby. Zmienne moga również zawierać skomplikowane dane, a nawet całe funkcje do robienia niesamowitych rzeczy. Nauczysz sie o tym więcej, w ciągu kursu.  

+ +
+

Uwaga: Mówimy że zmienne zawieraja wartości. Jest to ważne rozróżnienie. Zmienne nie są wartościami same w sobie; są kontenerami na wartości. Możesz je sobie wyobrazić jako kartonowe pudełka, w których możesz przechowywać rzeczy.

+
+ +

+ +

Deklarowanie zmiennej

+ +

W celu użycia zmiennej, na początku musisz ją stworzyć - a dokładniej nazywa się to deklarowaniem zmiennej. Aby to zrobić, wpisujemy słowo kluczowe  var albo let a następnie nazwę, którą chcesz żeby miała Twoja zmienna:

+ +
let myName;
+let myAge;
+ +

Tutaj tworzymy dwie zmienne, które nazywają się myName i myAge. Spróbuj wpisać teraz te linie w konsoli Twojej przeglądarki lub w poniższej konsoli (możesz otworzyć otworzyć tą konsolę w oddzielnej karcie lub oknie jeśli wolisz). Nastepnie spróbuj stworzyć zmienną (lub dwie) z wybranymi przez Ciebie nazwami.

+ + + +

{{ EmbedLiveSample('Hidden_code', '100%', 300, "", "", "hide-codepen-jsfiddle") }}

+ +
+

Uwaga: W JavaScript, wszystkie instrukcje kodu powinny być zakończone średnikiem (;) — Twój kod może działać poprawnie dla pojedynczych linii, ale prawdopodobnie nie będzie, jeśli napiszesz wiele linii kodu razem. Spróbuj wejść w nawyk wpisywania go.

+
+ +

Możesz przetestować czy te wartości istnieją teraz w środowisku wykonawczym wpisując po prostu nazwę zmiennej, np.

+ +
myName;
+myAge;
+ +

Obecnie nie mają one wartości; są pustymi kontenerami. Kiedy wpisujesz nazwy zmiennych, powinieneś otrzymać zwróconą wartość undefined. Natomiast jesli one nie istnieją, dostaniesz informację o błedzie — spróbuj wpisać:

+ +
scoobyDoo;
+ +
+

Uwaga: Nie pomyl zmiennej, która istnieje, ale nie ma zdefiniowanej wartości, ze zmienną, która wcale nie istnieje — to dwie zupełnie inne rzeczy. Wracając do porównania z pudełkami, które widziałeś wyżej — jeśli zmienna nie istnieje, to znaczy, że nie mamy żadnego kartonowego pudełka, do którego moglibyśmy wrzucić zawartość.
+ Natomiast zmienna bez zdefiniowanej zawartości to po prostu puste pudełko. 

+
+ +

Inicjalizacja zmiennej

+ +

Kiedy już zadeklarujesz zmienną, możesz ją zainicjować nadając wartość. Robi się to, wpisując nazwę zmiennej, a następnie znak równości (=), poprzedzajacy wartość, którą chcesz jej nadać. Na przykład:

+ +
myName = 'Chris';
+myAge = 37;
+ +

Spróbuj teraz wrócić do konsoli i wpisać te linie. Powinieneś zobaczyć wartość, którą przypisałeś do zmiennej zwróconą w konsoli aby potwierdzić to w obu przypadkach. Znowu, możesz zwrócić wartości zmiennych po prostu wpisujac ich nazwy w konsoli — spróbuj ponownie:

+ +
myName;
+myAge;
+ +

Możesz zadeklarować i zainicjować zmienną w tym samym czasie, tak jak tu:

+ +
let myDog = 'Rover';
+ +

Tak prawdopodobnie będziesz robił najcześciej, jako że jest to szybsze niż wykonywanie dwóch czynności w dwóch oddzielnych linijkach.

+ +

Róznice między var i let

+ +

Możesz się teraz zastanawiać "Po co nam dwa słowa kluczowe do deklarowania zmiennych? Po co nam var i let?".

+ +

Powód jest historyczny. Kiedy JavaScript został stworzony, mogliśmy korzystać tylko z var. Takie deklarowanie zmiennych działa, ale niesie ze sobą kilka niechcianych błędów.  Stworzono więc let, który jest obecnym standardem w języku JavaScript (to właśnie z niego powinniśmy korzystać). Główna róznica polega na tym, że let naprawia błędy, które mogliśmy napotkać podczas korzystania z var.

+ +

A couple of simple differences are explained below. We won't go into all the differences now, but you'll start to discover them as you learn more about JavaScript (if you really want to read about them now, feel free to check out our let reference page).

+ +

For a start, if you write a multiline JavaScript program that declares and initializes a variable, you can actually declare a variable with var after you initialize it and it will still work. For example:

+ +
myName = 'Chris';
+
+function logName() {
+  console.log(myName);
+}
+
+logName();
+
+var myName;
+ +
+

Note: This won't work when typing individual lines into a JavaScript console, just when running multiple lines of JavaScript in a web document.

+
+ +

This works because of hoisting — read var hoisting for more detail on the subject.

+ +

Hoisting no longer works with let. If we changed var to let in the above example, it would fail with an error. This is a good thing — declaring a variable after you initialize it makes for confusing, harder to understand code.

+ +

Secondly, when you use var, you can declare the same variable as many times as you like, but with let you can't. The following would work:

+ +
var myName = 'Chris';
+var myName = 'Bob';
+ +

But the following would throw an error on the second line:

+ +
let myName = 'Chris';
+let myName = 'Bob';
+ +

You'd have to do this instead:

+ +
let myName = 'Chris';
+myName = 'Bob';
+ +

Again, this is a sensible language decision. There is no reason to redeclare variables — it just makes things more confusing.

+ +

For these reasons and more, we recommend that you use let as much as possible in your code, rather than var. There is no reason to use var, unless you need to support old versions of Internet Explorer with your code (it doesn't support let until version 11; the modern Windows Edge browser supports let just fine).

+ +
+

Note: We are currently in the process of updating the course to use let rather than var. Bear with us!

+
+ +

Updating a variable

+ +

Once a variable has been initialized with a value, you can change (or update) that value by simply giving it a different value. Try entering the following lines into your console:

+ +
myName = 'Bob';
+myAge = 40;
+ +

An aside on variable naming rules

+ +

You can call a variable pretty much anything you like, but there are limitations. Generally, you should stick to just using Latin characters (0-9, a-z, A-Z) and the underscore character.

+ + + +
+

Note: You can find a fairly complete list of reserved keywords to avoid at Lexical grammar — keywords.

+
+ +

Good name examples:

+ +
age
+myAge
+init
+initialColor
+finalOutputValue
+audio1
+audio2
+ +

Bad name examples:

+ +
1
+a
+_12
+myage
+MYAGE
+var
+Document
+skjfndskjfnbdskjfb
+thisisareallylongstupidvariablenameman
+ +

Error-prone name examples:

+ +
var
+Document
+
+ +

Try creating a few more variables now, with the above guidance in mind.

+ +

Variable types

+ +

There are a few different types of data we can store in variables. In this section we'll describe these in brief, then in future articles, you'll learn about them in more detail.

+ +

So far we've looked at the first two, but there are others.

+ +

Numbers

+ +

You can store numbers in variables, either whole numbers like 30 (also called integers) or decimal numbers like 2.456 (also called floats or floating point numbers). You don't need to declare variable types in JavaScript, unlike some other programming languages. When you give a variable a number value, you don't include quotes:

+ +
let myAge = 17;
+ +

Strings

+ +

Strings are pieces of text. When you give a variable a string value, you need to wrap it in single or double quote marks, otherwise, JavaScript will try to interpret it as another variable name.

+ +
let dolphinGoodbye = 'So long and thanks for all the fish';
+ +

Booleans

+ +

Booleans are true/false values — they can have two values, true or false. These are generally used to test a condition, after which code is run as appropriate. So for example, a simple case would be:

+ +
let iAmAlive = true;
+ +

Whereas in reality it would be used more like this:

+ +
let test = 6 < 3;
+ +

This is using the "less than" operator (<) to test whether 6 is less than 3. As you might expect, it will return false, because 6 is not less than 3! You will learn a lot more about such operators later on in the course.

+ +

Arrays

+ +

An array is a single object that contains multiple values enclosed in square brackets and separated by commas. Try entering the following lines into your console:

+ +
let myNameArray = ['Chris', 'Bob', 'Jim'];
+let myNumberArray = [10, 15, 40];
+ +

Once these arrays are defined, you can access each value by their location within the array. Try these lines:

+ +
myNameArray[0]; // should return 'Chris'
+myNumberArray[2]; // should return 40
+ +

The square brackets specify an index value corresponding to the position of the value you want returned. You might have noticed that arrays in JavaScript are zero-indexed: the first element is at index 0.

+ +

You'll learn a lot more about arrays in a future article.

+ +

Objects

+ +

In programming, an object is a structure of code that models a real-life object. You can have a simple object that represents a box and contains information about its width, length, and height, or you could have an object that represents a person, and contains data about their name, height, weight, what language they speak, how to say hello to them, and more.

+ +

Try entering the following line into your console:

+ +
let dog = { name : 'Spot', breed : 'Dalmatian' };
+ +

To retrieve the information stored in the object, you can use the following syntax:

+ +
dog.name
+ +

We won't be looking at objects any more for now — you can learn more about those in a future module.

+ +

Dynamic typing

+ +

JavaScript is a "dynamically typed language", which means that, unlike some other languages, you don't need to specify what data type a variable will contain (numbers, strings, arrays, etc).

+ +

For example, if you declare a variable and give it a value enclosed in quotes, the browser will treat the variable as a string:

+ +
let myString = 'Hello';
+ +

It will still be a string, even if it contains numbers, so be careful:

+ +
let myNumber = '500'; // oops, this is still a string
+typeof myNumber;
+myNumber = 500; // much better — now this is a number
+typeof myNumber;
+ +

Try entering the four lines above into your console one by one, and see what the results are. You'll notice that we are using a special operator called typeof — this returns the data type of the variable you pass into it. The first time it is called, it should return string, as at that point the myNumber variable contains a string, '500'. Have a look and see what it returns the second time you call it.

+ +

Constants in JavaScript

+ +

Many programming languages have the concept of a constant — a value that once declared can never be changed. There are many reasons why you'd want to do this, from security (if a third party script changed such values it could cause problems) to debugging and code comprehension (it is harder to accidently change values that shouldn't be changed and mess things up).

+ +

In the early days of JavaScript, constants didn't exist. In modern JavaScript, we have the keyword const, which lets us store values that can never be changed:

+ +
const daysInWeek = 7;
+const hoursInDay = 24;
+ +

const works in exactly the same way as let, except that you can't give a const a new value. In the following example, the second line would throw an error:

+ +
const daysInWeek = 7;
+daysInWeek = 8;
+ +

Summary

+ +

By now you should know a reasonable amount about JavaScript variables and how to create them. In the next article, we'll focus on numbers in more detail, looking at how to do basic math in JavaScript.

+ +

{{PreviousMenuNext("Learn/JavaScript/First_steps/What_went_wrong", "Learn/JavaScript/First_steps/Maths", "Learn/JavaScript/First_steps")}}

+ +

In this module

+ + diff --git a/files/pl/learn/server-side/django/index.html b/files/pl/learn/server-side/django/index.html new file mode 100644 index 0000000000..1eb4d61586 --- /dev/null +++ b/files/pl/learn/server-side/django/index.html @@ -0,0 +1,70 @@ +--- +title: Django Web Framework (Python) +slug: Learn/Server-side/Django +tags: + - Beginner + - CodingScripting + - Intro + - Learn + - NeedsTranslation + - Python + - Server-side programming + - TopicStub + - django +translation_of: Learn/Server-side/Django +--- +
{{LearnSidebar}}
+ +

Django is an extremely popular and fully featured server-side web framework, written in Python. This module shows you why Django is one of the most popular web server frameworks, how to set up a development environment, and how to start using it to create your own web applications.

+ +

Prerequisites

+ +

Before starting this module you don't need to have any knowledge of Django. Ideally, you would need to understand what server-side web programming and web frameworks are by reading the topics in our Server-side website programming first steps module.

+ +

A general knowledge of programming concepts and Python is recommended, but is not essential to understanding the core concepts.

+ +
+

Note: Python is one of the easiest programming languages for novices to read and understand. That said, if you want to understand this module better, there are numerous free books and tutorials available on the Internet to help you out (new programmers might want to check out the Python for Non Programmers page on the python.org wiki).

+
+ +

Guides

+ +
+
Django introduction
+
In this first Django article we answer the question "What is Django?" and give you an overview of what makes this web framework special. We'll outline the main features, including some advanced functionality that we won't have time to cover in detail in this module. We'll also show you some of the main building blocks of a Django application, to give you an idea of what it can do before you set it up and start playing.
+
Setting up a Django development environment
+
Now that you know what Django is for, we'll show you how to set up and test a Django development environment on Windows, Linux (Ubuntu), and macOS — whatever common operating system you are using, this article should give you what you need to be able to start developing Django apps.
+
Django Tutorial: The Local Library website
+
The first article in our practical tutorial series explains what you'll learn, and provides an overview of the "local library" — an example website we'll be working through and evolving in subsequent articles.
+
Django Tutorial Part 2: Creating a skeleton website
+
This article shows how you can create a "skeleton" website project as a basis, which you can then go on to populate with site-specific settings, urls, models, views, and templates.
+
Django Tutorial Part 3: Using models
+
This article shows how to define models for the LocalLibrary website — models represent the data structures we want to store our app's data in, and also allow Django to store data in a database for us (and modify it later on). It explains what a model is, how it is declared, and some of the main field types. It also briefly shows a few of the main ways you can access model data.
+
Django Tutorial Part 4: Django admin site
+
Now that we've created models for the LocalLibrary website, we'll use the Django Admin site to add some "real" book data. First we'll show you how to register the models with the admin site, then we'll show you how to login and create some data. At the end we show some ways in which you can further improve the presentation of the admin site.
+
Django Tutorial Part 5: Creating our home page
+
We're now ready to add the code to display our first full page — a home page for the LocalLibrary that shows how many records we have of each model type and provides sidebar navigation links to our other pages. Along the way we'll gain practical experience in writing basic URL maps and views, getting records from the database, and using templates.
+
Django Tutorial Part 6: Generic list and detail views
+
This tutorial extends our LocalLibrary website, adding list and detail pages for books and authors. Here we'll learn about generic class-based views, and show how they can reduce the amount of code you have to write for common use cases. We'll also go into URL handling in greater detail, showing how to perform basic pattern matching.
+
Django Tutorial Part 7: Sessions framework
+
This tutorial extends our LocalLibrary website, adding a session-based visit-counter to the home page. This is a relatively simple example, but it does show how you can use the session framework to provide persistent behaviour for anonymous users in your own sites.
+
Django Tutorial Part 8: User authentication and permissions
+
In this tutorial we'll show you how to allow users to login to your site with their own accounts, and how to control what they can do and see based on whether or not they are logged in and their permissions. As part of this demonstration we'll extend the LocalLibrary website, adding login and logout pages, and user- and staff-specific pages for viewing books that have been borrowed.
+
Django Tutorial Part 9: Working with forms
+
In this tutorial we'll show you how to work with HTML Forms in Django, and in particular the easiest way to write forms to create, update, and delete model instances. As part of this demonstration we'll extend the LocalLibrary website so that librarians can renew books, and create, update, and delete authors using our own forms (rather than using the admin application).
+
Django Tutorial Part 10: Testing a Django web application
+
As websites grow they become harder to test manually — not only is there more to test, but, as the interactions between components become more complex, a small change in one area can require many additional tests to verify its impact on other areas. One way to mitigate these problems is to write automated tests, which can easily and reliably be run every time you make a change. This tutorial shows how to automate unit testing of your website using Django's test framework.
+
Django Tutorial Part 11: Deploying Django to production
+
Now you've created (and tested) an awesome LocalLibrary website, you're going to want to install it on a public web server so that it can be accessed by library staff and members over the Internet. This article provides an overview of how you might go about finding a host to deploy your website, and what you need to do in order to get your site ready for production.
+
Django web application security
+
Protecting user data is an essential part of any website design. We previously explained some of the more common security threats in the article Web security — this article provides a practical demonstration of how Django's built-in protections handle such threats.
+
+ +

Assessments

+ +

The following assessment will test your understanding of how to create a website using Django, as described in the guides listed above.

+ +
+
DIY Django mini blog
+
In this assessment you'll use some of the knowledge you've learned from this module to create your own blog.
+
diff --git a/files/pl/learn/server-side/express_nodejs/development_environment/index.html b/files/pl/learn/server-side/express_nodejs/development_environment/index.html new file mode 100644 index 0000000000..f525a69f31 --- /dev/null +++ b/files/pl/learn/server-side/express_nodejs/development_environment/index.html @@ -0,0 +1,411 @@ +--- +title: Przygotowanie środowiska programisty Node +slug: Learn/Server-side/Express_Nodejs/development_environment +tags: + - Express + - Node + - Początkujący + - Wprowadzenie + - środowisko programisty +translation_of: Learn/Server-side/Express_Nodejs/development_environment +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Server-side/Express_Nodejs/Introduction", "Learn/Server-side/Express_Nodejs/Tutorial_local_library_website", "Learn/Server-side/Express_Nodejs")}}
+ +

+ +

Gdy już wiesz do czego służy Express, nadszedł czas, żeby pokazać Ci jak przygotować i przetestować środowisko programistyczne Node/Express w różnych systemach operacyjnych: Windows, Linux (Ubuntu) i macOS. Jakiegokolwiek systemu byś nie używał, w tym artykułe przygotujemy wszystko co Ci będzie potrzebne, by zacząć tworzyć aplikacje w Express.

+ +

+ + + + + + + + + + + + +
Wymagania: +

Umiejętność pracy z terminalem lub w trybie wiersza poleceń. Umiejętność instalacji oprogramowania w systemie operacyjnym Twojego komputera, który będzie służył do programowania.

+
Cel:Przygotowanie środowiska programisty do tworzenia aplikacji w Express(4.x) na Twoim komputerze.
+ +

Przegląd środowiska programisty Express

+ +

Instalacja środowisk Node i Express jest stosunkowo prosta. W tej sekcji dokonamy przeglądu wszystkich potrzebnych narzędzi, przedstawimy kilka prostych metod instalacji Node (Express także) w systemach operacyjnych Ubuntu, macOS i Windows. Na koniec przetestujemy przygotowane środowisko.

+ +

Co to jest środowisko programisty Express?

+ +

Środowisko do tworzenia aplikacji Express wymaga zainstalowania pakietu Node.js, menadżera pakietów NPM oraz opcjonalnie pakietu Express Application Generator.

+ +

Środowisko Node i menadżer NPM mogą zostać zainstalowane razem z różnych źódeł. Mogą być to pakiety binarne, pakiety instalacyjne, menadżery pakietów systemu operacyjnego lub  pliki źródłowe (co zostanie pokazane w następnych sekcjach). Sam Express jest instalowany przez NPM, podobnie jak pozostałe zależności aplikacji webowej (inne biblioteki w tym silnik szablonów, sterowniki baz danych, moduły warstwy pośredniej do autentykacji, obsługi plików statycznych itd.)

+ +

Przy pomocy NPM możemy też zainstalować Express Application Generator, który jest bardzo użytecznym narzędziem do generowania szkieletu aplikacji webowej w architekturze MVC. Oczywiście jest to narzędzie opcjonalne i nie jest wymagane, aby tworzyć aplikacje webowe przy pomocy Express o podobnej architekturze. Będziemy  niego korzystać, ponieważ ułatwia trudne początki w pracy nad aplikacją i promuje modułową strukturę aplikacji.

+ +
+

Uwaga: W odróżnieniu od pozostalych frameworków, środowisko programisty nie zawiera oddzielnego serwera WWW do celów deweloperskich. W Node/Express aplikacja sama tworzy i uruchamia własny serwer internetowy!

+
+ +

Potrzebne będą także inne narzędzia, które są typowymi składnikami środowiska programisty, jak edytory tekstu czy środowisko IDE do edycji kodu, systemy kontroli wersji np. Git, dzięki którym możemy bezpiecznie zarządzać wersjami kodu. Zakładamy, że posiadasz już tego typu narzędzia zainstalowane (w szczególności edytor tekstu).

+ +

Jakie systemy operacyjne są wspierane?

+ +

Node można uruchomić w systemie Windows, macOS, wszelkim odmianach systemu Linux, czy kontenerach typu Docker (pełna lista znajduje się na stronie Node.js Downloads). Praktycznie każdy komputer ma wystarczającą wydajność do uruchomienia Node w trakcie tworzenia aplikacji. Express jest uruchamiane w środowisku Node, co oznacza, że może działać na dowolnej platformie obsługującej Node.

+ +

W tym artykule wyjaśnimy proces instalacji w systemie Windows, maxOS i dystrybucji Ubuntu systemu Linux.

+ +

Z jakie wersji Node/Express możemy skorzystać?

+ +

Środowisko Node wystepuje w wielu wersjach - najnowsze zawierają poprawki błędów, wsparcie dla najnowszych wersji standardu ECMASript (JavaScript) oraz lepsze API. 

+ +

Zasadniczo powinieneś korzystać z najbardziej aktualnej wersji LTS (ang. long-term supported - o długim okresie wsparcia) ponieważ jest bardziej stabilna od bieżących wersji, przy zachowaniu w miarę aktualnej funkcjonalności (i jest nadal aktywnie utrzymywana). Z wersji najbardziej aktualnych możesz korzystać, gdy chcesz mieć dostęp do najnowszych funkcji, których brak w wersji LTS.

+ +

W przypadku pakietu Express powinieneś zawsze korzystać z najnowszej wersji

+ +

A co z bazami i pozostałymi zależnościami?

+ +

Pozostałe potrzebne elementy aplikacji, jak sterowniki baz danych, generatory widoków, moduły autentykacji itd. są importowane do środowiska aplikacji za pomocą menadżera NPM. Zajmiemy się nim w późniejszych artykułach dotyczących tworzenia aplikacji.

+ +

Instalacja Node

+ +

W tej sekcji zajmiemy się najłatwiejszym sposobem instalacji Node.js w wersji LTS dla różnych systemów operacyjnych: Ubuntu Linux 18.04, maxOS i Windows 10. 

+ +
+

Wskazówka: Jeśli korzystasz z innego systemu operacyjnego lub po prostu chcesz poznać inne możliwości  swojej platformy zobacz Installing Node.js via package manager (nodejs.org).

+
+ +

macOS

+ +

Instalacja Node wraz z NPM w systemach Windows i macOS jest dość łatwa, wystarczy użyć instalatora:

+ +
    +
  1. Pobierz wymagany instalator: +
      +
    1. wejdź na stronę https://nodejs.org/en/
    2. +
    3. Wybierz przycisk z napisem "Recommended for most users", którym pobierzesz najnowszą wersję LTS.
    4. +
    +
  2. +
  3. Zainstaluj Node podwójnie klikając w pobrany plik i postępuj zgodnie z pojawiającymi instrukcjami.
  4. +
+ +

Windows

+ +

Najbardziej wskazaną metoda instalacji Node i NPM w systemie Windows jest skorzystanie z możliwości podsystemu Linux v2 (WSL2), co wymaga zainstalowania  niejawnego  programu testów systemu Windows (zobacz Set up your Node.js development environment with WSL 2).

+ +

Po zainstalowaniu podsytemu Linux możesz zainstalować Ubuntu 18.04 jako system dla środowiska Node.js. Gdy już WSL2 i Ubuntu zostały zainstalowane, możesz kontynuować proces instalacji Node.js zgodnie z opisem w punkcie dotyczącym instalacji Node na Ubutu 18.04.

+ +

Ubuntu 18.04

+ +

Najbardziej aktualną wersję LTS środowiska Node 12.x najłatwiej jest zainstalować korzystając z menadżera pakietów pobranego z binarnego repozytorium systemu Ubuntu. Można to zrobić dwoma poleceniami w Twoim terminalu:

+ +
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
+sudo apt-get install -y nodejs
+
+ +
+

Uwaga: Nie instaluj wprost z normalnych repozytoriów Ubuntu, ponieważ zawierają one bardzo stare wersje Node.

+
+ +
    +
+ +

Testowanie Node.js i NPM po instalacji

+ +

Testujemy poprawność instalacji wpisując polecenie "version" w wierszu poleceń. Jeśli instalacja się powiodła to zostanie wyśiwetlony numer aktualnej wersji:

+ +
> node -v
+v10.16.0
+ +

Razem ze środowiskiem Node.js powinien zostać zainstalowany także menadżer NPM. Poprawność instalacji możemy przetestować  ten sam sposób:

+ +
> npm -v
+6.9.0
+ +

Przeprowadzimy teraz test działania środowiska tworząc prosty serwer z użyciem wyłącznie pakietów znajdujących w Node, który wygeneruje dokument z napisem "Hello World":

+ +
    +
  1. Skopuj poniższy tekst do pliku o nazwie hellonode.js. Kod wykorzystuje wyłącznie funkcje Node (nie zawiera żadnych funkcji Express) i jest napisany z wykorzystaniem  składni ES6: + +
    //Load HTTP module
    +const http = require("http");
    +const hostname = '127.0.0.1';
    +const port = 3000;
    +
    +//Create HTTP server and listen on port 3000 for requests
    +const server = http.createServer((req, res) => {
    +
    +  //Set the response HTTP header with HTTP status and Content type
    +  res.statusCode = 200;
    +  res.setHeader('Content-Type', 'text/plain');
    +  res.end('Hello World\n');
    +});
    +
    +//listen for request on port 3000, and as a callback function have the port listened on logged
    +server.listen(port, hostname, () => {
    +  console.log(`Server running at http://${hostname}:${port}/`);
    +});
    +
    + +

    W kodzie znajduje się import modułu "http", który to moduł jest wykorzystany do utworzenia serwera (createServer()) nasłuchującego na porcie 3000. Skrypt wysyła na konsolę komunikat z informacją pod jakim adresem URL działa nasz serwer. Funkcja tworząca serwer (createServer()) pobiera argument w postaci definicji funkcji zwrotnej, która zostanie wywołana w chwili odebrania żądania. W funkcji zwrotnej tworzymy prostą odpowiedź z kodem statusu HTTP 200 ("OK") i zwykłym tekstem "Hello World".

    + +
    +

    Uwaga:  Nie przejmuj się, jeśli nie rozumiesz tego kodu. Wszystko wyjaśnimy ze szczegółami, gdy zaczniemy korzystać z Express. 

    +
    +
  2. +
  3. Uruchom serwer przechodząć najpierw w terminalu do katalogu z plikiem  hellonode.js  a następnie wydając polecenie node z nazwą skryptu: +
    >node hellonode.js
    +Server running at http://127.0.0.1:3000/
    +
    +
  4. +
  5. W przeglądarce wpisz URL http://127.0.0.1:3000 . Jeśli wszystko pracuje poprawnie w przegladarce powinieneś zobaczyć napis "Hello World".
  6. +
+ +

Korzystanie z NPM

+ +

Drugim ważnym narzędziem po samym Node jest menadżer pakietów NPM. Głównym jego zadaniem jest pobieranie pakietów (bibliotek JavaScript), których aplikacja potrzebuje w trakcie tworzenia, testowania i pracy w środowisku produkcyjnym. Możesz też go potrzebować do uruchamiania testów i narzędzi wykorzystywanych w trakcie programowania. 

+ +
+

Uwaga:  Z punktu widzenia Node, Express jest tylko jednym z wielu pakietów, których potrzebujesz w swoim kodzie i musisz zainstalować przy pomocą NPM.

+
+ +

Możesz pobierać każdy z wymaganych modułów wpisując polecenia dla NPM do każdego modułu. W praktyce o wiele wygodniejszym rozwiązaniem jest zarządzanie zależnościami poprzez specjalny plik tekstowy o nazwie package.json. W pliku tym znajduje się lista wszystkich potrzebnych modułów wymaganych przez tworzony pakiet JavaScript, a także nazwa pakietu, wersja, opis, początkowy plik do uruchomienia, zależności produkcyjne, zależności deweloperskie, wersja środowiska Node, w której pakiet może pracować itd. Plik package.json powinien zawierać wszystkie informacje wymagane przez NPM, dzięki którym możliwe jest pobranie i uruchomienie Twojej aplikacji (jeśli piszesz bibliotekę wykorzystywaną przez innych użytkowników musisz skorzystać z definicji opisującej załadowanie pakietu do repozytorium npm).

+ +

Dodawanie zależności

+ +

W kolejnych krokach opiszemy jak możesz użyć NPM do pobrania pakietu, zapisania go w zależnościach projektu i oznaczenia go jako wymaganego przez naszą aplikację Node.

+ +
+

Uwaga: Pokażemy teraz instrukcje  pobrania i instalacji pakietu Express. Później poznamy jak ten pakiet i pozostałe  zostaną automatycznie wyspecyfikowane w projekcie, gdy utworzymy go modułem Express Application Generator. Ta sekcja jest po to, abyś mógł zrozumieć jak działa sam NPM i jakie korzyści daje wykorzystanie generatora aplikacji.

+
+ +
    +
  1. Zaczniemy od utworzenia katalogu na Twoją nową aplikację.Potem musimy do niego wejść: +
    mkdir myapp
    +cd myapp
    +
  2. +
  3. +

    Poleceniem init narzędzia npm utworzymy plik package.json dla naszej aplikacji. Pojawią się pytania o kilka istotnych rzeczy, jak nazwa i wersja Twojej aplikacji, nazwę pliku wejściowego aplikacji (domyślnie jest to index.js). Na razie zaakceptujemy ustawienia domyślne:

    + +
    npm init
    + +

    Jeśli zajrzysz do pliku package.json, to zobaczysz zakceptowane ustawienia domyślne wraz z licencją na końcu.

    + +
    {
    +  "name": "myapp",
    +  "version": "1.0.0",
    +  "description": "",
    +  "main": "index.js",
    +  "scripts": {
    +    "test": "echo \"Error: no test specified\" && exit 1"
    +  },
    +  "author": "",
    +  "license": "ISC"
    +}
    +
    +
  4. +
  5. W kolejnym kroku zainstalujemy moduł Expess w katalogu myapp co spowoduje dodanie tego modułu jako zależności w naszym pliku package.json
  6. +
  7. +
    npm install express
    + +

    Możemy teraz zobaczyć dodaną na końcu w pliku package.json sekcję, która dołączy do naszej aplikacji pakiet Express.

    + +
    {
    +  "name": "myapp",
    +  "version": "1.0.0",
    +  "description": "",
    +  "main": "index.js",
    +  "scripts": {
    +    "test": "echo \"Error: no test specified\" && exit 1"
    +  },
    +  "author": "",
    +  "license": "ISC",
    +  "dependencies": {
    +    "express": "^4.16.4"
    +  }
    +}
    +
    +
  8. +
  9. Kolejnym krokiem po dołączeniu zależności do projektu, jest zaimportowanie pakietu w pliku źródłowym przy pomocy wywołania funkcji require(). Utwórz teraz plik index.js w katalogu aplikacji myapp i wpisz do niego poniższą zawartość: +
    const express = require('express')
    +const app = express();
    +
    +app.get('/', (req, res) => {
    +  res.send('Hello World!')
    +});
    +
    +app.listen(8000, () => {
    +  console.log('Example app listening on port 8000!')
    +});
    +
    + +

    Utworzony kod to odpowiednik aplikacji typu "Hello World!" w Express. Najpierw importujemy pakiet "express" funkcją require(), a następnie tworzymy serwer (app), który nasłuchuje żądań na porcie 8000 i wysyła komunikaty na konsolę z informacją o porcie pracującego serwera. Funkcja app.get() realizuje obsługę żądań wyłacznie typu GET skierowanych do głównej ścieżki URL aplikacji ('/'), na które generuje odpowiedź z komunikatem "Hello World!".

    +
  10. +
  11. Możesz uruchomić serwer wywołując w terminalu polecenie node z parametrem w postaci nazwy naszego skryptu: +
    >node index.js
    +Example app listening on port 8000
    +
    +
  12. +
  13. Otwórz w przeglądarce stronę z URL (http://127.0.0.1:8000/). Jeśli wszystko pracuje poprawnie powinieneś zobaczyć stronę z napisem "Hello World!".
  14. +
+ +

Zależności środowiska deweloperskiego

+ +

Jeśli jakiś pakiet wykorzystujesz tylko podczas tworzenia aplikacji to powinieneś go dodać jako zależność deweloperską - "development dependency" (to spowoduje, że użytkownicy Twojej aplikacji (lub pakietu) nie będą instalować takiego pakietu w wersji produkcyjnej). Na przykład, gdy chcesz skorzystać z popularnej biblioteki eslint (jest to tzw. linter) to powinieneś wywołać NPM następująco:

+ +
npm install eslint --save-dev
+ +

W efekcie dostaniesz nowy wpis w pliku  package.json Twojej aplikacji:

+ +
  "devDependencies": {
+    "eslint": "^4.12.1"
+  }
+
+ +
+

Uwaga: "Lintery" to narzędzia do statycznej analizy kodu aplikacji służące do wykrywania i raportowania fragmentów, które nie są zgodne/lub są zgodne z dobrymi praktykami tworzenia oprogramowania.

+
+ +

Uruchamianie zadań

+ +

Oprócz dodawania i pobierania zależności, w pliku package.json możesz też definiować tzw. nazwane skrypty. Przy pomocy NPM możesz je później uruchamiać poleceniem run-script. Jest to typowe rozwiązanie stosowane do automatyzacji takich zadań jak uruchamianie testów, fragmentów tworzonej aplikacji czy budowania ciągu uruchamianych narzędzi (np. uruchamianie narzędzi minimalizujących objętość kodu JavaScript, zmiany rozmiaru obrazów, LINT, analizatory kodu itp.).

+ +
+

Uwaga:  Możesz też korzystać z innych narzędzi do tego celu jak Gulp lub Grunt .

+
+ +

Przykładem może być skrypt do uruchomienia narzędzia eslint (jako zależność deweloperska) w postaci bloku dodanego do pliku package.json (zakładamy, że żródła naszej aplikacji znajdują się w katalogu /src/js):

+ +
"scripts": {
+  ...
+  "lint": "eslint src/js"
+  ...
+}
+
+ +

Wyjaśnijmy teraz co dodaliśmu w bloku "scripts": jest to polecenie, które musiałbyś wpisać w oknie terminala, żeby uruchomić eslint dla wszystkich plików JavaScript w katalogu src/js.  Aby móć później się odwołać do tego polecenia nazwaliśmy go skrótem lint

+ +

Teraz możemy uruchomić eslint wywołując NPM z naszym skrótem:

+ +
npm run-script lint
+# OR (using the alias)
+npm run lint
+
+ +

Choć wydaje się, że wywołanie utworzonego skrótu nie jest krótsze od oryginalnego polecenia, to pamiętaj, że możesz w skryptach zawrzeć znacznie dłuższe polecenia, jak i całe ciągi poleceń. Możesz też stworzyć jeden skrypt, który uruchamia wszystkie testy.

+ +

Instalacja generator aplikacji Express - Express Application Generator

+ +

Express Application Generator to narzędzie do generowania szkieletu aplikacji Express. Zaczniemy od zainstalowania generatora przy pomocy NPM z flagą -g:

+ +
npm install express-generator -g
+ +
+

Uwaga: Może pojawić się konieczność wstawienia na początku wiersza polecenia sudo w systemach Ubuntu lub macOS. Flaga -g powoduje zainstalowanie pakietu w trybie globalnym, ktory pozwala na wywołanie go z dowolnego katalogu.

+
+ +

Żeby utworzyć aplikację "helloworld" z domyślnymi ustawieniami, wejdź do katalogu, w którym chcesz ją utworzyć i uruchom polecenie:

+ +
express helloworld
+ +
+

Uwaga:  Podczas instalacji możesz podać bibliotekę szablonów i wiele innych ustawień. Wpisz polecenie help żeby zobaczyć wszystkie możliwości:

+ +
express --help
+
+
+ +

NPM będzie tworzył nową aplikację Express w podfolderze bieżącego katalogu wypisując na konsoli komunikaty obrazujące postęp instalacji. Po zakończeniu zobaczysz komunikat z poleceniem instalującym zależności Node i uruchamiające aplikację.

+ +
+

Uwaga: Nowa aplikacja posiada własny plik package.json w swoim głównym katalogu. Możesz go otworzyć i sprawdzić zainstalowane zależności, w tym Express i bibliotekę szablonów Jade:

+ +
{
+  "name": "helloworld",
+  "version": "0.0.0",
+  "private": true,
+  "scripts": {
+    "start": "node ./bin/www"
+  },
+  "dependencies": {
+    "cookie-parser": "~1.4.3",
+    "debug": "~2.6.9",
+    "express": "~4.16.0",
+    "http-errors": "~1.6.2",
+    "jade": "~1.11.0",
+    "morgan": "~1.9.0"
+  }
+}
+
+
+ +

Zainstaluj wszystkie zależności do swojej aplikacji przy pomocy NPM:

+ +
cd helloworld
+npm install
+
+ +

Następnie uruchom aplikację (polecenia różnią się nieco dla systemów Widnows i Lunux/macOS):

+ +
# Run the helloworld on Windows with Command Prompt
+SET DEBUG=helloworld:* & npm start
+
+# Run the helloworld on Windows with PowerShell
+SET DEBUG=helloworld:* | npm start
+
+# Run helloworld on Linux/macOS
+DEBUG=helloworld:* npm start
+
+ +

Polecenie DEBUG jest bardzo przydatne, gdyż uruchamia rejestrowanie zdarzeń, które możemy zobaczyć poniżej:

+ +
>SET DEBUG=helloworld:* & npm start
+
+> helloworld@0.0.0 start D:\Github\expresstests\helloworld
+> node ./bin/www
+
+  helloworld:server Listening on port 3000 +0ms
+ +

Otwórz przeglądarkę i wpisz adres http://127.0.0.1:3000/, a zobaczysz domyślną stronę powitalną aplikacji Express.

+ +

Express - Generated App Default Screen

+ +

Więcej o wygenerowanej aplikacji dowiemy się w artykule o generowaniu szkieletu aplikacji.

+ + + +

Podsumowanie

+ +

Masz przygotowane środowisko do tworzenia i uruchamiania aplikacji webowych w środowisku Node. Poznałeś działanie menadżera NPM, dowiedziałeś się jak zaimportować pakiet Express do swojej aplikacji i jak utworzyć szkielet aplikacji przy pomocy generatora aplikacji Express a potem go uruchomić.

+ +

W następnym artykule zaczniemy prawdziwe szkolenie, w trakcie którego stworzymy kompletną aplikację webową korzystając z Node.js i dostępnych w nim narzędzi.

+ +

Zobacz także

+ + + +

{{PreviousMenuNext("Learn/Server-side/Express_Nodejs/Introduction", "Learn/Server-side/Express_Nodejs/Tutorial_local_library_website", "Learn/Server-side/Express_Nodejs")}}

+ +

W tym module

+ + diff --git a/files/pl/learn/server-side/express_nodejs/index.html b/files/pl/learn/server-side/express_nodejs/index.html new file mode 100644 index 0000000000..3cb01fe7ae --- /dev/null +++ b/files/pl/learn/server-side/express_nodejs/index.html @@ -0,0 +1,70 @@ +--- +title: Tworzenie aplikacji z użyciem framework'u Express (Node.js/JavaScript) +slug: Learn/Server-side/Express_Nodejs +tags: + - Express + - Express.js + - JavaScript + - Node + - Początkujący + - Wprowadzenie + - node.js +translation_of: Learn/Server-side/Express_Nodejs +--- +
{{LearnSidebar}}
+ +

Express to popularny framework webowy stworzony w języku JavaScript działający w środowisku uruchomieniowym Node.js. W tym module znajdziesz kluczowe zalety framework'u, opis jak możesz przygotować środowisko deweloperskie, typowe metody tworzenia aplikacji webowych oraz proces ich instalacji i uruchamiania.

+ +

Wymagania wstępne

+ +

Zanim zaczniesz ten moduł powinieneś wiedzieć czym jest programowanie po stronie serwera i czym są frameworki webowe. Najlepiej, gdybyś przeczytał nasze wprowadzadzenie Server-side website programming first steps. Znajomość JavaScript i podstawowych zasad programowania na pewno Ci pomogą zrozumieć ten materiał, ale nie są konieczne do zrozumienia ogólnej koncepcji tworzenia aplikacji webowych.

+ +
+

Uwaga:  Wiele przydatnych materiałów do nauki JavaScript'u znajdziesz w rozdziale the context of client-side development: JavaScriptJavaScript Guide, JavaScript BasicsJavaScript (learning). Środowisko Node.js posługuje się językiem JavaScript, tym samym, który działa w Twojej przeglądarce, ale posiada dodatkowe API zapewniające pracę w środowisku poza przeglądarką  (np. daje możliwość uruchamiania serwerów HTTP, ma dostęp do systemu plikowego, ale brak mu API do pracy z przeglądarką i strukturą DOM).

+ +

W tym przewodniku znajdziesz informacje o tym jak pracować z Node.js i Express, ale wiele wartościowych materiałów  jest w Internecie i książkach - część z nich jest podlinkowana w wątkach How do I get started with Node.js (StackOverflow) i What are the best resources for learning Node.js? (Quora).

+
+ +

Przewodnik

+ +
+
Wprowadzenie do Express/Node
+
Znajdziesz tutaj odpowiedzi na pytania "Czym jest Node?" i "Co to jest Express?", oraz zrozumiesz co czyni framework Express wyjątkowym. W dalszej części zostały przedstawione najistotniejsze możliwości wraz z głównymi elementami potrzebnymi do budowy aplikacji webowych w Express (choć jeszcze nie będziesz miał przygotowanego środowiska do tworzenia i testowania takich aplikacji).
+
Przygotowanie środowiska programisty do pracy z Node (Express)
+
Gdy już wiesz jakie możliwości oferuje Express, pokażemy Ci jak przygotować środowisko deweloperskie Node/Express dla systemów Windows, Linux(Ubuntu) i Mac OS X. Bez względu na system, którego używasz, w tej części powinieneś poznać wszystko to co będzie Ci potrzebne do tworzenia aplikacji w Express.
+
Szkolenie z Express - część 1: aplikacja webowa "Biblioteka"
+
W pierwszym artykule naszego cyklu praktycznych tutoriali wyjaśnimy Ci czego się nauczysz podczas tworzenia przykładowej aplikacji internetowej "Biblioteka". W kolejnych artykułach będziemy nad nią pracować i ją rozwijać.
+
Szkolenie z Express - część 2: Tworzymy szkielet witryny
+
Artykuł zawiera opis jak stworzyć "szkielet" projektu naszej witryny, który będziesz mógł wypełnić takimi elemenatami jak: ścieżki do podstron witryny, szablony/widoki i bazy danych.
+
Szkolenie z Express - część 3: Korzystamy z bazy danych (Mongoose)
+
W artykule zapoznasz się z krótkim omówieniem baz danych wykorzystywanych w technologii Node/Express. W dalszej części opisujemy jak wykorzystać Mongoose do zapisu danych naszej "Biblioteki" w tym jak zadeklarować schematy i modele bazy, jakie są główne typy danych i metody ich walidacji. W końcowej cześci zobaczysz jakimi metodami możesz operować na danych za pośrednictwem modeli.
+
Szkolenie z Express - część 4: Rutery i kontrolery
+
W tej części cyklu zdefiniujemy ścieżki URL (z kodem obsługi takiego adresu) do wszystkich podstron naszej aplikacji, a z każdym takim URL skojarzymy funkcję (wstępnie będą to atrapy funkcji), która zostanie wywołana, gdy nadejdzie do niego żądanie. Po zakończeniu będziemy dysponować modułową strukturą kodu routingu, co zapewni nam łatwą rozbudowę aplikacji, gdy w następnych artykułach będziemy kod uzupełniać o rzeczywiste funkcje. Po tej części powinieneś dobrze rozumieć metodę tworzenia modularnego routingu w Express.
+
Szkolenie z Express - część 5: Prezentacja danych biblioteki
+
Jesteśmy teraz gotowi dodać do naszej aplikacji strony, które będą wyświetlać książki i pozostałe dane naszej "Biblioteki". Wśród nich znajdzie się strona domowa z informacją ile rekordów danego modelu znajduje się w bazie oraz strony ze szczegółami każdego modelu. Zdobędziesz cenne doświadczenie w pobieraniu danych z bazy i tworzeniu szablonów strony.
+
Szkolenie z Express - część 6: Praca z formularzami
+
Artykuł przeprowadzi Cię przez proces tworzenia formularzy HTML, które będą współpracować z Express. Skorzystamy z preprocesoram PUG, aby stworzyć formularze do tworzenia, modyfikacji i usuwania dokumentów w bazie danych naszej aplikacji.
+
Szkolenie z Express - część 7: Wdrożenie do produkcji
+
Masz już gotową super aplikację webową "Biblioteka" i zamierzasz ją zainstalować na publicznym serwerze WWW i w ten sposób stanie się dostępna dla pracowników biblioteki i użytkowników przez Internet. W artykule przedstawiono jak znaleźć odpowiedni hosting dla aplikacji i co powinienś zrobić aby była gotowa do działania w środowisku produkcyjnym.
+
+ +

Zobacz także

+ +
+
Instalacji aplikacji "Biblioteka" w PWS/Cloud Foundry
+
Artykuł przedstawia praktyczną demonstrację instalacji aplikacji "Biblioteka" w serwisie Pivotal Web Services PaaS cloud, który jest w pełni funkcjonalnym, o otwarty kodzie, odpowiednikiem Heroku. PWS/Cloud Foundry jest warte sprawdzenia jeśli szukasz alternatywy dla Herooku lub po prostu chcesz spróbować czegoś innego.
+
+ +

Zapotrzebowanie na kolejne samouczki

+ +
+

To koniec atrykułów szkoleniowych (jak na razie). Jeśli chcesz poszerzać bazę materiałow, to poniżej znaduje się spis tematów, które warto opracować:

+ + +
diff --git a/files/pl/learn/server-side/express_nodejs/introduction/index.html b/files/pl/learn/server-side/express_nodejs/introduction/index.html new file mode 100644 index 0000000000..4c4049f67f --- /dev/null +++ b/files/pl/learn/server-side/express_nodejs/introduction/index.html @@ -0,0 +1,538 @@ +--- +title: Wprowadzenie do Express/Node +slug: Learn/Server-side/Express_Nodejs/Introduction +tags: + - Początkujacy Express Node +translation_of: Learn/Server-side/Express_Nodejs/Introduction +--- +
{{LearnSidebar}}
+ +
{{NextMenu("Learn/Server-side/Express_Nodejs/development_environment", "Learn/Server-side/Express_Nodejs")}}
+ +
+
Znajdziesz tutaj odpowiedzi na pytania "Czym jest Node?" i "Co to jest Express?", oraz zrozumiesz co czyni framework Express wyjątkowym. W dalszej części zostały przedstawione najistotniejsze możliwości wraz z głównymi elementami potrzebnymi do budowy aplikacji webowych w Express (choć jeszcze nie będziesz miał przygotowanego środowiska do tworzenia i testowania takich aplikacji).
+
+ + + + + + + + + + + + +
Wymagania:Podstawowe umiejętności w posługiwaniu się komputerem. Rozumienie ogólnych zasad programowania po stronie serwera,  w szczególności mechanizmów interakcji między klientem a serwerem aplikacji webowych.
Cel:Zapoznanie się z frameworkiem Express, jego współpracą ze środowiskiem Node, jego funkcjonalnością i głównymi elementami aplikacji tworzonymi w tym frameworku.
+ +

Wprowadzenie do Node

+ +

Node (lub bardziej formalnie Node.js) jest wieloplatformowym oprogramowaniem o otwartym kodzie, które pozwala deweloperom na tworzenie wszelkiego rodzaju oprogramowania w języku JavaScript pracującym po stronie serwera. Jest to środowisko uruchomieniowe, które działa poza przeglądarką, współpracujące bezpośrednio z systemem operacyjnym. W ten sposób środowisko Node udostępnia swoim aplikacjom API systemu operacyjnego, w tym dostęp do systemu plików, bibliotek systemowych czy uruchomionych procesów, w tym serwerów HTTP.

+ +

Z perspektywy tworzenia oprogramowania po stronie serwera, Node ma szereg zalet:

+ + + +

Możesz teraz wykorzystać Node.js do stworzenia prostego serwera stron WWW posługując się pakietem HTTP.

+ +

Hello Node.js

+ +

W poniższym przykładzie utworzymy serwer WWW, który będzie oczekiwał dowolnego rodzaju żądań HTTP skierowanych pod URL http://127.0.0.1:8000/ - gdy żądanie zostanie odebrane, skrypt wyśle odpowiedź z łańcuchem "Hello World". Jeśli masz już zainstalowane Node, możesz wykonać poniższe kroki, aby wykonać przykład:

+ +
    +
  1. Otwórz terminal (w Windows otwórz wiersz poleceń - cmd.exe).
  2. +
  3. Utwórz katalog w miejscu, którym chcesz zapisać program, na przykład test-node, a następnie wejdź do nie niego wykonując polecenie w terminalu:
  4. +
+ +
cd test-node
+ +
    +
  1. Korzystając z ulubionego edytora tekstu, utwórz plik o nazwie hello.js i wklej do niego poniższy kod:
  2. +
+ +
// Load HTTP module
+const http = require("http");
+
+const hostname = "127.0.0.1";
+const port = 8000;
+
+// Create HTTP server
+const server = http.createServer((req, res) => {
+
+   // Set the response HTTP header with HTTP status and Content type
+   res.writeHead(200, {'Content-Type': 'text/plain'});
+
+   // Send the response body "Hello World"
+   res.end('Hello World\n');
+});
+
+// Prints a log once the server starts listening
+server.listen(port, hostname, () => {
+   console.log(`Server running at http://${hostname}:${port}/`);
+})
+
+ +
    +
  1. Zapisz plik do katalogu, który utworzyłeś powyżej w punkcie 2.
  2. +
  3. Wróć do terminalu i wpisz następujące polecenie:
  4. +
+ +
node hello.js
+ +

W ostatnim kroku otwórz przeglądarkę WWW i wpisz adres http://localhost:8000 ; powinieneś zobaczyć napis "Hello World" w lewy górnym rogu pustej strony.

+ +

Frameworki do budowy aplikacji webowych

+ +

Inne typowe zadania związane z tworzeniem aplikacji internetowych nie są bezpośrednio wspierane przez samo Node.js. Jeśli chcesz obsługiwać osobno każdą z metod HTTP (np. GET, POST, DELETE itp.), lub obsługiwać żądania w różnych ścieżkach URL („routes”), lub wysyłać statyczne dokumenty (jako pliki HTML) lub korzystać z szablonów do dynamicznego tworzenia odpowiedzi, to będziesz musiał napisać kod samemu. Albo zamiast wymyślać na nowo koło możesz użyć frameworka webowego do tworzenia aplikacji!

+ +

Wprowadzenie do Express

+ +

Express to jeden z najpopularniejszych frameworków webowych, który jest także wykorzystywany jako biblioteka w wielu innych popularnych frameworkach Node. Dostarcza następujących mechanizmów:

+ + + +

Ponieważ Express jest dość minimalistyczny, dlatego deweloperzy stworzyli wiele kompatybilnych z nim pakietów pracujących w warstwie pośredniej, które rozwiązują prawie każdy problem pojawiający się w aplikacjach webowych. Są dostępne biblioteki do zarządzania ciasteczkami, do pracy w trybie sesji, do logowania użytkowników, do parsowania: parametrów w URL, danych przesyłanych w żądaniach POST, nagłówków zabezpieczeń i wiele innych. Pełną listę bibliotek rozwijanych przez zespół programistów Express znajdziesz na stronie Express Middleware (która zawiera także popularne pakiety firm trzecich).

+ +
+

Uwaga:  Ta elastyczność Express ma dwa różne oblicza. Jest wiele  pakietów warstwy pośredniej, które rozwiązują prawie każdy problem lub wymaganie, ale ich opracowanie jest czasem nie lada wyzwaniem. Nie ma także "jedynie słusznej" struktury aplikacji, wiele dostępnych w Internecie przykładów nie jest optymalnych, lub prezentują tylko niewielki wycinek tego, co musisz zrobić, aby zbudować aplikację webową.

+
+ +

Skąd się wziął Node i Express?

+ +

Pierwsza edycja Node została wydana, tylko dla systemu Linux, w 2009 roku. Menadżer pakietów NPM pojawił się w 2010, a natywne wsparcie dla systemu Windows dodano w 2012 roku. Bieżąca edycja LTS Node ma wersję v12.13.1, gdy najnowsza wersja Node ma numer 13.2.0. Jest to tylko krótki wycinek z bogatej historii; jeśli chcesz się więcej dowiedzieć zajrzyj do Wikipedii.

+ +

Express został pierwotnie wydany w listopadzie 2010 i obecnie jest dostępny w wersji 4.17.1. Możesz sprawdzić dziennik zmian, aby uzyskać informacje o zmianach w bieżącej wersji, a GitHub, aby uzyskać bardziej szczegółowe informacje o historii wersji.

+ +

Jak popularne są Node i Express?

+ +

Popularność danego frameworku jest bardzo ważna, gdyż jest wskaźnikiem, czy będzie rozwijany i nadal będzie dostępna dokumentacja, dodatkowe biblioteki i wsparcie techniczne.

+ +

Oczywiście nie ma miarodajnego wskaźnika popularności frameworków po stronie serwera (choć są strony takie jak Hot Frameworks, które próbują oszacować popularność danego framworku na podstawie liczby projektów na GitHub i liczby pytań w serwisie StackOverflow). Lepszym pytaniem jest to, czy Node i Express są wystarczająco popularne, aby nie spotkał ich los niszowych lub zapomnianych platform. Czy mogą liczyć na dalszy rozwój. Czy możesz liczyć na pomoc, gdy będziesz jej potrzebował? Czy istniej możliwość dostania pracy jeśli nauczysz się platformy Express.

+ +

Opierając się na liczbie znanych firm korzystających z Express, liczbie osób wnoszących wkład w kod źródłowy oraz liczbie osób zapewniających zarówno bezpłatne, jak i płatne wsparcie, można potwierdzić, że Express jest popularnym frameworkiem!

+ +

Czy Express jest restrykcyjny?

+ +

Frameworki webowe często określają siebie jako restrykcyjne lub elastyczne.

+ +

Frameworki restrykcyjne to takie, które prezentują jeden „właściwy sposób” na wykonanie określonego zadania. Najczęściej wspierają szybki rozwój w określonej dziedzinie (rozwiązywanie problemów określonego typu), ponieważ ten właściwy sposób realizacji zadania jest zwykle dobrze rozpoznany i udokumentowany. Są jednak znaczniej mniej elastyczne w rozwiązywaniu problemów poza obszarem swojej głównej domeny i nie oferują dużych możliwości w kwestii wyboru komponentów czy rozwiązań, których można użyć.

+ +

Przeciwieństwem są frameworki elastyczne, które mają znacznie mniejsze ograniczenia dotyczące wyboru połączenia komponentów w celu realizacji aplikacji, a nawet tego, które komponenty należy zastosować. Ułatwiają programistom na korzystanie z najodpowiedniejszych dla nich narzędzi do wykonania określonego zadania, aczkolwiek kosztem jest konieczność samodzielnego szukania takich komponentów.

+ +

Express jest elastyczny. Możesz korzystać z dowolnego kompatybilnego oprogramowania w warstwie pośredniej, włączając je w dowolnym miejscu całego łańcucha obsługi żądań. Możesz tworzyć aplikację z kodem w jednym pliku lub podzielić kod na wiele plików, korzystając z dowolnej struktury katalogów. Czasami możesz odnieść wrażenie, że masz zbyt wiele możliwości!

+ +

Jak wygląda kod Express?

+ +

Tradycyjna aplikacja webowa przetwarzająca dane czeka na żądania HTTP nadchodzące z przeglądarki (lub innego programu klienta). W chwili, gdy żądanie nadejdzie, aplikacja określa akcję, która musi być podjęta. O tym jaką akcję należy wybrać decydują wzorzec zawarty w URL i ewentualne informacje zawarte w żądaniu POST lub GET. W zależności od żądania aplikacja może odczytać lub zapisać informacje w bazie danych, może też wykonywać inne zadania. Gdy aplikacja zakończy akcję wysyła odpowiedź do przeglądarki klienta. Najczęściej tą odpowiedzią jest dynamicznie tworzony dokument HTML zawierający dane dla przeglądarki klienta. Dokument taki tworzony jest na podstawie szablonu HTML, w którym wyróżnione są miejsca na dane.

+ +

W kolejnych sekcjach wyjaśnimy typowe elementy kodu, z którymi się spotkasz podczas pracy z Express i Node.

+ +

Hello World Express

+ +

Na początek zajmiemy się nieśmiertelnym przykładem Hello World (przedyskutujemy każdy fragment kou w tej i następnych sekcjach).

+ +
+

Wskazówka: Jeśli już masz zainstalowany Node i Express (lub zainstalujesz oba według wskazówek zawartych w następnym artykule), zapisz poniższy kod w pliku app.js a następnie uruchom go wpisując w wierszu poleceń:

+ +

node ./app.js

+
+ +
var express = require('express');
+var app = express();
+
+app.get('/', function(req, res) {
+  res.send('Hello World!');
+});
+
+app.listen(3000, function() {
+  console.log('Example app listening on port 3000!');
+});
+
+ +

W pierwszych dwóch wierszach importujemy przez require() moduł o nazwie express a następnie tworzymy Aplikację Express. Zwyczajowo obiekt aplikacji został nazwany app i zawiera metody do ustalania trasy (routing) żądań, konfiguracji warstwy pośredniej, renderowania widoków w HTML, rejestracji silnika szablonów i konfiguracji ustawień aplikacji, które kontrolują jej zachowanie (np. tryb środowiska, czy definicje routingu są wrażliwe na wielkość znaków itd.)

+ +

W środkowej części kodu (trzy kolejne wiersze zaczynające  się od app.get) znajduje się definicja trasy. Metoda określa funkcję zwrotną, która zostanie wywołana, gdy pojawi się żądanie GET HTTP skierowane do ścieżki ('/') względem katalogu głównego strony. Argumentami funkcji zwrotnej są obiekty żądania (request) i odpowiedzi (response). W ciele funkcji została wywołana metoda send()  odpowiedzi, która wysyła napis "Hello World!" do klienta.

+ +

Ostatni blok odpowiada za uruchomienie serwera, który nasłuchuje na porcie 3000 i drukuje komunikaty logów na konsoli. Gdy serwer już działa możesz otworzyć przeglądarkę i po wpisaniu adresu localhost:3000 powinieneś zobaczyć odpowiedź serwera.

+ +

Import i tworzenie modułów

+ +

Modułem jest biblioteka lub plik JavaScript, który można zaimportować do innego pliku źródłowego przy użyciu funkcji require()Express jest też modułem, podobnie jak biblioteki funkcji warstwy pośredniej czy baz danych.

+ +

W kodzie poniżej widać, jak importujemy moduł przez nazwę, podobnie jak zaimportowaliśmy framework Exress w przykładzie. Najpierw wywołujemy funkcję require() z podaną nazwą modułu ('express'), a potem wykorzystujemy zwrócony przez import obiekt, żeby utworzyć aplikację Express. Mając obiekt aplikacji możemy korzystać z jego właściwości i metod.

+ +
var express = require('express');
+var app = express();
+
+ +

Oczywiście możesz też tworzyć własne moduły, które moga być importowane w ten sam sposób.

+ +
+

Wskazówka:  Dobrze, żebyś tworzył własne moduły, wtedy Twoja aplikacja będzia złożona z osobnych, łatwo zarządzanych części. Trzymanie całego kodu aplikacji w jednym pliku tworzy trudny do utrzymania i zrozumienia monolit. Korzystanie z modułów pomoże Ci w kontrolowaniu przestrzeni nazw, czyli na zewnątrz modułu będą dostępne tylko te zmienne, które jawnie z niego eksportujesz.

+
+ +

Obiekty, które mają być dostępne na zewnątrz modułu, muszą być przez Ciebie wskazane za pomocą dodanej właściwości obiektu exports. Przykładowy poniżej moduł, zapisany w pliku square.js, exportuje dwie metody: area()perimeter()

+ +
exports.area = function(width) { return width * width; };
+exports.perimeter = function(width) { return 4 * width; };
+
+ +

Możemy zaimportować moduł funkcją require() i wywołać wyeksportowane metody:

+ +
var square = require('./square'); // Here we require() the name of the file without the (optional) .js file extension
+console.log('The area of a square with a width of 4 is ' + square.area(4));
+ +
+

Wskazówka:  Możesz też wskazać moduł podając ścieżkę absolutną do jego pliku (lub nazwy, tak jak to już robiliśmy).

+
+ +

Jeśli chcesz wyeksportować cały obiekt jednym przypisaniem (zamiast eksportować osobno każdą jego metodę lub pole) to przypisz ten obiekt do module.exports (możesz również tak zrobić, aby obiekt główny eksportu był konstruktorem lub inną funkcją):

+ +
module.exports = {
+  area: function(width) {
+    return width * width;
+  },
+
+  perimeter: function(width) {
+    return 4 * width;
+  }
+};
+
+ +
+

Wskazówka:  Możesz traktować  exports jak skrót do module.exports w obrębie danego modułu. Faktycznie, exports  jest właśnie zmienną zainicjalizowana  wartością module.exports zanim modułe zostanie ewaluowany. Ta wartość jest referencją do obiektu (w tym przypadku pustego). Oznacza to, że exports przechowuje referencję do tego samego obiektu, którego odwołuje się module.exports.  To oznacza także, że przypisując do obiektu exports inną wartość przestaje on mieć związek z module.exports.

+
+ +

Więcej informacji o modułach znajdziesz w dokumentacji API Node: Modules.

+ +

Asynchroniczne API

+ +

Kod JavaScript częściej wykorzystuje asynchroniczne wykonywanie operacji, których czas może być znaczny. Synchroniczne wykonywanie kodu zakłada, że następna operacja nie może się zacząć, dopóki poprzednia się nie zakończy. Przykładem może być wywołanie synchroniczne dwóch funkcji wysyłających komunikaty do konsoli, które powinny się wyświetlić w kolejności: "First, Second":

+ +
console.log('First');
+console.log('Second');
+
+ +

Przeciwieństwem jest kod wykonywany asynchronicznie, w którym kolejna operacja jest uruchamiana, i zanim się zakończy, wywołana jest następna. Gdy operacja się zakończy, mechanizm API wywołuje dodatkowe działanie. Poniższy przykład wyświetli na konsoli komunikaty "Second, First", ponieważ najpierw wywoływana jest funkcja setTimeout(), która po uruchomieniu odliczania czasu, natychmiast wraca i jest wywoływana następna funkcja.

+ +
setTimeout(function() {
+   console.log('First');
+   }, 3000);
+console.log('Second');
+
+ +

Korzystanie z nieblokującego asynchronicznego API jest znacznie ważniejsze w Node niż w przeglądarce, ponieważ Node jest jednowątkowym, sterowanym zdarzeniowo, środowiskiem uruchomieniowym. "Jednowątkowe" oznacza, że wszystkie żądania skierowane do serwera są wykonywane w tym samym wątku (czyli nie są uruchamiane w oddzielnych procesach, które mogłyby się wykonywać równocześnie). Taki model jest bardzo wydajny pod względem szybkość wykonywania i wykorzystania zasobów serwera, ale powoduje on, że jeśli zostanie wywołana synchronicznie funkcja, której wykonanie trwa długo, to zablokuje ona nie tylko bieżące żądanie, ale także wszystkie pozostałe obsługiwane w tym czasie przez aplikację.

+ +

Jest kilka metod do sygnalizowania, że asynchroniczna operacja się zakończyła. Najczęściej wykorzystywana jest rejestracja funkcji zwrotnej podczas wywoływania asynchronicznego. Funkcja zwrotna zostanie wywołana, gdy asynchroniczna operacja się zakończy. Z takiego podejścia skorzystano w przykładzie powyżej.

+ +
+

Uwaga: Korzystanie z funkcji zwrotnych może prowadzić do bałaganu. Jeśli zaczniesz tworzyć sekwencję kolejnych wywołań operacji asynchronicznych, aby wykonały się we właściwym porządku, to w rezultacie powstaje wiele poziomów zagnieżdżonych wywołań. Jest to znany problem o nazwie "callback hell" (piekło funkcji callback).  Skutki problemu można złagodzić stosując dobre praktyki (zobacz http://callbackhell.com/), wykorzystując odpowiednie biblioteki jak np. async, lub możliwości standardu ES6 jak np. Promises.

+
+ +
+

Uwaga:  Funkcje zwrotne w Node i Express stosują wspólną konwencję, według której pierwszym argumentem funkcji zwrotnej jest wartość błędu. Drugim argumentem jest obiekt zawierający wszystkie dane zwrócone po prawidłowym zakończeniu funkcji wywołującej. Blog The Node.js Way - Understanding Error-First Callbacks (fredkschott.com) zawiera dobre wyjaśnienie, dlaczego ta konwencja jest tak użyteczna.

+
+ +

Tworzenie procedur obsługi tras

+ +

W naszej przykładowej aplikacji Hello World zdefiniowaliśmy funkcję obsługującą żądania GET protokołu HTTP skierowane do katalogu głównego strony '/').

+ +
app.get('/', function(req, res) {
+  res.send('Hello World!');
+});
+
+ +

Funkcja zwrotna podczas wywołania otrzymuje obiekty żądania i odpowiedzi jako argumenty. W naszym przypadku funkcja po prostu wywołuje send() na obiekcie odpowiedzi ,żeby wysłać napis "Hello World!". Nie jest to jedyna metoda formułowania odpowiedzi na żądanie. Istnieje wiele metod kończących cykl procesu przetwarzania żądania w odpowiedzi np. możesz wywołać metodę json(), żeby wysłać odpowiedź w formacie JSON lub sendFile(), aby wysyłać plik.

+ +
+

JavaScript tip:  W funkcji zwrotnej obiekty żądania i odpowiedzi mogą mieć dowolne nazwy, ważne abyś zapamiętał, że podczas wywołania tej funkcji zawsze pierwszym argumentem jest obiekt żądania, a drugim obiekt odpowiedzi. Jednak jest głęboki sens w tym, aby oba argumenty nazwać zgodnie z ich przeznaczeniem.

+
+ +

Obiekt aplikacji Express posiada odpowiednie metody do definiowania funkcji obsługujących pozostałe rodzaje żądań HTTP :

+ +

checkout()copy()delete()get()head()lock()merge()mkactivity(), mkcol(), move(), m-search(), notify(), options(), patch(), post(), purge(), put(), report(), search(), subscribe(), trace(), unlock(), unsubscribe().

+ +

Jest  też jedna specjalna metoda app.all(), która jest wywoływana dla każdego żądania HTTP. Wykorzystuje się ją do instalowania funkcji warstwy pośredniej obsługujących wybraną trasę dla dowolnych żądań. Poniższy przykład (pochodzący z dokumentacji Express) ilustruje przypadek funkcji obsługującej wszystkie żądania (o dowolnej metodzie HTTP) skierowane do ścieżki  /secret (funkcja pochodzi z modułu http).

+ +
app.all('/secret', function(req, res, next) {
+  console.log('Accessing the secret section ...');
+  next(); // pass control to the next handler
+});
+ +

Metody definiujące trasy są wywoływane na podstawie dopasowania do określonych wzorców w URL jak i wydobywają pewne części z URL i przekazują je jako parametry do funkcji obsługi żądania (jako atrybuty żądania).

+ +

Często przydatne jest grupowanie procedur obsługi tras dla określonej części witryny i uzyskiwanie do nich dostępu za pomocą wspólnego przedrostka ścieżki (np. strona z Wiki może mieć wszystkie trasy związane z wiki w jednym pliku i mieć do nich dostęp w postaci ścieżki z prefiksem /wiki/). Za realizacje grupowania odpowiedzialny jest obiekt express.Router.  Wracając do przykładu Wiki: wszystkie trasy możemy umieścić w module wiki.js i wyeksportować je do obiektu Router , jak w przykładzie poniżej:

+ +
// wiki.js - Wiki route module
+
+var express = require('express');
+var router = express.Router();
+
+// Home page route
+router.get('/', function(req, res) {
+  res.send('Wiki home page');
+});
+
+// About page route
+router.get('/about', function(req, res) {
+  res.send('About this wiki');
+});
+
+module.exports = router;
+
+ +
+

Uwaga: Dodawanie tras do obiektu Router jest jak dodawanie tras do obiektu app (jak pokazaliśmy to już wcześniej).

+
+ +

Dołączamy utworzony router (nasz plik wiki.js) do głównego pliku aplikacji przez require()  i włączamy go do warstwy pośredniej aplikacji wywołując metodę use(). To spowoduje, że nasza aplikacja będzie teraz obsługiwać dwie ściezki: /wiki/ i /wiki/about/.

+ +
var wiki = require('./wiki.js');
+// ...
+app.use('/wiki', wiki);
+ +

W dalszych częściach cyklu pokażemy więcej możliwości konfigurowania ścieżek, w szczególności korzystanie z obiektu  Router w rozdziale Routery i kontrolery.

+ +

Warstwa pośrednia

+ +

Warstwa pośrednia (middleware) jest bardzo istotną częścią aplikacji Express. Wykonuje ona wiele operacji począwszy od obsługi plików statycznych po kompresje odpowiedzi HTTP. Jeśli funkcje obsługi żądań są ostatnim etapem, w którym wysyłamy odpowiedź do klienta, to funkcje middleware po wykonaniu operacji na żądaniu lub odpowiedzi wywołują następną funkcje w łańcuchu, którą może być kolejna funkcja warstwy pośredniej lub końcowa funkcja obsługi żądania. O kolejnością wywołań funkcji middleware decyduje programista.

+ +
+

Uwaga: Warstwa pośrednia może wykonywać dowolne operacje, wykonywać dowolny kod, dokonywać zmian w żądaniu lub odpowiedzi a także może zakończyć cały cykl przetwarzania żądania w odpowiedź. Jeśli funkcja middleware nie kończy przetwarzania to musi wywołać metodę next(), która przekazuje sterowanie do następnej funkcji warstwy (w przeciwnym przypadku żądanie zostanie zawieszone). 

+
+ +

Większość aplikacji korzysta z funkcji warstwy pośredniej firm trzecich, bo upraszcza to proces projektowania aplikacji webowych, w których korzystamy z ciasteczek, sesji, autentykacji użytkowników, danych w formacie JSON, logowania itd. Lista dostępnych pakietów znajduje się na stronie Express middleware (łącznie z pakietami firm trzecich). Więcej pakietów jest dostępnych poprzez menadżer pakietów NPM.

+ +

Pakiet middleware'u, który chcesz wykorzystać w swojej aplikacji, musisz najpierw zainstalować przy pomocy NPM. Załóżmy, że chcesz dodać logger żądań do warstwy pośredniej znajdujący się w pakiecie morgan HTTP:

+ +
$ npm install morgan
+
+ +

Teraz powinieneś go dodać do stosu warstwy pośredniej wywołując metodę use():

+ +
var express = require('express');
+var logger = require('morgan');
+var app = express();
+app.use(logger('dev'));
+...
+ +
+

Uwaga: Funkcje middleware'u i obsługi żadań wywoływane są w kolejności ich deklaracji. Dla wybranych pakietów ich miejsce w łańcuchu wywołań jest bardzo ważne (np. jeśli warstwa sesji zależy od warstwy obsługi ciasteczek, wtedy funkcja obsługi ciasteczek powinna być dodana jako pierwsza). W praktyce prawie zawsze funkcje warstwy pośredniej są dodawane przed definicją funkcji obsługi tras, gdyż w przeciwnym razie obsługa żądań nie będzie miała dostępu do funkcji warstwy pośredniej.

+
+ +

Oczywiście możesz tworzyć własne funkcje warstwy pośredniej, i prawdopodobnie będziesz zmuszony do ich definiowania (jak choćby funkcje obsługi błędów). Jedyną różnicą między funkcjami middleware'u, a funkcjami obsługi żądań jest dodatkowy, trzeci argument funkcji warstwy pośredniej. Argument ten, zazwyczaj o nazwie next, jest funkcją, której wywołanie uruchamia następną funkcje warstwy pośredniej. Każda funkcja middleware'u musi wywołać ten argument, gdyż tego oczekuje kontrakt przetwarzania żądania i odpowiedzi w warstwie pośredniej i to je odróżnia od funkcji, które tego nie robią lub nie posiadają takiego argumentu, na których kończy się cykl życia żądania.

+ +

Wywołując metodę app.use() masz dwie możliwości włączania funkcji middleware'u do łańcucha przetwarzania żądania, określając czy funkcja ta obsługuje wszystkie żądania czy tylko o określonej metodzie protokołu HTTP (GET, POST itd.). Możesz też określić dla jakiś ścieżek funkcja ma działać, choć podanie ścieżki przy wowołaniu app.use() jest opcjonalne.

+ +

W przykładzie poniżej możesz zobaczyć jak należy dodawać funkcje middleware'u bez i ze ścieżką.

+ +
var express = require('express');
+var app = express();
+
+// An example middleware function
+var a_middleware_function = function(req, res, next) {
+  // ... perform some operations
+  next(); // Call next() so Express will call the next middleware function in the chain.
+}
+
+// Function added with use() for all routes and verbs
+app.use(a_middleware_function);
+
+// Function added with use() for a specific route
+app.use('/someroute', a_middleware_function);
+
+// A middleware function added for a specific HTTP verb and route
+app.get('/', a_middleware_function);
+
+app.listen(3000);
+ +
+

Wskazówka JavaScript: W przykładzie powyżej najpierw zadeklarowaliśmy funkcję middleware'u a następnie dodaliśmy ją jako funkcję zwrotną. W poprzednich przykładach funkcję zwrotną definiowaliśmy w miejscu definiowania funkcji obsługi żądania. W JavaScript oba podejścia są poprawne. 

+
+ +

Dokumentacja Express zawiera o wiele więcej informacji na temat wykorzystania i definiowania warstwy pośredniej w aplikacjach webowych.

+ +

Obsługa plików statycznych

+ +

Aby Twoja aplikacja mogła obsługiwać pliki umieszczone na serwerze, jak pliki graficzne, CSS czy JavaScript, musi posiadać w warstwie pośredniej odpowiednią funkcję. Na szczęście jest ona częścią Express (jest to jedyna dostarczana z pakietem Express funkcja middlewaru). Jeśli na przykład, chcesz aby aplikacja umożliwiała klientom pobieranie plików z katalogu 'public' (pliki CSS, JavaScript, grafika), który znajduje się w katalogu aplikacji, umieść poniższy kod:

+ +
app.use(express.static('public'));
+
+ +

Każdy plik z katalogu `public` jest teraz dostępny pod adresem URL z dołączoną na końcu nazwą tego pliku. Na przykład:

+ +
http://localhost:3000/images/dog.jpg
+http://localhost:3000/css/style.css
+http://localhost:3000/js/app.js
+http://localhost:3000/about.html
+
+ +

Możesz wielokrotnie dodać funkcję static(), aby dodać więcej katalogów z zasobami statycznymi. Jeśli plik nie zostanie znaleziony przez jedną funkcję middleware'u to żądanie tego pliku zostanie przekazane do następnej funkcji tej warstwy (kolejność wywołań funkcji jest zogdna z kolejnościa ich deklaracji).

+ +
app.use(express.static('public'));
+app.use(express.static('media'));
+
+ +

Istnieje też możliwość tworzenia wirtualnych przedrostów w URL do zasobów statycznych, tak aby nie udostępniać ich pod tym samym adresem bazowym URL. W rezultacie zasoby będą dostępne jakby były w odrębnym katalogu. Posłużmy się kolejnym przykładem, w którym podamy ścieżkę montowania katalogu `public` pod przedrostkiem "/media"

+ +
app.use('/media', express.static('public'));
+
+ +

Od tego momentu możesz dostać się do plików z katalogu public podając URL zakończony prefiksem  /media z umieszczoną za nim nazwą pliku:

+ +
http://localhost:3000/media/images/dog.jpg
+http://localhost:3000/media/video/cat.mp4
+http://localhost:3000/media/cry.mp3
+
+ +

Więcej dowiesz się zaglądając do rozdziału Udostępnianie plików statycznych w Express.

+ +

Obsługa błędów

+ +

Błędy mogą być obsługiwane przez jedną lub więcej specjalnych funkcji middleware'u, które muszą posiadać cztery argumenty (w odróżnieniu od pozostałych, trójargumentowych funkcji tej warstwy) (err, req, res, next). Popatrzmy na przykład poniżej:

+ +
app.use(function(err, req, res, next) {
+  console.error(err.stack);
+  res.status(500).send('Something broke!');
+});
+
+ +

Funkcje obsługi błędów mogą zwracać odpowiedzi o dowolnej zawartości, ale muszą zostać dodane metodą app.use()  po wszystkich pozostałych funkcjach tej warstwy, aby zostały wywołane na końcu procesu przetwarzania żądania.

+ +

Express posiada wbudowany mechanizm obsługi wszelkich błędów mogących wystąpić w aplikacji. Ta domyślna obsługa znajduje się w warstwie pośredniej jako ostania funkcja tej warstwy. Jeśli wywołaniem next() przekażesz błąd do następnej funkcji, w której nic z tym błędem nie zrobisz, to zostanie on obsłużony przez domyślną funkcję, która wyśle do klienta opis błędu wraz z opisem śladu stosu.

+ +
+

Uwaga:  Śledzenie stosu nie jest włączone do środowiska produkcyjnego. Aby je włączyć w trybie produkcyjnym musisz ustawić zmienną środowiskową NODE_ENV o wartości 'production'

+
+ +
+

Uwaga: HTTP404  i pozostałe "błędy" kojarzone z kodem statusu nie są traktowane jako błędy. Jeśli chcesz je kontrolować to musisz dołączyć odpowiednią funkcję middleware'u. Więcej informacji znajdziesz w FAQ.

+
+ +

Więcje o obsłudze błędów możesz dowiedzieć się w Error handling (Dokumentacja Express).

+ +

Korzystanie z baz danych

+ +

Aplikacja Express może korzystać z dowolnej bazy danych wspieranej przez środowisko Node (sam Express nie definiuje żadnych specjalnych zachowań ani wymagań odnośnie współpracy z bazami danych). Możliwa jest współpraca z wieloma silnikami BD, włączając takie jak PostgreSQL, MySQL, Redis, SQLite, MongoDB itd.

+ +

Pierwszym krokiem jest zainstalowanie sterownika przy pomocy menadżera pakietów NPM. Na przykład zainstalowanie sterownika do popularnej bazy NoSQL MongoDB sprowadza się do wydania polecenia:

+ +
$ npm install mongodb
+
+ +

Silnik bazodanowy może być zainstalowany lokalnie lub na zdalnym serwerze. W kodzie aplikacji wymagany jest zainstalowany sterownik, przy pomocy którego łączymy się z bazą i wykonujemy typowe operacje jak tworzenie, odczyt, edycja i usunięcie (CRUD). W przykładzie poniżej (dokumentacja Express) możesz zobaczyć jak znaleźć i odczytać wszystkie ssaki z bazy zawierającej informacje o zwierzętach.

+ +
//this works with older versions of  mongodb version ~ 2.2.33
+var MongoClient = require('mongodb').MongoClient;
+
+MongoClient.connect('mongodb://localhost:27017/animals', function(err, db) {
+  if (err) throw err;
+
+  db.collection('mammals').find().toArray(function (err, result) {
+    if (err) throw err;
+
+    console.log(result);
+  });
+});
+
+
+//for mongodb version 3.0 and up
+let MongoClient = require('mongodb').MongoClient;
+MongoClient.connect('mongodb://localhost:27017/animals', function(err, client){
+   if(err) throw err;
+   let db = client.db('animals');
+   db.collection('mammals').find().toArray(function(err, result){
+     if(err) throw err;
+     console.log(result);
+     client.close();
+   });
+});
+
+ +

Innym, popularnym modelem współpracy aplikacji z bazą danych jest ORM (Object Relational Mapping - mapowanie obiektowo relacyjne). Korzystanie z ORM powoduje, że dane utrwalane w bazie definiujemy jako obiekty lub modele, które są automatycznie mapowane na format bazodanowy. Zaletą takiego podejścia, jest to, że możesz myśleć w kategoriach obiektów JavaScript a nie formatu danych bazy, które w dodatku podlegają sprawdzeniu poprawności danych. Bardziej szczegółowo bazy danych omówimy w późniejszym artykule.

+ +

Więcej informacji znajdziesz w Database integration (Dokumentacja Express).

+ +

Prezentacja danych (widoki)

+ +

Silniki szablonów (określane w Express jako "view engines") pozwalają Ci na łatwiejsze tworzenie dokumentów wysyłanych jako odpowiedź żądania. Taki dokument, a jest to najczęściej plik HTML lub inny typ dokumentu, zawiera specjalne znaczniki, w miejscu których silnik szablonów wstawia, przekazane z funkcji obsługi żądania, dane. Express wspiera wiele różnych silników widoków, więc przy wyborze najbardziej odpowiedniego można posłużyć się zestawieniem Comparing JavaScript Templating Engines: Jade, Mustache, Dust and More.

+ +

Jeśli chcesz budować swoją aplikację w architekturze MVC musisz w niej wskazać położenie plików szablonów. W sekcji konfiguracyjnej aplikacji wskaż atrybutami 'views' lub 'view engine' katalog szablonów, tak jak poniżej:

+ +
var express = require('express');
+var app = express();
+
+// Set directory to contain the templates ('views')
+app.set('views', path.join(__dirname, 'views'));
+
+// Set view engine to use, in this case 'some_template_engine_name'
+app.set('view engine', 'some_template_engine_name');
+
+ +

Wygląd szablonu zależy od zastosowanego silnika generującego widoki, ale niezależnie od niego przekazanie danych do szablonu wygląda podobnie. Zakładając, że plik szablonu ma nazwę "index.<template_extension>", a w nim znajdują się znaczniki na umieszczenie zmiennych o nazwach `title` i `message`, to w funkcji obsługi żądania powinieneś wywołać Response.render(), żeby klient otrzymał wygenerowany z szablonu dokument HTML:

+ +
app.get('/', function(req, res) {
+  res.render('index', { title: 'About dogs', message: 'Dogs rock!' });
+});
+ +

Więcej informacji o szablonach znajdziesz w Using template engines with Express (dokumentacja Express).

+ +

Struktura plików

+ +

Express nie wymaga sztywnej struktury plików, składających się na aplikację. Kontrolery, widoki, pliki statyczne i pozostałe elementy aplikacji mogą być rozmieszczone w dowolnej liczbie plików rozmieszczonych w dowolnej strukturze katalogów. Choć możliwe jest zawarcie całej aplikacji w jednym pliku, to znacznie bardziej rozsądnym rozwiązaniem jest podzielenie aplikacji na pliki o określonych funkcjach. (np. zarządzanie kontem, blogi, forum dyskusyjne) i zgodnie z architekturą aplikacji (np. model, widok i kontroler jeśli jest to aplikacja w architekturze MVC)

+ +

W dalszych rozdziałach będziemy korzystać Express Application Generator, który tworzy modularny szkielet aplikacji, którą możemy łatwo rozbudowywać.

+ + + +

Podsumowanie

+ +

Gratulacje, zrobiłeś pierwszy krok w swojej podróży z Express/Node! Mam nadzieję, że dobrze poznałeś najważniejsze zalety środowiska Express/Node i zrozumiałeś ogólne działanie najważniejszych elementów aplikacji (funkcje obsługi żądań, warstwa pośrednia, obsługa błędów, szablony widoków. Powinieneś też rozumieć, że Express jako elastyczny framework, nie narzuca Ci sposobu łączenia elementy aplikacji, ale Tobie pozostawia w tej kwestii wybór.

+ +

W założeniu twórców Express jest lekkim frameworkiem. dlatego wiele jego zalet i możliwości pochodzi z bibliotek  i funkcji firm trzecich. Będziemy im się przyglądać bardzie szczegółowo w dalszych częściach cyklu. W następnym artykule będziemy poznawać konfigurację środowiska uruchomieniowego Node.

+ +

Zobacz także

+ + + +
{{NextMenu("Learn/Server-side/Express_Nodejs/development_environment", "Learn/Server-side/Express_Nodejs")}}
+ +

W tym module

+ + diff --git a/files/pl/learn/server-side/express_nodejs/skeleton_website/index.html b/files/pl/learn/server-side/express_nodejs/skeleton_website/index.html new file mode 100644 index 0000000000..d3a949c8cd --- /dev/null +++ b/files/pl/learn/server-side/express_nodejs/skeleton_website/index.html @@ -0,0 +1,528 @@ +--- +title: 'Szkolenie z Express - część 2: Tworzenie szkieletu aplikacji webowej' +slug: Learn/Server-side/Express_Nodejs/skeleton_website +tags: + - Express + - Początkujący + - Szkolenie + - Wprowadzenie + - środowisko programisty +translation_of: Learn/Server-side/Express_Nodejs/skeleton_website +--- +
{{LearnSidebar}}
+ +

{{PreviousMenuNext("Learn/Server-side/Express_Nodejs/Tutorial_local_library_website", "Learn/Server-side/Express_Nodejs/mongoose", "Learn/Server-side/Express_Nodejs")}}

+ +

W drugim artykule cyklu Szkolenie z Express zbudujemy "szkielet" aplikacji webowej, którą będziemy później rozbudowywać o kolejne elementy: ścieżki, szablony/widoki i odwołania do bazy danych. 

+ + + + + + + + + + + + +
Wymagania:Przeczytanie artykułu Set up a Node development environment.
Cele:Umiejętność samodzielnego utworzenia własnego projektu aplikacji webowej za pomocą Express Application Generator.
+ +

Wstęp

+ +

Artykuł przedstawia tworzenie szkieletu aplikacji webowej Biblioteka przy pomocy narzędzia Express Application Generator. W kolejnych artukułach będziemy ją rozbudowywać o kolejne elementy. Proces tworzenia jest bardzo prosty i wymaga wywołania tylko jednego polecenia z nazwą budowanej aplikacji. Opcjonalnie można także podać silnik do renderowania widoków i generator CSS.

+ +

W kolejnych sekcjach przyjrzymy się bliżej działaniu generatora, poznamy opcje widoków/CSS. Zostanie też wyjaścniona struktura utworzonej aplikacji. Na zakończenie poznasz metody uruchomienia utworzonej aplikacji oraz zweryfikowania jej działania. 

+ +
+

Uwaga: Express Application Generator nie jest jedynym narzędziem do tworzenia aplikacji Express, a struktura utworzonych projektów nie jest jedyną właściwą. Wygenerowana aplikacji posiada modularną strukturę, która może być łatwo rozszerzana oraz jest wystarczająco przejrzysta i zrozumiała.  Informacje o tym jak zrobić minimalną aplikację Express znajdziesz w Hello world example (dokumentacja Express).

+
+ +
+

Uwaga: W tym szkoleniu wykorzystano wersję Express zdefiniowaną w pliku package.json utworzonym automatycznie przez Express Application Generator. I niekoniecznie jest to najnowsza wersja! 

+
+ +

Korzystanie z generatora aplikacji

+ +

Powinieneś mieć zainstalowany generator jako część środowiska przygotowanego w artykule Przygotowanie środowiska programisty Node. W ramach przypomnienia instalacja generatora aplikacji Express wymaga wpisania poniższego polecenia:

+ +
npm install express-generator -g
+ +

Generator posiada wiele opcji, które możesz poznać za pomocą polecenia --help (lub -h):

+ +
> express --help
+
+    Usage: express [options] [dir]
+
+
+  Options:
+
+        --version        output the version number
+    -e, --ejs            add ejs engine support
+        --pug            add pug engine support
+        --hbs            add handlebars engine support
+    -H, --hogan          add hogan.js engine support
+    -v, --view <engine>  add view <engine> support (dust|ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
+        --no-view        use static html instead of view engine
+    -c, --css <engine>   add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
+        --git            add .gitignore
+    -f, --force          force on non-empty directory
+    -h, --help           output usage information
+
+ +

Wpisując wyłącznie polecenie express utworzysz projekt w bieżącym katalogu z domyślnym silnikiem zablonów Jade i czystym CSS. Dodanie nazwy katalogu spowoduje utworzenie projektu w tym właśnie katalogu.     

+ +
express
+ +

Opcją --view możesz wyspecyfikować inny generator widoków a --css podać preprocesor CSS.

+ +
+

Uwaga:  Pozostałe opcje wyboru silnika szablonów(n.p. --hogan, --ejs, --hbs itd.) są już przestarzałe i nie należy z nich korzystać . Skorzystaj z opcji --view (or -v)!

+
+ +

Jaki silnik szablonów wykorzystać?

+ +

Paczka Express Application Generator pozwala na skonfigurowanie wielu popularnych silników renderujących, w tym EJS, Hbs, Pug (Jade), Twig i Vash, spośród których to Jade jest domyślnie instalowany w sytuacji braku specyfikacji silnika. Sam Express wspiera znaczną liczbę innych języków szablonów out of the box.

+ +
+

Uwaga: Jeśli chcesz skorzystać z silnika, który nie jest wspierany przez generator to zapoznaj się publikacją Using template engines with Express (dokumentacja Express) i dokuemntacją wybranego silnika.

+
+ +

Ogólnie mówiąc powinnieneś wybrać taki silnik szablonów, który dostarcza wszystkich potrzebnych Ci funkcji i pozwala na szybkie osiągnięcie produktywności. Innymi słowy kieruj się tymi samymi regułami, którymi się kierujesz wybierając pozostałe komponenty. Podczas wyboru powinieneś rozważyć kilka kwestii:

+ + + +
+

Wskazówka:  W Intenecie znajduje się wiele zasobów, które mogą pomóc w porównaniu wiel opcji!

+
+ +

W naszym projekcie wykorzystamy generator szablonów Pug (poprzednio funkcjonował pod nazwą Jade), który jest najpopularniejszym narzędziem tego typu w środowisku Express/JavaScript i intalowanym wraz z generatorem aplikacji.

+ +

Jakiego preprocesora arkuszy stylów CSS należy użyć?

+ +

Express Application Generator pozwala na utworzenie projektu, który można skonfigurować do pracy z najbardziej znanymi preprocesorami stylów CSS: LESS, SASS, Compass, Stylus.

+ +
+

Uwaga: CSS  posiada pewne ograniczenia, które czynią definiowanie niektórych reguł bardzo trudnymi. Preprocesory dają możliwość wykorzystania bogatszej i o znacznie wiekszych możliwościach składni do definiowania reguł styli i kompilacji ich do tradycyjnego formatu CSS wykorzystywanego przez przeglądarki.

+
+ +

Podobnie jak przy wyborze silnika szablonów, tak i przy wyborze preprocesora powinieneś się kierować preferencjami zespołu, aby osiągnąć żądaną produktywność. W naszym projekcie wykorzystamy ustawienia domyślne, czyli tzw. vanilla CSS, ponieważ nie będziemy korzystać ze zbyt skomplikowanych reguł, a czysty CSS będzie dla nas wystarczająco dobry.

+ +

Jakiej bazy danych uzyć?

+ +

Wygenerowany kod aplikacji nie jest skonfigurowany do współpracy z bazą danych. Oczywiście aplikacje Express moga korzystać z  dowolnego silnika bazodanowego wspieranego przez środowisko Node (sam Express nie stawia żadnych specjalnych wymagań co do stosowanej bazy danych). Itegrację aplikacji z bazą danych omówimy w późniejszym artykule.

+ +

Tworzenie projektu

+ +

Stworzymy na początek przykładowy projekt pod nazwą express-locallibrary-tutorial korzystający z generatora szablonów Pug i czystego CSS.

+ +

Utwórz katalog projektu o podanej wyżej nazwie i przejdź do niego. Uruch teraz Express Application Generator wpisując w wierszu poleceń (terminalu) poniższą komendę:

+ +
express express-locallibrary-tutorial --view=pug
+
+ +

Generator aplikacji utworzy poniższą strukturę plików i katalogów.

+ +
   create : express-locallibrary-tutorial\
+   create : express-locallibrary-tutorial\public\
+   create : express-locallibrary-tutorial\public\javascripts\
+   create : express-locallibrary-tutorial\public\images\
+   create : express-locallibrary-tutorial\public\stylesheets\
+   create : express-locallibrary-tutorial\public\stylesheets\style.css
+   create : express-locallibrary-tutorial\routes\
+   create : express-locallibrary-tutorial\routes\index.js
+   create : express-locallibrary-tutorial\routes\users.js
+   create : express-locallibrary-tutorial\views\
+   create : express-locallibrary-tutorial\views\error.pug
+   create : express-locallibrary-tutorial\views\index.pug
+   create : express-locallibrary-tutorial\views\layout.pug
+   create : express-locallibrary-tutorial\app.js
+   create : express-locallibrary-tutorial\package.json
+   create : express-locallibrary-tutorial\bin\
+   create : express-locallibrary-tutorial\bin\www
+
+   change directory:
+     > cd express-locallibrary-tutorial
+
+   install dependencies:
+     > npm install
+
+   run the app (Bash (Linux or macOS))
+     > DEBUG=express-locallibrary-tutorial:* npm start
+
+   run the app (PowerShell (Windows))
+     > $ENV:DEBUG = "express-locallibrary-tutorial:*"; npm start
+
+   run the app (Command Prompt (Windows)):
+     > SET DEBUG=express-locallibrary-tutorial:* & npm start
+
+ +

Na końcu zwróconych przez generator komunikatów znajdują się instrukcje w jaki sposób zainstalować wymagane pakiety (ich spis znajduje się w pliku package.json) i jak uruchomić aplikację.

+ +

Uruchomienie szkieletu aplikacji

+ +

W katalogu mamy na razie kompletny szkielet naszego projektu, a nasza aplikacja nie wykonuje zbyt wielu zadań. Warto jednak uruchmić ją w tej początkowej postaci, aby sprawdzić czy działa.

+ +
    +
  1. Na początku zainstaluj zależności(polecenie install pobierze wymienione w package.json pliki). + +
    cd express-locallibrary-tutorial
    +npm install
    +
  2. +
  3. Uruchom aplikację. +
      +
    • W systemie Windows użyj tego polecenia: +
      SET DEBUG=express-locallibrary-tutorial:* & npm start
      +
    • +
    • W sytemach macOS lub Linux wpisz jak poniżej: +
      DEBUG=express-locallibrary-tutorial:* npm start
      +
      +
    • +
    +
  4. +
  5. Wpisz w przeglądarce adres http://localhost:3000/ aby dostać się do strony aplikacji.
  6. +
+ +

W przeglądarce powinieneś zobaczyć stronę podobą do tej poniżej:

+ +

Browser for default Express app generator website

+ +

Gratulacje! Twoja aplikacja Express działa i jest dostępna na Twojej lokalnej maszynie pod portem 3000.

+ +
+

Uwaga: Możesz też uruchomić aplikację korzystająć z polecenia npm start. Ustawiając zmienną DEBUG możesz włączyć wyświetlanie komunikatów logowania i debugowania. Przykładowo podczas odświeżenia powyższej strony aplikacji zobaczysz poniższe komunikaty w oknie konsoli:

+ +
>SET DEBUG=express-locallibrary-tutorial:* & npm start
+
+> express-locallibrary-tutorial@0.0.0 start D:\github\mdn\test\exprgen\express-locallibrary-tutorial
+> node ./bin/www
+
+  express-locallibrary-tutorial:server Listening on port 3000 +0ms
+GET / 304 490.296 ms - -
+GET /stylesheets/style.css 200 4.886 ms - 111
+
+
+ +

Włączenie restartowania serwera po modyfikacji plików

+ +

Jakakolwiek zmiana w naszym projekcie nie będzie widoczna dopóki nie wykonasz ponownego uruchomienia serwera. Z czasem może to być bardzo irytujące, gdy każda zmiana będzie wymagała ciągłego zatrzymywania i ponownego uruchamiania serwera. Dlatego warto poświecić nieco czasu na zautomatyzowanie tej czynności.

+ +

Odpowiednim narzędziem do tego celu jest nodemon. Zwykle jest instalowany globalnie, ale tutaj zainstalujemy go lokalnie jako zależność developerską, aby każdy developer pracujący z aplikacją miał go po zainstalowaniu projektu. Wywołaj poniższe polecenia w głównym katalogu naszego projektu::

+ +
npm install --save-dev nodemon
+ +

Jeśli jednak chcesz zainstalować nodemon globalnie, a nie tylko w swoim projekcie dodając wpis do package.json, to wpisz taką wersję polecenia:  

+ +
npm install -g nodemon
+ +

Gdy otworzysz plik package.json swojego projektu to powinieneś zobaczyć nową sekcję z poniższą zależnością:

+ +
 "devDependencies": {
+    "nodemon": "^2.0.4"
+}
+
+ +

Ponieważ nasze narzedzie nie została zainstalowane globalnie, to nie możemy go uruchomić wprost z linii poleceń (dopóki nie dodamy go do ścieżki). Możemy je jednak wywołać wprost ze skryptu NPM, bo NPM wie wszystko o zainstalowanych pakietach. Znajdź sekcję scripts w swoim pliku package.json. Dodaj do niej dwa wiersze ze skryptami "devstart" i "serverstart", Pamiętaj o dodaniu na końcu każdego wiersza (oprócz ostatniego) znaku przecinka:    

+ +
  "scripts": {
+    "start": "node ./bin/www",
+    "devstart": "nodemon ./bin/www",
+    "serverstart": "DEBUG=express-locallibrary-tutorial:* npm run devstart"
+  },
+
+ +

Możemy teraz uruchomić serwer w prawie taki sam sposób jak poprzednio, ale przy pomocy polecenia devstart

+ + + +
+

Uwaga:  Od tej chwili każda zmiana jakiegokolwiek pliku projektu powoduje restart serwera (możesz też zrestartować serwer wpisując w dowolnym momencie polecenie rs w terminalu). Nadal jednak będziesz musiał odświeżać stronę w przeglądarce.

+ +

Od teraz musimy uruchamiać skrypty poleceniem "npm run <scriptname>" zamiast zwykłego npm start, ponieważ „start” jest w rzeczywistości poleceniem NPM, które jest odwzorowane na skrypt o takiej nazwie. Mogliśmy zamienić polecenie w skrypcie start, ale podczas programowania chcemy używać tylko nodemon, więc sensowne jest utworzenie nowego polecenia skryptu.

+ +

Dodanie polecenia serverstart w sekji skryptów pliku package.json jest dobrym rozwiązaniem, które pozwala uniknąć wpisywania długim poleceń uruchamiających serwer. Zwróć uwagę, że niektóre konkretne polecenia dodane do skryptu działają tylko w systemie macOS lub Linux.

+
+ +

Wygenerowany projekt

+ +

Przyjrzyjmy się bliżej projektowi, który stworzyliśmy.

+ +

Struktura katalogów

+ +

Utworzony projekt wraz z zainstalowanymi zależnościami ma przedstawioną poniżej strukturę (pliki są elementami z prefiksem "/").

+ +

Plik package.json definiuje spis wymaganych przez naszą aplikację pakietów oraz zawiera wiele innych informacji o aplikacji. W pliku tym są też zdefiniowane skrypty, w tym też skrypt startowy, który wywołuje punkt wejścia aplikacji, czyli plik JavaScript /bin/www. Skrypt ten po ustawieniu mechanizmu obslugi błędów uruchamia plik app.js, który wykonuje resztę pracy.

+ +

W katalogu /routes znajdują się moduły obsługujące ścieżki aplikacji. Szablony generowanych stron przechowywane są w katalogu /views.    

+ +
/express-locallibrary-tutorial
+    app.js
+    /bin
+        www
+    package.json
+    package-lock.json
+    /node_modules
+        [about 6700 subdirectories and files]
+    /public
+        /images
+        /javascripts
+        /stylesheets
+            style.css
+    /routes
+        index.jsusers.js
+    /views
+        error.pug
+        index.puglayout.pug
+
+
+ +

W kolejnych sekcjach znajdziesz więcej szczegółów dotyczących plików projektu. 

+ +

package.json

+ +

Plik package.json:

+ +
{
+  "name": "express-locallibrary-tutorial",
+  "version": "0.0.0",
+  "private": true,
+  "scripts": {
+    "start": "node ./bin/www"
+  },
+  "dependencies": {
+    "cookie-parser": "~1.4.4",
+    "debug": "~2.6.9",
+    "express": "~4.16.1",
+    "http-errors": "~1.6.3",
+    "morgan": "~1.9.1",
+    "pug": "2.0.0-beta11"
+  },
+  "devDependencies": {
+    "nodemon": "^2.0.4"
+  }
+}
+
+ +

Sekcja zależności zawiera paczkę express i wybrany przez nas silnik szablonów (pug). Oprócz tego znajdują się w niej jeszcze inne paczki przydatne w aplikacjach webowych:

+ + + +

W sekcji scripts zdefiniowany jest skrypt "start", który jest tym samym skryptem wywoływanym poleceniem npm start, gdy chcemy uruchomić serwer. Z definicji tego skryptu wynika, że uruchomia on plik ./bin/www z kodem JavaScript.  

+ +
  "scripts": {
+    "start": "node ./bin/www",
+    "devstart": "nodemon ./bin/www",
+    "serverstart": "DEBUG=express-locallibrary-tutorial:* npm run devstart"
+  },
+
+ +

Pozostałe skrypty devstart i serverstart  możemy wykorzystywać do uruchomienia tego samego pliku ./bin/www  ale z użyciem nodemon niż node (jak zostało to wyjaśnione w sekcji Włączenie restartowania serwera po modyfikacji plików).

+ +

Plik www

+ +

Plik /bin/www jest punktem wejścia aplikacji! Pierwszą rzeczą jaką wykonuje ten plik to funkcja require(), która kieruje do prawdziwego punktu zaczynającego wykonywanie aplikacji (app.js, w głównym katalogu projektu), w którym następuje przygotowanie i zwrócenie obiektu aplikacji  express().

+ +
#!/usr/bin/env node
+
+/**
+ * Module dependencies.
+ */
+
+var app = require('../app');
+
+ +
+

Uwaga: require() jest funkcją globalną środowiska Node, która importuje moduł do bieżącego pliku. W powyższym kodzie moduł app.js został podany z użyciem ścieżki względnej i z pominięciem opcjonalnego rozszerzenia .js.

+
+ +

Pozostała część kodu tego pliku konfiguruje serwer HTTP z aplikacją pracującą pod wskazanym portem (numer portu jest zdefiniowany w zmiennej środowiskowej lub przyjmowana jest wartość 3000 jeśli brak takiej zmiennej). W dalszej części następuje uruchomienie nasłuchiwania i raportowania błędów serwera i połączeń. Na razie nie musisz znać wszystkich szczegółów tego kodu (wszystko w tym pliku jest standardowym kodem), choć jeśli jesteś zainteresowany możesz go przejrzeć.

+ +

app.js

+ +

Ten plik jest odpowiedzialny za utworzenie obiektu aplikacji (pod konwencjonalną nazwą app), jej skonfigurowanie wraz z warstwami pośrednimi i wyeksportowanie jej z modułu. Kod poniżej zawiera tę cześć pliku app.js, która zawiera tworzenie i eksportowanie obiektu aplikacji:

+ +
var express = require('express');
+var app = express();
+...
+module.exports = app;
+
+ +

Powrót do punktu wejściowego, czyli do pliku www,  następuje w linii  zawierającej  module.exports, która eksportuje obiekt app aplikacji i zwraca go do wywołującego kodu, który ten moduł zaimportował.

+ +

Czas teraz na szczegóły pliku app.js. Na początku importowne są dość użyteczne moduły przy pomocy funkcji require(), w tym http-errorsexpressmorgan i cookie-parser, które wcześniej zostały pobrane przez menadżera NPM, oraz pakiet path, który jest częścią środowiska Node i odpowiada za parsowanie ścieżek do plików i katalogów.  

+ +
var createError = require('http-errors');
+var express = require('express');
+var path = require('path');
+var cookieParser = require('cookie-parser');
+var logger = require('morgan');
+
+ +

Kolejne funkcje require(), importują moduły z katalogu routes. Zawierają one kody źródłowe obsługujące zbióry ścieżek naszej aplikacji (URL). Gdy będziemy rozbudowywać aplikację o kolejne ścieżki, na przykład zwracają listę wszystkich książek naszej biblioteki, to będziemy musieli dodać nowy plik z definicją operacji wykonywanych pod tą ścieżką.    

+ +
var indexRouter = require('./routes/index');
+var usersRouter = require('./routes/users');
+
+ +
+

Uwaga: W tym miejscu tylko zaimportowaliśmy moduły, na razie nie korzystamy z tych ścieżek (nastapi to później). 

+
+ +

Następnie tworzymy obiekt app za pomocą zaimportowanego modułu express, po czym konfigurujemy go do pracy z wybranym silnikiem szablonów. W pierwszym kroku określa się lokalizację szablonów poprzez przypisanie katalogu do zmiennej 'views'. W drugim należy podać nazwę wykorzystywanej biblioteki szablonów (w naszym przypadku jest to "pug").   

+ +
var app = express();
+
+// view engine setup
+app.set('views', path.join(__dirname, 'views'));
+app.set('view engine', 'pug');
+
+ +

Następna sekcja zawiera szereg wywołań metody use na obiekcie aplikacji, których zadaniem jest dodanie bibliotek wykorzystywanych w warstwie pośredniej całego łańcucha przetwarzania żądań. Oprócz dołączonych wcześniej modułów zewnętrznych, wykorzystujemy także moduł express.static, którego zadaniem jest obsługa plików statycznych z katalogu /public naszego projektu. 

+ +
app.use(logger('dev'));
+app.use(express.json());
+app.use(express.urlencoded({ extended: false }));
+app.use(cookieParser());
+app.use(express.static(path.join(__dirname, 'public')));
+
+ +

Po skonfigurowaniu warstwy pośredniej możemy dodać (poprzednio już zaimportowane) nasze skrypty obsługujące żądania ścieżek. Zaimportowane pliki definiują poszczególne ścieżki dla różnych części naszej aplikacji:

+ +
app.use('/', indexRouter);
+app.use('/users', usersRouter);
+
+ +
+

Uwaga: Podane powyżej ścieżki  ('/' i '/users') są traktowane jako przedrostki tras zdefiniowanych w importowanych plikach. Na przykład, jeśli zaimportowany moduł users definiuje ścieżkę względną /profile, to dostęp do tej ścieżki będzie możliwy pod /users/profile. Ścieżki zostaną dokładniej omówione w następnych artykułach.

+
+ +

Końcowym etapem konfigurowania warstwy pośredniej jest dodanie obsługi błędów i odpowiedzi HTTP 404.

+ +
// catch 404 and forward to error handler
+app.use(function(req, res, next) {
+  next(createError(404));
+});
+
+// error handler
+app.use(function(err, req, res, next) {
+  // set locals, only providing error in development
+  res.locals.message = err.message;
+  res.locals.error = req.app.get('env') === 'development' ? err : {};
+
+  // render the error page
+  res.status(err.status || 500);
+  res.render('error');
+});
+
+ +

Obiekt aplikacji Express jest teraz w pełni skonfigurowany. Ostatnim działaniem w skrypcie jest wyeksportowanie obiektu z bieżącego modułu (w ten sposób staje się on dostępny w pliku /bin/www po zaimportowaniu).

+ +
module.exports = app;
+ +

Ścieżki

+ +

Plik definiujący obsługę żądań kierowanych do ścieżki /routes/users.js znajduje się poniżej (struktura wszystkich plików ścieżek jest bardzo podobna, dlatego nie ma potrzeby oglądania pliku index). Na początku znajduje się znana już funkcja importująca moduł express, z którego pobierany jest obiekt express.Router . Po zdefiniowaniu obsługi żądania, obiekt rutera jest exportowany z modułu (dzięki czemu może być zaimportowany w app.js).    

+ +
var express = require('express');
+var router = express.Router();
+
+/* GET users listing. */
+router.get('/', function(req, res, next) {
+  res.send('respond with a resource');
+});
+
+module.exports = router;
+
+ +

Ruter definiuje metodę, która będzie wywoływana w chwily pojawienia się żądania GET protokołu HTTP skierowanego pod adres zgodny z wzorcem. Pełna ścieżka do tej metody zostanie zdefiniowana gdy moduł ('/users') zostanie zaimportowany i zostanie dodany przedrostek ('/') w module importujacym. Krótko mówiąc, ściezka zostanie użyta, gdy skierowane zostanie  żądanie z URL zawierającym /users/.  

+ +
+

Wskazówka: Wypróbuj działanie rutera uruchamiając serwer i odwiedzając w przeglądarce URL http://localhost:3000/users/. Powinieneś zobaczyć komunikat: 'respond with a resoure'. 

+
+ +

Interesującym elementem w kodzie metody obsługującej żądanie GET jest trzeci argument next, co świadczy o tym, że jest to metoda warstwy poredniej a nie prosta funkcja zwrotna. Chociaż na razie w metodzie nie korzystamy z tego argumentu to być może będzie potrzebny w przyszłości, gdy zechsze dodać wiecej metod obsługujących ścieżkę  '/'.

+ +

Widoki (szablony)

+ +

Widoki (szablony) są przechowywane w katalogu /views (tak jak zdefiniowano to w pliku app.js) i posiadają rozszerzenie .pug. Metoda Response.render() jest wykorzystywana do renderowania strony HTML na podstawie szablonu i dostarczonych do niego wartości zmiennych, po czym gotowy dokument jest wysyłany do jako odpowiedź żądania. W znajdującym się kodzie poniżej pochodzącym z pliku możesz obaczyć jak funkcja obsługi żądania ścieżki renderuje szablon "index" na podstawie przekazanej zmiennej "title".  

+ +
/* GET home page. */
+router.get('/', function(req, res, next) {
+  res.render('index', { title: 'Express' });
+});
+
+ +

Szablon "index" (index.pug) jest przedsatwiony poniżej. Składnię szablonów omówimy poźniej. To co na razie powinieneś wiedzieć to to, że zmienna title (zawierająca napisz 'Express') została wstawiona w określonym miejscu szablonu.

+ +
extends layout
+
+block content
+  h1= title
+  p Welcome to #{title}
+
+ +

Challenge yourself

+ +

Create a new route in /routes/users.js that will display the text "You're so cool" at URL /users/cool/. Test it by running the server and visiting http://localhost:3000/users/cool/ in your browser

+ + + +

Summary

+ +

You have now created a skeleton website project for the Local Library and verified that it runs using node. Most importantly, you also understand how the project is structured, so you have a good idea where we need to make changes to add routes and views for our local library.

+ +

Next, we'll start modifying the skeleton so that it works as a library website.

+ +

See also

+ + + +

{{PreviousMenuNext("Learn/Server-side/Express_Nodejs/Tutorial_local_library_website", "Learn/Server-side/Express_Nodejs/mongoose", "Learn/Server-side/Express_Nodejs")}}

+ +

In this module

+ + diff --git a/files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html b/files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html new file mode 100644 index 0000000000..a23787a253 --- /dev/null +++ b/files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html @@ -0,0 +1,89 @@ +--- +title: 'Szkolenie z Express: Projekt aplikacji webowej "Biblioteka"' +slug: Learn/Server-side/Express_Nodejs/Szkolenie_aplikacja_biblioteka +tags: + - Początkujący +translation_of: Learn/Server-side/Express_Nodejs/Tutorial_local_library_website +--- +
{{LearnSidebar}}
+ +
{{PreviousMenuNext("Learn/Server-side/Express_Nodejs/development_environment", "Learn/Server-side/Express_Nodejs/skeleton_website", "Learn/Server-side/Express_Nodejs")}}
+ +

W pierwszym artykule naszego cyklu praktycznych lekcji omówimy będziemy się uczyć i jak będzie wyglądała tworzona w trakcie nauki aplikacja webowa, którą nazwiemy Biblioteka.

+ + + + + + + + + + + + +
Wymagania:Przeczytanie artykułu Wprowadzenie do Express. Aby móc aktywnie uczestwiczyć w szkoleniu potrzebne Ci będzie także Przygotowanie środowiska do tworzenia applikacji w Node
Cel: +

Wprowadzenie do przykładowej aplikacji, która będzie tworzona w całym cyklu szkolenia i przedstawienie wszystkich tematów, które będą omawiane. 

+
+ +

Wstęp

+ +

Witaj w cyklu szkoleń MDN pt. tworzenie aplikacji "Biblioteka" w frameworku Express(Node), w którym będziemy projektować aplikację webową do zarządzania biblioteką

+ +

A oto co będziemy robić w tym cyklu:

+ + + +

Część tematów nie powinna być Ci obca, bo zostały już po krótce omówione lub zasygnalizowane. Po zakończeniu szkolenia powinieneś umieć samodzielnie wykonać prostą aplikację Express.

+ +

Aplikacja webowa Biblioteka

+ +

Biblioteka to nazwa naszej aplikacji, którą będziemy tworzyć i rozwijać w trakcie tego kursu. Domyślasz się, że celem aplikacji jest udostępnienie katalogu online do zarządzania niewielką biblioteką. Użytkownicy będą mogli przejrzeć dostępne książki i zarządzać swoim kontem.

+ +

Temat przykładowej aplikacji został starannie dobrany, ponieważ możemy w niej skalować liczbę szczegółów według potrzeb oraz dobrze pokazać możliwości frameworku Express. Najważniejszą jednak sprawą jest to, że aplikacja będzie naszym przewodnikiem prowadzącym przez wszystkie funkcje, które są potrzebne w prawie każdej aplikacji webowej:

+ + + +

Chociaż jest to przykład aplikacji o dużych możliwościach rozbudowy, to jej celem jest pokazanie minimum informacji potrzebnych do rozpoczęcia pracy z  Express. Dlatego będziemy przechowywać w niej informacje o książkach, kopiach książek, autorach itd. Nie będziemy jednak przechowywać informacji o innych elementach związanych z pracą biblioteki, ani nie zapewnimy infrastruktury niezbędnej do obsługi wielu witryn bibliotecznych lub innych funkcji „dużej biblioteki”. 

+ +

Utknąłem, gdzie znajdę kod źródłowy?

+ +

W trakcie szkolenia będziemy prezentować kolejne fragmenty kodu źródłowego przykładowej aplikacji, żebyś mógł je skopiować i wkleić do swojego projektu. Będą też fragmenty, dzięki którym, mamy nadzieję, będziesz mógł samodzielnie ją rozbudować (z niewielką pomocą).

+ +

Jednak zamiast stosowania metody "Copy Paste", postaraj się samodzielnie przepisać kod. To zaowocuje w przyszłości lepszą znajomością kodu, gdy będziesz pisał coś podobnego.

+ +

Gdy jednak utkniesz, bo nie będziesz umiał znaleźć błędu popełnionego przy przepisywaniu, kompletny kod aplikacji możesz znaleźć w repozytorium Github.

+ +
+

Uwaga:  Wersje środowiska Node, Express oraz pozostałych modułów, dla których przetestowano opisywaną tu aplikację znajdują się w pliku package.json projektu.

+
+ +

Podsumowanie

+ +

Gdy już wiesz jaką aplikację będziemy tworzyć i czego będziesz się uczyć możesz przejść do następnego etapu i utworzyć szkielet projektu naszej przykładowej aplikacji.

+ +

{{PreviousMenuNext("Learn/Server-side/Express_Nodejs/development_environment", "Learn/Server-side/Express_Nodejs/skeleton_website", "Learn/Server-side/Express_Nodejs")}}

+ +

W tym module

+ + diff --git a/files/pl/learn/server-side/index.html b/files/pl/learn/server-side/index.html new file mode 100644 index 0000000000..7330545ac9 --- /dev/null +++ b/files/pl/learn/server-side/index.html @@ -0,0 +1,59 @@ +--- +title: Server-side website programming +slug: Learn/Server-side +tags: + - Beginner + - CodingScripting + - Intro + - Landing + - Learn + - NeedsTranslation + - Server + - Server-side programming + - Topic + - TopicStub +translation_of: Learn/Server-side +--- +
{{LearnSidebar}}
+ +

The Dynamic Websites  Server-side programming topic is a series of modules that show how to create dynamic websites; websites that deliver customised information in response to HTTP requests. The modules provide a general introduction to server-side programming, along with specific beginner-level guides on how to use the Django (Python) and Express (Node.js/JavaScript) web frameworks to create basic applications.

+ +

Most major websites use some kind of server-side technology to dynamically display different data as required. For example, imagine how many products are available on Amazon, and imagine how many posts have been written on Facebook? Displaying all of these using completely different static pages would be completely inefficient, so instead such sites display static templates (built using HTML, CSS, and JavaScript), and then dynamically update the data displayed inside those templates when needed, e.g. when you want to view a different product on Amazon.

+ +

In the modern world of web development, learning about server-side development is highly recommended.

+ +

Learning pathway

+ +

Getting started with server-side programming is usually easier than with client-side development, because dynamic websites tend to perform a lot of very similar operations (retrieving data from a database and displaying it in a page, validating user-entered data and saving it in a database, checking user permissions and logging users in, etc.), and are constructed using web frameworks that make these and other common web server operations easy.

+ +

Basic knowledge of programming concepts (or of a particular programming language) is useful, but not essential. Similarly, expertise in client-side coding is not required, but a basic knowledge will help you work better with the developers creating your client-side web "front end".

+ +

You will need to understand "how the web works". We recommend that you first read the following topics:

+ + + +

With that basic understanding, you'll be ready to work your way through the modules in this section. 

+ +

Modules

+ +

This topic contains the following modules. You should start with the first module, then go on to one of the following modules, which show how to work with two very popular server-side languages using appropriate web frameworks. 

+ +
+
Server-side website programming first steps
+
This module provides server-technology-agnostic information about server-side website programming, including answers to fundamental questions about server-side programming — "what it is", "how it differs from client-side programming", and "why it is so useful" — and an overview of some of the more popular server-side web frameworks and guidance on how to select the most suitable for your site. Lastly we provide an introductory section on web server security.
+
Django Web Framework (Python)
+
Django is an extremely popular and fully featured server-side web framework, written in Python. The module explains why Django is such a good web server framework, how to set up a development environment and how to perform common tasks with it.
+
Express Web Framework (Node.js/JavaScript)
+
Express is a popular web framework, written in JavaScript and hosted within the node.js runtime environment. The module explains some of the key benefits of this framework, how to set up your development environment and how to perform common web development and deployment tasks.
+
+ +

See also

+ +
+
Node server without framework
+
This article provides a simple static file server built with pure Node.js, for those of you not wanting to use a framework.
+
diff --git a/files/pl/learn/tools_and_testing/client-side_javascript_frameworks/index.html b/files/pl/learn/tools_and_testing/client-side_javascript_frameworks/index.html new file mode 100644 index 0000000000..fa16dab55c --- /dev/null +++ b/files/pl/learn/tools_and_testing/client-side_javascript_frameworks/index.html @@ -0,0 +1,147 @@ +--- +title: Understanding client-side JavaScript frameworks +slug: Learn/Tools_and_testing/Client-side_JavaScript_frameworks +tags: + - Beginner + - Frameworks + - JavaScript + - Learn + - NeedsTranslation + - TopicStub + - client-side +translation_of: Learn/Tools_and_testing/Client-side_JavaScript_frameworks +--- +
{{LearnSidebar}}
+ +

JavaScript frameworks are an essential part of modern front-end web development, providing developers with tried and tested tools for building scalable, interactive web applications. Many modern companies use frameworks as a standard part of their tooling, so many front-end development jobs now require framework experience.

+ +

As an aspiring front-end developer, it can be hard to work out where to begin when learning frameworks — there are so many different frameworks to choose from, new ones appear all the time, they mostly work in a similar way but do some things differently, and there are some specific things to be careful about when using frameworks.

+ +

In this set of articles, we are aiming to give you a comfortable starting point to help you begin learning frameworks. We are not aiming to exhaustively teach you everything you need to know about React/ReactDOM, or Vue, or some other specific framework; the framework teams' own docs do that job already. Instead, we want to back up and first answer more fundamental questions such as:

+ + + +

After that, we'll provide some tutorials covering the essentials of some of the major frameworks, to provide you with enough context and familiarity to start going into greater depth yourself. We want you to go forward and learn about frameworks in a pragmatic way that doesn't forget about web platform fundamental best practices such as accessibility.

+ +

Get started now, with "Introduction to client-side frameworks"

+ +

Prerequisites

+ +

You should really learn the basics of the core web languages first before attempting to move on to learning client-side frameworks — HTML, CSS, and especially JavaScript.

+ +

Your code will be richer and more professional as a result, and you'll be able to troubleshoot problems with more confidence if you understand the fundamental web platform features that the frameworks are building on top of.

+ + +
+

Looking to become a front-end web developer?

+ +

We have put together a course that includes all the essential information you need to work towards your goal.

+ +

Get started

+
+ +

Introductory guides

+ +
+
1. Introduction to client-side frameworks
+
We begin our look at frameworks with a general overview of the area, looking at a brief history of JavaScript and frameworks, why frameworks exist and what they give us, how to start thinking about choosing a framework to learn, and what alternatives there are to client-side frameworks.
+
2. Framework main features
+
Each major JavaScript framework has a different approach to updating the DOM, handling browser events, and providing an enjoyable developer experience. This article will explore the main features of “the big 4” frameworks, looking at how frameworks tend to work from a high level and the differences between them.
+
+ +

React tutorials

+ +
+

Note: React tutorials last tested in May 2020, with React/ReactDOM 16.13.1 and create-react-app 3.4.1.

+ +

If you need to check your code against our version, you can find a finished version of the sample React app code in our todo-react repository. For a running live version, see https://mdn.github.io/todo-react-build/.

+
+ +
+
1. Getting started with React
+
In this article we will say hello to React. We'll discover a little bit of detail about its background and use cases, set up a basic React toolchain on our local computer, and create and play with a simple starter app, learning a bit about how React works in the process.
+
2. Beginning our React todo list
+
Let's say that we’ve been tasked with creating a proof-of-concept in React – an app that allows users to add, edit, and delete tasks they want to work on, and also mark tasks as complete without deleting them. This article will walk you through putting the basic App component structure and styling in place, ready for individual component definition and interactivity, which we'll add later.
+
3. Componentizing our React app
+
At this point, our app is a monolith. Before we can make it do things, we need to break it apart into manageable, descriptive components. React doesn’t have any hard rules for what is and isn’t a component – that’s up to you! In this article, we will show you a sensible way to break our app up into components.
+
4. React interactivity: Events and state
+
With our component plan worked out, it's now time to start updating our app from a completely static UI to one that actually allows us to interact and change things. In this article we'll do this, digging into events and state along the way.
+
5. React interactivity: Editing, filtering, conditional rendering
+
As we near the end of our React journey (for now at least), we'll add the finishing touches to the main areas of functionality in our Todo list app. This includes allowing you to edit existing tasks and filtering the list of tasks between all, completed, and incomplete tasks. We'll look at conditional UI rendering along the way.
+
6. Accessibility in React
+
In our final tutorial article, we'll focus on (pun intended) accessibility, including focus management in React, which can improve usability and reduce confusion for both keyboard-only and screen reader users.
+
7. React resources
+
Our final article provides you with a list of React resources that you can use to go further in your learning.
+
+ +

Ember tutorials

+ +
+

Note: Ember tutorials last tested in May 2020, with Ember/Ember CLI version 3.18.0.

+ +

If you need to check your code against our version, you can find a finished version of the sample Ember app code in the ember-todomvc-tutorial repository. For a running live version, see https://nullvoxpopuli.github.io/ember-todomvc-tutorial/ (this also includes a few additional features not covered in the tutorial).

+
+ +
+
1. Getting started with Ember
+
In our first Ember article we will look at how Ember works and what it's useful for, install the Ember toolchain locally, create a sample app, and then do some initial setup to get it ready for development.
+
2. Ember app structure and componentization
+
In this article we'll get right on with planning out the structure of our TodoMVC Ember app, adding in the HTML for it, and then breaking that HTML structure into components.
+
3. Ember interactivity: Events, classes and state
+
At this point we'll start adding some interactivity to our app, providing the ability to add and display new todo items. Along the way, we'll look at using events in Ember, creating component classes to contain JavaScript code to control interactive features, and setting up a service to keep track of the data state of our app.
+
4. Ember Interactivity: Footer functionality, conditional rendering
+
Now it's time to start tackling the footer functionality in our app. Here we'll get the todo counter to update to show the correct number of todos still to complete, and correctly apply styling to completed todos (i.e. where the checkbox has been checked). We'll also wire up our "Clear completed" button. Along the way, we'll learn about using conditional rendering in our templates.
+
5. Routing in Ember
+
In this article we learn about routing or URL-based filtering as it is sometimes referred to. We'll use it to provide a unique URL for each of the three todo views — "All", "Active", and "Completed".
+
6. Ember resources and troubleshooting
+
Our final Ember article provides you with a list of resources that you can use to go further in your learning, plus some useful troubleshooting and other information.
+
+ +

Vue tutorials

+ +
+

Note: Vue tutorials last tested in May 2020, with Vue 2.6.11.

+ +

If you need to check your code against our version, you can find a finished version of the sample Vue app code in our todo-vue repository. For a running live version, see https://mdn.github.io/todo-vue/dist/.

+
+ +
+
1. Getting started with Vue
+
Now let's introduce Vue, the third of our frameworks. In this article, we'll look at a little bit of Vue background, learn how to install it and create a new project, study the high-level structure of the whole project and an individual component, see how to run the project locally, and get it prepared to start building our example.
+
2. Creating our first Vue component
+
Now it's time to dive deeper into Vue, and create our own custom component — we'll start by creating a component to represent each item in the todo list. Along the way, we'll learn about a few important concepts such as calling components inside other components, passing data to them via props and saving data state.
+
3. Rendering a list of Vue components
+
At this point we've got a fully working component; we're now ready to add multiple ToDoItem components to our App. In this article we'll look at adding a set of todo item data to our App.vue component, which we'll then loop through and display inside ToDoItem components using the v-for directive.
+
4. Adding a new todo form: Vue events, methods, and models
+
We now have sample data in place and a loop that takes each bit of data and renders it inside a ToDoItem in our app. What we really need next is the ability to allow our users to enter their own todo items into the app, and for that, we'll need a text <input>, an event to fire when the data is submitted, a method to fire upon submission to add the data and rerender the list, and a model to control the data. This is what we'll cover in this article.
+
5. Styling Vue components with CSS
+
The time has finally come to make our app look a bit nicer. In this article, we'll explore the different ways of styling Vue components with CSS.
+
6. Using Vue computed properties
+
In this article we'll add a counter that displays the number of completed todo items, using a feature of Vue called computed properties. These work similarly to methods but only re-run when one of their dependencies changes.
+
7. Vue conditional rendering: editing existing todos
+
Now it is time to add one of the major parts of functionality that we're still missing — the ability to edit existing todo items. To do this, we will take advantage of Vue's conditional rendering capabilities — namely v-if and v-else — to allow us to toggle between the existing todo item view and an edit view where you can update todo item labels. We'll also look at adding functionality to delete todo items.
+
8. Focus management with Vue refs
+
We are nearly done with Vue. The last bit of functionality to look at is focus management, or put another way, how we can improve our app's keyboard accessibility. We'll look at using Vue refs to handle this — an advanced feature that allows you to have direct access to the underlying DOM nodes below the virtual DOM, or direct access from one component to the internal DOM structure of a child component.
+
9. Vue resources
+
Now we'll round off our study of Vue by giving you a list of resources that you can use to go further in your learning, plus some other useful tips.
+
+ +

Which frameworks did we choose?

+ +

We are publishing our initial set of articles with guides focusing on three of the major frameworks out there — React/ReactDOM, Ember, and Vue. There is a variety of reasons for this:

+ + + +

We want to say this upfront — we've not chosen the frameworks we are focusing on because we think they are the best, or because we endorse them in any way. We just think they score highly on the above criteria.

+ +

Note that we were hoping to have more frameworks included upon initial publication, but we decided to release the content and then add more framework guides later, rather than delay it longer. If your favourite framework is not represented in this content and you'd like to help change that, feel free to discuss it with us! Get in touch with us via Matrix, or Discourse, or drop us a mail on the mdn-admins list.

diff --git a/files/pl/learn/tools_and_testing/index.html b/files/pl/learn/tools_and_testing/index.html new file mode 100644 index 0000000000..9430b94ada --- /dev/null +++ b/files/pl/learn/tools_and_testing/index.html @@ -0,0 +1,48 @@ +--- +title: Tools and testing +slug: Learn/Tools_and_testing +tags: + - Accessibility + - Automation + - Beginner + - CSS + - CodingScripting + - HTML + - JavaScript + - Landing + - Learn + - NeedsTranslation + - Testing + - Tools + - Topic + - TopicStub + - cross browser + - user testing +translation_of: Learn/Tools_and_testing +--- +
{{LearnSidebar}}
+ +

Once you've started to become comfortable programming with core web technologies (like HTML, CSS, and JavaScript), and you start to get more experience, read more resources, and learn more tips and tricks, you'll start to come across all kind of tools, from ready-rolled CSS and JavaScript, to testing and automation apps, and more besides. As your web projects become larger and more complex, you'll want to start taking advantage of some of these tools, and working out reliable testing plans for your code. This part of the learning area aims to give you what you need get started and make informed choices.

+ +

The web industry is an exciting place to work, but it is not without its complications. The core technologies we use to build web sites are fairly stable now, but new features are being added all the time, and new tools — that facilitate working with, and are built on top of these technologies — are constantly appearing. On top of that, we still need to keep cross-browser support in the forefront of our minds, and make sure that our code follows best practices that allow our projects to work across different browsers and devices that our users are using to browser the Web, and be usable by people with disabilities.

+ +

Working out what tools you should be using can be a difficult process, so we have written this set of articles to inform you of what types of tool are available, what they can do for you, and how to make use of the current industry favourites.

+ +
+

Note: Because new tools appear and old ones go out of fashion all the time, we have deliberately written this material to be as neutral as possible — we want to focus first and foremost on the general types of tasks these tools will help you accomplish, and keep prescribing specific tools to a minimum. We obviously need to show tool usage to demonstrate specific techniques, but be clear that we do not necessarily recommend these tools as the best or only way to do things — in most cases there are other ways, but we want to provide you with a clear methodology that works.

+
+ +

Learning pathway

+ +

You should really learn the basics of the core HTML, CSS, and JavaScript languages first before attempting to use the tools detailed here. For example, you'll need to know the fundamentals of these languages before you start debugging problems in complex web code, or making effective use of JavaScript libraries, or writing tests and running them against your code using test runners, etc.

+ +

You need a solid foundation first.

+ +

Modules

+ +
+
Real world web development tools (TBD)
+
In this module, we explore the different kinds of web development tools available. This includes reviewing the most common kinds of tasks you may be called on to solve, how they can fit together in a workflow, and the best tools currently avaiable for carrying out those tasks.
+
Cross browser testing
+
This module looks specifically at the area of testing web projects across different browsers. Here we look identifying your target audience (e.g. what users, browsers and devices do you most need to worry about?), how to go about doing testing, the main issues that you'll face with different types of code and how to fix/mitigate those, what tools are most useful in helping you test and fix problems, and how to use automation to speed up testing.
+
diff --git "a/files/pl/lista_komponent\303\263w_xpcom/index.html" "b/files/pl/lista_komponent\303\263w_xpcom/index.html" new file mode 100644 index 0000000000..db4ee1e416 --- /dev/null +++ "b/files/pl/lista_komponent\303\263w_xpcom/index.html" @@ -0,0 +1,19 @@ +--- +title: Lista komponentów XPCOM +slug: Lista_komponentów_XPCOM +tags: + - Dokumentacja_API_XPCOM + - Komponenty + - Wszystkie_kategorie + - XPCOM +--- +

Będą tu komponenty - podobne do listy interfejsów. +

+

Komponenty, lista alfabetyczna (niekompletna)

+ +
+
+{{ languages( { "en": "en/XPCOM_components_list", "fr": "fr/Liste_des_composants_XPCOM", "ja": "ja/XPCOM_components_list", "ko": "ko/XPCOM_components_list" } ) }} diff --git a/files/pl/lokalizacja/index.html b/files/pl/lokalizacja/index.html new file mode 100644 index 0000000000..52d4237dc7 --- /dev/null +++ b/files/pl/lokalizacja/index.html @@ -0,0 +1,66 @@ +--- +title: Lokalizacja +slug: Lokalizacja +tags: + - Lokalizacja + - Wszystkie_kategorie +translation_of: Glossary/Localization +--- +

 

+
+

Lokalizacja jest procesem tłumaczenia interfejsu aplikacji z jednego języka na drugi oraz jej przystosowywania do innej kultury. Poniższe zasoby odnoszą się głównie do tematyki tworzenia lokalizowanych aplikacji i rozszerzeń Mozilli.

+
+ + + + + + + +
+

Wybrane artykuły

+
+
+ Kurs XUL:Lokalizacja
+
+ Artykuł w kursie XUL poświęcona lokalizacji XUL-owych aplikacji.
+
+
+
+ Kurs XUL:Plik własności
+
+ Artykuł w kursie XUL dotycząca plików Property.
+
+
+
+ Pisanie kodu lokalizującego
+
+ Best practices and guidelines for Programmers to play nicely with Localization.
+
+
+
+ Lokalizacja opisu rozszerzenia
+
+ By zlokalizować opis rozszerzenia (opis pokazujący się pod nazwą rozszerzenia w oknie Dodatki) musisz użyć specjalnego klucza własności by nadpisać opis zawarty w pliku install.rdf. Artykuł zawiera instrukcję jak zmodyfikować tenże klucz własności.
+
+

Pokaż wszystkie...

+
+

Inne strony

+ +

Powiązane tematy

+
+
+ Rozszerzenia, XULPokaż wszystkie...
+
+
+

Categories

+

Interwiki Language Links

+

 

+

 

+
+  
+

{{ languages( { "en": "en/Localization", "es": "es/Localizaci\u00f3n", "fr": "fr/Localisation", "it": "it/Localization", "ja": "ja/Localization", "pt": "pt/Localiza\u00e7\u00e3o", "zh-tw": "zh_tw/\u672c\u5730\u5316" } ) }}

diff --git a/files/pl/lokalizacja_opisu_rozszerzenia/index.html b/files/pl/lokalizacja_opisu_rozszerzenia/index.html new file mode 100644 index 0000000000..637b3fab1e --- /dev/null +++ b/files/pl/lokalizacja_opisu_rozszerzenia/index.html @@ -0,0 +1,91 @@ +--- +title: Lokalizacja opisu rozszerzenia +slug: Lokalizacja_opisu_rozszerzenia +tags: + - Dodatki + - Lokalizacja + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Mozilla/Localization/Localizing_extension_descriptions +--- +

{{ Gecko_minversion_header(1.9) }} {{ Fx_minversion_header(3) }}

+

Lokalizowanie w Gecko 1.9

+

Gecko 1.9 wprowadza nowe, bardziej rozbudowane metody lokalizacji opisów dodatków oraz innych meta danych. Teraz wszystkie opisy występują w pliku install.rdf we własności em:localized. Każdy z nich ma co najmniej jedną własność em:locale określającą lokalizację, dla której należy ją użyć oraz strumienie dla danej lokalizacji. Poniższy przykład demonstruje opisaną budowę (dla większej przejrzystości większość własności manifestu zostało usuniętych):

+
<?xml version="1.0"?>
+
+<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+  <Description about="urn:mozilla:install-manifest">
+    <em:id>TabSidebar@blueprintit.co.uk</em:id>
+    <em:localized>
+      <Description>
+        <em:locale>de</em:locale>
+        <em:name>Tab Sidebar</em:name>
+        <em:description>Zeigt in einer Sidebar Vorschaubilder der Inhalte aller offenen Tabs an.</em:description>
+      </Description>
+    </em:localized>
+    <em:localized>
+      <Description>
+        <em:locale>es</em:locale>
+        <em:name>Tab Sidebar</em:name>
+        <em:description>Muestra una vista previa de sus pestañas en su panel lateral.</em:description>
+      </Description>
+    </em:localized>
+    <em:localized>
+      <Description>
+        <em:locale>nl</em:locale>
+        <em:name>Tab Sidebar</em:name>
+        <em:description>Laat voorbeeldweergaven van uw tabbladen in de zijbalk zien.</em:description>
+      </Description>
+    </em:localized>
+    <em:name>Tab Sidebar</em:name>
+    <em:description>Displays previews of your tabs in your sidebar.</em:description>
+  </Description>
+</RDF>
+
+

W ten sposób można lokalizować wszystkie meta dane wymienione w dalszej części artykułu w sekcji Lokalizowane łańcuchy znaków. Informacje lokalizacyjne, dostarczane przez własność em:localized, można zastąpić zestawem własności lokalizacyjnych omówionych w sekcji Lokalizowanie opisu przed Gecko 1.9.

+

Proces doboru kodu lokalizacji dla własności em:localized przebiega następująco:

+
    +
  1. Jeśli we własności em:locale istnieje kod odpowiadający żądanej lokalizacji, należy go użyć.
  2. +
  3. Jeśli występuje kod nie w pełni odpowiadający lokalizacji, należy użyć część najbardziej odpowiadającą. Części powinny być oddzielone myślnikiem (np. kod pl będzie pasował do pl-PL i odwrotnie).
  4. +
  5. Jeśli występuje więcej niż jedna lokalizacja z tą samą ilością pasujących części, należy użyć najbardziej ogólną (np. en dla kodu en-GB i en-US).
  6. +
+

W trakcie instalacji będzie wyszukiwana lokalizacja właściwa dla obecnie używanych ustawień językowych aplikacji. Jeśli nie zostanie znaleziona, będzie użyta lokalizacja domyślna - en-US.

+

Jeśli kod jest określony i nie ma pasującej własności em:localized dla obecnie używanych ustawień językowych lub lokalizacji en-US, zostanie użyta, tak jak to było przed wprowadzeniem Gecko 1.9, lokalizacja określona w manifeście instalacyjnym.

+

Lokalizowanie opisu przed Gecko 1.9

+

W starszych wersjach Gecko, aby zlokalizować opis dodatku przeznaczonego dla aplikacji opartych na toolkicie (Firefox, Thunderbird, Sunbird), twórcy dodatków muszą zrobić to, stosując specjalną metodę definiowania tego opisu.

+

 

+ +

Lokalizowane łańcuchy znaków

+

Stosując powyższą metodę można lokalizować następujące meta dane dodatku:

+ +

Lokalizowane listy

+

W przypadku, gdy istnieje kilka takich samych wartości, indeks numeryczny przypisany do końcowej nazwy preferencji stanowi o kolejności ich wyświetlania:

+
extensions.ID_ROZSZERZENIA.contributor.1=PIERWSZA_ZLOKALIZOWANA_NAZWA
+extensions.ID_ROZSZERZENIA.contributor.2=DRUGA_ZLOKALIZOWANA_NAZWA
+extensions.ID_ROZSZERZENIA.contributor.3=TRZECIA_ZLOKALIZOWANA_NAZWA
+
+pref("extensions.ID_ROZSZERZENIA.contributor.1", "ŚCIEŻKA_DO_PLIKU_LOKALIZACYJNEGO");
+pref("extensions.ID_ROZSZERZENIA.contributor.2", "ŚCIEŻKA_DO_PLIKU_LOKALIZACYJNEGO");
+pref("extensions.ID_ROZSZERZENIA.contributor.3", "ŚCIEŻKA_DO_PLIKU_LOKALIZACYJNEGO");
+
+

Tym sposobem można zlokalizować następujące elementy:

+ diff --git a/files/pl/lokalizacja_rozszerzenia/index.html b/files/pl/lokalizacja_rozszerzenia/index.html new file mode 100644 index 0000000000..9f3454d651 --- /dev/null +++ b/files/pl/lokalizacja_rozszerzenia/index.html @@ -0,0 +1,103 @@ +--- +title: Lokalizacja rozszerzenia +slug: Lokalizacja_rozszerzenia +tags: + - Dodatki + - Lokalizacja + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/Localizing_an_extension +--- +

{{ PreviousNext("Dodawanie preferencji do rozszerzenia", "Updating an extension to support multiple Mozilla applications") }}

+

Poniższy artykuł poszerza poprzedni przykład pisania wtyczek o dodanie wsparcia lokalizacyjnego do naszego rozszerzenia "stock watcher". Wykonanie kilka prostych kroków znacznie ułatwia zlokalizowanie wtyczki bez konieczności edytowania plików XUL-a lub JavaScriptu.

+

Jeśli jeszcze nie tworzyłeś rozszerzenia, lub chciałbyś sobie przypomnieć jak to się robi, to polecam zobaczyć poniższe artykuły:

+ +

Pobieranie przykładu

+

Możesz pobrać kod przykładu dla tegoż artykułu.

+

http://developer.mozilla.org/samples...ockwatcher.zip

+

Lokalizacja stringów w plikach XUL

+

Tworzenie plików locale

+

Każdy plik XUL zawierający interfejs użytkownika twojego rozszerzenia to powinien zawierać plik locale w swoim katalogu locale. Każdy plik locale file mapuje nazwy, do których się odwołują ciągi w plikach XUL. Okno dialogowe własności, dla plików XUL to options.xul ma odpowiadający mu plik options.dtd wyglądający jak poniżej:

+
 <!ENTITY options_window_title "StockWatcher 2 Preferences">
+ <!ENTITY options_symbol.label "Stock to watch: ">
+
+

Encja "options_window_title" mapuje ciąg "StockWatcher 2 Preferences", który będzie użyty jako tytuł okna własności.

+

Plik stockwatcher2.dtd zawiera mapowanie dla pliku stockwatcher2.xul:

+
 <!ENTITY panel_loading "Loading...">
+ <!ENTITY menu_refresh_now.label "Refresh Now">
+ <!ENTITY menu_apple.label "Apple (AAPL)">
+ <!ENTITY menu_google.label "Google (GOOG)">
+ <!ENTITY menu_microsoft.label "Microsoft (MSFT)">
+ <!ENTITY menu_yahoo.label "Yahoo (YHOO)">
+
+

Aktualizacja plików XUL

+

Każdy plik XUL musi posiadać odpowiadający mu plik locale. Musimy również zaktualizować kod, by używać encji zamiast strumieni, tak by podmiany bazowały na aktualnie aktywnej lokalizacji.

+

W celu dodania odnośnika do odpowiedniego pliku locale dla danego plika XUL-a należy dodać następującą linię do pliku XUL-a. Do pliku options.xul, dodajemy:

+
 <!DOCTYPE window SYSTEM "chrome://stockwatcher2/locale/options.dtd">
+
+

Następnie dodajemy podobną linię do pliku stockwatcher.xul:

+
 <!DOCTYPE overlay SYSTEM "chrome://stockwatcher2/locale/stockwatcher2.dtd">
+
+

Dla większych aplikacji może zachodzić potrzeba używania encji z większej liczby plików locale w pojedynczym pliku XUL. Artykuł Zastosowanie wielu plików DTD opisuje jak tego dokonać.

+

Zauważ, że adresy URL plików DTD nie zawierają nazwy lokalizacji jaką należy użyć. Rejestr chrome przetwarza URI bazując na aktualnych ustawieniach językowych użytkownika oraz danych w twoim manifeście Chrome.

+

Następnie zastępujemy po prostu strumień tekstu w plikach XUL na odpowiednie encje. Przykładowo w stockwatcher2.xul zmieniamy linię:

+
 <menuitem label="Refresh Now" oncommand="StockWatcher.refreshInformation()"/>
+
+

na:

+
 <menuitem label="&menu_refresh_now.label;" oncommand="StockWatcher.refreshInformation()"/>
+
+

Należy tego dokonać dla każdego strumienia we wszystkich plikach XUL.

+

Aktualizacja manifestu chrome

+

Aby dodać nowe lokalizacje, musimy uaktualnić plik chrome.manifest dodając po jednej linii dla każdej lokalizacji:

+
 locale stockwatcher2 en-US chrome/locale/en-US/
+
+

To informuje Firefoksa o tym, że lokalizacja en-US jest umieszczona w katalogu chrome/locale/en-US.

+

Lokalizacja stringów w kodzie JavaScript

+

Jeśli twój kod JavaScriptu zawiera stringi, które należałoby zlokalizować jak jest to pokazane w naszym przykładzie "stock watcher", musimy uczynić je lokalizowanymi. Można to zrobić poprzez przeniesienie do paczki stringów. Są one tworzone poprzez określenie pliku własności mapującego klucze na wartości stringów. Szczegółowych wyjaśnień należy szukać w artykule Kurs XUL:Plik własności.

+

Tworzenie pliku własności

+

Najpierw musimy stworzyć plik własności dla strumieni literałów używanych w kodzie JavaScriptu w stockwatcher2.js:

+
changeString=Chg:
+openString=Open:
+lowString=Low:
+highString=High:
+volumeString=Vol:
+
+

Plik <tt>stockwatcher2.properties</tt> przedstawiony powyżej pokazuje mapowanie 5 kluczy (changeString, openString, lowString, highString i volumeString) na odpowiedni tekst angielski.

+

Tworzenie paczki strumieni

+

Kolejnym krokiem jest zmodyfikowanie pliku <tt>stockwatcher2.xul</tt> w celu stworzenia odnośnika do tego pliku własności. Tworzymy paczkę strumieni za pomocą następującego kodu:

+
 <stringbundleset id="stringbundleset">
+   <stringbundle id="string-bundle" src="chrome://stockwatcher2/locale/stockw...er2.properties"/>
+ </stringbundleset>
+
+

Nowa paczka została stworzona i do niej odnosi się teraz ID "string-bundle", którego klucze oraz wartości należy załadować z pliku stockwatcher2.properties stworzonego uprzednio.

+

Aktualizacja kodu JavaScriptu

+

Jesteśmy teraz gotowi do przejrzenia kodu JavaScriptu, by załadować strumienie z paczki strumienia zamiast używać strumieni literałów. Dotyczy to przepisania funkcji refreshInformation() dla wczytania strumieni oraz funkcji infoReceived(), by używać wczytanych, zlokalizowanych strumieni zamiast strumieni literałów. Dodajemy do refreshInformation() następujący kod:

+
 var stringsBundle = document.getElementById("string-bundle");
+ var changeString = stringsBundle.getString('changeString') + " ";
+ var openString = stringsBundle.getString('openString') + " ";
+ var lowString = stringsBundle.getString('lowString') + " ";
+ var highString = stringsBundle.getString('highString') + " ";
+ var volumeString = stringsBundle.getString('volumeString') + " ";
+
+

Kod odnosi się do elementu paczki strumieni dodanych w pliku <tt>stockwatcher2.xul</tt> poprzez wywołanie document.getElementById(), gdzie ID to string-bundle. Następnie pobiera pojedynczo wszystkie potrzebne strumienie z paczki wywołując metodę getString() i przekazując odpowiedni klucz dla każdego strumienia.

+

W tym przypadku dodajemy również spacje do końca każdego strumienia. Jest to po prostu sposób działania tegoż programu, a nie coś co należy robić.

+

Następnie zastępujemy każdy strumień literałów odpowiednią zmienną:

+
 samplePanel.tooltipText = changeString + fieldArray[4] + " | " +
+     openString + fieldArray[5] + " | " +
+     lowString + fieldArray[6] + " | " +
+     highString + fieldArray[7] + " | " +
+     volumeString + fieldArray[8];
+
+

Lokalizacja opisu w install.rdf

+

Zobacz Lokalizacja opisu rozszerzenia.

+

Dodawanie innych lokalizacji

+

W celu dodania nowej lokalizacji należy dodać linię do manifestu chrome odwołującą się do tegoż języka. Przykładowo, jeśli chcesz dodać język hiszpański linia ta wyglądać będzie następująco:

+
 locale stockwatcher2 es-ES chrome/locale/es-ES/
+
+

Następnie stwórz podkatalog chrome/locale/es-ES i dodaj wszystkie potrzebne pliki DTD; w tym przypadku to options.dtd oraz stockwatcher2.dtd. Powyższe pliki powinny mapować te same znaczniki do hiszpańskiego tłumaczenia strumieni używanych przez rozszerzenie.

+

Podobnie jest, gdy posiadamy jakieś pliki własności zawierające lokalizowane strumienie w kodzie JavaScriptu. Musimy stworzyć zlokalizowaną wersję tychże plików własności w katalogu chrome/locale/es-ES. Tylko strumienie powinny być lokalizowane; klucze powinny być takie same dla każdej lokalizacji.

+

{{ Previous("Dodawanie preferencji do rozszerzenia") }}

diff --git a/files/pl/manifesty_instalacji/index.html b/files/pl/manifesty_instalacji/index.html new file mode 100644 index 0000000000..84a2118345 --- /dev/null +++ b/files/pl/manifesty_instalacji/index.html @@ -0,0 +1,444 @@ +--- +title: Manifesty Instalacji +slug: Manifesty_Instalacji +tags: + - Rozszerzenia + - Strony_wymagające_dopracowania + - Toolkit API +translation_of: Archive/Add-ons/Install_Manifests +--- +

Wprowadzenie

+ +

Manifest Instalacji to plik, dzięki któremu Menedżer Dodatków określa szczegółowe informacje na temat dodatku, który jest instalowany. Zawiera on dane identyfikujące dodatek oraz informacje takie, jak: kto go stworzył, gdzie można znaleźć więcej informacji na jego temat, z jakimi wersjami aplikacji jest on zgodny, jak powinien przebiegać proces aktualizacji i tym podobne.

+ +

Manifest Instalacji jest zapisany w formacie RDF/XML.

+ +

Plik musi mieć nazwę install.rdf. Należy go umieścić na najwyższym poziomie pliku XPI.

+ +

Budowa

+ +

Podstawowy Manifest Instalacji ma budowę:

+ +
<?xml version="1.0"?>
+
+<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+  <Description about="urn:mozilla:install-manifest">
+    <!-- własności -->
+  </Description>
+</RDF>
+
+ +

Niektóre własności są wymagane, inne nie. Jedne to proste łańcuchy tekstu, drugie to złożone zasoby.

+ +

Wymagane własności

+ +

Manifest Instalacji musi określać te własności, inaczej Twój dodatek nie zostanie zainstalowany.

+ +

id

+ +

id rozszerzenia to:

+ + + +

Ostatni format jest łatwiejszy do stworzenia i korzystania. Firefox 1.5 upewni się, że w twoim manifeście znajduje się id w jednym z podanych formatów, jeśli natrafi na źle sformułowany id, nie zainstaluje dodatku.

+ +

Przykłady

+ +
<em:id>mojawtyczka@mojastrona.pl</em:id>
+
+<em:id>{daf44bf7-a45e-4450-979c-91cf07434c3d}</em:id>
+
+ +

version

+ +

Numer wersji odpowiedni dla instalowanego dodatku.

+ +

Dla Firefoksa/Thundebirda 1.0, format wersji musi spełniać warunki podane w artykule Extension Versioning, Update and Compatibility. Dla Firefoksa/Thundebirda 1.5, zobacz Toolkit version format.

+ +

Przykłady

+ +
<em:version>2.0</em:version>
+
+<em:version>1.0.2</em:version>
+
+<em:version>0.4.1.2005090112</em:version>
+
+
+ +

Firefox 1.5 - dodatki, które nie mają poprawnie określonego numeru wersji nie będą instalowane.

+ +

Dodatki hostowane na addons.mozilla.org - strona z aktualizacjami Mozilli może przepakować i naprawić lub odrzucić dodatek ze źle określonym numerem wersji.

+ +

type

+ +

Liczba całkowita określająca typ dodatku.

+ + + + + + + + + + + + + + + + + + + + + + + + +
2Rozszerzenia
4Motywy
8Lokalizacje
16Wtyczki
32Multiple Item Package
+ +

Przykłady

+ +
<em:type>2</em:type>
+
+ +

{{ Fx_minversion_inline(1.5) }} Tę własność dodano w Firefoksie 1.5 i jest ona wymagana tylko dla dodatków innych niż Rozszerzenia i Motywy.

+ +

targetApplication

+ +

Obiekt określający aplikację bazową dodatku. Oznacza to, że dodatek będzie działać z aplikacją identyfikowaną poprzez określoną własność (<em:id>)(zobacz pełną listę ID aplikacji na stronie Poprawne wersje aplikacji dla programistów dodatków), od minimalnej wersji (<em:minVersion>) do i włącznie z maksymalną wersją (<em:maxVersion>). Numery wersji określamy w ten sam sposób jak przy własności version będzie porównywany z wersją aplikacji; pozwala to autorowi rozszerzenia na określenie wersji Firefoksa, na których było ono testowane.

+ +

Uwaga: Firefoks 1.0-1.0.6 posiada wersję aplikacji 1.0. Uaktualnienia bezpieczeństwa oraz stabilności Firefoksa 1.5 posiadają wersje aplikacji 1.5.0.1, 1.5.0.2, itd. Rozszerzenia kompatybilne z Firefoksem lub Thunderbirdem 1.5 powinny określać maxVersion na 1.5.0.*, tak by były automatycznie zgodne z aktualizacjami bezpieczeństwa i stabilności.

+ +

Rozszerzenia kompatybilne z Firefoksem 2 powinny mieć określoną własność maxVersion jako 2.0.0.*

+ +

Manifest Instalacji musi określać przynajmniej jeden taki obiekt, a może więcej, jeżeli dodatek ma współpracować z wieloma aplikacjami, które posiadają Menedżera Dodatków (np. Firefox i Thunderbird)

+ +

Przykłady

+ +
<em:targetApplication>
+ <Description>
+  <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> Firefox
+  <em:minVersion>1.5</em:minVersion>
+  <em:maxVersion>2.0.0.*</em:maxVersion>
+ </Description>
+</em:targetApplication>
+
+ +

name

+ +

Nazwa dodatku wyświetlana w interfejsie użytkownika (UI).

+ +

Przykłady

+ +
<em:name>Moje Rozszerzenie</em:name>
+
+ +

Opcjonalne własności

+ +

Będziesz mógł określić te własności w zależności od możliwości Twojego dodatku.

+ +

localized

+ +

Allows you to localize the add-on's name, description, contributors and other metadata. The localized description must specify at least one em:locale which indicates which locales to use this information for.

+ +

Przykłady

+ +

This declares a set of add-on metadata to be displayed when the application is running in the de-DE locale.

+ +
<em:localized>
+  <Description>
+    <em:locale>de-DE</em:locale>
+    <em:name>Tab Sidebar</em:name>
+    <em:description>Zeigt in einer Sidebar Vorschaubilder der Inhalte aller offenen Tabs an.</em:description>
+  </Description>
+</em:localized>
+
+ +

The following properties which are described elsewhere in this page can be included in the localized property:

+ + + +

Więcej dokumentacji można znaleźć na stronie Lokalizacja opisu rozszerzenia.

+ +

{{ Fx_minversion_inline(3) }} Ta własność została dodana dla Firefoksa 3.

+ +

description

+ +

Krótki opis dodatku wyświetlany w interfejsie użytkownika. Opis powinien mieścić się w krótkiej linijce tekstu.

+ +

Przykłady

+ +
<em:description>Zaawansowana wtyczka.</em:description>
+
+ +

creator

+ +

Imię twórcy/głównego developera wyświetlane w interfejsie użytkownika.

+ +

Przykłady

+ +
<em:creator>Jan Kowalski</em:creator>
+
+ +

lub

+ +
<em:creator>CoolExtension Team</em:creator>
+
+ +

developer

+ +

Imię i nazwisko (imiona i nazwiska) co-developers. Można określić więcej niż jednego programistę. {{ Fx_minversion_inline(2) }}

+ +

Przykłady

+ +
<em:developer>Jane Doe</em:developer>
+<em:developer>Koos van der Merwe</em:developer>
+
+ +

translator

+ +

Imię i nazwisko (imiona i nazwiska) osób tłumaczących. Można określić więcej niż jednego tłumacza. {{ Fx_minversion_inline(2) }}

+ +

Przykłady

+ +
<em:translator>Jan Kowalski</em:translator>
+<em:translator>Jan Nowak</em:translator>
+
+ +

contributor

+ +

Imiona i nazwiska dodatkowych współpracowników. Można określić więcej niż jednego współpracownika.

+ +

Przykłady

+ +
<em:contributor>Jan Kowalski</em:contributor>
+
+ +
<em:contributor>Jan Kowalski</em:contributor>
+<em:contributor>Jan Nowak</em:contributor>
+<em:contributor>Jan Kowalski</em:contributor>
+
+ +

homepageURL

+ +

Odnośnik do strony domowej dodatku wyświetlany w interfejsie użytkownika.

+ +

Przykład:

+ +
<em:homepageURL>http://www.foo.com/</em:homepageURL>
+
+ +

updateURL

+ +

Odnośnik do własnego Manifestu Aktualizacji, który określa dostępne aktualizacje dla twojego dodatku. Składnia jest opisana poniżej. Jeżeli użytkownik wybrał odpowiednią opcję, to Menadżer Dodatków, co jakiś czas sprawdza plik Manifestu, by określić, czy jest dostępna nowa wersja dodatku.

+ +
Ostrzeżenie: It is strongly recommended that the updateURL be an HTTPS (secure) link. Non-secure update URLs can be hijacked by a malicious update.rdf file, enabling malware to infiltrate the user's computer. Alternatively, you could host your extension on AMO and leave out the updateURL completely. This provides secure updates automatically.
+ +

Twój serwer musi wysłać ten plik w postaci text/rdf, inaczej automatyczna aktualizacja nie zadziała.

+ +

Menadżer Dodatków odpowiednio zamieni poniższe wartości w adresie URL, jeżeli chcesz, aby odpowiedź w formacie RDF była generowana dynamicznie, za pomocą PHP lub CGI:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
%REQ_VERSION%Wersja żądania. Obecnie 1
%ITEM_ID%id aktualizowanego dodatku
%ITEM_VERSION%version aktualizowanego dodatku
%ITEM_MAXAPPVERSION%maxVersion obiektu targetApplication odpowiadającego aplikacji bazowej aktualizowanego dodatku.
%APP_ID%id aplikacji bazowej
%APP_VERSION%version aplikacji bazowej
%APP_OS%Wartość OS_TARGET ze środowiska kompilacji Firefoksa, wykorzystywana do identyfikacji systemu operacyjnego. {{ Fx_minversion_inline(1.5) }}
%APP_ABI%Wartość TARGET_XPCOM_ABI ze środowiska kompilacji Firefoksa, identyfikująca kompilator/architekturę użytą do kompilacji aplikacji bazowej. {{ Fx_minversion_inline(1.5) }}
+ +

Przykłady

+ +

<em:updateURL>http://www.foo.com/update.cgi?id=%ITEM_ID%&amp;version=%ITEM_VERSION%</em:updateURL>

+ +

<em:updateURL>http://www.foo.com/extension/windows.rdf</em:updateURL>

+ +

Dodatki hostowane na addons.mozilla.org: Nie musisz określać własności updateURL. Domyślnie aplikacje Mozilli korzystające z Menedżera Dodatków (jak Firefox i Thunderbird) wysyłają żądanie aktualizacji do addons.mozilla.org. Za każdym razem, kiedy wgrasz nową wersję twojego dodatku albo zmienisz parametry kompatybilności poprzez interfejs autora, twój Manifest Aktualizacji zostanie wygenerowany automatycznie.

+ +

Format Manifestu Aktualizacji: Manifest Aktualizacji jest w formacie RDF/XML, który jest opisana tutaj: Manifest Aktualizacji

+ +

optionsURL

+ +

Adres chrome:// okna dialogowego opcji rozszerzenia. Jest to przydatne jedynie rozszerzeniom. Jeżeli właściwość jest określona, przycisk Opcje na liście rozszerzeń będzie dostępny i będzie wyświetlał podane okno.

+ +

Przykłady

+ +
<em:optionsURL>chrome://wtyka/content/opcje.xul</em:optionsURL>
+
+ +

aboutURL

+ +

Adres chrome:// okna dialogowego Informacje o rozszerzeniu dodatku. Jest to przydatne jedynie rozszerzeniom. Jeżeli własność jest określona, przycisk Informacje o rozszerzeniu... na liście rozszerzeń będzie dostępny i będzie wyświetlał podane okno zamiast domyślnego.

+ +

Przykłady

+ +
<em:aboutURL>chrome://wtyka/content/about.xul</em:aboutURL>
+
+ +

iconURL

+ +

Adres chrome:// do ikonki o rozmiarze 32x32, która pojawi się na liście dodatków. Jeżeli nie określisz tej własności zostanie użyta domyślna ikonka.

+ +
<em:iconURL>chrome://wtyka/skin/ikonka.png</em:iconURL>
+
+ +

hidden

+ +

Wartość logiczna, gdy jest prawdziwa, dodatek nie zostanie wyświetlony na liście; zapewnia, że dodatek instalowany jest w chronionej strefie dostępu (np. nie ze strony WWW). Wykorzystuję się to przy budowaniu integracyjnych haków w większych aplikacjach, które mają na liście rozszerzeń wpisy nie mające sensu.

+ +

Przykłady

+ +
<em:hidden>true</em:hidden>
+
+ +

Niezalecane właściwości

+ +

Te właściwości nie są wspierane w nowszych wersjach Menedżera Dodatków. Są one ignorowane, ale mogą być wymagane przez starsze wersje.

+ +

targetPlatform

+ +

A string specifying a platform that the addon supports. It contains either the value of OS_TARGET alone or combined with TARGET_XPCOM_ABI, separated by an underscore (_).

+ +

OS_TARGET is typically the output of the 'uname -s' command on the target platform, e.g.:

+ + + +

You can specify multiple targetPlatform properties per manifest. If any value matches the application's build parameters, it will be installed; if not, the user will get an appropriate error message.

+ +

Przykłady

+ +
<em:targetPlatform>WINNT_x86-msvc</em:targetPlatform>
+
+<em:targetPlatform>Linux</em:targetPlatform>
+
+<em:targetPlatform>Darwin_ppc-gcc3</em:targetPlatform>
+
+<em:targetPlatform>SunOS_sparc-sunc</em:targetPlatform>
+
+ +

Usually, you would use only the OS part for themes or for extensions that are not fully cross-platform. For extensions including binary (compiled) components, you should never use the OS alone, but include the ABI (s) that you compiled the components with. If you want to include multiple versions of the components, you should also use Platform-specific Subdirectories.

+ +

Notatki

+ + + + + +

{{ Fx_minversion_inline(1.5) }} This property was added for Firefox/Thunderbird 1.5. Previous versions of these applications will ignore the restrictions and install the addon regardless of the platform.

+ +

requires

+ +

This tag has a similar syntax to the <em:targetApplication> tag. If the addon specified by the <em:id> tag is not installed or has an incompatible version, the extension manager will disable your extension and show the message "Requires additional items". You can add as many <em:requires> tags as you like. Your extension will be disabled if any of the specified requirements fail.

+ +

Przykład

+ +
<em:requires>
+   <Description>
+     <!-- Lightning -->
+     <em:id>{e2fda1a4-762b-4020-b5ad-a41df1933103}</em:id>
+     <em:minVersion>0.5pre</em:minVersion>
+     <em:maxVersion>0.5pre</em:maxVersion>
+   </Description>
+ </em:requires>
+
+ +

Notatki

+ + + +

{{ Fx_minversion_inline(2) }} This property was added for Firefox/Thunderbird 2. Previous versions of these applications will ignore the restrictions and install the addon regardless of the requirements.

+ +

Dokumentacja przestarzałych własności

+ +

These properties were required in older versions of the Addon Manager, but have been replaced with newer and better mechanisms.

+ +

file

+ +

Firefox 1.0 Ta właściwość wskazywała na plik .jar, który zawierała pakiety chrome wymagające rejestracji w Rejestrze Chrome.

+ +

Właściwość <em:file> ma złożona obiektową wartość. Adres lokalny wartości wygląda tak: urn:mozilla:extension:file:PlikJar.jar przy czym PlikJar.jar to nazwa pliku jar, który zawiera pliki pakietów chrome. Może to być także nazwa niespakowanego folderu zawierającego pliki pakietów chrome (np. urn:mozilla:extension:file:folder). In either case, the referenced chrome package file(s) must be placed in the chrome subdirectory of the XPI's top level.

+ +

Obiekt ma właściwość package (ze ścieżką wewnątrz pliku lub folderu z pakietami, która prowadzi do pliku contents.rdf, który jest odpowiedzialny za rejestrację pakietu), właściwość locale (jw. tylko, że rejestracji lokalizacji) i właściwość skin (jw. odpowiedzialną za rejestracje motywów).

+ +

Obiekt jest zbędny w Firefoksie 1.5 ponieważ chrome.manifest na najwyższym poziomie XPI jest używany do lokalizacji chrome wymagających rejestracji.

+ +

Przykłady

+ +
<em:file>
+ <Description about="urn:mozilla:extension:file:wtyka.jar">
+  <em:package>content/wtyka/</em:package>
+  <em:locale>locale/pl/wtyka/</em:locale>
+  <em:skin>skin/classic/wtyka/<em:skin>
+ </Description>
+</em:file>
+
+ +

Manifest Instalcji może określać więcej niż jedną właściwość file, po jednej na każdy plik jar lub podfolder zawierający chrome do rejestracji.

+ +

Glossary

+ +

restricted access area

+ +

A restricted access area is an install location that could be restricted on a restricted-access account, regardless of whether or not the location is restricted with the current user privileges (zobacz {{ Source("toolkit/mozapps/extensions/public/nsIExtensionManager.idl#80", "nsIInstallLocation::restricted") }}). Currently, the ($APPDIR)/extensions folder and the registry install location under HKEY_LOCAL_MACHINE (see Adding Extensions using the Windows Registry for details) are restricted.

+ +

The ($PROFILE)/extensions and HKEY_CURRENT_USER install locations, on the other hand, are not restricted.

+ +

Więcej informacji

+ + diff --git a/files/pl/mdn/contribute/feedback/index.html b/files/pl/mdn/contribute/feedback/index.html new file mode 100644 index 0000000000..f71906f27b --- /dev/null +++ b/files/pl/mdn/contribute/feedback/index.html @@ -0,0 +1,48 @@ +--- +title: Prześlij opinię na temat MDN +slug: MDN/Contribute/Feedback +translation_of: MDN/Contribute/Feedback +--- +
{{MDNSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/MDN")}}
+ +

Witaj w Mozilla Developer Network! Jeśli masz sugestie lub masz problemy z korzystaniem z MDN, to jest to odpowiednie miejsce. Sam fakt, że chcesz podzielić się z nami opinią, sprawia, że ​​stajesz się jeszcze bardziej częścią społeczności Mozilli i z góry dziękujemy za zainteresowanie.

+ +

Masz kilka możliwości zaoferowania swojego wglądu; ten artykuł pomoże ci to zrobić.

+ +

Zaktualizuj dokumentację

+ +

Po pierwsze, jeśli zauważyłeś problem z dokumentacją, zawsze możesz to poprawić samodzielnie. Po prostu zaloguj się używając Github, a następnie kliknij w dowolny niebieski przycisk Edytuj, aby otworzyć edytor i przejść do świata wnoszenia wkładu do dokumentacji MDN. Ta dokumentacja znajduje się na wiki i jest prowadzona przez zespół wolontariuszy i płatnych pracowników, więc nie wstydź się - twoja gramatyka nie musi być doskonała. Poprawimy to, jeśli popełnisz błąd; nic się nie stało!

+ +

Aby uzyskać więcej informacji na temat wkładu w dokumentację MDN, zobacz:

+ + + +

Dołącz Do Rozmowy

+ +

Porozmawiaj Z Nami! Istnieje bardzo dużo sposobów na porozumiewanie sie z innymi ludźmi pracującymi na zawartości MDN.

+ +

Chat

+ +

+

Email

+ + +

Dłuższe dyskusje odbywają się na naszej liście mailingowej, dev-mdc@lists.mozilla.org. Możesz dodawać do listy bez konieczności zapisywania się do niego, ale w tym przypadku Twój post musi być zatwierdzony przez moderatora, co oznacza, że więcej czasu minie, zanim inni będą mogli go zobaczyć. Możesz przeglądać i wysyłać do dev-mdc poprzez wybór formatów:

+ +

{{ DiscussionList("dev-mdc", "mozilla.dev.mdc") }}

+ +

Zgłoś problem

+ +

Problemy z dokumentacją

+ +

W razie napotkania jakiegoś błędu w dokumentacji, którego nie jesteś w stanie naprawić z jakiegoś powodu, możesz zgłosić nam problem! Możesz użyć tego formularza do dowolnego problemu z dokumentacją, bez względu na to, czy jest to prosta korekta, czy prośba o zupełnie nową treść. Jak wspomniano wcześniej, zachęcamy do samodzielnego wprowadzenia zmian, ale ta opcja jest również dostępna dla Ciebie.

+ +

Problem ze stroną

+ +

Jeśli napotkasz problemy z witryną MDN lub masz pomysły na nowe funkcje witryny, możesz przesłać zgłoszenie do zespołu programistów MDN.

diff --git a/files/pl/mdn/contribute/getting_started/index.html b/files/pl/mdn/contribute/getting_started/index.html new file mode 100644 index 0000000000..65f8b7e1aa --- /dev/null +++ b/files/pl/mdn/contribute/getting_started/index.html @@ -0,0 +1,130 @@ +--- +title: Zacznij z MDN +slug: MDN/Contribute/Getting_started +tags: + - MDN + - Places + - nowy + - pierwsze kroki + - pomóż + - tłumacz + - zacznij +translation_of: MDN/Contribute/Getting_started +--- +
{{MDNSidebar}}

Jesteśmy otwartą społecznością deweloperów, pracujących nad stworzeniem lepszej sieci, niezależnej od platformy, przeglądarki czy konkretnej marki. Każdy może pomóc nam osiągnąć ten cel. Razem możemy dalej zmieniać oblicze sieci i dostarczać nasze innowacyjne rozwiązania wszystkim. Ta przygoda rozpoczyna się tutaj, z tobą.

+ +

Każda część MDN (dokumenty, dema, oraz same strony) tworzone są przez naszą społeczność deweloperów. Dołącz do nas!

+ +

3 proste kroki do MDN

+ +

MDN to wiki, gdzie każdy może dodać i edytować treść. Nie musisz być programistą czy ekspertem od nowych technologii. Mamy parę zadań, którymi trzebaby się zająć; od prostych czynności (sprawdzanie i korektowanie błędów w tekście) po bardziej złożone (jak pisanie dokumentacji do API).

+ +

Współpraca z nami jest łatwa i bezpieczna. Nawet jeśli zrobisz błąd, łatwo go będzie naprawić. Jeśli nie za bardzo wiesz jak rzeczy powinny wyglądać bądź nie czujesz się mistrzem gramatyki, nie przejmuj się! Zawsze znajdzie się wśród nas ktoś, kto poprawi błędy po tobie.

+ +

Krok 1: Stwórz konto na MDN

+ +

Aby zacząć współtworzyć MDN musisz założyć konto na portalu. Więcej informacji znajdziesz na stronie jak założyć konto.

+ +

Krok 2: Znajdź zadanie do dokończenia

+ +

Teraz, kiedy jesteś już zalogowany, przeczytaj opis zadań poniżej i zdecyduj czym mógłbyś się zająć.

+ +

Krok 3: Zrób zadanie

+ +

Kiedy już zdecydujesz czym mógłbyś się zająć, znajdź stronę czy kod i po prostu zacznij!

+ +

To co zrobisz nie musi być perfekcyjne, inni, przeglądając twoją pracę, na pewno poprawią błędy, które zauważą. Jeśli chcesz poeksperymentować zanim coś zrobisz, możesz wyedytować stronę Sandbox. Jakieś pytania w trakcie pracy? Na stronie Społeczność znajdziesz informacje, listy mailingowe i kanały do czatowania, gdzie znajdziesz potrzebną pomoc.

+ +

Kiedy skończysz, zacznij kolejne zadanie lub zajrzyj na stronę inne rzeczy, które mógłbyś zrobić na MDN.

+ +

Rodzaje zadań

+ +

Jest wiele zadań, w których mógłbyś pomóc na MDN. Wszystko zależy od twoich zainteresowań i umiejętności. Nawet jeśli niektóre zadania okażą się zbyt trudne, jest wiele prostszych, w których mógłbyś nam pomóc. Wiele z nich zajmie ci nie więcej niż 5 minut. Razem z zadaniem i jego krótkim opisem, znajdziesz przewidywalny czas jego wykonania.

+ +

Opcja 1: Lubię słowa

+ +

Możesz pomóc nam sprawdzać i poprawiać istniejące dokumenty.

+ + + +
Ważne: Jeśli poprawiasz artykuł lub tworzysz nowy, zapoznaj się najpierw z naszymi Zasadami. To pomoże nam zachować spójność treści.
+ +

Opcja 2: Lubię kod

+ +

Potrzebujemy więcej próbek kodu! Możesz pomóc nam przy naszej platformie Kuma!

+ + + +

Opcja 3: Lubię i słowa i kod

+ +

Niektóre zadania wymagają umiejętności zarówno technicznych jak i językowych. Możesz pisać nowe artykuły, sprawdzać treść artykułów pod względem technicznym bądź dostosowywać dokumenty.

+ + + +

Opcja 4: Chcę mieć MDN w moim języku

+ +

Wszystkie tłumaczenia i lokalizacje są robione przez nas, społeczność MDN.

+ + + +

Opcja 5: Znalazłem błąd, ale nie wiem jak go naprawić

+ +

Zgłoś go nam uzupełniając formularz błędu. (5 minut)

+ +

Use these field values:

+ + + + + + + + + + + + + + + + + + + + + + + + +
pole BugzillaWartość
produktDokumentacja Dewelopera
komponent +

Wybierz pole odpowiednie do tematu, lub "Ogólne", jeśli nie jesteś pewien które wybrać

+
URL (link)Wklej link do strony z błędem
Opis +

Podaj nam jak najwięcej informacji. Opisz błąd, bądź problem, na jaki się natknąłeś. Możesz podać też dodatkowe informacje, takie jak linki czy kontakty do osób ("skontaktuj się z ...").

+
+ +

Inne rzeczy, które możesz robić na MDN

+ + diff --git "a/files/pl/mdn/contribute/howto/budowa_dany_edycja_artyku\305\202/index.html" "b/files/pl/mdn/contribute/howto/budowa_dany_edycja_artyku\305\202/index.html" new file mode 100644 index 0000000000..5c7876a4b7 --- /dev/null +++ "b/files/pl/mdn/contribute/howto/budowa_dany_edycja_artyku\305\202/index.html" @@ -0,0 +1,66 @@ +--- +title: 'Jak budować, edytować dany artykuł' +slug: MDN/Contribute/Howto/Budowa_dany_edycja_artykuł +tags: + - Dokumentacja + - Edycja artykułu + - Przewodnik + - Publikaja artykułu + - Wprowadzanie zmian + - Wprowadzanie zmian w hasłach +translation_of: MDN/Contribute/Howto/Do_an_editorial_review +--- +

{{MDNSidebar}}

+ +

{{IncludeSubnav("/en-US/docs/MDN")}}

+ +

Edycja budowanego artykułu sklada sie z:

+ +

naprawy składni , poprawy błędów ortograficznych,
+ interpunkcyjnych zawartych w tekście, który powinien być łatwy do zrozumienia. Osoba redagująca tekst nie musi być pisarzem aby pomoc w tworzeniu dokumentacji technicznej MDN's, która zawsze jest otwarta na potrzeby udoskonalania dla przyszłych czytelników danego artykułu.

+ +

Ten przewodnik opisuje jak dokonać przeglądu edytorskiego, co ma zapewnić, że zawartość witryny MDN jest odpowiednio napisana i zredagowana.

+ +
+
Na czym polega to zadanie?
+
Edycja i korekta artykułów oznaczonych jako wymagające przeglądu redakcyjnego.
+
Gdzie należy to zrobić?
+
W obrębie konkretnych artykułów oznaczonych jako wymagające przeglądu redakcyjnego.
+
Co potrzebujesz aby dobrze wykonać to zadanie?
+
Musisz znać gramatykę i styl języka. Przegląd redakcyjny polega na zapewnieniu poprawnej gramatyki i stylistyki, braku literówek, użyciu właściwych terminów technicznych, zgodnie ze standardem podanym w Przewodniku tworzenia zasobów MDN.
+
W jakich krokach to osiągnąć?
+
+
    +
  1. Wybierz artykuł wymagający przejrzenia: +
      +
    1. Idź do listy artykułów wymagających oceny redakcji. Gdzie zobaczysz listę stron, które wymagają poprawek edytora.
    2. +
    3. Kliknij w tytuł artykułu, by załadować stronę.
      + Uwaga: Lista artykułów przeznaczonych do edycji jest generowana automatycznie i odświeżana jest rzadko, dlatego część artykułów, nie będzie wymagała żadnych zmian, ponieważ była już przetłumaczona i sprawdzona. Jeśli artykuł nie wyświetla informacji "Ten artykuł wymaga przeglądu redakcyjnego", możesz pominąć jego edycję i wybrać inny artykuł.
    4. +
    +
  2. +
  3. Każdy artykuł czytaj uważnie, zwracając uwagę na literówki, ortografię, gramatykę lub błędy użytkowania. Jeśli strona, którą wybrałeś - nie pasuje ci - nie wahaj przełączać się między stronami podczas edycji,
  4. +
  5. Jeśli strona artykułu nie posiada błędów, nie ma potrzeby, by edytować artykuł, żeby oznaczyć go jako sprawdzony. Spójrz na okienko wyboru "Wymaga sprawdzenia" w lewym pasku nawigacyjnym poniżej artykułu:
  6. +

  7. + Screenshot of the editorial review request sidebar box
  8. +
  9. Odznacz opcję Editorial i zapisz, klikając Save.
  10. +
  11. Jeśli znajdziesz błędy wymagające korekty: +
      +
    1. Kliknij guzik Edit znajdujący się na górze strony; zostaniesz przeniesiony na stronę MDN edytor.
    2. +
    3. Popraw wszystkie literówki, będy ortograficzne i gramatyczne i inne błędy, które uda ci się znaleźć. Jeśli do końca nie jesteś pewny, czy edycja artykułu została przez ciebie skończona,  upewnij się, że zostawiasz prośbę o dalszy przegląd redakcyjny włączoną.
    4. +
    5. Wprowadź Komentarz dotyczący sprawdzenia  na dole artykułu; np. Nick edytora: 'poprawione błędy ortograficzne, gramatyczne i składniowe'. Pomoże to innym użytkownikom i autorom edytowanej strony dowiedzieć się, które hasło wymagało zmian i dlaczego takie zmiany były wprowadzane.
    6. +
    7. Odznacz w polu 
      + Wymaga sprawdzenia > Redakcjynego. Znajdującego się powyżej sekcji Komentarz dotyczący sprawdzenia.
    8. +
    9. Kliknij guzik Publikuj.
    10. +
    +
  12. +
+ + +
+
+ +
+
+
Zapisane zmiany wprowadzone do artykułu, mogą pojawić się z opóźnieniem.
+
+
diff --git a/files/pl/mdn/contribute/howto/create_an_mdn_account/index.html b/files/pl/mdn/contribute/howto/create_an_mdn_account/index.html new file mode 100644 index 0000000000..ed988c32bc --- /dev/null +++ b/files/pl/mdn/contribute/howto/create_an_mdn_account/index.html @@ -0,0 +1,41 @@ +--- +title: Jak utworzyć konto MDN +slug: MDN/Contribute/Howto/Create_an_MDN_account +tags: + - Beginner + - Guide + - MDN + - nowy + - pierwsze kroki + - podręcznik + - zacznij +translation_of: MDN/Contribute/Howto/Create_an_MDN_account +--- +
{{MDNSidebar}}

Wstęp współdworz MDN, sửa các thay đổi và các trang cần thiết là MDN. Profil does not we expected, unwatched MDN i useful załeych tu information. Ten krótkie poradnik Ci Successful Accounts MDN.

+ +
Tại sao MDN lại cần email?
+
+Email của bạn cho phép khôi phục các tài khoản, cũng như các vấn đề quản trị MDN, để kết hợp với Tobą trong phần mềm hoặc thông tin.
+
+Opcjonalnie możesz Tez otrzymywać powiadomienia (na przykład w wypadku zmian na interesującej CIE Stronie ) oraz wiadomości (przykładowo, jeśli zdecydujesz sie dołączyć làm naszego zespołu beta testerów, możesz otrzymywać Maile dotyczące nowych funkcji wymagających przetestowania).
+
+Your email adres is offline na MDN i using us with the groups .
+ +
    +
  1. Na górze tất cả các trang web MDN nút "Đăng Sắp za Uy tín". Najedź na nút (hoặc bấm, nếu bạn sử dụng điện thoại di động). Rozwiniesz w ten way list uwierzytelinally serwisów, using a MDN.
  2. +
  3. Choose availing Ci service, to be used to MDn. Wybranie (Tùy chọn " Persona ") có thể được sử dụng trong hai trang chính.
  4. +
  5. Postęp các theo dõi của nó, để cho các tài khoản dự phòng với MDM profilem.
  6. +
  7. Po powrocie do MDN bị bỏ qua poproszony và podanie địa chỉ email cũng như chọn lựa đặt người dùng. Tên người có thể nhìn thấy rõ ràng. Nigdy không sử dụng email địa chỉ email khi đặt mục tiêu!
  8. +
  9. Then click button " Wykonaj ".
  10. +
  11. Podane podany w punkcie 4 không phải là lý do tại sao, việc sử dụng để đăng nhập vào trang chủ, bạn cần skrzynkę mailową. W otrzymanych từ nas mailu nhấn vào nút " Potwierdź konto " trong việc hướng tới việc đăng nhập.
  12. +
+ +

Để tất cả! Posiadasz các tài khoản và MD5 của bạn.

+ +

Na górze tất cả các trang MDN có thể là người dùng của bạn. Click it, to make your profile. Teraz możesz wybrać opcję " Edytuj ", aby uzupełnić swój Profil, dzielić sie z innymi użytkownikami informacjami o Tobie, dodawać linki làm swojego Twittera lub bloga ITD.

+ +
+

Chú ý: Không thể phân biệt người dùng có ký hiệu "@". Pamiętaj, as Bạn có thể chứng tỏ được rằng mình là một trong những người hiểu rõ nhất về dịch vụ của bạn.

+
+ +

 

diff --git a/files/pl/mdn/contribute/howto/create_and_edit_pages/index.html b/files/pl/mdn/contribute/howto/create_and_edit_pages/index.html new file mode 100644 index 0000000000..4fb13dadc2 --- /dev/null +++ b/files/pl/mdn/contribute/howto/create_and_edit_pages/index.html @@ -0,0 +1,179 @@ +--- +title: How to create and edit pages +slug: MDN/Contribute/Howto/Create_and_edit_pages +translation_of: MDN/Contribute/Howto/Create_and_edit_pages +--- +
{{MDNSidebar}}
+ +

Ten artykuł wdraża nowe osoby wspierające do procesu edycji istniejących stron oraz tworzenia nowych.

+ +

Edycja istniejącej strony

+ +

Aby edytować stronę:

+ +
    +
  1. Jeśli znajdujesz się na stronie MDN Web Docs w wersji tylko do odczytu (https://developer.mozilla.org), kliknij Edit in wiki w nagłówku artykułu. Przeniesiesz się do edytowalnej wersji wiki strony(https://wiki.developer.mozilla.org), ale nie otworzy to jeszcze interfejsu edycji.
  2. +
  3. Kliknij przycisk Edit w nagłówku artykułu wiki strony.
  4. +
  5. Strona się odświeży wraz z interfejsem edycji gdzie możesz bezpośrednio dodawać i usuwać zawartość strony.
  6. +
  7. Dodawaj paragrafy, usuwaj tekst, wstawiaj nagłówki i wykonuj więcej podstawowych operacji związanych z pisaniem i edytowaniem.
  8. +
+ +

Zobacz przewodnik Editor UI elements w MDN Editor guide by uzyskać więcej informacji dotyczących wbudowanego edytora MDN.

+ +

Podgląd zmian

+ +

Aby zobaczyć zmiany:

+ + + +

Uważaj! Podglądanie strony nie zachowa twojego postępu prac. Nie zamykaj karty edycji dopóki nie zapiszesz zmian.

+ +

Komentarz do wersji

+ +

After previewing your changes, you will want to save your revision. Before you save, look for the revision comment box, below the editing box, leaving a comment to inform other contributors why you made changes. For example, you might have added a new section, changed some words to make the terminology more consistent, rewritten a paragraph to clarify the language, or removed information because it was redundant.

+ +

Table of Contents

+ +

The 'On this Page' section of an article, is an auto-generated list of links to the headings on the page. The wording of these can be edited via the headings. It's also possible to remove a table of contents or decrease its number of links, by selecting 'Edit Page Title and Properties', changing the value of the "TOC" drop down.

+ +

Tags

+ +

You can add or remove tags, which describe the page content and purpose, below the editing section. See How to properly tag pages, for information on which tags to apply.

+ +

Review needed?

+ +

If an expert or experienced contributor should review your edits, please request a technical review (for code, API's, or technologies), and/or an editorial review (for prose, grammar, and content), making sure the appropriate box is checked before you save.

+ +

Attach files

+ +

Attaching files requires a special user privilege. See Attachments in the MDN editor for details, including how to request the upload privilege.

+ +

Publish, Discard, or Keep editing

+ +

When you finish editing and are happy with your preview, publish your work and comments by clicking the green Publish button, to the right of the page title, or towards the bottom of the page. If you wish to continue working, click Publish and keep editing, which publishes your changes and keeps the edit interface open.

+ +

If you change your mind, you can discard edits, by clicking the red Discard button. Note that discarding changes permanently discards them.

+ +

Pressing Enter in the Revision Comment field is equivalent to clicking Publish and Keep Editing.

+ +
+

Note: If attempting to save, but changes are rejected as invalid, and you feel the content is appropriate for MDN, email the MDN admin team for assistance.

+
+ +

Getting page-creation permissions

+ +

For security reasons, newly-created accounts don't have the ability to create new pages. If you try to do so, you'll see a page instructing you how to get the page created. There are two options:

+ + + +

Creating a new page

+ +

Once you have page-creation permission, you can begin creating pages.

+ +

If you do not know where to place a new article, do not worry. Put it anywhere, we will find it, move to where it belongs, or merge it into existing content. Whatever makes the most sense. Do not worry about making it perfect. We have happy helper gnomes who help to make your content clean and rather luscious.

+ +

There are a few ways to create a new page:

+ + + + + +

As with most wikis, it is possible to create a link to a page that is yet to exist. For example, an author might create a list of all the members of an API, before creating the pages for those members. On MDN, links to non-existent pages are typically displayed in red.

+ +

To create a page from a 'missing page' link:

+ +
    +
  1. Log into MDN, and have page-creation permission. If not logged in, clicking a 'missing page' link results in a 404 (page not found) error.
  2. +
  3. Click the 'missing page' link. If you have page creation permission, the MDN Editor UI opens, ready for you to create the missing page.
  4. +
  5. Write the content of the page, and save it.
  6. +
+ + + +

To create a new page without linking from another page, enter a unique page name in the URL field of your browser. For example, if you enter:

+ +
https://wiki.developer.mozilla.org/en-US/docs/FooBar
+ +

MDN Creates a new page, with the title "FooBar", opening the editor for you to add new content. Refer to the Editing an existing page section of this article, for information on how to use the editor mode.

+ +

To create a new page without linking from another page:

+ +
    +
  1. Log in, and have page-creation permission.
  2. +
  3. Enter the following in the URL field of your browser:
  4. +
+ +
https://wiki.developer.mozilla.org/en-US/docs/new
+ +

MDN Creates a new page, with a place for a title, opening the editor to add new content to this page. Refer to Editing an existing page, for information on using editor mode.

+ +

Subpage of an existing page

+ +

To create a page you want to be below an existing page, in the page hierarchy:

+ +
    +
  1. If needed, navigate to the wiki site by clicking Edit in wiki in the article header.
  2. +
  3. On the 'parent' page, click the Advanced menu (the gear icon in the toolbar), then click New sub-page.
  4. +
  5. An editor view opens for creating a new document.
  6. +
  7. Add a title for this document, in the Title field.
  8. +
  9. Change the Slug field, if needed. For example, if the title is long, and a shorter URL seems appropriate. This field is automatically filled by the editor, substituting underscores for spaces found in the title, changing only the last part of the URL.
  10. +
  11. In the TOC field, select heading levels you want to be displayed in the table of contents for the page. Or select 'No table of contents', if one is not needed.
  12. +
  13. Write content of the page in the editor pane, saving your changes. Refer to Editing an existing page, for further information on using editor mode.
  14. +
+ +

Clone of an existing page

+ +

If there is an existing page, whose format you wish to use as a base for your new page, you can 'clone' that page, and then change its content.

+ +
    +
  1. If needed, navigate to the wiki site by clicking Edit in wiki in the article header.
  2. +
  3. On the original page, click the Advanced menu (the gear icon in the toolbar), and click Clone this page. An editor view opens, for creating a new document.
  4. +
  5. Change the Title of the page, as appropriate for the new content. The Slug field is updated automatically as you change the Title field.
  6. +
  7. Change the path portion of the Slug field, as needed, to put the new document in a different location in the document hierarchy. In most cases, this is not needed. A cloned page often has similar content to its original, and need to be in a similar location.
  8. +
  9. In the TOC field, select the heading levels you want to be automatically displayed in the table of contents for this page. Or select 'No table of contents', if one is not needed.
  10. +
  11. Write your content in the editor pane, saving your changes. Refer to Editing an existing page, for more information on using editor mode.
  12. +
+ + + +

This is a bit of a hybrid. You can create a link on another page, then click the link you just inserted, to create the new page:

+ +
    +
  1. Enter the name of your new page, anywhere that makes sense in the text of an existing page.
  2. +
  3. Highlight this new name, and click the Link icon () in the editor's toolbar. The 'Update Link' dialog opens, with the highlighted text in the 'Link To' field.
  4. +
  5. "/en-US/docs/" is inserted by default, to the beginning of the URL field. Enter the name of the page after "/en-US/docs/". The page name does not have to be the same as the link text.
  6. +
  7. Click OK, to create and insert the link.
  8. +
+ +

If the page does not yet exist, the link is displayed in red. If the page does exist, the link is displayed blue. If you want to create a new page, but the page title you desire is already taken, check if it makes sense helping edit and improve the page already there. Otherwise, think of a unique title for your new page, and create a link for it. Refer to page naming guide for guidelines.

+ +

To add content to your new page, click on the red link you just created, after saving and closing the editor. The new page opens in editor mode, enabling you to start writing. Refer to Editing an existing page, for further information on using editor mode.

+ +

Refreshing page content

+ +

MDN support of KumaScript macros, and integration of content from other pages can sometimes be hampered by the need for caching of pages, for performance reasons. Pages are built from their source, and this output is cached for future requests. From that moment on, any macros (templates), or integrations (using the macroPage), will not reflect later changes made to the macro, its output, or the contents of the integrated material.

+ + + +

See also

+ + diff --git a/files/pl/mdn/contribute/howto/do_a_technical_review/index.html b/files/pl/mdn/contribute/howto/do_a_technical_review/index.html new file mode 100644 index 0000000000..624ea0dc0d --- /dev/null +++ b/files/pl/mdn/contribute/howto/do_a_technical_review/index.html @@ -0,0 +1,49 @@ +--- +title: How to do a technical review +slug: MDN/Contribute/Howto/Do_a_technical_review +translation_of: MDN/Contribute/Howto/Do_a_technical_review +--- +
{{MDNSidebar}}

Technical review consists of reviewing the technical accuracy and completeness of an article, and correcting it if necessary. If a writer of an article wants someone else to check the technical content of an article, the writer ticks the "Technical review" checkbox while editing. Often the writer contacts a specific engineer to perform the technical review, but anyone with technical expertise in the topic can do one.

+ +

This article describes how to go about performing a technical review, thereby helping to ensure that MDN's content is accurate.

+ +
+
What is the task?
+
Reviewing and correcting of articles for technical accuracy and completeness.
+
Where does it need to be done?
+
In specific articles that are marked as requiring a technical review.
+
What do you need to know to do the task?
+
+
    +
  • Expert knowledge of the topic of the article you are reviewing.
  • +
  • Ability to edit a wiki article on MDN.
  • +
+
+
What are the steps to do it?
+
+
    +
  1. Pick an article to review: +
      +
    1. Go to the list of pages that need technical reviews. This lists all the pages for which an technical review has been requested.
    2. +
    3. Choose a page whose topic you are very familiar with.
    4. +
    5. Click on the article link to load the page.
    6. +
    +
  2. +
  3. Read the article, paying close attention to technical details: Is the article correct? Is there anything missing? Don't hesitate to switch to a different page if the first one you choose doesn't suit you.
  4. +
  5. If there are no errors, you don't need to edit the article to mark it as reviewed. Look for the "quick review" box in the left sidebar of the page. This yellow box lists any pending reviews and lets you clear their review request flag. It looks like this if a technical review has been requested:
    + Screenshot of the sidebar's box listing reviews that have been requested and allowing the flags to be changed.
  6. +
  7. Deselect the Technical checkbox, and click Save.
  8. +
  9. If you find errors that need to be corrected, you'll be glad to know that you can also change the review request status from within the editor. Here's the workflow: +
      +
    1. To edit the page, click the Edit button near the top of the page; this puts you into the MDN editor.
    2. +
    3. Fix any technical information is not correct, and/or add any important information that is missing.
    4. +
    5. Enter a Revision Comment at the bottom of the article. This is a brief message that describes what you did, like 'Technical review completed.' If you corrected information, include that in your comment, for example 'Technical review and fixed parameter descriptions.' This helps other contributors and site editors know what you changed and why.
    6. +
    7. Deselect the Technical box under Review Needed? just below the Revision Comment area of the page.
    8. +
    9. Click the PUBLISH button.
    10. +
    +
  10. +
+ +

Congratulations! You've finished your first technical review! Thank you for your help!

+
+
diff --git a/files/pl/mdn/contribute/howto/index.html b/files/pl/mdn/contribute/howto/index.html new file mode 100644 index 0000000000..650f2b8f59 --- /dev/null +++ b/files/pl/mdn/contribute/howto/index.html @@ -0,0 +1,13 @@ +--- +title: How-to guides +slug: MDN/Contribute/Howto +tags: + - Documentation + - Landing + - MDN + - NeedsTranslation + - TopicStub +translation_of: MDN/Contribute/Howto +--- +
{{MDNSidebar}}

These articles provide step-by-step guides to accomplishing specific goals when contributing to MDN.

+

{{LandingPageListSubpages}}

diff --git a/files/pl/mdn/contribute/howto/set_the_summary_for_a_page/index.html b/files/pl/mdn/contribute/howto/set_the_summary_for_a_page/index.html new file mode 100644 index 0000000000..e3c2632242 --- /dev/null +++ b/files/pl/mdn/contribute/howto/set_the_summary_for_a_page/index.html @@ -0,0 +1,50 @@ +--- +title: How to set the summary for a page +slug: MDN/Contribute/Howto/Set_the_summary_for_a_page +translation_of: MDN/Contribute/Howto/Set_the_summary_for_a_page +--- +
{{MDNSidebar}}

Możesz opracować streszczenie strony MDN. Twoje streszczenie zostanie potem wykorzystane w wielu miejscach: w wynikach wyszukiwania, na innych stronach MDN, takich jak np. strony tematyczne, oraz w dymkach z podpowiedziami. Twój tekst powinien być zrozumiały zarówno jako fragment oryginalnej strony, jak i wtedy, gdy zostanie wyrwany z kontekstu i wyświetlony samodzielnie na innej stronie.

+

Każda strona może mieć zdefiniowane streszczenie. Jeśli jednak go nie ma, streszczenie jest tworzone automatycznie na podstawie pierwszych paru zdań tekstu. Niestety to nie zawsze jest najlepszy wybór.

+ + + + + + + + + + + + + + + + + + + +
Na czym polega zadanie?Zadanie polega na zaznaczaniu takiego fragmentu tekstu na stronie, który mógłby posłużyć jako streszczenie strony do wykorzystania w innych kontekstach. Może się zdarzyć, że trzeba będzie ten tekst napisać.
Gdzie możesz to zrobić?Na stronach, które nie mają streszczenia lub pozostawia ono wiele do życzenia.
Jakich umiejętności potrzebujesz?Umiejętność obsługi edytora MDN; umiejętność pisania tekstów; na tyle biegła znajomość omawianych tematów, żeby napisać sensowne streszczenie.
What are the steps to do it? +
    +
  1. Pick a page on which to set the summary: +
      +
    1. In the MDN documentation status page, click the link under Sections for a topic that you know something about (for example, HTML):
      +
    2. +
    3. On the topic's documentation status page, click the Pages header in the Summary table. This takes you to an index of all the pages in that topic section; it shows the page links in the left column, and the tags and summaries in the right column:
      +
    4. +
    5. Pick a page that is missing a summary, or that has a poor summary:
      +
    6. +
    7. Click the link to go to that page.
    8. +
    +
  2. +
  3. Click Edit to open the page in the MDN editor.
  4. +
  5. Look for a sentence or two that works as a summary out of context. If needed, edit the existing content to create or modify sentences to be a good summary.
  6. +
  7. Select the text to be used as a summary.
  8. +
  9. In the Styles widget of the editor toolbar, select SEO Summary. (In the page source, this creates a {{HTMLElement("span")}} element with class="seoSummary" around the selected text.)
    +
  10. +
  11. Save your changes with a revision comment like "Set the page summary."
  12. +
+
+

 

+

 

+

 

diff --git a/files/pl/mdn/contribute/howto/tag/index.html b/files/pl/mdn/contribute/howto/tag/index.html new file mode 100644 index 0000000000..8cfb4c7145 --- /dev/null +++ b/files/pl/mdn/contribute/howto/tag/index.html @@ -0,0 +1,376 @@ +--- +title: How to properly tag pages +slug: MDN/Contribute/Howto/Tag +translation_of: MDN/Contribute/Howto/Tag +--- +
{{MDNSidebar}}

Article tags are an important way to put visitors in touch with helpful content. Each page should normally have several tags to help keep content organized. This page explains the best way to tag pages so that our readers can find information and we can keep ourselves organized.

+ +

For a help with the user interface for editing tags, see the tagging section in our editor guide.

+ +

Please use tags properly as explained below. If you don't, our automated tools will not correctly generate lists of content, landing pages, and cross-linking of articles.

+ +

How MDN uses tags

+ +

Tags get used on MDN several ways:

+ +
+
Document categorization
+
What type of document is it? Is it a reference? A tutorial? A landing page? Our visitors can use these tags to filter searches, so they're really important!
+
Topic identification
+
What is the article about? Is it about an API? The DOM? Graphics? Again, these tags are important because they can filter searches.
+
Technology status
+
What's the status of the technology? Is it non-standard? Obsolete or deprecated? Experimental?
+
Skill level
+
For tutorials and guides, how advanced is the material covered by the article?
+
Document metadata
+
The writing community uses tags to keep track of which pages need what kind of work.
+
+ +

Tag type guide

+ +

Here's a quick guide to the types of tags and possible values for them.

+ +

Document category

+ +

When you tag an article with one of these categories, you help the automated tools more accurately generate landing pages, tables of contents, and so on. Our new search system will also use these terms so that our visitors can locate reference or guide information at will.

+ +

We use the following category names as standard tagging terms:

+ +
+
{{Tag("Intro")}}
+
The article provides introductory material about a topic. Ideally each technology area should have only one "Intro".
+
{{Tag("Featured")}}
+
The article is critical and will display prominently on landing pages. Use this tag sparingly (never more than three documents in each documentation area).
+
{{Tag("Reference")}}
+
The article contains reference material about an API, element, attribute, property, or the like.
+
{{Tag("Landing")}}
+
The page is a landing page.
+
{{Tag("Guide")}}
+
The article is a how-to or guide page.
+
{{Tag("Example")}}
+
The article is a code sample page, or has code samples (that is, actual snippets of useful code, not one-line "syntax examples").
+
+ +

Topic

+ +

By identifying the article's topic area, you are helping generate better search results (and landing pages and navigation as well).

+ +

While there's some room for flexibility here as we identify new topic areas, we try to limit ourselves to the names of APIs or technologies. Some useful examples:

+ + + +

In general, your topic identification tag should be the name of an interface with a number of related pages (like Node, which has many pages for its various properties and methods), or the name of an overall technology type. You might tag a page about WebGL with Graphics and WebGL, for example, but a page about {{HTMLElement("canvas")}} with HTML, Element, Canvas, and Graphics.

+ +

Technology status

+ +

To help the reader understand how viable a technology is, we use tags to label pages as to the status of the technology's specification. This isn't as detailed as actually explaining what the spec is and how far the technology has come in the specification process (that's what the Specifications table is for), but it helps the reader judge, at a glance, whether it's a good idea to use the technology described in the article.

+ +

Here are possible values for these tags:

+ +
+
{{Tag("Non-standard")}}
+
Indicates that the technology or API described on the page is not part of a standard, but is considered stable in any implementing browser(s). If you don't use this tag, your readers will assume the technology is standard. The compatibility table on the page should clarify which browser(s) support this technology or API.
+
{{Tag("Deprecated")}}
+
The technology or API covered on the page is marked as deprecated in the specification, and is likely to eventually be removed, but is generally still available in current versions of browsers.
+
{{Tag("Obsolete")}}
+
The technology or API has been deemed obsolete and has been removed (or actively being removed) from all or most current browsers.
+
{{Tag("Experimental")}}
+
The technology is not standardized, and is an experimental technology or API that may or may not ever become part of a standard. It is also subject to change in the browser engine (typically only one) that implements it.
+
{{Tag("Needs Privileges")}}
+
The API requires privileged access to the device on which the code is running.
+
{{Tag("Certified Only")}}
+
The API only works in certified code.
+
+ +

These tags are no excuse to leave out the compatibility table in your article!

+ +

Skill level

+ +

Use the skill-level tag type only for guides and tutorials (that is, pages tagged Guide) to help users choose tutorials based on how familiar they are with a technology. There are three values for this:

+ +
+
{{Tag("Beginner")}}
+
Articles designed to introduce the reader to a technology they've never used or have only a passing familiarity with.
+
{{Tag("Intermediate")}}
+
Articles for users who have gotten started with the technology but aren't experts.
+
{{Tag("Advanced")}}
+
Articles about stretching the capabilities of a technology and of the reader.
+
+ +

Document metadata

+ +

The writing community uses tags to label articles as requiring specific types of work. Here's a list of the ones we use most:

+ +
+
{{Tag("junk")}}
+
The article needs to be deleted.
+
{{Tag("NeedsContent")}}
+
The article is a stub, or is otherwise lacking information. This tag means that someone should review the content and add more details and/or finish writing the article.
+
{{Tag("NeedsExample")}}
+
The article needs one or more examples created to help illustrate the article's point. These examples should use the live sample system.
+
{{Tag("NeedsLiveSamples")}}
+
The article has one or more examples that need to be updated to use the live sample system.
+
{{Tag("NeedsUpdate")}}
+
The content is out of date and needs to updating.
+
{{Tag("l10n:exclude")}}
+
The content is not really worth localizing and will not appear on localization status pages.
+
{{Tag("l10n:priority")}}
+
The content is important and should be marked as a priority for MDN translators. Shows up in an extra priority table on localization status pages.
+
+ +

Web Literacy Map

+ +

The WebMaker project, through the Web Literacy Map, has defined skills needed to optimally read, write, and participate on the Web. We use Web literacy skills as tags on MDN to help our users find the resources that best suit their needs:

+ +
+
{{Tag("Navigation")}}
+
The article includes information about how to browse the Web.
+
{{Tag("WebMechanics")}}
+
The content has information about how the Web is organized and how it works.
+
{{Tag("Search")}}
+
The article explains how to find information, people, and resources on the Web.
+
{{Tag("Credibility")}}
+
The information in the article helps the reader understand how to critically evaluate information they find on the Web
+
{{Tag("Security")}}
+
The article provides information about how to keep systems, identities, and content safe.
+
{{Tag("Composing")}}
+
The document explains how to create and curate content for the Web.
+
{{Tag("Remixing")}}
+
The article teaches how to modify existing Web resources to create something new.
+
{{Tag("Design")}}
+
Documentation explaining how to enhance visual aesthetics and user experience.
+
{{Tag("Accessibility")}}
+
Documents which describe how to communicate in a universally-recognizable way.
+
{{Tag("CodingScripting")}}
+
How to write code and/or to create interactive experiences on the Web.
+
{{Tag("Infrastructure")}}
+
The document explains how the Internet's technical stack works.
+
{{Tag("Sharing")}}
+
The article's content covers ways to create resources with others.
+
{{Tag("Collaborating")}}
+
The document provides information about how to work with other people.
+
{{Tag("Community")}}
+
The article details how to get involved in Web communities and to understand how they work.
+
{{Tag("Privacy")}}
+
The material helps to examine the consequences of sharing data online.
+
{{Tag("OpenPractices")}}
+
The article provid=deshow to help keep the Web accessible to everybody
+
+ +

Putting it all together

+ +

So to each page you assign tags from several tag types, for example

+ +
+
A tutorial about WebGL for beginners
+
WebGL, Graphics, Guide, Beginner
+
Reference page for {{HTMLElement("canvas")}}
+
Canvas, HTML, Element, Graphics, Reference
+
A landing page for Firefox OS developer tools
+
Tools, Firefox OS, Landing
+
+ +

Tagging and search filters

+ +

Search filters won't work properly unless we tag MDN pages properly. Here's a table of search filters and which tags they look for.

+ +
+

Note: If multiple tags are listed under "Tag name," that means any one or more of these tags must be present for the article to match.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Filter groupSearch filter nameTag name
TopicOpen Web Apps{{Tag("Apps")}}
 HTML{{Tag("HTML")}}
 CSS{{Tag("CSS")}}
 JavaScript{{Tag("JavaScript")}}
 APIs and DOM{{Tag("API")}}
 Canvas{{Tag("Canvas")}}
 SVG{{Tag("SVG")}}
 MathML{{Tag("MathML")}}
 WebGL{{Tag("WebGL")}}
 XUL{{Tag("XUL")}}
 Marketplace{{Tag("Marketplace")}}
 Firefox{{Tag("Firefox")}}
 Firefox for Android{{Tag("Firefox Mobile")}}
 Firefox for Desktop{{Tag("Firefox Desktop")}}
 Firefox OS{{Tag("Firefox OS")}}
 Mobile{{Tag("Mobile")}}
 Web Development{{Tag("Web Development")}}
 Add-ons & Extensions{{Tag("Add-ons ")}}|| {{Tag("Extensions")}} || {{Tag("Plugins")}} || {{Tag("Themes")}}
 Games{{Tag("Games")}}
Skill levelI'm an Expert{{Tag("Advanced")}}
 Intermediate{{Tag("Intermediate")}}
 I'm Learning{{Tag("Beginner")}}
Document typeDocsThis restricts the search to docs content, leaving out Hacks and other MDN content.
 DemosThis includes Demo Studio content in the search results.
 Tools{{Tag("Tools")}}
 Code Samples{{Tag("Example")}}
 How-To & Tutorial{{Tag("Guide")}}
 Developer ProfilesThis includes developer profiles from the MDN site in the search results.
 External ResourcesThe dev team is still figuring this out...
+ +

Tagging problems you can fix

+ +

There are several kinds of tag problems you can help fix:

+ +
+
No tags
+
Generally articles should have at least a "category" tag and a "topic" tag. Usually other tags are appropriate as well, but if you can help us ensure that the minimum tags are present, you'll be a documentation hero!
+
Tags that don't follow our tagging standards
+
Please fix any documents whose tags don't follow the standards on this page.
+ Note that due to a bug in Kuma, some localized tags (such as Référence) may show up on some English pages. These tags are likely to reappear even if you delete them; don't bother trying to fix them until the Kuma bug is fixed.
+
Incorrect tags
+
If you're looking at an article about HTML and it's tagged "JavaScript", that's probably wrong! Likewise, if an article discusses Mozilla internals but has a "Web" tag, that's probably wrong too. Remove these tags and add the right tags if they aren't already there. Please also correct misspelled tags (e.g., "Javascript" will still match, since tags are case-insensitive, but let's not be sloppy!).
+
Missing tags
+
If an article has some but not all of the tags it needs, feel free to add more. For example, if a page in JavaScript reference is (correctly) tagged "JavaScript" but nothing else, you're invited to tag the page "Reference" as well!
+
Tag spam
+
This insidious beast is the most revolting tag problem of all: some Web vermin has deposited its droppings in the page tags (like "Free warez!" or "Hey I was browsing your site and wanted to ask you if you could help me solve this problem I'm having with Flash crashing all the time"). We've got to delete these right away! They're ugly, they're hard to manage if they're allowed to linger too long, and they're terrible for {{Glossary("SEO")}}.
+
+ +

If you see one (or more) of these problems, please log into MDN and click EDIT at the top right of the MDN window. Once the editor loads up, scroll down to the bottom of the page, where you'll see the tag box. For more details on the tagging interface, see "The tags box" in the MDN editor guide.

diff --git a/files/pl/mdn/contribute/howto/tag_javascript_pages/index.html b/files/pl/mdn/contribute/howto/tag_javascript_pages/index.html new file mode 100644 index 0000000000..4d0f8b785f --- /dev/null +++ b/files/pl/mdn/contribute/howto/tag_javascript_pages/index.html @@ -0,0 +1,75 @@ +--- +title: How to tag JavaScript pages +slug: MDN/Contribute/Howto/Tag_JavaScript_pages +tags: + - JavaScript + - MDN + - Poradnik +translation_of: MDN/Contribute/Howto/Tag_JavaScript_pages +--- +
{{MDNSidebar}}
+ +

Tagowanie opiera się na dodawaniu meta-danych do stron, tak aby powiązane ze sobą treści mogły być grupowane - przykładowo na potrzeby wyszukiwania.

+ +
+
Gdzie jest to potrzebne?
+
Na konkretnych stronach związanych z JavaScriptem, na których jeszcze nie ma tagów
+
Co musisz wiedzieć, aby wykonać tą czynność?
+
Podstawowa wiedza o programowaniu w JavaScripcie - przykładowo wiedzieć, czym jest metoda lub właściwość obiektu.
+
Jakie są kroki?
+
+
    +
  1. Wyberz jedną ze stron z listy w odnośniku powyżej
  2. +
  3. Kliknij na odnośniku do artykułu, aby załadować jego stronę.
  4. +
  5. Gdy strona się załaduje, kliknij przycisk EDYTUJ, zlokalizowany nad artykułem; uruchomiony zostanie edytor MDN.
  6. +
  7. Przynajmniej tag JavaScript powinien być dodany. Oto inne przykładowe tagi, które mogą być dodane: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TagNa jakich stronach użyć
    Methodmetody
    Propertywłaściwości
    prototypeprototypy
    Nazwa typu obiektumetody danego obiektu; przykładowo metoda String.fromCharCode powinna mieć tag String
    ECMAScript6 i Experimentalfunkcjonalności dodane w nowych wersjach ECMAScript
    Deprecatedprzestarzałe funkcjonalności (wciąż są wspierane, ale nie zaleca się ich używania)
    Obsoletewycofane funkcjonalności (nie są już wspierane przez współczesne przeglądarki)
    inneZobacz artykuł Standardy tagowania MDN aby przejrzeć inne tagi, które można dodać
    +
  8. +
  9. Zapisz wraz z komentarzem.
  10. +
  11. Zrobione!
  12. +
+
+
+ +

 

diff --git a/files/pl/mdn/contribute/index.html b/files/pl/mdn/contribute/index.html new file mode 100644 index 0000000000..ba1c6d5321 --- /dev/null +++ b/files/pl/mdn/contribute/index.html @@ -0,0 +1,92 @@ +--- +title: Contributing to MDN +slug: MDN/Contribute +tags: + - Documentation + - Guide + - Landing + - MDN + - NeedsTranslation + - TopicStub +translation_of: MDN/Contribute +--- +
{{MDNSidebar}}

Welcome! By visiting this page, you've taken the first step toward becoming a contributor to MDN. The guides here cover all aspects of contributing to MDN, including style guides, guides to using our editor and tools, and more.

+
+
+

Contributor guides

+
+
+ Getting started
+
+ A quick start guide to getting set up and making your first contribution.
+
+ Content and style guide
+
+ The MDN content and style guide provides details about writing style, page layout, and content styles, so that the content you write fits in with the rest of MDN's content.
+
+ Editor guide
+
+ A complete guide to using MDN's editor.
+
+ Reviewing articles
+
+ A guide to performing technical and editorial reviews of articles' content, to help us ensure that all content on MDN is as useful and readable as can be!
+
+ Terminology and conventions
+
+ Our terminology and conventions guide provides information you can use to ensure that you use the correct terminology to describe things.
+
+ Working with the MDN community
+
+ A guide to working with our community, finding help, and connecting with the people with the answers to the questions that arise while you contribute to MDN.
+
+ Frequently asked questions
+
+ Tips and answers to the most common questions about contributing to MDN.
+
+
+
+ Contributing to Kuma
+
+ A guide to contributing to the Kuma project. Kuma is the platform that powers the MDN Web site.
+
+
+
+

How to...

+

Our how-to guides provide step-by-step instructions to help you accomplish specific tasks when contributing to MDN.

+
+
+ How to document a CSS property
+
+ A guide to writing documentation of CSS properties. All CSS property documents should match the style and layout described in this article.
+
+ How to document an HTML element
+
+ This guide to documenting HTML elements will ensure that the documents you write match others on MDN.
+
+ How to properly tag pages
+
+ This guide to tagging pages provides information about our standards for tagging, including lists of tags that have standard meanings on MDN. Following this guide will ensure that your content is properly categorized, more easily searchable, and that our search filtering mechanism works properly with your articles.
+
+ How to interpret specifications
+
+ This guide will help you to properly interpret standard Web specifications; being able to read these can be an art form, and knowing how to do it will help you produce better documentation.
+
+

Localization

+
+
+ Localization guided tour
+
+ This guided tour will teach you how to localize content on MDN.
+
+ Localization guide
+
+ This guide provides details about the localization process for MDN content.
+
+ Localization projects
+
+ Find the localization project for your language—or, if there isn't one, learn how to start a new one!
+
+
+
+

 

diff --git a/files/pl/mdn/contribute/localize/index.html b/files/pl/mdn/contribute/localize/index.html new file mode 100644 index 0000000000..f73e84ba19 --- /dev/null +++ b/files/pl/mdn/contribute/localize/index.html @@ -0,0 +1,33 @@ +--- +title: Lokalizowanie MDN +slug: MDN/Contribute/Localize +tags: + - Dokumentacja + - Lokalizacja + - MDN +translation_of: MDN/Contribute/Localize +--- +
{{MDNSidebar}}

MDN jest wykorzystywany przez ludzi na całym świecie jako punkt odniesienia i przewodnik po technologiach sieciowych, jak również po samym wnętrzu Firefox. Nasze społeczności lokalizacyjne są kluczowym elementem projektu Mozilla; ich praca w tłumaczeniu i lokalizacji naszej dokumentacji pomaga ludziom z całego świata rozwijać się dla otwartej sieci internetowej. Jeśli chcesz dowiedzieć się więcej o naszych zespołach lokalizacyjnych, dołącz do jednego z nich lub nawet zacznij nową lokalizację, to jest miejsce aby zacząć.

+ +
+
+

Narzędzia lokalizacyjne

+
+
+ +

Istnieje kilka przydatnych narzędzi, których będziesz używał podczas pracy lokalizacyjnej:

+ +
+
Verbatim
+
Używany do tłumaczenia komunikatów w wielu projektach Mozilla, w tym interfejsu użytkownika MDN (jak również interfejsu użytkownika Firefox).
+
Transvision
+
Narzędzie dostarczone przez Mozilla France, które umożliwia Ci wyszukiwanie niepożądanych wystąpień w języku angielskim, znajdując wszystkie różne tłumaczenia w lokalizacji docelowej, które są używane w całym kodzie Mozilli.
+
Przydatne do znajdowania preferowanego tłumaczenia dla słowa lub wyrażenia.
+
+

Zobacz również

+
+
+ + diff --git a/files/pl/mdn/contribute/localize/localization_projects/index.html b/files/pl/mdn/contribute/localize/localization_projects/index.html new file mode 100644 index 0000000000..f3155e3b8f --- /dev/null +++ b/files/pl/mdn/contribute/localize/localization_projects/index.html @@ -0,0 +1,309 @@ +--- +title: Projekty lokalizacyjne +slug: MDN/Contribute/Localize/Localization_projects +tags: + - Lokalizacja + - MDN + - Projekt MDC +translation_of: MDN/Contribute/Localize/Localization_projects +--- +

Cała lokalizacja i tłumaczenie na MDN odbywa się przez naszą wspaniałą społeczność wolontariuszy. Ten artykuł zawiera listę projektów lokalizacyjnych, ich liderów i współpracowników, a także inne bliższe dane.

+ +

Lider projektu lokalizacyjnego to osoba, która przewodzi społeczności lokalizacyjnej MDN, prowadząc swoją pracę w lokalizacji zawartości dla konkretnego regionu lub tematu. Liderzy projektów lokalizacyjnych (i ich zespoły) powinny utrzymywać swoje dane w poniższej tabeli, tak aby zainteresowani współpracownicy mogli się z nimi kontaktować, aby zaoferować swoją pomoc. Każdy lider lokalizacji (albo każdy w zespole projektu lokalizacyjnego) jest zachęcany do tworzenia strony wiki swojego zespołu lokalizacyjnego do wykorzystania go w organizacji i administracji.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LanguageLocalization LeadContributors +

Notes

+
Azerbaijani Emin MastizadaWe need more contributers (doc for localization help will be added)
+

(Urdu)

+ +

اردو

+
Vaqas IqbalVaqas IqbalMozilla Karachi Accepting translators to translate MDN into Urdu
+

ગુજરાતી

+ +

(Gujarati)

+
prafull_satasiyaprafull_satasiyaWe need translator
العربية wassim_h 
Persian Amir Farsi, Kazem EbrahimiWe accept and need translators
Bengali (Bangladesh)Shafiul Azam Chowdhury +

tuxboy, shafiul, Nasir Khan Saikat, Towfique Anam Rine, Tanha Islam, Sekander Badsha, Fahia Nasnin, Salman Rahman Desh, jaggedzak, Md Anisur Rahman

+
Mozilla Bangladesh Team is looking for new contributors. Find more here
FrenchJeremie PatonnierFredB, Alain Boquet, Fréderic Chateaux, Vincent N., Benoit Leseul, Shz, Thierry Régagnon (tregagnon), xaky, Goofy, sylzys, the prisoner, Julien STUBY, poum, sylvie, Delapouite, Sphinx(notes or URL to translation project team page)
Italian Federico, mck89, marcostudios, loris94, MrW0lf, Iacchi, camaleo, marcantonio, Grino, Nicola_D, EdoPut, Giona, klezMozilla Italia looking for contributors! If you want to help localizing MDN, please check this guide to learn how we translate MDN.
Indonesian ariestiyansyah, Pieter Erlandaimrizal, lunybear79999 
Japanese Yoshino(ex.Mozilla Japan), Yuichiro, myakura(Masataka Yakura), yyss, ethertank, sosleepy, Marsf(Masahiko Imanaka), Masayuki, nobuoka, yoshitanaka, taguchi-ch, sii, saneyuki_s, Shimono(Atsushi Shimono), Taken(Takeshi Kurosawa), Electrolysis, dextra, Potappo, dynamis (Tomoya Asai), mantaroh, hamasakiWe are taking a bit long time in transition from old resources, MDC Japan Project (-2009), those include some of useful information.
Lao ພາສາລາວ Anousak Souphavanh, Angkhan Buasavanh, Phaynalinh Sypasert, Sulaxay Manivong, Robert M Campbell, Lao Thor 
Polish Tomasz Sokół, Marcoos(Marek Stępień), DapiDaniel M, 
SpanishManuel CamachoNukeador, Superruzafa, vhanla, maedca, inma_610, ccarruitero, artopal, StripTM, Jorge.villalobos, Scipion, Verruckt, Nathymig, Rkovac, ajimix, mhauptma73, deimidis, Joalar, Maharba, jessest, MPoli, Daniel Pereyra, luisgm76LeoHirschgorrotowiWe really need more translators
Portuguese (Brazil) Jaydson Gomes, Galvão, Atila, francisco.hansen, francineemilia, battisti, jpalharini, LeonardoPacheco, Lehrerschuler, hsteffano, lfz, -pedrohenrique-, eduardodx, mateus.m.luna, josivansilva, TelaSocial, mazulo, vlopez5, robsonds, HenriqueSilverio, srsaudeComo ajudar a MDN
Portuguese (Portugal) Leandro%20Mercês%20Xavier, msvolenski, Luis%20Henrique%20Sousa, f.sanxz 
KoreanChannyKorean ContributorsGoogle Groups
Germanfscholzeminor, AlexPl, Sprottenwels, tessarakt3, jwl, SJW, Holger Sinn, Sebastian ZartnerWe really need more translators
+

Greek

+
 syssgx, JasnaPaka, DJ.MacaWe need more translators
Russian Cobalt747, Sky_Fox, Chernetsky, uleming, karasiov, Dionys, Megapotz, hazestalker, Kwinto, kupWe need more translators
正體中文 (繁體)irvinflyBobChao, dwchiang, happysadman, petercpg, sailplaneTW, Kourge, Josesun, Sonrisa, Kennyluck, sycheng, naihsi, evelynhung, ypwalter, steely.wing我們需要更多貢獻者,請到 MozTW-general 郵件群組與我們聯繫!
+

中文 (简体)

+
ziyunfei如有问题讨论,请加 QQ 群 26079139 咨询带头人。
Hebrew ziv, InkbugWe need more translators
Romanian Raul Malea, Andrew_Pham,NiutenisuWe need more translators.
Telugu Dyvik, ganeshtWe really need more translators
Thai Hassadee PimsuwanWe really need more translators
+

Turkish

+
 techexpert, ramesaliyev +

We really really need more translators.

+
Hindi Meghraj, meghraj, flashadicts +

We really need more translators

+
Hawaiian KolonaheWe really really need more translators.
Serbian VladimirKrsticStarting localization, all that wish to contribute are welcome. Lots of work has to be done.
Sinhalesepkavindapkavinda +

Please help us with Translation.

+
Malayalamriginoommenamjadm61, Kumaresan.C.S, alfasst,abin_abraham,Please Help us in Localization Of Docs To the Malayalam Language
MyanmarSetKyarWaLarSetKyarWaLarPlease Help us in Localization Of Docs To the Myanmar Language
+ + diff --git a/files/pl/mdn/contribute/localize/translating_pages/index.html b/files/pl/mdn/contribute/localize/translating_pages/index.html new file mode 100644 index 0000000000..a9d78ef72f --- /dev/null +++ b/files/pl/mdn/contribute/localize/translating_pages/index.html @@ -0,0 +1,40 @@ +--- +title: Tłumaczenie stron MDN +slug: MDN/Contribute/Localize/Translating_pages +tags: + - Lokalizacja + - MDN + - Projekt MDC + - Tłumaczenie stron +translation_of: MDN/Contribute/Localize/Translating_pages +--- +
{{MDNSidebar}}
+ +

Ten artykuł jest podstawowym przewodnikiem po tłumaczeniu treści w serwisie MDN, obejmującym zarówno mechanizm wykonywania tłumaczeń jak i porady dotyczące właściwego tłumaczenia różnych typów treści.

+ +

Rozpoczynanie nowego tłumaczenia strony

+ +

Kiedy znajdziesz się na stronie, którą chciałbyś przetłumaczyć na swój język, postępuj zgodnie z krokami:

+ +
    +
  1. Kliknij na Ikonę Języków, by otworzyć Menu Języków po czym wybierz Dodaj Tłumaczenie (Add a Translation). Pokaże się lista języków.
  2. +
  3. Wybierz język, na który chcesz przetłumaczyć daną stronę. Pokaże się strona z tekstem oryginalnym po lewej stronie i tym do przetłumaczenia po prawej.
  4. +
  5. Pod "Translate Description" możesz przetłumaczyć tytuł i ewentualnie końcówkę na swój język. Końcówka to ostatnia część adresu URL danej strony (np. dla tego artykułu będzie to "Translating_pages"). Niektórzy nie tłumaczą jednak końcówki, zostawiając ją taką, jak w angielskim. Dostosuj więc swoje tłumaczenie do innych artykułów, aby uprościć wyszukiwanie. Możesz też kliknąć na znak minusa obok Opisu Tłumaczenia (Translate Description), aby ukryć infomację, kiedy skończyłeś. Dzięki temu możesz zrobić więcej miejsca na Tłumaczenie.
  6. +
  7. Pod Tłumaczeniem (Translate Content) przetłumacz tekst z wybranej wcześniej strony.
  8. +
  9. Dodaj przynajmniej jeden tag.
  10. +
  11. Kliknij Zapisz zmianykiedy skończysz.
  12. +
+ +

Edytowanie przetłumaczonej strony

+ + + +

Jeśli oryginalna, angielska wersja była zmieniana od czasu aktualizacji ostatniego tłumaczenia, pokaże się lista zmian w języku angielskim. To pomoże Ci znaleźć, co trzeba zaktualizować w tłumaczeniu.

+ +

Tłumaczenie tagów

+ +

To ważne, żeby każda strona miała przynajmniej jeden tag. Nawet jeśli jest to tłumaczenie.

+ +

Niektóre tagi jednak z zamysłu autora strony nie mają być tłumaczone. Aby dowiedzieć się więcej, które tagi nie powinny być przetłumaczone, zobacz standardy tagowania.

diff --git a/files/pl/mdn/contribute/persona_sign-in/index.html b/files/pl/mdn/contribute/persona_sign-in/index.html new file mode 100644 index 0000000000..0d5a2dfc7a --- /dev/null +++ b/files/pl/mdn/contribute/persona_sign-in/index.html @@ -0,0 +1,26 @@ +--- +title: MDN and Persona sign-ins +slug: MDN/Contribute/Persona_sign-in +translation_of: Archive/MDN/Persona_sign-ins +--- +
{{MDNSidebar}}
+

Please link your GitHub account to your MDN profile now so you can continue to sign in to MDN.

+
+ +

Currently, MDN lets contributors sign in using two different authentication providers: Mozilla Persona and GitHub. Starting on November 1, 2016, we will remove Persona as an option for logging in. Therefore, you must enable Github authentication on your profile to avoid losing login access to MDN.

+ +

We recognize that this is an inconvenience, and we do apologize for it. Unfortunately, this is out of our control.

+ +

Why is Persona being removed?

+ +

Mozilla has shut down the Persona project, and its servers will be turned off in November, 2016. You can learn more about Mozilla's decision to shut down Persona on the Mozilla wiki.

+ +

When will Persona be removed?

+ +

We will disable Persona as an authentication provider on November 1, 2016; in other words, the last day you'll be able to sign in to MDN using Persona will be October 31, 2016. We will be issuing increasingly frequent and increasingly urgent notifications to add a GitHub account to your MDN profile starting now. Please do this as soon as you can, in order to avoid any risk of losing access to your MDN account.

+ +

Will MDN offer another authentication provider?

+ +

We would very much like to do so, but have not yet identified another provider which meets our requirements; in addition, we don't currently have the developer resources to integrate another provider. For the time being, your only option to keep contributor access to MDN is to link your MDN profile to your GitHub account.

+ +

Keep in mind, of course, that you don't need to sign in to MDN in order to read our content. But if you have an account for contributing, and wish to be able to contribute at any time in the future, be sure to add a GitHub account to your profile as soon as you can, before October 31, 2016.

diff --git a/files/pl/mdn/guidelines/index.html b/files/pl/mdn/guidelines/index.html new file mode 100644 index 0000000000..04fed28059 --- /dev/null +++ b/files/pl/mdn/guidelines/index.html @@ -0,0 +1,20 @@ +--- +title: Treść i styl dokumentacji MDN +slug: MDN/Guidelines +tags: + - Documentation + - Dokumentacja + - Landing + - MDN + - NeedsTranslation + - TopicStub + - Wymaga tłumaczenia +translation_of: MDN/Guidelines +--- +
+

{{MDNSidebar}}

+ +

Te przewodniki dostarczają szczegółowych informacji o tym jak dokumentacja MDN powinna być napisana i sformatowana. Również, jak powinna wyglądać prezentacja przykładowego kodu oraz innych treści użytych na stronach dokumentacji. Sprawdzając poszczególne samouczki, możesz być pewny, że treści tworzone zgodnie z nimi, będą przejrzyste i czytelne, a co najważniejsze łatwe w użytkowaniu.

+ +

{{LandingPageListSubpages}}

+
diff --git a/files/pl/mdn/guidelines/style_guide/index.html b/files/pl/mdn/guidelines/style_guide/index.html new file mode 100644 index 0000000000..370bd6714e --- /dev/null +++ b/files/pl/mdn/guidelines/style_guide/index.html @@ -0,0 +1,556 @@ +--- +title: Przewodnik po stylach dokumentacji MDN +slug: MDN/Guidelines/Style_guide +tags: + - Dokumentacja + - Dokumenty MDN + - Przewodnik + - Przewodnik stylu MDN + - Style w MDN +translation_of: MDN/Guidelines/Writing_style_guide +--- +
{{MDNSidebar}}
+ +

W celu wyświetlenia dokumentacji w zorganizowany, znormalizowany i łatwy do odczytania sposób, przewodnik stylu Mozilla Developer Network opisuje, w jaki sposób tekst powinien być zorganizowany, zapisany, sformatowany i tak dalej. Są to wytyczne, a nie surowe zasady. Jesteśmy bardziej zainteresowani treścią niż formatowaniem, nie jesteś zobowiązany do uczenia się całego przewodnika po stylach MDN przed wniesieniem wkładu. Nie bądź jednak zdenerwowany lub zaskoczony, jeśli inny tłumacz zmodyfikuje w późniejszym czasie edytowany przez ciebie artykuł, aby dostosować się go, do głównych wytycznych stawianych dokumnetacji MDN.

+ +

Jeśli szukasz informacji jak dany typ strony powinien być ustrukturyzowany, zobacz poradnik dotyczący układu stron MDN

+ +

Aspekty językowe tego przewodnika dotyczą przede wszystkim dokumentacji w języku angielskim. Inne kraje mogą mieć (i mogą tworzyć) przewodniki po stylach we własnym języku. Tłumaczenia takie powinny być opublikowane jako podstrony, na lokalnych stronach MDN, dedykowanych dla danego języka przez zespół zajmujący się tłumaczeniami tzw. zespół lokalizacyjny.

+ +

Zapoznaj się ze standardami styli stosowanych do treści witryn innych niż MDN, zobacz Przewodnik po stylach One Mozilla.

+ +

Podstawy

+ +

Tytuły stron

+ +

Tytuły stron używane są w wynikach wyszukiwania, dzięki temu łatwiej jest znaleźć stronę w wynikach organicznych wyszukiwarek. Tytuły służą również do zachowania odpowiedniej struktury strony. Dlatego wraz z menu okruszkowym lub inaczej okruszkami(z ang. breadcrumbs)  umieszczane są na górze strony, w celu zachowania odpowiedniej jej hierarchii. Tytuł,  wyświetlany na górze w oknie przeglądarki, może różnić się od tzw. slug'a, który jest elemnetem adresu URL, następującym po "<locale>/docs/".

+ +

Tytuł i wielkie litery(kapitaliki)

+ +

Tytuły stron i nagłówki sekcji(H1-H6) powinny być formatowane w taki sam sposób jak zdania. Wielka litera powinna być pisana na początku pierwszego słowa, również powinna wystąpić w nazwach własnych. Powinieneś unikać słów pisanych tzw. pismem wielbłądzim(które w anglojęzycznych krajach jest stosowane w tytułach): 

+ + + +

Mamy wiele starszych stron, które zostały napisane przed ustanowieniem tej reguły stylu. Jeśli chcesz, możesz je aktualizować w razie potrzeby. Stopniowo do nich docieramy.

+ +

Choosing titles and slugs

+ +

Page slugs should be kept short; when creating a new level of hierarchy, the new level's component in the slug should generally just be a word or two.

+ +

Page titles, on the other hand, may be as long as you like, within reason, and they should be descriptive.

+ +

Creating new subtrees

+ +

When you need to add a number of articles about a topic or topic area, you will typically do so by creating a landing page, then adding subpages for each of the individual articles. The landing page should open with a paragraph or two describing the topic or technology, then provide a list of the subpages with descriptions of each page. You can automate the insertion of pages into the list using a number of macros we've created.

+ +

For example, consider the JavaScript guide, which is structured like this:

+ + + +

Try to avoid putting your article at the top of the hierarchy, which slows the site down and makes search and site navigation less effective.

+ +

Sections, paragraphs, and newlines

+ +

Use heading levels in decreasing order: {{HTMLElement("h2")}} then {{HTMLElement("h3")}} then {{HTMLElement("h4")}}, without skipping levels. H2 is the highest level allowed because H1 is reserved for the page title. If you need more than three or four levels of headers you should consider breaking up the article into several smaller articles with a landing page, linking them together using the {{TemplateLink("Next")}}, {{TemplateLink("Previous")}}, and {{TemplateLink("PreviousNext")}} macros.

+ +

The enter (or return) key on your keyboard starts a new paragraph. To insert a newline without a space, hold down the shift key while pressing enter.

+ +

Text formatting and styles

+ +

Use the "Formatting Styles" drop-down list to apply predefined styles to selected content.

+ +
Note: The "Note" style is used to call out important notes, like this one.
+ +
Warning: Similarly, the "Warning" style creates warning boxes like this.
+ +

Unless specifically instructed to do so, do not use the HTML style attribute to manually style content. If you can't do it using a predefined class, drop into {{IRCLink("mdn")}} and ask for help.

+ +

Code sample style and formatting

+ +

Tabs and line breaks

+ +

Use two spaces per tab in all code samples. Code should be indented cleanly, with open-brace ("{") characters on the same line as the statement that opens the block. For example:

+ +
if (condition) {
+  /* handle the condition */
+} else {
+  /* handle the "else" case */
+}
+
+ +

Long lines shouldn't be allowed to stretch off horizontally to the extent that they require horizontal scrolling to read. Instead, break at natural breaking points. Some examples follow:

+ +
if (class.CONDITION || class.OTHER_CONDITION || class.SOME_OTHER_CONDITION
+       || class.YET_ANOTHER_CONDITION ) {
+  /* something */
+}
+
+var toolkitProfileService = Components.classes["@mozilla.org/toolkit/profile-service;1"]
+                           .createInstance(Components.interfaces.nsIToolkitProfileService);
+
+ +

Inline code formatting

+ +

Use the "Code" button (labeled with two angle brackets "<>") to apply inline code-style formatting to function names, variable names, and method names (this uses the {{HTMLElement("code")}} element). For example, "the frenchText() function".

+ +

Method names should be followed by a pair of parentheses: doSomethingUseful(). This helps to differentiate methods from other code terms.

+ +

Syntax highlighting

+ +

Screenshot of the "syntax highlighting" menu.Entire lines (or multiple lines) of code should be formatted using syntax highlighting rather than the {{HTMLElement("code")}} element. Click the "pre" button in the toolbar to create the preformatted content box in which you'll then write your code. Then, with the text entry cursor inside the code box, select the appropriate language from the language list button to the right of the "pre" button, as seen in the screenshot to the right. The following example shows text with JavaScript formatting:

+ +
+
for (var i = 0, j = 9; i <= 9; i++, j--)
+  document.writeln("a[" + i + "][" + j + "]= " + a[i][j]);
+
+ +

If no appropriate transformation is available, use the pre tag without specifying a language ("No Highlight" in the language menu).

+ +
x = 42;
+ +

Styling HTML element references

+ +

There are various specific rules to follow when writing about HTML elements, in order to consistently describe the various components of elements, and to ensure that they're properly linked to detailed documentation.

+ +
+
Element names
+
Use the {{TemplateLink("HTMLElement")}} macro, which creates a link to the page for that element. For example, writing \{{HTMLElement("title")}} produces "{{HTMLElement("title")}}". If you don't want to create a link, enclose the name in angle brackets and use "Code (inline)" style (e.g., <title>).
+
Attribute names
+
Use bold face.
+
Attribute definitions
+
Use the {{TemplateLink("htmlattrdef")}} macro (e.g., \{{htmlattrdef("type")}}) for the definition term, so that it can be linked to from other pages, then use the {{TemplateLink("htmlattrxref")}} macro (e.g., \{{htmlattrxref("attr","element")}}) to reference attribute definitions.
+
Attribute values
+
Use "Code (inline)" style, and do not use quotation marks around strings, unless needed by the syntax of a code sample. E.g.: When the type attribute of an <input> element is set to email or tel ...
+
Labeling attributes
+
Use labels like {{HTMLVersionInline(5)}} thoughtfully. For example, use them next to the bold attribute name but not for every occurrence in your body text.
+
+ +

Latin abbreviations

+ +

In notes and parentheses

+ + + +

In running text

+ + + +

Meanings and English equivalents of Latin abbreviations

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AbbrevLatinEnglish
cf.confercompare
e.g.exempli gratiafor example
et al.et aliiand others
etc.et ceteraand so forth, and so on
i.e.id estthat is, in other words
N.B.nota benenote well
P.S.post scriptumpostscript
+ +
+

Note: Always consider whether it's truly beneficial to use a Latin abbreviation. Some of these are used so rarely that many readers won't understand the meaning, and others are often confused with one another. And be sure that you use them correctly, if you choose to do so. For example, be careful not to confuse "e.g." with "i.e.", which is a common error.

+
+ +

Acronyms and abbreviations

+ +

Capitalization and periods

+ +

Use full capitals and delete periods in all acronyms and abbreviations, including organizations such as "US" and "UN".

+ + + +

Expansion

+ +

On the first mention of a term on a page, expand acronyms likely to be unfamiliar to users. When in doubt, expand it, or, better, link it to the article or glossary entry describing the technology.

+ + + +

Plurals of acronyms and abbreviations

+ +

For plurals of acronyms or abbreviations, add s. Don't use an apostrophe. Ever. Please.

+ + + +

Capitalization

+ +

Use standard English capitalization rules in body text, and capitalize "World Wide Web" and "Web".

+ +

Contractions

+ +

Use contractions (e.g. "don't", "can't", "shouldn't") if you prefer. We're not that formal!

+ +

Pluralization

+ +

Use English-style plurals, not the Latin- or Greek-influenced forms.

+ + + +

Hyphenation

+ +

Hyphenate compounds when the last letter of the prefix is a vowel and is the same as the first letter of the root.

+ + + +

Gender-neutral language

+ +

It is a good idea to use gender-neutral language in any kind of writing where gender is irrelevant to the subject matter, to make the text as inclusive as possible. So for example, if you are talking about the actions of a specific man, usage of he/his would be fine, but if the subject is a person of either gender, he/his isn't really appropriate.
+
+ Let's take the following example:

+ +
+

A confirmation dialog appears, asking the user if he allows the web page to make use of his web cam.

+
+ +
+

A confirmation dialog appears, asking the user if she allows the web page to make use of her web cam.

+
+ +

Both versions in this case are gender-specific. This could be fixed by using gender-neutral pronouns:

+ +
+

A confirmation dialog appears, asking the user if they allow the web page to make use of their web cam.

+
+ +
+

Note: MDN allows the use of this very common syntax (which is controversial among usage authorities), in order to make up for the lack of a neutral gender in English. The use of the third-person plural as a neutral gender pronoun (that is, using "they," them", "their," and "theirs") is an accepted practice, commonly known as "singular 'they.'"

+
+ +

You can use both genders:

+ +
+

A confirmation dialog appears, asking the user if he or she allows the web page to make use of his/her web cam.

+
+ +

making the users plural:

+ +
+

A confirmation dialog appears, asking the users if they allow the web page to make use of their web cams.

+
+ +

The best solution, of course, is to rewrite and eliminate the pronouns completely:

+ +
+

A confirmation dialog appears, requesting the user's permission for web cam access.

+
+ +
+

A confirmation dialog box appears, which asks the user for permission to use the web cam.

+
+ +

The last way of dealing with the problem is arguably better, as it is not only grammatically more correct but removes some of the complexity associated with dealing with genders across different languages that may have wildly varying gender rules. This can make translation easier, both for readers reading English, then translating it into their own language as they read, and for localizers translating articles into their own language.

+ +

Numbers and numerals

+ +

Dates

+ +

For dates (not including dates in code samples) use the format "January 1, 1990".

+ + + +

Alternately, you can use the YYYY/MM/DD format.

+ + + +

Decades

+ +

For decades, use the format "1990s". Don't use an apostrophe.

+ + + +

Plurals of numerals

+ +

For plurals of numerals add "s". Don't use an apostrophe.

+ + + +

Commas

+ +

In running text, use commas only in five-digit and larger numbers.

+ + + +

Punctuation

+ +

Serial comma

+ +

Use the serial comma. The serial (also known as "Oxford") comma is the comma that appears before the conjunction in a series of three or more items.

+ + + +
+

Note: This is in contrast to the One Mozilla style guide, which specifies that the serial comma is not to be used. MDN is an exception to this rule.

+
+ +

Spelling

+ +

For words with variant spellings, always use the first entry at Answers.com. Do not use variant spellings.

+ + + +

Terminology

+ +

Obsolete vs. deprecated

+ +

It's important to be clear on the difference between the terms obsolete and deprecated.

+ +
+
Obsolete:
+
On MDN, the term obsolete marks an API or technology that is not only no longer recommended, but also no longer implemented in the browser. For Mozilla-specific technologies, the API is no longer implemented in Mozilla code; for Web standard technology, the API or feature is no longer supported by current, commonly-used browsers.
+
Deprecated:
+
On MDN, the term deprecated marks an API or technology that is no longer recommended, but is still implemented and may still work. These technologies will in theory eventually become obsolete and be removed, so you should stop using them. For Mozilla-specific technologies, the API is still supported in Mozilla code; for Web standard technology, the API or feature has been removed or replaced in a recent version of the defining standard.
+
+ +

HTML elements

+ +

Use "elements" to refer to HTML and XML elements, rather than "tags". In addition, they should almost always be wrapped in "<>", and should be in the {{HTMLElement("code")}} style. Also, at least the first time you reference a given element in a section should use the {{TemplateLink("HTMLElement")}} macro, to create a link to the documentation for the element (unless you're writing within that element's reference document page).

+ + + +

User interface actions

+ +

In task sequences, describe user interface actions using the imperative mood. Identify the user interface element by its label and type.

+ + + +

Voice

+ +

While the active voice is generally preferred, the passive voice is also acceptable, given the informal feel of our content. Try to be consistent, though.

+ +

Wiki markup and usage

+ + + +

To automatically create a link to a Bugzilla bug, use this template:

+ +
\{{Bug(322603)}}
+
+ +

This results in:

+ +

{{Bug(322603)}}

+ +

For WebKit bugs, you can use this template:

+ +
\{{Webkitbug("322603")}}
+
+ +

This results in:

+ +

{{Webkitbug("322603")}}

+ +

Page tags

+ +

Tags provide meta information about a page and/or indicate that a page has specific improvements needed to its content. Every page in the wiki should have tags. You can find details on tagging in our How to properly tag pages guide.

+ +

The tagging interface lives at the bottom of a page while you're in edit mode, and looks something like this:

+ +

Screenshot of the UX for adding and removing tags on MDN

+ +

To add a tag, click in the edit box at the end of the tag list and type the tag name you wish to add. Tags will autocomplete as you type. Press enter (or return) to submit the new tag. Each article may have as many tags as needed. For example, an article about using JavaScript in AJAX programming might have both "JavaScript" and "AJAX" as tags.

+ +

To remove a tag, simply click the little "X" icon in the tag.

+ +

Tagging pages that need work

+ +

In addition to using tags to track information about the documentation's quality and content, we also use them to mark articles as needing specific types of work.

+ +

Tagging obsolete pages

+ +

Use the following tags for pages that are not current:

+ + + +

SEO summary

+ +

The SEO summary is a very short summary of the page. It will be reported as a summary of the article to robots crawling the site, and will then appear in search results for the page. It is also used by macros that automate the construction of landing pages inside MDN itself.

+ +

By default, the first pagragraph of the page is used as the SEO summary. However you can override this behavior by marking a section with the "SEO summary" style in the WYSIWYG editor.

+ +

Landing pages

+ +

Landing pages are pages at the root of a topic area of the site, such as the main CSS or HTML pages. They have a standard format that consists of three areas:

+ +
    +
  1. A brief (typically one paragraph) overview of what the technology is and what it's used for. See {{anch("Writing a landing page overview")}} for tips.
  2. +
  3. A two-column list of links with appropriate headings. See {{anch("Creating a page link list")}} for guidelines.
  4. +
  5. An optional "Browser compatibility" section at the bottom of the page.
  6. +
+ + + +

The link list section of an MDN landing page consists of two columns. These are created using the following HTML:

+ +
<div class="row topicpage-table">
+  <div class="section">
+    ... left column contents ...
+  </div>
+  <div class="section">
+    ... right column contents ...
+  </div>
+</div>
+ +

The left-hand column should be a list of articles, with an <h2> header at the top of the left column explaining that it's a list of articles about the topic (for example "Documentation and tutorials about foo"); this header should use the CSS class "Documentation". Below that is a <dl> list of articles, with each article's link in a <dt> block and a brief one-or-two sentence summary of the article in the corresponding <dd> block.

+ +

The right-hand column should contain one or more of the following sections, in order:

+ +
+
Getting help from the community
+
This should provide information on Matrix chat rooms and mailing lists available about the topic. The heading should use the class "Community".
+
Tools
+
A list of tools the user can look at to help with the use of the technology described in this section of MDN. The heading should use the class "Tools".
+
Related topics
+
A list of links to landing pages for other, related, technologies of relevance. The heading should use the class "Related_Topics".
+
+ +

<<<finish this once we finalize the landing page standards>>>

+ +

Using, inserting images

+ +

It's sometimes helpful to provide an image in an article you create or modify, especially if the article is very technical. To include an image:

+ +
    +
  1. Attach the desired image file to the article (at the bottom of every article in edit mode)
  2. +
  3. Create an image in the WYSIWYG editor
  4. +
  5. In the WYSIWYG editor in the drop-down list listing attachments, select the newly created attachment which is your image
  6. +
  7. Press OK.
  8. +
+ +

Other References

+ +

Preferred style guides

+ +

If you have questions about usage and style not covered here, we recommend referring to the Economist style guide or, failing that, the Chicago Manual of Style.

+ +

Preferred dictionary

+ +

For questions of spelling, please refer to Answers.com. The spell-checker for this site uses American English. Please do not use variant spellings (e.g., use honor rather than honour).

+ +

We will be expanding the guide over time, so if you have specific questions that aren't covered in this document, please send them to the MDC mailing list or project lead so we know what should be added.

+ +

MDN-specific

+ + + +

Language, grammar, spelling

+ +

If you're interested in improving your writing and editing skills, you may find the following resources to be helpful.

+ + diff --git a/files/pl/mdn/index.html b/files/pl/mdn/index.html new file mode 100644 index 0000000000..e744a4f5e5 --- /dev/null +++ b/files/pl/mdn/index.html @@ -0,0 +1,32 @@ +--- +title: Projekt MDN +slug: MDN +tags: + - Dokumentacja + - MDN + - Pomoc + - Współpraca +translation_of: MDN +--- +
{{MDNSidebar}}
+ +

Mozilla Developer Network (MDN) to wiki, na której możemy udokumentować otwartą sieć internetową, technologie Mozilli, Firefox OS i inne tematy deweloperów. Każdy jest mile widziany aby dodawać i edytować treści. Nie musisz być programistą lub wiedzieć dużo o technologii; istnieje wiele różnych zadań, które muszą zostać wykonane - od tych łatwych (korekta i poprawianie literówek) do skomplikowanych (redagowanie dokumentacji API). 

+ +
+

Celem projektu MDN jest udokumentowanie otwartej sieci internetowej, technologii i projektów Mozilli. Zapraszamy Cię do pomocy!

+
+ +

Potrzebujemy Twojej pomocy! To łatwe. Nie przejmuj się pytać o zezwolenie czy o możliwość popełnienia błędów. Z drugiej strony, należy poznać społeczność MDN; jesteśmy tutaj by Ci pomóc!

+ + diff --git a/files/pl/mdn/kuma/index.html b/files/pl/mdn/kuma/index.html new file mode 100644 index 0000000000..6c2be0c158 --- /dev/null +++ b/files/pl/mdn/kuma/index.html @@ -0,0 +1,25 @@ +--- +title: 'Kuma: MDN''s wiki platform' +slug: MDN/Kuma +tags: + - Kuma + - MDN Meta +translation_of: MDN/Kuma +--- +
{{MDNSidebar}}
+ +
{{IncludeSubnav("/en-US/docs/MDN")}}
+ +

Kuma jest kodem Django, który zasila MDN Web Docs.

+ +

{{SubpagesWithSummaries}}

+ +

Zaangażuj się Kuma

+ +

Aby zaangażować się w Kuma:

+ + diff --git a/files/pl/mdn/user_guide/index.html b/files/pl/mdn/user_guide/index.html new file mode 100644 index 0000000000..f922e7ddd5 --- /dev/null +++ b/files/pl/mdn/user_guide/index.html @@ -0,0 +1,7 @@ +--- +title: MDN user guide +slug: MDN/User_guide +translation_of: MDN/Tools +--- +
{{MDNSidebar}}

The Mozilla Developer Network site is an advanced system for finding, reading, and contributing to documentation and sample code for Web developers (as well as for Firefox and Firefox OS developers). The MDN user guide provides articles detailing how to use MDN to find the documentation you need, and, if you wish, how to help make the material better, more expansive, and more complete.

+<> diff --git a/files/pl/midas/index.html b/files/pl/midas/index.html new file mode 100644 index 0000000000..2a0e9bba60 --- /dev/null +++ b/files/pl/midas/index.html @@ -0,0 +1,330 @@ +--- +title: Midas +slug: Midas +tags: + - DOM + - Midas + - NeedsContent + - NeedsHelp + - NeedsTechnicalReview + - NeedsTranslation + - TopicStub + - needsattention +translation_of: Mozilla/Projects/Midas +--- +

Introduction

+ +

Midas is the code name for Gecko's built-in rich text editor. Midas can be enabled via JavaScript on an HTML document. When Midas is enabled, the document becomes editable by the user. Scripting for Midas is based on the DHTML commands supported by Internet Explorer. Internet Explorer supports the ability to make an entire document editable by setting the designMode property of the {{domxref("document")}} object; this is how Midas is invoked in Gecko. Internet Explorer also supports the ability to edit specific elements using the contentEditable attribute; Starting with Firefox 3, Gecko also supports contentEditable. Once Midas is invoked, a few more methods of the document object become available.

+ +

Properties

+ +
+
document.designMode
+
By setting this property to "on", the document becomes editable.
+
+ +

Notes

+ +

Since an entire document becomes editable, authors often load the editable document into an IFRAME and do the bulk of the scripting in the parent document. According to standards, The IFRAME element has the contentDocument property that refers to the document in the inline frame. It also has a property called contentWindow that refers to the window object inside the inline frame. This also avoids problems with {{bug(198155)}}.

+ +

In addition to the built-in commands, advanced editing can be done by manipulating the {{domxref("Selection")}} and {{domxref("range")}} objects. It is beneficial to be familiar with these objects when working with an editable document.

+ +

Examples

+ +

This example shows the basic structure described in the Notes section :

+ +
<html>
+	<head>
+		<title>Simple Edit Box</title>
+	</head>
+	<body>
+		<iframe
+			id="MidasForm"
+			src="about:blank"
+			onload="this.contentDocument.designMode='on';"
+		></iframe>
+	</body>
+</html>
+
+ +

Methods

+ +
+
{{domxref("Document.execCommand")}}
+
Executes the given command.
+
{{domxref("Document.queryCommandEnabled")}}
+
Determines whether the given command can be executed on the document in its current state.
+
{{domxref("Document.queryCommandIndeterm")}}
+
Determines whether the current selection is in an indetermined state.
+
{{domxref("Document.queryCommandState")}}
+
Determines whether the given command has been executed on the current selection.
+
{{domxref("Document.queryCommandValue")}}
+
Determines the current value of the document, range, or current selection for the given command.
+
+ +

Supported Commands

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CommandValueDescription
backcolorA color code.This command will set the background color of the document.
bold If there is no selection, the insertion point will set bold for subsequently typed characters. +

If there is a selection and all of the characters are already bold, the bold will be removed. Otherwise, all selected characters will become bold.

+
contentReadOnly This command will make the editor readonly(true)or editable(false). Anticipated usage is for temporarily disabling input while something else is occurring elsewhere in the web page.
copy If there is a selection, this command will copy the selection to the clipboard. If there isn't a selection, nothing will happen. +

note: this command won't work without setting a pref or using signed JS. See: more about security preferences

+ +

note: the shortcut key will automatically trigger this command (typically accel-C) with or without the signed JS or any code on the page to handle it.

+
createlinkA URI.This command will not do anything if no selection is made. If there is a selection, a link will be inserted around the selection with the url parameter as the href of the link.
cut If there is a selection, this command will copy the selection to the clipboard and remove the selection from the edit control. If there isn't a selection, nothing will happen. +

note: this command won't work without setting a pref or using signed JS. See: more about security preferences

+ +

note: the shortcut key will automatically trigger this command (typically accel-X) with or without the signed JS or any code on the page to handle it.

+
decreasefontsize This command will add a <small> tag around selection or at insertion point.
delete This command will delete all text and objects that are selected. If no text is selected it deletes one character to the right. This is similar to the Delete button on the keyboard.
fontnameA font nameThis command will set the font face for a selection or at the insertion point if there is no selection. +

The given string is such as would be used in the "face" attribute of the font tag, i.e., a comma-separated list of font names.

+
fontsizeA numberThis command will set the fontsize for a selection or at the insertion point if there is no selection. +

The given number is such as would be used in the "size" attribute of the font tag.

+
forecolorA color codeThis command will set the text color of the selection or at the insertion point.
formatblockH1, H2, H3, H4, H5, H6, P, DIV, ADDRESS, BLOCKQUOTE (more?)The selection surrounded by the given block element.
headingH1, H2, H3, H4, H5, H6Selected block will be formatted as the given type of heading.
hilitecolorA color codeThis command will set the hilite color of the selection or at the insertion point. It only works with styleWithCSS enabled.
increasefontsize This command will add a <big> tag around selection or at insertion point.
indent Indent the block where the caret is located. If the caret is inside a list, that item becomes a sub-item one level deeper.
insertbronreturntrue/falseSelects whether pressing return inside a paragraph creates another paragraph or just inserts a <br> tag.
inserthorizontalrulenull/string (when string is the Line's id)This command will insert a horizontal rule (line) at the insertion point. +

Does it delete the selection? Yes!

+
inserthtmlA string.This command will insert the given html into the <body> in place of the current selection or at the caret location. +

The given string is the HTML to insert.

+
insertimageA URI.This command will insert an image (referenced by the given url) at the insertion point.
insertorderedlist Depends on the selection. If the caret is not inside a non-LI block, that block becomes the first LI and an OL. If the caret is inside a bulleted item, the bulleted item becomes a numbered item.
insertunorderedlist Depends on the selection. If the caret is not inside a non-LI block, that block becomes the first LI and UL. If the caret is inside a numbered item, the numbered item becomes a bulleted item.
insertparagraph Inserts a new paragraph.
italic If there is no selection, the insertion point will set italic for subsequently typed characters. +

If there is a selection and all of the characters are already italic, the italic will be removed. Otherwise, all selected characters will become italic.

+
justifycenter Center-aligns the current block.
justifyfull Fully-justifies the current block.
justifyleft Left-aligns the current block.
justifyright Right aligns the current block.
outdent Outdent the block where the caret is located. If the block is not indented prior to calling outdent, nothing will happen. +

If the caret is in a list item, the item will bump up a level in the list or break out of the list entirely.

+
paste This command will paste the contents of the clipboard at the location of the caret. If there is a selection, it will be deleted prior to the insertion of the clipboard's contents. +

note: this command won't work without setting a pref or using signed JS. user_pref("capability.policy.policynames", "allowclipboard"); user_pref("capability.policy.allowclipboard.Clipboard.paste", "allAccess"); See: more about security preferences

+ +

note: the shortcut key will automatically trigger this command (typically accel-V) with or without the signed JS or any code on the page to handle it.

+
redo This command will redo the previous undo action. If undo was not the most recent action, this command will have no effect. +

note: the shortcut key will automatically trigger this command (typically accel-shift-Z)

+
removeformat Removes inline formatting from the current selection.
selectall This command will select all of the contents within the editable area. +

note: the shortcut key will automatically trigger this command (typically accel-A)

+
strikethrough If there is no selection, the insertion point will set strikethrough for subsequently typed characters. +

If there is a selection and all of the characters are already striked, the strikethrough will be removed. Otherwise, all selected characters will have a line drawn through them.

+
styleWithCSS This command is used for toggling the format of generated content. By default (at least today), this is true. An example of the differences is that the "bold" command will generate <b> if the styleWithCSS command is false and generate css style attribute if the styleWithCSS command is true.
subscript If there is no selection, the insertion point will set subscript for subsequently typed characters. +

If there is a selection and all of the characters are already subscripted, the subscript will be removed. Otherwise, all selected characters will be drawn slightly lower than normal text.

+
superscript If there is no selection, the insertion point will set superscript for subsequently typed characters. +

If there is a selection and all of the characters are already superscripted, the superscript will be removed. Otherwise, all selected characters will be drawn slightly higher than normal text.

+
underline If there is no selection, the insertion point will set underline for subsequently typed characters. +

If there is a selection and all of the characters are already underlined, the underline will be removed. Otherwise, all selected characters will become underlined.

+
undo This command will undo the previous action. If no action has occurred in the document, then this command will have no effect. +

note: the shortcut key will automatically trigger this command (typically accel-Z)

+
unlink If the insertion point is within a link or if the current selection contains a link, the link will be removed and the text will remain.
{{Deprecated_header}}
readonly This command has been replaced with contentReadOnly. It takes the same values as contentReadOnly, but the meaning of true and false are inversed.
useCSS This command has been replaced with styleWithCSS. It takes the same values as styleWithCSS, but the meaning of true and false are inversed.
+ +

 

diff --git a/files/pl/midas/security_preferences/index.html b/files/pl/midas/security_preferences/index.html new file mode 100644 index 0000000000..79a5d00b3f --- /dev/null +++ b/files/pl/midas/security_preferences/index.html @@ -0,0 +1,63 @@ +--- +title: Security preferences +slug: Midas/Security_preferences +translation_of: Mozilla/Projects/Midas/Security_preferences +--- +

To protect users' private information, unprivileged scripts cannot invoke the Cut, Copy, and Paste commands in the Mozilla rich text editor, so the corresponding buttons on the Mozilla Rich Text Editing demo page will not work. To enable these functions for purposes of the demo, you must modify your browser preferences.

+ +

For Firefox:

+ +
    +
  1. Quit Firefox. If you have Quick Launch running (in Windows, an icon in the toolbar), quit that too.
  2. +
  3. Find your Firefox profile directory.
  4. +
  5. Open the user.js file from that directory in a text editor. If there's no user.js file, create one.
  6. +
  7. Add these lines to user.js: +
    user_pref("capability.policy.policynames", "allowclipboard");
    +user_pref("capability.policy.allowclipboard.sites",
    +"https://www.mozilla.org");
    +user_pref("capability.policy.allowclipboard.Clipboard.cutcopy", "allAccess");
    +user_pref("capability.policy.allowclipboard.Clipboard.paste", "allAccess");ser_pref("capability.policy.policynames", "allowclipboard");
    +user_pref("capability.policy.allowclipboard.sites",
    +"https://www.mozilla.org");
    +user_pref("capability.policy.allowclipboard.Clipboard.cutcopy", "allAccess");
    +user_pref("capability.policy.allowclipboard.Clipboard.paste", "allAccess");
    +
  8. +
  9. Change the url https://www.mozilla.org to the site for which you want to enable this function.
  10. +
  11. Save the file, and restart Firefox. The Clipboard buttons should now function.
  12. +
+ +
Note: The preference is site as well as protocol specific. For example: + +
user_pref("capability.policy.allowclipboard.sites", "http://www.mozilla.org")
+ +

is not the same as:

+ +
user_pref("capability.policy.allowclipboard.sites", "https://www.mozilla.org")
+ +

This is because the first uses HTTP while the second uses HTTPS.

+
+ +

If you want to allow multiple URLs to access the Paste operation, separate the URLs with a space. For example:

+ +
user_pref("capability.policy.allowclipboard.sites",
+ "https://www.mozilla.org https://developer.mozilla.org")
+
+ +
+
For more information about security policies, see http://www.mozilla.org/projects/security/components/ConfigPolicy.html.
+
+ + + + + + + + + + + + + + diff --git a/files/pl/miejsca/index.html b/files/pl/miejsca/index.html new file mode 100644 index 0000000000..1654476d54 --- /dev/null +++ b/files/pl/miejsca/index.html @@ -0,0 +1,67 @@ +--- +title: Miejsca +slug: Miejsca +tags: + - Dodatki + - Firefox 3 + - Miejsca + - Programowanie_Mozilli + - Rozszerzenia + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Mozilla/Tech/Places +--- +

Miejsca są ulepszeniem systemu zakładek i historii Firefoksa. Wprowadzają one znacznie większą elastyczność i oferują możliwość kompleksowego wyszukiwania.  Poza tym, zawierają  kilka nowych funkcji, takich jak przechowywanie favicon ,czy możliwość dodawania własnych adnotacji do stron.It also includes a lot of new UI, which is not covered in this developer documentation (zobacz the non-developer wiki on Places).

+ +

Miejsca przechowujące dane w bazie danych sqlite używają interfejsów mozStorage.

+ +

Tematy

+ +
+
System zapytań
+
Jak używać dla zakładek i historii systemu zapytań z określonymi parametrami.
+
+ +
+
Dostęp do zakładek
+
Jak uzyskać dostęp do zakładek?
+
+ +
+
Kontenery użytkownika
+
Jak stworzyć kontener użytkownika to show links from a third party source in the Places views.
+
+ +
+
Widoki
+
Jak tworzyć i konfigurować widoki miejsc w twoich własnych aplikacjach i rozszerzeniach.
+
+ +
+
Instantiating Views
+
How to instantiate a control with a built-in places view for use in your extension or application.
+
+ +

Dokumentacja usług API

+ +
+
Usługa historii
+
Usługa zakładek
+
Usługa dynamicznych zakładek
+
Usługa opisów
+
Usługa favicon
+
Usługa Tagging
+
+ +

Dokumentacja projektu

+ +
+
Projekt miejsc
+
High-level overview of the places database design.
+
Projekt usługi historii
+
Projekt usługi historii.
+
Projekt usługi zakładek
+
Projekt usługi zakładek.
+
Projekt usługi opisów
+
Projekt usługi dynamicznych zakładek.
+
diff --git "a/files/pl/mi\304\231dzynarodowe_pismo_w_xul_javascript/index.html" "b/files/pl/mi\304\231dzynarodowe_pismo_w_xul_javascript/index.html" new file mode 100644 index 0000000000..328cfa6124 --- /dev/null +++ "b/files/pl/mi\304\231dzynarodowe_pismo_w_xul_javascript/index.html" @@ -0,0 +1,35 @@ +--- +title: Międzynarodowe pismo w XUL JavaScript +slug: Międzynarodowe_pismo_w_XUL_JavaScript +tags: + - Internacjonalizacja + - JavaScript + - Wszystkie_kategorie +translation_of: Archive/Mozilla/XUL/International_characters_in_XUL_JavaScript +--- +

+

+

Wprowadzenie

+

Gecko 1.8, używane w Firefoksie 1.5 oraz innych aplikacjach, wprowadza wsparcie dla znaków non-ASCII w plikach JavaScript ładowanych z plików XUL. +

Oznacza to, że pliki takiego skryptu mogą zawierać znaki języków z całego świata. Przykładowo poniższa linia: +

+
var text = "Ein schönes Beispiel eines mehrsprachigen Textes: 日本語";
+
+

zawiera zarówno znaki niemieckie, jak i japońskie. +

Wcześniejsze wersje zawsze interpretowały pliki JS ładowane z XUL jako ISO-8859-1 (Latin-1). Sekwencje ucieczki Unicode zawsze działały poprawnie, (jak przedstawiono poniżej). +

+

Jak określa się kodowanie znaków w Gecko 1.8 oraz późniejszych

+

Podczas ładowania pliku JavaScript z adresu chrome:// zostaje użyty znacznik kolejności bajtów (Byte Order Mark - BOM) w celu określenia kodowania znaków w skrypcie. W przeciwnym razie zostanie użyte kodowanie znaków takie samo co w plikach XUL (określone za pomocą atrybutu encoding znacznika <?xml?>). Domyślnie jest to kodowanie UTF-8 reprezentujące wszystkie znaki języków na świecie. +

Jeśli plik skryptu ładowany jest poprzez HTTP, to nagłówek HTTP może zawierać deklarację kodowania znaków zawartą w części Content-Type, na przykład: +

+
Content-Type: application/x-javascript; charset=UTF-8
+
+

Jeśli żaden parametr nie został określony obowiązują powyższe zasady. +

+

Kompatybilność wersji

+

Jeśli chcesz, by ten sam kod działał w Gecko 1.8 oraz wersjach wcześniejszych, musisz ograniczyć się do znaków ASCII. Jednakże możesz użyć sekwencji ucieczki – powyższy przykład przepisany za ich pomocą będzie wyglądał następująco: +

+
var text = "Ein sch\u00F6nes Beispiel eines mehrsprachigen Textes: \u65E5\u672C\u8A9E";
+
+

Alternatywą może być użycie plików własności poprzez nsIStringBundle lub element XUL <stringbundle>; umożliwi to lokalizację XUL. Sposób ten nie może być użyty w plikach XUL ładowanych z sieci, a jedynie w uprzywilejowanym kodzie - na przykład w rozszerzeniach. +

diff --git "a/files/pl/modu\305\202y_javascript/index.html" "b/files/pl/modu\305\202y_javascript/index.html" new file mode 100644 index 0000000000..e9f023463a --- /dev/null +++ "b/files/pl/modu\305\202y_javascript/index.html" @@ -0,0 +1,25 @@ +--- +title: Moduły JavaScript +slug: Moduły_JavaScript +tags: + - Firefox 3 + - JavaScript + - Wszystkie_kategorie + - XPConnect +--- +

+{{ Fx_minversion_header(3) }} +

W programie Firefox 3 dostępna jest nowa metoda Components.utils.import(), pozwalająca w prosty sposób zaimportować kod JavaScript z modułu zewnętrznego. Informacje na temat instalacji modułów i korzystania z nich znajdują się w artykule Zastosowanie modułów JavaScript. Modułów JavaScript można także użyć do udostępniania danych w rozszerzeniach. +

Oprócz metody umożliwiającej import modułów w programie Firefox dostępne są dwa wbudowane moduły: +

+
XPCOMUtils +
Moduł XPCOMUtils.jsm udostępnia narzędzia dla komponentów JavaScript załadowanych przez program ładujący. +
JSON +
Moduł JSON.jsm udostępnia narzędzia do przetwarzania danych w formacie JSON. +
+


+


+

+
+
+{{ languages( { "en": "en/JavaScript_modules", "es": "es/M\u00f3dulos_JavaScript", "fr": "fr/Modules_JavaScript", "ja": "ja/JavaScript_modules" } ) }} diff --git a/files/pl/motywy/index.html b/files/pl/motywy/index.html new file mode 100644 index 0000000000..61ea53d471 --- /dev/null +++ b/files/pl/motywy/index.html @@ -0,0 +1,74 @@ +--- +title: Motywy +slug: Motywy +tags: + - Dodatki + - Motywy + - Wszystkie_kategorie +translation_of: Mozilla/Add-ons/Themes +--- +

+

"Getting Started" box, if there is no "Getting Started" article yet written, should be populated with another featurearticle or tutorial. +

+
Na początek
+Wprowadzenie do tworzenia motywów dla Firefoksa.
+
+

Motywy są skórkami dla różnych aplikacji Mozilli. Pozwalają zmieniać wygląd interfejsu użytkownika i profilować go do swoich potrzeb. Motyw może zmieniać tylko kolory UI, albo też całkowicie zmieniać każdy element jego wyglądu. +

+
+ + + + +
+

Dokumentacja

+
Tworzenie skórek dla Firefoksa +
Aby stworzyć skórkę dla Firefoksa, będziesz musiał umieć trzy rzeczy. Edytować obrazki, rozpakowywać pliki zip, modyfikować CSS. Firefox korzysta z obrazków w standardowych formatach takich jak gif, png i jpeg dla przycisków i z arkuszy stylów dla całej reszty interfejsu. +
+
Pakowanie motywów +
Artykuł omawiający pakowanie motywów dla Firefoksa i Thunderbirda. +
+
Zmiany w motywie graficznym pomiędzy Firefoksem 1.5 a 2.0 +
Lista zmian w motywie graficznym pomiędzy Firefoksem 1.5 a 2.0. +
+
Zmiana motywu z Firefoksa 1.0 do 1.5 (posty z forum) +
... +
+
Programowanie motywów +
... +
+
Pierwsze kroki w projektowaniu motywów +
Artykuł omawiający zaprojektowanie motywu do Firefoksa. +
+

Pokaż wszystkie... +

+
+

Społeczność

+
  • Obejrzyj fora Mozilli ... +
+

{{ DiscussionList("dev-themes", "mozilla.dev.themes") }} +

+ +

Narzędzia

+ +

Pokaż wszystkie... +

+

Powiązane tematy

+
CSS +
+


+

+
+

Categories +

Interwiki Language Links +


+


+


+

+
+
+{{ languages( { "de": "de/Themes", "en": "en/Themes", "es": "es/Temas", "fr": "fr/Th\u00e8mes", "ja": "ja/Themes", "zh-cn": "cn/\u4e3b\u9898", "zh-tw": "zh_tw/\u4f48\u666f\u4e3b\u984c" } ) }} diff --git a/files/pl/mozilla/add-ons/amo/index.html b/files/pl/mozilla/add-ons/amo/index.html new file mode 100644 index 0000000000..e1684b2100 --- /dev/null +++ b/files/pl/mozilla/add-ons/amo/index.html @@ -0,0 +1,15 @@ +--- +title: AMO +slug: Mozilla/Add-ons/AMO +tags: + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Add-ons/AMO +--- +

Pages documenting addons.mozilla.org:

+ +

{{Listsubpages("/en-US/Add-ons/AMO", 10)}}

+ +

 

+ +

 

diff --git a/files/pl/mozilla/add-ons/amo/policy/index.html b/files/pl/mozilla/add-ons/amo/policy/index.html new file mode 100644 index 0000000000..703a751b21 --- /dev/null +++ b/files/pl/mozilla/add-ons/amo/policy/index.html @@ -0,0 +1,20 @@ +--- +title: AMO Policies +slug: Mozilla/Add-ons/AMO/Policy +translation_of: Mozilla/Add-ons/AMO/Policy +--- +

{{AddonSidebar}}

+ +

Mozilla is committed to ensuring an excellent experience for both our users and developers of add-ons. Please review the policies below before submitting your add-on.

+ +
+
Developer Agreement
+
Effective January 5, 2016
+
Review Process
+
Add-ons extend the core capabilities of Firefox, allowing users to modify and personalize their Web experience. A healthy add-on ecosystem, built on trust, is vital for developers to be successful and users to feel safe making Firefox their own. For these reasons, Mozilla requires all add-ons to comply with the following set of policies on acceptable practices. The below is not intended to serve as legal advice, nor is it intended to serve as a comprehensive list of terms to include in your add-on’s privacy policy.
+
Featured Add-ons
+
How up-and-coming add-ons become featured and what's involved in the process.
+
Contacting us +

How to get in touch with us regarding these policies or your add-on.

+
+
diff --git a/files/pl/mozilla/add-ons/index.html b/files/pl/mozilla/add-ons/index.html new file mode 100644 index 0000000000..3500d5f048 --- /dev/null +++ b/files/pl/mozilla/add-ons/index.html @@ -0,0 +1,90 @@ +--- +title: Dodatki +slug: Mozilla/Add-ons +tags: + - Add-ons + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Add-ons +--- +
Modyfikacje i rozszerzenia programu Mozilla
+ +

Dodatki dodają nowych funkcji do aplikacji bazujących na Gecko takich jak Firefox, SeaMonkey i Thunderbird. Istnieją dwa główne typy dodatków : Rozszerzenia, które dodają nowych właściwości do programu, oraz motywy które zmieniają wygląd programu

+ +

Dla obu rodzajów rozszerzeń, Mozilla wprowadziła specjalną stronę addons.mozilla.org, znaną również jako "AMO" . submit add-ons to AMO they are reviewed, and after passing review they are made available to users. You don't have to submit add-ons to AMO, but if you do, users can take confidence in the fact that they have been reviewed, and you can benefit from AMO's visibility as a source for useful add-ons.

+ +

Add-ons can greatly affect the behaviour of the application that hosts them. We've developed a set of guidelines to help ensure that they provide a good experience to users. These guidelines apply for all sorts of add-ons, whether they are hosted at addons.mozilla.org or not.

+ +
+

Rozszerzenia

+ +

Rozszerzenia dodają nową funkcjonalność do aplikacji Mozilla takich jak Firefox czy Thunderbird. Mogą dodawać nowe funkcje do przeglądarki, na przykład inny sposób zarządzania zakładkami. Mogą także modyfikować zawartość witryn, by ulepszyć użytkowanie i bezpieczeństwo określonych stron.

+ +

Istnieją trzy różne techniki, których możesz użyć, by stworzyć rozszerzenie: rozszerzenia bazujące na dodatkach SDK, rozszerzenia niewymagające restartu (bootstrap) oraz rozszerzenia legacy.

+ + + +

If you can, it's advisable to use the Add-on SDK, which uses the restartless extension mechanism but simplifies certain tasks and cleans up after itself. If the Add-on SDK isn't sufficient for your needs, implement a manual restartless extension instead. Overlay extensions are mostly obsolete now, although there are still many of them in the wild.

+ +

For more information on choosing which technique to use, read this comparison.

+ +
+
+

Good practices

+ +

No matter how you develop an extension, there are some guidelines you can follow to help ensure your extension provides as good a user experience as possible.

+ +
+
Performance
+
Ensuring your extension is fast, responsive and memory-efficient.
+
Security
+
Ensuring your extension doesn't expose the user to malicious websites.
+
Etiquette
+
Ensuring your extension plays nicely with other extensions.
+
+
+ +
+

Application-specific

+ +

Most of the documentation assumes you're developing for Firefox Desktop. If you're developing for some other Gecko-based application, there are major differences you need to know about.

+ +
+
Thunderbird
+
Developing extensions for the Thunderbird mail client.
+
Firefox for Android
+
Developing extensions for Firefox for Android.
+
SeaMonkey
+
Developing extensions for the SeaMonkey software suite.
+
+
+
+ +
+

Motywy

+ +

Motywy to dodatki modyfikujące interfejs użytkownika. Istnieją dwa rodzaje motywów: lekkie  i kompletne motywy.

+ +
+
+

Lekkie motywy są prostsze w implementacji od kompletnych motywów, ale są też bardzo ograniczone.
+
+ Z  kompletnymi motywami możesz dokonywać głębszych modyfikacji w UI. Dokumentacja tych motywów jest nieaktualna, ale jest tutaj podlinkowana zaktualizowana wersja.

+
+
+ +
+

Inne rodzaje dodatków

+ +

Search engine plugins are a simple and very specific type of add-on: they add new search engines to the browser's search bar.

+ +

Plugins help the application understand content that it does not natively support. We're in the process of deprecating support for these plugins, as they have a history of causing stability, performance, and security problems.

+ +

{{AddonSidebar}}

diff --git a/files/pl/mozilla/add-ons/sdk/index.html b/files/pl/mozilla/add-ons/sdk/index.html new file mode 100644 index 0000000000..c45ccb437f --- /dev/null +++ b/files/pl/mozilla/add-ons/sdk/index.html @@ -0,0 +1,113 @@ +--- +title: Add-on SDK +slug: Mozilla/Add-ons/SDK +tags: + - Dodatek SDK +translation_of: Archive/Add-ons/Add-on_SDK +--- +

+ +
+

Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.

+ +

Add-ons using the techniques described in this document are considered a legacy technology in Firefox. Don't use these techniques to develop new add-ons. Use WebExtensions instead. If you maintain an add-on which uses the techniques described here, consider migrating it to use WebExtensions.

+ +

Starting from Firefox 53, no new legacy add-ons will be accepted on addons.mozilla.org (AMO) for desktop Firefox and Firefox for Android.

+ +

Starting from Firefox 57, only extensions developed using WebExtensions APIs will be supported on Desktop Firefox and Firefox for Android.

+ +

Even before Firefox 57, changes coming up in the Firefox platform will break many legacy extensions. These changes include multiprocess Firefox (e10s), sandboxing, and multiple content processes. Legacy extensions that are affected by these changes should migrate to use WebExtensions APIs if they can. See the "Compatibility Milestones" document for more information.

+ +

A wiki page containing resources, migration paths, office hours, and more, is available to help developers transition to the new technologies.

+
+ +

za pomocą dodatku sdk można tworzyć dodatki dla firefoksa. można użyć różnych standardowych technologii internetowych: javascript, html i css, aby utworzyć dodatki. sdk zawiera javascript apis, które można wykorzystać do tworzenia dodatków i narzędzi do tworzenia, uruchamiania, testowania i pakowania dodatków.

+ +
+

+ +

samouczki

+ +

zacząć

+ +

    jak zainstalować sdk i używać narzędzia jpm do tworzenia, testowania i dodawania pakietów.

+ +
+
+
+
+
+
+
+

Współpracuj z przeglądarką

+ +

    Otwieranie stron internetowych, słuchanie stron wczytywania i wyświetlania otwartych stron.

+ +

Techniki rozwoju

+ +

    Dowiedz się więcej o wspólnych technikach rozwoju, takich jak testowanie jednostkowe, logowanie, tworzenie modułów wielokrotnego użytku, lokalizacja i rozwój mobilny.

+ + + +

Utwórz składniki interfejsu użytkownika

+ +

    Utwórz elementy interfejsu użytkownika, takie jak przyciski paska narzędzi, menu kontekstowe, pozycje menu i okna dialogowe.

+ +

Modyfikuj strony internetowe

+ +

    Modyfikuj strony pasujące do wzoru adresu URL lub dynamicznie modyfikuj określoną kartę.

+ +

Łącząc je razem

+ +

    Przykład dodatku do przykładu adnotatora

+
+
+
+
+
+
+
+ +
+

Przewodniki

+ +

Przewodnik dla współtwórców
+     Dowiedz się, jak rozpocząć wkład do pakietu SDK oraz o najważniejsze idiom użyte w kodzie SDK, takie jak moduły, klasy i dziedziczenie, właściwości prywatne i procesy zawartości.
+ Infrastruktura SDK
+     Aspekty technologii bazującej na technologii SDK: moduły, identyfikator programu i reguły określające zgodność z Firefoksem.
+ Skrypty zawartości
+     Szczegółowy przewodnik po pracy z skryptami zawartości.

+ +

Idiomy SDK
+     Ramka zdarzeń SDK i rozróżnienie między dodatkowymi skryptami a skryptami zawartości.
+ Migracja XUL
+     Przewodnik po przenoszeniu dodatków XUL do pakietu SDK. W tym przewodniku znajdziesz porównanie obu zestawów narzędzi i przykładowy przykład przenoszenia dodatku XUL.
+ Multiprocess Firefox i SDK
+     Jak sprawdzić, czy dodatek jest zgodny z wieloma procesorami Firefox, czy nie, i odpowiednio go naprawić.

+ +
+
+
+
+
+
+
+ +
+

Odniesienie

+ + + +

API wysokiego poziomu

+ +

    Dokumentacja dla interfejsów API SDK wysokiego poziomu.

+ +

Narzędzie odniesienia

+ +

    Dokumentacja referencyjna narzędzia jpm służącego do tworzenia, testowania i dodawania pakietów, konsoli globalnej używanej do logowania i pliku package.json.

+ +

API niskiego poziomu

+ +

    Dokumentacja dla interfejsów API SDK niskiego poziomu.

+ +
diff --git a/files/pl/mozilla/add-ons/thunderbird/index.html b/files/pl/mozilla/add-ons/thunderbird/index.html new file mode 100644 index 0000000000..b15b535a59 --- /dev/null +++ b/files/pl/mozilla/add-ons/thunderbird/index.html @@ -0,0 +1,135 @@ +--- +title: Thunderbird extensions +slug: Mozilla/Add-ons/Thunderbird +tags: + - Add-ons + - Extensions + - NeedsTranslation + - TopicStub + - thunderbird +translation_of: Mozilla/Thunderbird/Thunderbird_extensions +--- +
Building a Thunderbird extension
+Step-by-step explanation on how to build an extension for Thunderbird.
+ +
+

{{AddonSidebar}}

+The following documentation provides help for creating extensions for Mozilla's Thunderbird email client. Although there are many similarities with Firefox extensions there are also some differences that may confound the starting developer.
+ +

+Please help! You can add a how-to (a question or an answer or a code snippet), summarize and link to a relevant newsgroup discussion, or create a tutorial. Need help? Contact jenzed.
+ + + + + + + + +
+

Documentation

+ +

Getting started with Thunderbird

+ +

A brave, young developer wants to develop an add-on for Thunderbird. Here's a few links to help them through this journey.

+ +
    +
  • Start by reading the tutorial and learn how to build a Thunderbird extension (Outdated, still talks about overlays and the add-on builder is no longer available but the tutorial has not been updated.)
  • +
  • Read about the main windows so that you know what one means when they say « thread pane », « preview pane », and « folder pane ».
  • + +
  • Want to do some real stuff? See how to inspect a message (demo add-on included!)
  • +
  • Play with our other demo add-on that exercises some more advanced Thunderbird-specific features
  • +
  • Want to do even more stuff? Don't reinvent the wheel: steal functions from the thunderbird-stdlib project (doc here). Functions for dealing with messages (delete them, archive them, change their tags, etc.) are included.
  • +
  • Haven't found what you're looking for? Read the Thunderbird how-tos; they contain a lot of recipes for things extensions want to do.
  • +
  • Still haven't managed to do what you wanted? See the list of all Thunderbird communication channels so that you know where to ask when you get stuck :-).
  • +
  • Feeling really brave? Read the source using a fancy interface; you can often find tests that demonstrate how to do what you're trying to achieve.
  • +
+ +

The Gloda database

+ +

Thunderbird has a subsystem called Gloda. Gloda stands for « Global Database », and creates Thunderbird-wide relations between objects. Gloda provides concepts such as Conversations, Messages, Identities, Contacts. All these concepts are related together: a Conversation contains Messages which are linked to Identities (from field, to field) which are themselves part of a Contact: indeed, a contact has multiple identities.

+ +

Typical use cases for Gloda: find all messages whose subject matches [search term], find all messages from [person], find all messages in the same thread as [a given message], find all messages involving [person], etc. etc.

+ +

Gloda is extremely powerful and is used heavily by add-ons such as Thunderbird Conversations. Learn more about Gloda:

+ + + + + +

Some of these links may be wildly out of date, but they still provide valuable information on the codebase.

+ + + + + + +
+

Community

+ + + +

{{ DiscussionList("dev-extensions", "mozilla.dev.extensions") }}

+ + + +

Tools

+ + + +

... more tools ...

+ +

View All...

+ + + +
+
XUL, JavaScript, XPCOM, Themes, Developing Mozilla
+
+
+ +

Categories

+ +

{{ languages( { "ja": "ja/Extensions/Thunderbird" } ) }}

diff --git a/files/pl/mozilla/add-ons/webextensions/api/index.html b/files/pl/mozilla/add-ons/webextensions/api/index.html new file mode 100644 index 0000000000..724bf34516 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/api/index.html @@ -0,0 +1,61 @@ +--- +title: JavaScript APIs +slug: Mozilla/Add-ons/WebExtensions/API +tags: + - NeedsTranslation + - TopicStub + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API +--- +
{{AddonSidebar}}
+ +
+

JavaScript APIs for WebExtensions can be used inside the extension's background scripts and in any other documents bundled with the extension, including browser action or page action popups, sidebars, options pages, or new tab pages. A few of these APIs can also be accessed by an extension's content scripts (see the list in the content script guide).

+ +

To use the more powerful APIs you need to request permission in your extension's manifest.json.

+ +

You can access the APIs using the browser namespace:

+ +
function logTabs(tabs) {
+  console.log(tabs)
+}
+
+browser.tabs.query({currentWindow: true}, logTabs)
+
+ +
+

Many of the APIs are asynchronous, returning a {{JSxRef("Promise")}}:

+ +
function logCookie(c) {
+  console.log(c)
+}
+
+function logError(e) {
+  console.error(e)
+}
+
+let setCookie = browser.cookies.set(
+  {url: "https://developer.mozilla.org/"}
+);
+setCookie.then(logCookie, logError)
+
+ +
+

Note that this is different from Google Chrome's extension system, which uses the chrome namespace instead of browser, and which uses callbacks instead of promises for asynchronous functions. As a porting aid, the Firefox implementation of WebExtensions APIs supports chrome and callbacks as well as browser and promises. Mozilla has also written a polyfill which enables code that uses browser and promises to work unchanged in Chrome: https://github.com/mozilla/webextension-polyfill.

+ +

Firefox also implements these APIs under the chrome namespace using callbacks. This allows code written for Chrome to run largely unchanged in Firefox for the APIs documented here.

+ +

Microsoft Edge uses the browser namespace, but doesn't yet support promise-based asynchronous APIs. In Edge, for the time being, asynchronous APIs must use callbacks.

+ +

Not all browsers support all the APIs: for the details, see Browser support for JavaScript APIs.

+ +

Tip: Throughout the JavaScript API listings you will find short code examples that illustrate how the API is used. You can exercise these examples, without needing to create a web extension, using the console in the Toolbox. For example, here is the first code example on this page running in the Toolbox console in Firefox Developer Edition:

+ +

Illustration of a snippet of web extension code run from the console in the Toolbox

+ +

JavaScript API listing

+ +

See below for a complete list of JavaScript APIs:

+
+ +
{{LandingPageListSubpages}}
diff --git a/files/pl/mozilla/add-ons/webextensions/api/privacy/index.html b/files/pl/mozilla/add-ons/webextensions/api/privacy/index.html new file mode 100644 index 0000000000..321f0f8834 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/api/privacy/index.html @@ -0,0 +1,72 @@ +--- +title: privacy +slug: Mozilla/Add-ons/WebExtensions/API/privacy +tags: + - API + - Add-ons + - Extensions + - NeedsTranslation + - Privacy + - Reference + - TopicStub + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/privacy +--- +
{{AddonSidebar}}
+ +

Access and modify various privacy-related browser settings.

+ +

To use the privacy API, you must have the "privacy" API permission.

+ +

Properties

+ +
+
{{WebExtAPIRef("privacy.network")}}
+
Access and modify privacy settings relating to the network.
+
{{WebExtAPIRef("privacy.services")}}
+
Access and modify privacy settings relating to the services provided by the browser or third parties.
+
{{WebExtAPIRef("privacy.websites")}}
+
Access and modify privacy settings relating to the behavior of websites.
+
+ +

Browser compatibility

+ +

{{Compat("webextensions.api.privacy", 10, 1)}}

+ +

{{WebExtExamples("h2")}}

+ +
Acknowledgements + +

This API is based on Chromium's chrome.privacy API.

+
+ + diff --git a/files/pl/mozilla/add-ons/webextensions/index.html b/files/pl/mozilla/add-ons/webextensions/index.html new file mode 100644 index 0000000000..1682fefbed --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/index.html @@ -0,0 +1,125 @@ +--- +title: Browser extensions +slug: Mozilla/Add-ons/WebExtensions +tags: + - Landing + - Manifest + - Rozszerzenia + - WebExtensions + - Wtyczki +translation_of: Mozilla/Add-ons/WebExtensions +--- +
{{AddonSidebar}}
+ +
Rozszerzenia mogą być poszerzane i modyfikowane możliwościami przeglądarki.  Rozszerzenia dla Firefox są budowane przy użyciu WebExtension APIs, systemu wspólnego dla przeglądarek do rozwoju rozszerzeń. Duży zakres systemu jest zgodny z extension API wspieranych przez Google Chrome, Opera oraz the W3C Draft Community Group.
+ +
 
+ +
Rozszerzenia napisane dla tych przeglądarek będą w większości przypadków działać w Firefox czy Microsoft Edge z kilkoma zmianami (just a few changes). API jest także w pełni zgodny z wieloprocesowością Firefox (multiprocess Firefox).
+ +

 

+ +

Jeśli masz pomysły czy pytania lub potrzebujesz pomocy w zamieszczeniu dodatku do użycia przez WebExtension APIs, możesz dotrzeć do nas poprzez dev-addons mailing list lub zamieszczenie hasztagu: #extdev na IRC.

+ +
+
+

Na początek

+ + + +

Jak 

+ + + +

Interface użytkownika

+ + + +

Pojęcia

+ + + +

Porty

+ + + +

Dynamika pracy Firefox

+ + +
+ +
+

Odsyłacz

+ +

JavaScript API

+ + + +
{{ ListSubpages ("/en-US/Add-ons/WebExtensions/API") }}
+ +

Klucze Manifest 

+ + + +
{{ ListSubpages ("/en-US/Add-ons/WebExtensions/manifest.json") }}
+
+
diff --git a/files/pl/mozilla/add-ons/webextensions/manifest.json/description/index.html b/files/pl/mozilla/add-ons/webextensions/manifest.json/description/index.html new file mode 100644 index 0000000000..fdeb8fa3f9 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/manifest.json/description/index.html @@ -0,0 +1,40 @@ +--- +title: description +slug: Mozilla/Add-ons/WebExtensions/manifest.json/description +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/description +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypString (ciąg znaków)
ObowiązkoweNie
Przykład +
+"description": "Zastępuje rysunki zdjęciami kotów."
+
+ +

Krótki opis rozszerzenia, który jest przeznaczony do wyświetlenia w interfejsie przeglądarki użytkownika.

+ +

Jest to właściwość umiejscowiona.

+ +

Przykład

+ +
"description": "Zastępuje obrazki zdjęciami kotów."
+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("webextensions.manifest.description")}}

diff --git a/files/pl/mozilla/add-ons/webextensions/manifest.json/index.html b/files/pl/mozilla/add-ons/webextensions/manifest.json/index.html new file mode 100644 index 0000000000..3421ac49a3 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/manifest.json/index.html @@ -0,0 +1,105 @@ +--- +title: manifest.json +slug: Mozilla/Add-ons/WebExtensions/manifest.json +tags: + - Add-ons + - Extensions + - NeedsTranslation + - TopicStub + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json +--- +
{{AddonSidebar}}
+ +

The manifest.json file is a JSON-formatted file, and is the only file that every extension using WebExtension APIs must contain.

+ +

Using manifest.json, you specify basic metadata about your extension such as the name and version, and can also specify aspects of your extension's functionality, such as background scripts, content scripts, and browser actions.

+ +

manifest.json keys are listed below:

+ +
{{ ListSubpages ("/en-US/Add-ons/WebExtensions/manifest.json") }}
+ +
 
+ +

"manifest_version", "version", and "name" are the only mandatory keys. "default_locale" must be present if the "_locales" directory is present and must be absent otherwise. "applications" is not supported in Google Chrome, and is mandatory in Firefox before Firefox 48 and Firefox for Android.

+ +

Browser compatibility

+ +

{{Compat("webextensions.manifest")}}

+ +

Example

+ +

Quick syntax example for manifest.json:

+ +
{
+  "applications": {
+    "gecko": {
+      "id": "addon@example.com",
+      "strict_min_version": "42.0"
+    }
+  },
+
+  "background": {
+    "scripts": ["jquery.js", "my-background.js"],
+    "page": "my-background.html"
+  },
+
+  "browser_action": {
+    "default_icon": {
+      "19": "button/geo-19.png",
+      "38": "button/geo-38.png"
+    },
+    "default_title": "Whereami?",
+    "default_popup": "popup/geo.html"
+  },
+
+  "commands": {
+    "toggle-feature": {
+      "suggested_key": {
+        "default": "Ctrl+Shift+Y",
+        "linux": "Ctrl+Shift+U"
+      },
+      "description": "Send a 'toggle-feature' event"
+    }
+  },
+
+  "content_security_policy": "script-src 'self' https://example.com; object-src 'self'",
+
+  "content_scripts": [
+    {
+      "exclude_matches": ["*://developer.mozilla.org/*"],
+      "matches": ["*://*.mozilla.org/*"],
+      "js": ["borderify.js"]
+    }
+  ],
+
+  "default_locale": "en",
+
+  "description": "...",
+
+  "icons": {
+    "48": "icon.png",
+    "96": "icon@2x.png"
+  },
+
+  "manifest_version": 2,
+
+  "name": "...",
+
+  "page_action": {
+    "default_icon": {
+      "19": "button/geo-19.png",
+      "38": "button/geo-38.png"
+    },
+    "default_title": "Whereami?",
+    "default_popup": "popup/geo.html"
+  },
+
+  "permissions": ["webNavigation"],
+
+  "version": "0.1",
+
+  "web_accessible_resources": ["images/my-image.png"]
+}
+ +

 

diff --git a/files/pl/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html b/files/pl/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html new file mode 100644 index 0000000000..f220ce01c9 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html @@ -0,0 +1,41 @@ +--- +title: manifest_version +slug: Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypNumber (numer)
ObowiązkowyTak
Przykład +
+"manifest_version": 2
+
+ +

Ten klucz określa wersję pliku manifest.json użytego w rozszerzeniu.

+ +

Obecnie zawsze musi to być 2.

+ +

Przykład

+ +
"manifest_version": 2
+
+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("webextensions.manifest.manifest_version")}}

diff --git a/files/pl/mozilla/add-ons/webextensions/manifest.json/name/index.html b/files/pl/mozilla/add-ons/webextensions/manifest.json/name/index.html new file mode 100644 index 0000000000..1e4ade2df8 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/manifest.json/name/index.html @@ -0,0 +1,40 @@ +--- +title: name +slug: Mozilla/Add-ons/WebExtensions/manifest.json/name +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/name +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypString (Ciąg znaków)
ObowiązkowyTak
Przykład +
+"name": "Moje rozszerzenie"
+
+ +

Nazwa rozszerzenia. Jest używana do zidentyfikowania rozszerzenia w przeglądarce użytkownika i na takich serwisach jak np. addons.mozilla.org.

+ +

Jest to "właściwość zlokalizowana".

+ +

Przykład

+ +
"name": "Moje rozszerzenie"
+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("webextensions.manifest.name")}}

diff --git a/files/pl/mozilla/add-ons/webextensions/manifest.json/version/index.html b/files/pl/mozilla/add-ons/webextensions/manifest.json/version/index.html new file mode 100644 index 0000000000..327d877861 --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/manifest.json/version/index.html @@ -0,0 +1,45 @@ +--- +title: version +slug: Mozilla/Add-ons/WebExtensions/manifest.json/version +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/version +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypString (ciąg znaków)
ObowiązkoweTak
Przykład +
+"version": "0.1"
+
+ +

Wersja rozszerzenia, sformatowana jako liczby i znaki ASCII oddzielone kropkami. Szczegółowe informacje na temat formatu wersji znajdują się na stronie Format Wersji.

+ +

Pamiętaj, że składnia zdefiniowana dla version w Chromie jest bardziej restrykcyjna niż ta używana w  przeglądarce Firefox:

+ + + +

Przykład

+ +
"version": "0.1"
+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("webextensions.manifest.version")}}

diff --git a/files/pl/mozilla/add-ons/webextensions/pierwsze_kroki_z_web-ext/index.html b/files/pl/mozilla/add-ons/webextensions/pierwsze_kroki_z_web-ext/index.html new file mode 100644 index 0000000000..d88ccda07e --- /dev/null +++ b/files/pl/mozilla/add-ons/webextensions/pierwsze_kroki_z_web-ext/index.html @@ -0,0 +1,296 @@ +--- +title: Pierwsze kroki z web-ext +slug: Mozilla/Add-ons/WebExtensions/Pierwsze_kroki_z_web-ext +translation_of: Mozilla/Add-ons/WebExtensions/Getting_started_with_web-ext +--- +
{{AddonSidebar}}
+ +

web-ext is a command line tool designed to speed up various parts of the extension development process, making development faster and easier. This article explains how to install and use web-ext.

+ +

Instalacja

+ +

web-ext is a node-based application that you install with the nodejs/npm tool. Install web-ext using the following command:

+ +
npm install --global web-ext
+ +

web-ext requires the current LTS (long-term support) version of NodeJS.

+ +

To test whether the installation worked run the following command, which displays the web-ext version number:

+ +
web-ext --version
+ +

Użycie web-ext

+ +

Before you start using web-ext, locate an example extension to use—if you don't have one, use one from the webextensions-examples repo.

+ +

Testing out an extension

+ +

Test an extension in Firefox by cd'ing into your extension's root directory and entering:

+ +
web-ext run
+ +

This starts Firefox and loads the extension temporarily in the browser, just as you can on the about:debugging page.

+ +

See the run reference guide to learn more.

+ +

Automatic extension reloading

+ +

The run command watches your source files and tells Firefox to reload the extension after you edit and save a file. For example, if you changed the name property in your manifest.json file, Firefox displays the new name. This makes it easy to try out new features because you can see the effect immediately. The automatic reloading feature is active by default, you use it like this:

+ +
web-ext run
+ +

You can also press the r key in the web-ext terminal to trigger an extension reload.

+ +

If you experience unexpected behavior with the reloading feature, please file a bug. You can also disable reloading like this:

+ +
web-ext run --no-reload
+ +
+

Extension reloading is only supported in Firefox 49 or higher.

+
+ +

Testing in different versions of Firefox

+ +

To run your extension in a version of Firefox Desktop other than the default, use the --firefox option to specify a full path to the binary file. Here is an example for Mac OS:

+ +
web-ext run --firefox=/Applications/FirefoxNightly.app/Contents/MacOS/firefox-bin
+ +

On Windows, the path needs to include firefox.exe, for example:

+ +
web-ext run --firefox="C:\Program Files\Mozilla Firefox\firefox.exe"
+ +

See the run command reference to learn more.

+ +

Testing in Firefox 48

+ +

Firefox 48 was the first stable version to use the WebExtension platform, but it doesn't allow web-ext to install an extension remotely. You need to run your extension in Firefox 48 using:

+ +
web-ext run --pre-install
+ +

Testing in Firefox for Android

+ +

To run your extension in Firefox for Android, follow these instructions to set up your computer and device.

+ +

With your device connected to your development computer, run:

+ +
web-ext run --target=firefox-android
+ +

This command displays the device ID for your connected Android device or devices. If you don't see a list of device IDs, make sure you set up the device for development correctly.

+ +

Now, add the device ID to the command:

+ +
web-ext run --target=firefox-android --android-device=<device ID>
+ +

If you've multiple versions of Firefox installed, you may need to choose a specific version. For example:

+ +
web-ext run --target=firefox-android ... --firefox-apk=org.mozilla.firefox
+ +

The first time you run this command, you may need to grant Android permissions for the APK. This is because the command needs read / write access to the device storage, so that Firefox for Android can run on a temporary profile. The web-ext output guides you in how to grant these permissions.

+ +

The web-ext command does not alter any of your existing Firefox for Android preferences or data. To see more information about how web-ext is interacting with your device, run the command with --verbose.

+ +

See the run command reference to learn more.

+ +

Debugging in Firefox for Android

+ +

When using web-ext run to test an extension on Firefox for Android, you'll notice a message like this in the console output:

+ +
You can connect to this Android device on TCP port 51499
+
+ +

This is a remote debugger port that you can connect to with Firefox's developer tools. In this case, you'd connect to host localhost on port 51499.

+ +

See this guide for more information about debugging an extension on Firefox for Android.

+ +

Testing unsigned extensions

+ +

When you execute web-ext run, the extension gets installed temporarily until you close Firefox. This does not violate any signing restrictions. If instead you create a zip file with web-ext build and try to install it into Firefox, you will see an error telling you that the add-on is not signed. You will need to use an unbranded build or use a development build to install unsigned extensions.

+ +

Using a custom profile

+ +

By default, the run command will create a temporary Firefox profile. To run your extension with a specific profile use the --firefox-profile option, like this:

+ +
web-ext run --firefox-profile=your-custom-profile
+ +

This option accepts a string containing the name of your profile or an absolute path to the profile directory. This is helpful if you want to manually configure some settings that will always be available to the run command.

+ +

Keeping profile changes

+ +

The run command does not save any changes made to the custom profile specified by --firefox-profile. To keep changes, add this option:

+ +
web-ext run --keep-profile-changes --firefox-profile=your-custom-profile
+ +

This may be helpful if your extension has many different run states.

+ +
+

This option makes the profile specified by --firefox-profile completely insecure for daily use. It turns off auto-updates and allows silent remote connections, among other things. Specifically, it will make destructive changes to the profile that are required for web-ext to operate.

+
+ +

Packaging your extension

+ +

Once you've tested your extension and verified that it's working, you can turn it into a package for submitting to addons.mozilla.org using the following command:

+ +
web-ext build
+ +

This outputs a full path to the generated .zip file that can be loaded into a browser.

+ +
+

The generated .zip file doesn't work on Firefox without signing or adding applications.gecko.id key into manifest.json.  For more information, please refer WebExtensions and the Add-on ID page.

+
+ +

web-ext build is designed to ignore files that are commonly not wanted in packages, such as .git, node_modules, and other artifacts.

+ +

See the build reference guide to learn more.

+ +

Signing your extension for distribution

+ +

As an alternative to publishing your extension on addons.mozilla.org, you can self-host your package file but it needs to be signed by Mozilla first. The following command packages and signs a ZIP file, then returns it as a signed XPI file for distribution:

+ +
web-ext sign --api-key=$AMO_JWT_ISSUER --api-secret=$AMO_JWT_SECRET 
+ +

The API options are required to specify your addons.mozilla.org credentials.

+ + + +

See the sign reference guide to learn more.

+ +

Signing extensions without an explicit ID

+ +

web-ext supports signing extensions that do not declare the applications.gecko.id property in their manifest. The first time you sign an extension without an explicit ID, addons.mozilla.org will generate an ID and web-ext will save it to .web-extension-id in the working directory. You should save the ID file so that you can sign future versions of the same extension. If you lose the ID file, you will have to add back the applications.gecko.id property or use the --id option when signing, for example:

+ +
web-ext sign --api-key=... --api-secret=... --id="{c23c69a7-f889-447c-9d6b-7694be8035bc}"
+ +

Signing in a restricted environment

+ +

If you're working in an environment that restricts access to certain domains, you can try using a proxy when signing:

+ +
web-ext sign --api-key=... --api-secret=... --api-proxy=https://yourproxy:6000
+ +

See the --api-proxy option to learn more.

+ +

The following domains are used for signing and downloading files:

+ + + +

Checking for code "lint"

+ +

Before trying out your extension with the run command or submitting your package to addons.mozilla.org, use the lint command to make sure your manifest and other source files do not contain any errors. Example:

+ +
web-ext lint
+ +

This uses the addons-linter library to walk through your source code directory and report any errors, such as the declaration of an unknown permission.

+ +

See the lint reference guide to learn more.

+ +

Setting option defaults in a configuration file

+ +

You can specify --config=my-config.js to set default values for any option. Here is an example with the build command:

+ +
web-ext --config=my-config.js build
+ +

The file should be a CommonJS module as understood by NodeJS and must export each configuration value. Here is how you would set the default value of --verbose to true:

+ +
module.exports = {
+  verbose: true,
+};
+ +

If you want to specify options that only apply to a specific command, you nest the configuration under the command name. Here is an example of adding configuration for --overwrite-dest that only applies to the build command as well as --firefox that only applies to the run command:

+ +
module.exports = {
+  // Global options:
+  verbose: true,
+  // Command options:
+  build: {
+    overwriteDest: true,
+  },
+  run: {
+    firefox: 'nightly',
+  },
+};
+ +

To create a configuration key for a command line option, you remove the preceding dashes and convert the name to camel case. As you can see from this example, --overwrite-dest was converted to overwriteDest.

+ +

If an option can be specified multiple times on the command line then you define it as an array. For example, here is how to specify multiple --ignore-files patterns:

+ +
module.exports = {
+  ignoreFiles: [
+    'package-lock.json',
+    'yarn.lock',
+  ],
+};
+ +

Automatic discovery of configuration files

+ +

web-ext will load existing configuration files in the following order:

+ + + +

If a home directory config and a local directory config define the same option, the value from the latter file will be used.

+ +

To disable automatic loading of configuration files, set this option:

+ +
web-ext --no-config-discovery run
+ +

To diagnose an issue related to config files, re-run your command with --verbose. This will tell you which config file affected which option value.

+ +

Specifying different source and destination directories

+ +

The preceding commands use default directories for the extension source and artifact creation (for example, built .zip files). The defaults are:

+ + + +

You can specify different source and destination directories using the --source-dir and --artifacts-dir options when running your commands. Their values can be relative or absolute paths, but must always be specified as strings. Here is an example of specifying both options when building an extension:

+ +
web-ext build --source-dir=webextension-examples/notify-link-clicks-i18n --artifacts-dir=zips
+ +

Outputting verbose messages

+ +

To see in detail what web-ext is doing when you run a command, include the --verbose option. For example:

+ +
web-ext build --verbose
+ +

Viewing all commands and options

+ +

You can list all commands and options like this:

+ +
web-ext --help
+ +

You can list options for a specific command by adding it as an argument:

+ +
web-ext --help run
+ +

Detecting temporary installation

+ +

Your extension can detect whether it was installed using web-ext run, rather than as a built and signed extension downloaded from addons.mozilla.org. Listen for the {{WebExtAPIRef("runtime.onInstalled")}} event and check the value of details.temporary.

+ +

Using web-ext from a script

+ +

You can use web-ext as a NodeJS module. Here is more information, with example code.

+ +

See also

+ + diff --git "a/files/pl/mozilla/add-ons/webextensions/tw\303\263j_pierwszy_webextension/index.html" "b/files/pl/mozilla/add-ons/webextensions/tw\303\263j_pierwszy_webextension/index.html" new file mode 100644 index 0000000000..f5f1f8e3fc --- /dev/null +++ "b/files/pl/mozilla/add-ons/webextensions/tw\303\263j_pierwszy_webextension/index.html" @@ -0,0 +1,152 @@ +--- +title: Twoje pierwsze rozszerzenie +slug: Mozilla/Add-ons/WebExtensions/Twój_pierwszy_WebExtension +translation_of: Mozilla/Add-ons/WebExtensions/Your_first_WebExtension +--- +
{{AddonSidebar}}
+ +

W tym artykule przejdziemy przez tworzenie rozszerzenia dla przeglądarki Firefox od początku do końca. Rozszerzenie to tylko dodaje czerwoną ramkę do stron załadowanych z "mozilla.org" lub dowolnej z jej poddomen.

+ +

Kod źródłowy dla tego przykładu znajduje się na GitHub'ie: https://github.com/mdn/webextensions-examples/tree/master/borderify.

+ +

Najpierw, będziesz potrzebować przeglądarki Firefox w wersji 45 lub nowszej.

+ +

Pisanie rozszerzenia

+ +

Stwórz nowy folder i przejdź do niego:

+ +
mkdir borderify
+cd borderify
+ +

manifest.json

+ +

Teraz stwórz nowy plik o nazwie "manifest.json" bezpośrednio w katalogu "borderify". Wprowadź do niego poniższy kod:

+ +
{
+
+  "manifest_version": 2,
+  "name": "Borderify",
+  "version": "1.0",
+
+  "description": "Dodaje czerwoną ramkę we wszystkich stronach powiązanych z domeną mozilla.org.",
+
+  "icons": {
+    "48": "icons/border-48.png"
+  },
+
+  "content_scripts": [
+    {
+      "matches": ["*://*.mozilla.org/*"],
+      "js": ["borderify.js"]
+    }
+  ]
+
+}
+ + + +

Najbardziej interesującym kluczem jest tutaj content_scripts, który mówi przeglądarce, który skrypt wczytać do stron internetowych, których adres spełnia określony wzór. W tym przypadku prosimy przeglądarkę o wczytanie skryptu o nazwie "borderify.js" na wszystkich stronach HTTP i HTTPS obsługiwanych przez domenę "mozilla.org" bądź jakąkolwiek jej poddomenę.

+ + + +
+

W niektórych sytuacjach musisz nadać ID swojemu rozszerzeniu. Jeśli potrzebujesz nadać rozszerzeniu ID, dołącz klucz applications do manifest.json i przypisz mu pole id:

+ +
"applications": {
+  "gecko": {
+    "id": "borderify@przyklad.pl"
+  }
+}
+
+ +

icons/border-48.png

+ +

Rozszerzenie powinno mieć ikonę. Będzie ona wyświetlona na liście dodatków w menadżerze rozszerzeń. Nasz manifest.json zapowiada, że będziemy mieć ikonę w "icons/border-48.png".

+ +

Stwórz folder "icons" bezpośrednio w katalogu "borderify". Zapisz tam ikonę o nazwie "border-48.png". Możesz użyć tej naszej przykładowej, która pochodzi ze zbioru ikon Google Material Design i jest używana zgodnie z warunkami licencji Creative Commons Attribution-ShareAlike.

+ +

Jeśli zdecydujesz się dodać własną ikonę, to powinna być w formacie 48x48 pikseli. Możesz także dodać ikonę o rozmiarze 96x96 pikseli dla ekranów o wysokiej rozdzielczości i jeśli dodasz ją, to powinna ona zostać przypisana jako wartość pola 96 obiektu icons 
+ w pliku manifest.json:

+ +
"icons": {
+  "48": "icons/border-48.png",
+  "96": "icons/border-96.png"
+}
+ +

Ewentualnie możesz dodać plik SVG tutaj, więc zostanie on poprawnie przeskalowany. (Jeśli jednak używasz SVG, a twoja ikona zawiera napisy, możesz chcieć użyć narzędzia "przekonwertuj do ścieżki" w edytorze SVG, by spłaszczyć tekst, więc będzie skalowo dopasowany do położenia/rozmiaru).

+ + + +

borderify.js

+ +

Ostatecznie stwórz plik o nazwie "borderify.js" bezpośrednio w katalogu "borderify". Wpisz do niego poniższy kod:

+ +
document.body.style.border = "5px solid red";
+ +

Ten skrypt będzie załadowany na stronach spełniających wzór określony w kluczu content_scripts w pliku manifest.json. Skrypt ma bezpośredni dostęp do dokumentu, podobnie jak skrypty wczytane przez stronę.

+ + + +

Wypróbujmy

+ +

Najpierw dokładnie sprawdź, czy odpowiedne pliki są w właściwych miejsacach:

+ +
borderify/
+    icons/
+        border-48.png
+    borderify.js
+    manifest.json
+ +

Instalacja

+ +

Otwórz "about:debugging" w przeglądarce Firefox, kliknij "Załaduj tymczasową wtyczkę" i wybierz jakikolwiek plik z katalogu z Twoim rozszerzeniem:

+ +

{{EmbedYouTube("cer9EUKegG4")}}

+ +

Rozszerzenie zostanie teraz zainstalowane i pozostanie tam do momentu ponownego uruchomienia Firefoksa.

+ +

Alternatywnie, możesz także uruchomić swoje rozszerzenie za pomocą wiersza poleceń używając narzędzie web-ext.

+ +

Testowanie

+ +

Teraz spróbuj odwiedzić jakąś stronę należącą do "mozilla.org" i powinienieś zobaczyć czerwoną ramkę wokół strony:

+ +

{{EmbedYouTube("rxBQl2Z9IBQ")}}

+ +
+

Jednakże nie próbuj tego na addons.mozilla.org! Obecnie skrypty są blokowane na tej domenie.

+
+ +

Spróbuj trochę poeksperymentować. Edytuj zawartość skryptu by zmienić kolor ramki lub zrób coś innego z zawartością strony. Zapisz skrypt i przeładuj pliki rozszerzenia kilkając przycisk "Przeładuj" w about:debugging. Możesz zobaczyć zmiany odrazu:

+ +

{{EmbedYouTube("NuajE60jfGY")}}

+ + + +

Pakowanie i publikowanie

+ +

Aby inni użytkownicy mogli korzystać z Twojego rozszerzenia, musisz je zapakować i wysłać do Mozilli w celu podpisania go. 
+ Aby dowiedzieć się więcej, zajrzyj do artykułu "Publikowanie własnego rozszerzenia".

+ +

Co dalej?

+ +

Teraz gdy ty masz pomysł na temat procesu tworzenia rozszerzeń (WebExtension) dla Firefoxa, to spróbuj:

+ + diff --git a/files/pl/mozilla/developer_guide/index.html b/files/pl/mozilla/developer_guide/index.html new file mode 100644 index 0000000000..3a81193209 --- /dev/null +++ b/files/pl/mozilla/developer_guide/index.html @@ -0,0 +1,153 @@ +--- +title: Przewodnik Dewelopera +slug: Mozilla/Developer_guide +tags: + - Developing Mozilla + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Developer_guide +--- +

Istnieje wiele sposobów, na które możesz pomóc projektowi Mozilla: programowanie, testowanie, ulepszanie procesu kompilacji i narzędzi z nią powiązanych, lub pomoc w pisaniu dokumentacji. Ten przewodnik dostarcza poręcznych informacji, które pomogą zarówno nowym jak i doświadczonym osobom dołączyć do naszego grona, lub by zwyczajnie odświeżyć swoją wiedzę.

+
+
+

Tematy dokumentacji

+
+
+ Getting Started
+
+ Poradnik dla początkujących, który krok po kroku wyjaśni w jaki sposób dołączyć do społeczności programistów Mozilli.
+
+
+
+ Working with Mozilla Source Code
+
+ Omówienie kodu, jak uzyskać kod oraz przewodnik po stylu programowania.
+
+ Build Instructions
+
+ Jak skompilować Firefoxa, Thunderbirda, SeaMonkey oraz inne aplikacje Mozilli.
+
+ Development process overview
+
+ Kompletne omówienie procesu produkcji oprogramowania Mozilli.
+
+ Managing multiple profiles
+
+ Pracując z roboczymi wersjami Firefoxa często przydatne okazuje się posiadanie kilku, różnych profili, na przykład jeden profil na każdy kanał dystybucyjny, lub możesz ustalić różne profile dla różnych rodzajów testów.
+
+ Automated Testing
+
+ Jak uruchomić zautomatyzowane testy Mozilli oraz jak napisać swoje własne.
+
+ How to submit a patch
+
+ Po napisaniu łatki powinieneś wysłać swoje zmiany do drzewka. Ten artykuł opisuje proces oceny oraz co zrobić, aby łatka została oceniona pozytywnie.
+
+ Getting documentation updated
+
+ Jak upewnić się, że dokumentacja zostanie zaktualizowana po twoich zmianach w kodzie.
+
+ Mozilla modules and module ownership
+
+ Ten artykuł dostarcza informacji o modułach Mozilli, jaka jest rola opiekuna modułu oraz w jaki sposób opiekunowie modułów są wybierani.
+
+ Code snippets
+
+ Pomocne przykłady kodu dla wielu, różnych rzeczy, które mogą okazać się potrzebne.
+
+ Mozilla development strategies
+
+ Kilka wskazówek, które pomogą poprawić twoją produktywność podczas pracy dla Mozilli.
+
+ Debugging
+
+ Praktyczne porady o debugowaniu kodu Mozilli.
+
+ Performance
+
+ Sugestie oraz narzędzia, które pomogą poprawić wydajność twojego kodu (oraz sprawią, że inni bardziej docenią twoją pracę).
+
+ The Mozilla platform
+
+ Omówienie metod funkcjonowania platformy Mozilla.
+
+ Adding APIs to the navigator object {{ gecko_minversion_inline("9.0") }}
+
+ Poszerzanie możliwości obiektu {{ domxref("window.navigator") }} poprzez dodatkowe API.
+
+ Interface Compatibility
+
+ Zalecenia dotyczące modyfikacji skryptowanych oraz binarnych API w Mozilli.
+
+ Customizing Firefox
+
+ Informacje odnośnie dostosowywania Firefoxa do swoich potrzeb.
+
+ Virtual ARM Linux environment
+
+ Jak skonfigurować emulator ARM oraz jak uruchomić na nim Linuxa, by przetestować kod specyficzny dla architektury ARM, choć niekoniecznie musi to być kod specyficzny dla tej platformy. Przydatne dla deweloperów aplikacji mobilnych.
+
+ Obsolete Build Caveats and Tips
+
+ Miejsce w którym można umieścić wskazówki dotyczące kompilacji, które nie są aktualne dla najnowszej wersji kodu, ale są przydatne przy kompilacji starszych wersji.
+
+
+
+

Narzędzia

+
+
+ Bugzilla
+
+ Bugzilla jest oprogramowaniem korzystającym z bazy danych, w której przechowuje się informacje o błędach w projektach Mozilli.
+
+ MXR
+
+ Przeglądanie i przeszukiwanie kodu źródłowego Mozilli w twojej przeglądarce.
+
+ DXR
+
+ Nowa generacja przeszukiwania kodu źródłowego Mozilli. W produkcji.
+
+ Bonsai
+
+ Narzędzie Bonsai pozwala Ci dowiedzieć się kto, kiedy i gdzie dokonał zmian w repozytorium, a także jakie to były zmiany.
+
+ Mercurial
+
+ Rozproszony system kontroli wersji używany do zarządzania kodem źródłowym Mozilli.
+
+ Mozilla build VM
+
+ Maszyna wirtualna kompatybilna z programem VirtualBox skonfigurowana z całością oprogramowania potrzebnego do kompilacji Firefoxa.
+
+ TBPL (Tinderbox Push Log)
+
+ Tinderbox Push Log shows the status of the tree (whether or not it currently builds successfully).  Check this before checking in and out, to be sure you're working with a working tree.
+
+ Crash tracking
+
+ Information about the Socorro crash reporting system.
+
+ Performance tracking: Datazilla and Graphs
+
+ See performance information for Mozilla projects.
+
+ Callgraph
+
+ A tool to help perform static analysis of the Mozilla code by generating callgraphs automatically.
+
+ Developer forums
+
+ A topic-specific list of discussion forums where you can talk about Mozilla development issues.
+
+ Mozilla Platform Development Cheat Sheet
+
+ Brian Bondy's list of frequently referenced information for platform developers.
+
+ Firefox development video tutorials
+
+ Brian Bondy's video tutorials on Firefox development.
+
+
+
+

 

diff --git a/files/pl/mozilla/developer_guide/mozilla-central/index.html b/files/pl/mozilla/developer_guide/mozilla-central/index.html new file mode 100644 index 0000000000..64fd1c8b0a --- /dev/null +++ b/files/pl/mozilla/developer_guide/mozilla-central/index.html @@ -0,0 +1,15 @@ +--- +title: mozilla-central +slug: Mozilla/Developer_guide/mozilla-central +translation_of: Mozilla/Developer_guide/mozilla-central +--- +

mozilla-central is a Mercurial repository of the Mozilla code: https://hg.mozilla.org/mozilla-central .

+

Pushing changes to mozilla-central

+

See How do I check stuff in? for help with hg commit and hg push. If you believe you should have access to mozilla-central but don't know your login details, file a bug.

+

Ensure your checkins follow the general checkin rules.  Occasionally, e.g. just before branch points, mozilla-central also has special tree rules.  The Tinderbox page for mozilla-central is located at http://tinderbox.mozilla.org/showbui...i?tree=Firefox.

+

See also

+ +

{{ languages( { "ja": "ja/Mozilla-central", "es": "es/Mozilla-central" } ) }}

diff --git a/files/pl/mozilla/developer_guide/source_code/index.html b/files/pl/mozilla/developer_guide/source_code/index.html new file mode 100644 index 0000000000..24594b808b --- /dev/null +++ b/files/pl/mozilla/developer_guide/source_code/index.html @@ -0,0 +1,49 @@ +--- +title: Pracowanie z kodem źródłowym Mozilli +slug: Mozilla/Developer_guide/Source_Code +tags: + - Developing Mozilla + - Firefox + - Intermediate + - Mozilla + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Developer_guide/Source_Code +--- +

Artykuły poniżej pomogą Ci zaopatrzyć się w kod źródłowy Mozilli, nauczyć się jak efektywnie poruszać się w kodzie oraz jak sprawić aby twoje zmiany pojawiły się w drzewku.

+ +
+
+
+
Pobieranie kodu z reprozytorium Mercurial
+
Jeżeli planujesz wspierać projekt Mozilli, najlepszą metodą, aby zaopatrzyć się w kod jest pobranie go z repozytorium kontroli wersji. Tutaj możesz się dowiedzieć jak to zrobić.
+
Uzyskanie wstępnie skonfigurowanej maszyny wirtualnej systemu budowania Mozilli
+
Jest to najłatwiejszy sposób na rozpoczęcie: użyj wirtualnej maszyny VirtualBox, która jest już skonfigurowana z pełnym środowiskiem kompilacji, którego możesz użyć. Po prostu uruchom maszynę wirtualną i buduj!
+
Pobieranie kodu przy użyciu protokołu HTTP lub FTP
+
If you want to fetch the code for a specific release of a particular Mozilla product, you may prefer to download a source code archive.
+
Przeglądanie i wyszukiwanie kodu źródłowego Mozilli online
+
Dowiedz się, jak używać MXR, narzędzia do wyszukiwania i przeglądania online w celu uzyskania dostępu do kodu Mozilli. Nie jest to dobry sposób na pobranie kodu, ale jest to świetny sposób na jego przeszukiwanie.
+
Poruszanie się po kodzie źródłowym Mozilli
+
Dowiedz się o różnych folderach w drzewie źródłowym Mozilli i o tym, jak znaleźć to, co szukasz.
+
Bugs for newcomers
+
Jeśli jesteś nowy w projekcie i chcesz nad czymś popracować, zobacz tutaj.
+
+
+ +
+
+
Mozilla Coding Style Guide
+
The code style guide provides information about how you should format your source code to ensure that you don't get mocked by the reviewers.
+
Interface development guide
+
Guidelines and documentation for how to create and update XPCOM interfaces.
+
Wypróbuj serwery
+
Mozilla products build on at least three platforms. If you don't have access to them all, you can use the try servers to test your patches and make sure the tests pass.
+
Tworzenie poprawki
+
Once you've made a change to the Mozilla code, the next step (after making sure it works) is to create a patch and submit it for review. This article needs to be updated fully for Mercurial.
+
Getting commit access to the source code
+
Feel ready to join the few, the proud, the committers?  Find out how to get check-in access to the Mozilla code.
+
Pobieranie starszego kodu Mozilli z CVS
+
Older versions of the Mozilla source code, as well as the current versions of NSS and NSPR, are kept in a CVS repository.  Learn about that in this article.
+
+
+
diff --git a/files/pl/mozilla/firefox/developer_edition/index.html b/files/pl/mozilla/firefox/developer_edition/index.html new file mode 100644 index 0000000000..88fe0b5ce2 --- /dev/null +++ b/files/pl/mozilla/firefox/developer_edition/index.html @@ -0,0 +1,56 @@ +--- +title: dla deweloperów +slug: Mozilla/Firefox/Developer_Edition +tags: + - Firefox + - Początkujący +translation_of: Mozilla/Firefox/Developer_Edition +--- +
{{FirefoxSidebar}}

Wersja Firefoksa, która jest dostosowana dla programistów.

+ +

Pobierz Firefox Developer Edition

+ +
+
+
+

Najnowsze funkcję Firefox

+ +

Firefox Developer Edition zastępuje kanał Aurora w procesie wydania Firefoksa. Funkcje Aurora, będą lądować w Developer Edition co sześć tygodni, po ich stabilizacji w Nightly builds.

+ +

Korzystając z Developer Edition, możesz uzyskać dostęp do narzędzi i funkcji platformy co najmniej 12 tygodni, zanim dotrą do głównego kanał wersji Firefoksa.

+ +

Dowiedz się, co nowego w wersji Developer.

+
+ +
+

Odrębny temat

+ +

Dotyczy to szybszego dostępu do narzędzi deweloperskich.

+ +

Eksperymentalne narzędzia programistyczne

+ +

Podłączyliśmy eksperymentalne narzędzia, które jeszcze nie są gotowe do najnowszego wydania.

+ +

Na przykład, Developer Edition obejmuje dodatek Valence Valence, który umożliwia podłączenie narzędzi dla programistów Firefoksa do innych przeglądarek takich jak Chrome na Androida, iOS i Safari.

+
+
+ +
+
+

Oddzielne profile

+ +

Firefox Developer Edition wykorzystuje oddzielny profil z innymi wersjami Firefoksa zainstalowanych na komputerze. Oznacza to, że można z łatwością uruchomić Developer Edition obok aktualnej wydanej wersji lub bety programu Firefox.

+ +
+

Informacja: Oznacza to, że po raz pierwszy uruchamiając Developer Edition, zobaczysz zupełnie niedostosowaną przeglądarkę, bez dodatków, zakładek lub historii. Możesz użyć Firefox Sync, jeśli chcesz ujednolicić swoje ustawienia pomiędzy Developer Edition i innymi wydaniami Firefoksa.

+
+
+ +
+

Ustawienia dla web developers

+ +

Ustawiliśmy domyślne wartości preferencji dostosowane dla programistów webowych. Na przykład, {{glossary("chrome")}} i zdalne debugowania są domyślnie włączone.

+
+
+ +

 

diff --git a/files/pl/mozilla/firefox/index.html b/files/pl/mozilla/firefox/index.html new file mode 100644 index 0000000000..e13ee005db --- /dev/null +++ b/files/pl/mozilla/firefox/index.html @@ -0,0 +1,63 @@ +--- +title: Firefox +slug: Mozilla/Firefox +tags: + - Firefox + - Landing + - Mozilla + - PotrzebniTłumacze +translation_of: Mozilla/Firefox +--- +
{{FirefoxSidebar}}
+ +

Firefox to popularna przeglądarka internetowa od Mozilli, dostępna na wielu platformach, w tym Windows, OS X i Linux na pulpicie oraz na urządzeniach z Androidem. Dzięki kompatybilności, najnowszymi internetowymi technologiami i użytecznymi narzędziami deweloperów, Firefox jest świetnym wyborem zarówno dla deweloperów, jak i użytkowników końcowych.

+ +

Firefox jest projektem typu "open-source"; większość kodu pisze nasza ogromna grupa ochotników. Tutaj dowiesz się, jak dołączyć się do projektu Firefox, oraz znajdziesz też odnośniki do informacji o budowie dodatków do Firefoxa, używając narzędzi deweloperów.

+ +
+

Dowiedz się, jak tworzyć dodatki do Firefoxa, jak budować samego Firefoxa, oraz jak działają poszczególne jego części.

+
+ + + +

Wersje Firefoxa

+ +

Firefox jest dostępny w czterech wersjach.

+ +

Firefox Nightly

+ +

Każdej nocy tworzymy Firefoxa z najnowszego kodu w mozilla-central. Wersje te są dla deweloperów Firefox lub dla tych którzy bardzo chcą wypróbować najnowsze funkcje cutting edge które są jeszcze pod aktywnym rozwojem.

+ +

Pobierz Firefox Nightly

+ +

Firefox Developer Edition

+ +

To jest wersja Firefoxa dostosowana dla deweloperów. Co 6 tygodni, bierzemy funkcje z Firefox Nightly które są wystarczająco stabilne i tworzymy nową wersję Firefox Developer Edition. Dodajemy też kilka dodatkowych funkcji dla deweloperów, które są dostępne tylko w tej wersji.

+ +

Przeczytaj więcej o Firefox Developer Edition.

+ +

Pobierz Firefox Developer Edition

+ +

Firefox Beta

+ +

Po spędzeniu 6 tygodni w Firefox Developer Edition, bierzemy funkcje które są wystarczająco stabilne, i tworzymy nową wersje Firefox Beta. Firefox Beta jest dla miłośników Firefoxa którzy chcą przetestować to co stanie się kolejną wersją Firefoxa.

+ +

Pobierz Firefox Beta

+ +

Firefox

+ +

Po ustabilizowaniu przez 6 tygodni wersji Beta, jesteśmy gotowi do udostępnienia nowych funkcji do setek milionów użytkowników w nowej wersji Firefoksa.

+ +

Pobierz Firefox

diff --git a/files/pl/mozilla/firefox/multiprocess_firefox/index.html b/files/pl/mozilla/firefox/multiprocess_firefox/index.html new file mode 100644 index 0000000000..db6e8d0c3e --- /dev/null +++ b/files/pl/mozilla/firefox/multiprocess_firefox/index.html @@ -0,0 +1,85 @@ +--- +title: Multiprocess Firefox +slug: Mozilla/Firefox/Multiprocess_Firefox +tags: + - Electrolysis + - Firefox + - Mozilla + - Multiprocess + - NeedsTranslation + - TopicStub + - e10s +translation_of: Mozilla/Firefox/Multiprocess_Firefox +--- +

{{FirefoxSidebar}}

+ +

In older versions of Firefox for desktop, the entire browser ran within a single operating system process. Specifically, the JavaScript that ran the browser UI (also known as "chrome code") and the JavaScript that ran within web pages (also known as "content" or "web content") were not separated.
+
+ Currently, the latest versions of Firefox run the browser UI and the web content in separate processes. In the current iteration of this architecture, all browser tabs run within the same process and the browser UI runs in its own individual process. In future iterations of Firefox, there will be more than one process to exclusively handle web content. The internal name for this project is called Electrolysis, sometimes abbreviated to e10s.

+ +

The good news is that normal web pages and their developers are unaffected by this changeover to a multiprocess-based Firefox. Unfortunately, people developing for Firefox or Firefox add-ons will be affected if their code relies on being able to access web content directly since the system for accessing this data is going to change.

+ +

Instead of accessing web content directly, chrome code will have to use the message manager instead. To help ease this transition we've implemented Cross Process Object Wrappers and some compatibility shims for add-on developers. If you are an add-on developer wondering whether or not you are affected by this change, see the guide to working with multiprocess Firefox.

+ +
+
+
+
+
Technical overview
+
A high-level overview of how multiprocess Firefox is implemented.
+
Web content compatibility guide
+
Guidelines and details on potential website compatibility issues that may arise due to the transition. Tip: there aren't very many!
+
Glossary
+
A glossary of terms used in multiprocess Firefox.
+
Message manager
+
A complete guide to the objects used to communicate between chrome code and web content.
+
SDK-based add-ons
+
How to migrate add-ons developed using the Add-on SDK.
+
Which URIs load where
+
A quick guide to which URIs - chrome:, about:, file:, resource: - are loaded into which process.
+
+
+ +
+
+
Motivation
+
Why we are implementing multiprocess Firefox: performance, security, and stability.
+
Add-on migration guide
+
If you are an add-on developer, find out if you are affected and how to update your code.
+
Cross Process Object Wrappers
+
Cross Process Object Wrappers are a migration aid, giving chrome code synchronous access to web content.
+
Debugging content processes
+
How to debug code running in the content process, including frame and process scripts.
+
Tab selection in multiprocess Firefox
+
How switching tabs works in multiprocess Firefox.
+
+
+
+ +
+
+
+
+
Limitations of chrome scripts
+
Practices that will no longer work in chrome code, and how to update them.
+
+
+ +
+
+
Limitations of frame scripts
+
Practices that will not work inside frame scripts, and what to do instead.
+
+
+
+ +
+

Contact us

+ +

Find out more about the project, get involved, or ask us your questions.

+ + diff --git a/files/pl/mozilla/firefox/multiprocess_firefox/tab_selection_in_multiprocess_firefox/index.html b/files/pl/mozilla/firefox/multiprocess_firefox/tab_selection_in_multiprocess_firefox/index.html new file mode 100644 index 0000000000..9b84eb335d --- /dev/null +++ b/files/pl/mozilla/firefox/multiprocess_firefox/tab_selection_in_multiprocess_firefox/index.html @@ -0,0 +1,23 @@ +--- +title: Tab selection in multiprocess Firefox +slug: Mozilla/Firefox/Multiprocess_Firefox/Tab_selection_in_multiprocess_Firefox +translation_of: Mozilla/Firefox/Multiprocess_Firefox/Tab_selection_in_multiprocess_Firefox +--- +

{{FirefoxSidebar}}

+ +

In single-process Firefox, when the user switches tabs, this is a synchronous operation. The browser blocks while it loads content into the newly selected tab, then switches to that tab. It indicates that the tab is selected by setting the selected attribute on the XUL tab object. Code (including browser code, extensions, or themes) that wants to change the appearance of the selected tab can use the selected attribute to apply CSS for that tab.

+ +

In multiprocess Firefox, tab switching is asynchronous. When the user switches tabs, the chrome process sends a request to the content process to load the page into the newly selected tab. The function in the chrome process then returns immediately, so other code can run. Once the content process is ready, it sends a message back to the chrome process, which then switches tabs in the user interface.

+ +

There's also a timer in the chrome process: if the content process has not responded before the timer expires, then the browser switches tabs anyway, and just displays an empty tab containing a spinner, until the content process has finished loading the page. Currently the timer is set to 300 milliseconds.

+ +

There are, correspondingly, two attributes used to signal tab selection:

+ + + +

This means that code which wants to style the currently selected tab needs to use the visuallyselected attribute to do so. If it uses the selected attribute, then there will be a momentary disconnect in which the newly selected tab's style is updated, but the browser is still displaying the old tab's content.

+ + diff --git a/files/pl/mozilla/firefox/releases/1.5/index.html b/files/pl/mozilla/firefox/releases/1.5/index.html new file mode 100644 index 0000000000..1181aad2c7 --- /dev/null +++ b/files/pl/mozilla/firefox/releases/1.5/index.html @@ -0,0 +1,157 @@ +--- +title: Firefox 1.5 dla programistów +slug: Mozilla/Firefox/Releases/1.5 +tags: + - CSS + - DOM + - Dodatki + - HTML + - JavaScript + - Programowanie_WWW + - RDF + - Rozszerzenia + - SVG + - Standardy_WWW + - Wszystkie_kategorie + - XML + - XML Web Services + - XSLT + - XUL +translation_of: Mozilla/Firefox/Releases/1.5 +--- +
{{FirefoxSidebar}}

 

+ +

Firefox 1.5

+ +

Firefox 1.5 został wydany i jest dostępny do pobrania. Oparty na silniku Gecko 1.8, jeszcze lepiej obsługuje standardy, a także dodaje nowe możliwości, dzięki którym możliwe będzie tworzenie aplikacji WWW nowej generacji. Firefox 1.5 posiada poprawioną obsługę CSS2 i CSS3, API do tworzenia i programowania dwuwymiarowej grafiki dzięki SVG 1.1 i <canvas>, zdarzenia XForms i XML oraz wiele usprawnień DHTML, JavaScript i DOM.

+ +

Firefox 1.5 jest dostępny do pobrania z: http://www.mozilla.com/firefox/

+ +

Narzędzia programistyczne

+ +

Dostępnych jest wiele narzędzi i rozszerzeń, które mogą pomóc programistom w obsłudze Firefoksa 1.5.

+ + + +

Uwaga: Niektóre rozszerzenia nie obsługują w tej chwili Firefoksa 1.5 i zostaną automatycznie wyłączone.

+ +

Ogólnie

+ +

Poniżej znajdują się artykuły omawiające główne nowe funkcje w Firefoksie 1.5:

+ +

Programiści stron i aplikacji WWW

+ +
+
SVG w XHTML - Wprowadzenie 
+
Dowiedz się, jak stosować SVG wewnątrz stron XHTML i jak można wykorzystać JavaScript i CSS do manipulowania obrazem w sposób analogiczny do zwykłego XHTML-a. Zajrzyj też na SVG w Firefoksie, aby dowiedzieć się o stanie i znanych problemach implementacji SVG.
+
+ +
+
Rysowanie grafik za pomocą Canvas 
+
Naucz się korzystać z nowego znacznika <canvas> i rysować grafy i inne obiekty w Firefoksie.
+
+ +
+
Kolumny CSS3 
+
Naucz się korzystać z automatycznego układania teksty w wielu kolumnach zgodnie z propozycją CSS3.
+
+ +
+
Zastosowanie cache'owania w Firefoksie 1.5 
+
Przeczytaj o bfcache i zwiększeniu prędkości przeglądania stron poprzednich i następnych jakie oferuje.
+
+ +

Programiści XUL i autorzy rozszerzeń

+ +
+
Tworzymy rozszerzenie 
+
Ten przewodnik poprowadzi Cię poprzez kroki, które należy wykonać aby stworzyć bardzo proste rozszerzenia dla Firefoksa. Zobacz także przewodnik w bazie wiedzy MozillaZine, który demonstruje nowe cechy Menedżera Rozszerzeń w wersji 1.5, który sprawia, że tworzenie rozszerzenia jest jeszcze łatwiejsze.
+
+ +
+
XPCNativeWrapper 
+
XPCNativeWrapper jest sposobem na opakowanie obiektu, aby możliwy był bezpieczny dostęp z uprawnionego kodu. Może być one użyty we wszystkich wersjach Firefoksa, mimo że działanie to zmieniło się nieco począwszy od Firefoksa 1.5 (Gecko 1.8).
+
+ +
+
System preferencji 
+
Dowiedz się więcej o nowych kontrolkach, które pozwalają na stworzenie okien Opcji w prostszy i wymagający mniej kodu JavaScript sposób.
+
+ +
+
Międzynarodowe pismo w XUL JavaScript 
+
Pliki XUL JavaScript mogą teraz zawierać pliki spoza zakresu ASCII.
+
+ +
+
Zmiany w API Tree 
+
Interfejsy do obsługi elementów <tree> XUL-a zostały zmienione.
+
+ +
+
Zmiany w XUL-u w Firefoksie 1.5 
+
Podsumowanie zmian w XUL-u. Zobacz także Dostosowanie aplikacji XUL do Firefoksa 1.5.
+
+ +
+
Zmiany związane z obsługą sieci 
+
 
+
+ + + +

Nowe funkcje dla użytkowników

+ +

Wygoda użytkownika

+ + + +

Bezpieczeństwo i prywatność

+ + + +

Wsparcie dla otwartych standardów WWW

+ +

Wsparcie Firefoksa dla standardów WWW pozostaje najlepszym na rynku, w tym wsparcie dla:

+ + + +

Firefox 1.5 wspiera następujące protokoły transportu (HTTP, FTP, SSL, TLS i inne), wielojęzyczny zestaw znaków (Unicode), grafikę (GIF, JPEG, PNG, SVG i inne) oraz najnowszą wersję najpopularniejszego języka skryptowego, JavaScript 1.6.

+ +

Zmiany od wersji 1.0 Firefoksa

+ +

Od wydania wersji 1.0, które miało miejsce 9 listopada 2004 roku, do Firefoksa włączonych zostało bardzo wiele nowych funkcji i poprawek. Szczegółowe informacje można uzyskać na stronie squarefree.com.

+ +

{{ languages( { "en": "en/Firefox_1.5_for_developers", "es": "es/Firefox_1.5_para_Desarrolladores", "fr": "fr/Firefox_1.5_pour_les_d\u00e9veloppeurs", "it": "it/Firefox_1.5_per_Sviluppatori", "ja": "ja/Firefox_1.5_for_developers", "nl": "nl/Firefox_1.5_voor_ontwikkelaars", "pt": "pt/Firefox_1.5_para_Desenvolvedores" } ) }}

diff --git a/files/pl/mozilla/firefox/releases/2/index.html b/files/pl/mozilla/firefox/releases/2/index.html new file mode 100644 index 0000000000..91f6b7d7d2 --- /dev/null +++ b/files/pl/mozilla/firefox/releases/2/index.html @@ -0,0 +1,156 @@ +--- +title: Firefox 2 dla programistów +slug: Mozilla/Firefox/Releases/2 +translation_of: Mozilla/Firefox/Releases/2 +--- +
{{FirefoxSidebar}}

Nowości dla programistów w Firefoksie 2

+ +

Firefox 2 wprowadza wiele nowości i nowych możliwości. Ten artykuł zawiera odnośniki do artykułów opisujących te nowości.

+ +

Dla autorów stron WWW i aplikacji

+ +
+
Mikropodsumowania
+
Mikropodsumowania to regularnie aktualizowane zestawienia najważniejszych danych zawartych na stronach WWW. Strona, oraz inni programiści mogą dostarczyć je, a użytkownicy mogą wybrać wyświetlanie mikropodsumowań zamiast statecznych tytułów, kiedy dodają stronę z mikropodsumowaniami do zakładek.
+
+ +
+
Tworzenie mikropodsumowania
+
Kurs tworzenia generatora mikropodsumowań.
+
+ +
+
Dokumentacja gramatyki XML mikropodsumowań
+
Przewodnik po gramatyce języka XML używanego przy tworzeniu generatorów mikropodsumowań.
+
+ +
+
Tworzenie wtyczek OpenSearch dla Firefoksa
+
Firefox 2 obsługuje format wyszukiwania silnika OpenSearch.
+
+ +
+
Tworzenie wtyczek MozSearch
+
Firefox 2 wspiera MozSearch, format wtyczki wyszukiwania bazowany na OpenSearch, ale przeznaczony tylko do wewnętrznego użytku.
+
+ +
+
Wsparcie dla podpowiedzi wyszukiwania w wyszukiwarkach
+
Jak stworzyć wtyczkę MozSearch z obsługą podpowiedzi wyświetlanych w postaci rozwijanej listy odczas wprowadzania zapytania .
+
+ +
+
Nowości w JavaScript 1.7
+
Firefox 2 obsługuje JavaScript 1.7, który wprowadza wiele nowości takich jak let, destructuring assignment, generatory i iteratory oraz ułatwienia składni dla tablic.
+
+ +
+
Sesje WHATWG po stronie klienta i trwałe magazynowanie (znane także jako Magazyn DOM)
+
Sesje po stronie klienta i trwałe dane pozwalają aplikacjom internetowym przechowywać dane strukturalne po stronie klienta.
+
+ +
+
SVG w Firefoksie
+
Firefox 2 poprawia obsługę Skalowalnej Grafiki Wektorowej (SVG), wprowadzając obsługę elementu <textPath> i dodając wsparcie dla niektórych atrybutów, które wcześniej nie były obsługiwane.
+
+ +
+
Kontrola sprawdzania pisowni w formularzach HTML
+
Firefox 2 posiada wsparcie dla sprawdzania pisowni w polach tekstowych i formatkach. Ten artykuł opisuje jak pisać kod HTML, aby włączyć lub wyłączyć sprawdzanie pisowni w pojedynczych elementach formularzy.
+
+ +
+
Bezpieczeństwo w Firefoksie 2
+
W Firefoksie 2 zmiany w tym, które protokoły bezpieczeństwa są włączone domyślnie.
+
+ +

Dla programistów XUL i autorów rozszerzeń

+ +
+
Aktualizacja rozszerzeń do Firefoksa 2
+
Jak sprawić, aby Twoje istniejące rozszerzenie działało poprawnie z Firefoksem 2.
+
+ +
+
API przechowywania sesji
+
Dodawanie elementów, które mają zostać zachowane i przywrócone między sesjami w Firefoksie.
+
+ +
+
API dostępu do danych z kanałów
+
API, które daje programistom dostęp do kanałów RSS i Atom oraz pozwala je przetwarzać.
+
+ +
+
Wsparcie dla SAX
+
API opartego na zdarzeniach parsera XML.
+
+ +
+
Dodawanie wyszukiwarek z poziomu stron WWW
+
JavaScript może nakazać Firefoksowi instalację nowej wtyczki wyszukiwarki, napisanej w formatach OpenSearch i Sherlock.
+
+ +
+
Sprawdzanie pisowni w XUL
+
Jak sprawdzić pisownię wyrazów lub pobrać listę podpowiedzi pisowni z kodu.
+
+ +
+
Dodawanie dostawców danych ochrony przed phishingiem
+
Jest możliwe rozszerzenie ochrony przed phishingiem Firefoksa, poprzez dodanie kolejnych dostawców danych dla systemu bezpiecznego korzystania z sieci WWW.
+
+ +
+
Dodawanie czytników kanałów w Firefoksie
+
Teraz można dodać nowe czytniki kanałów w Firefoksie, zarówno te w postaci stron internetowych jak i zewnętrznych aplikacji.
+
+ +
+
Storage
+
W Firefoksie 2 wprowadzono mozStorage, środowisko baz danych oparte na sqlite.
+
+ +
+
Zmiany w motywie graficznym w Firefoksie 2
+
Opisuje zmiany potrzebne do aktualizacji istniejących motywów, aby pracowały w Firefoksie 2.
+
+ +
+
Ulepszenia bloku tekstowego (tylko Firefox 2.0.0.1 i wyższe)
+
Element <textbox> posiada teraz metodę reset() do czyszczenia wartości bloku tekstowego do domyślnej. Własność defaultValue może być użyta do pobrania i zmodyfikowania domyślnej wartości bloku tekstowego ({{ Bug(312867) }}).
+
Obsługa własności editor do pobrania wewnętrznego nsIEditor dla pola tekstowego ({{ Bug(312867) }}).
+
+ +

Nowe funkcje dla użytkowników

+ +

Firefox 2 posiada ten sam czysty, prosty interfejs użytkownika jak poprzednie wersje, ale zawiera niewielkie poprawki sprawiające, że wygodniej jest z niego korzystać. Dodatkowo, zawiera też poprawione funkcje bezpieczeństwa oraz narzędzia sprawiające, że przeglądanie Internetu staje się bezpieczniejsze, szybsze i łatwiejsze niż kiedykolwiek.

+ +

Wygoda korzystania

+ + + +

Bezpieczeństwo i prywatność

+ + + +

Zobacz także

+ + + +
 
+ +

{{ languages( { "ca": "ca/Firefox_2_per_a_desenvolupadors", "en": "en/Firefox_2_for_developers", "es": "es/Firefox_2_para_desarrolladores", "fr": "fr/Firefox_2_pour_les_d\u00e9veloppeurs", "it": "it/Firefox_2.0_per_Sviluppatori", "ja": "ja/Firefox_2_for_developers", "ko": "ko/Firefox_2_for_developers", "pt": "pt/Firefox_2_para_desenvolvedores", "zh-tw": "zh_tw/Firefox_2_\u6280\u8853\u6587\u4ef6" } ) }}

diff --git a/files/pl/mozilla/firefox/releases/3/index.html b/files/pl/mozilla/firefox/releases/3/index.html new file mode 100644 index 0000000000..b0552cef09 --- /dev/null +++ b/files/pl/mozilla/firefox/releases/3/index.html @@ -0,0 +1,273 @@ +--- +title: Firefox 3 for developers +slug: Mozilla/Firefox/Releases/3 +tags: + - Firefox 3 + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Releases/3 +--- +
{{FirefoxSidebar}}

If you're a developer trying to get a handle on all the new features in Firefox 3, this is the perfect place to start. This article provides a list of the new articles covering features added to Firefox 3. While it doesn't necessarily cover every little change, it will help you learn about the major improvements.

+ +

New developer features in Firefox 3

+ +

For web site and application developers

+ +
+
Updating web applications for Firefox 3
+
Provides information about changes you may need to make to your web site or web application to take advantage of new features in Firefox 3.
+
+ +
+
Online and offline events
+
Firefox 3 supports WHATWG online and offline events, which let applications and extensions detect whether or not there's an active Internet connection, as well as to detect when the connection goes up and down.
+
+ +
+
Web-based protocol handlers
+
You can now register web applications as protocol handlers using the navigator.registerProtocolHandler() method.
+
+ +
+
Drawing text using a canvas
+
You can now draw text in a canvas using a non-standardized API supported by Firefox 3.
+
+ +
+
Transform support for canvas
+
Firefox now supports the transform() and setTransform() methods on canvases.
+
+ +
+
Using microformats
+
Firefox now has APIs for working with microformats.
+
+ +
+
Drag and drop events
+
Firefox 3 supports new events that are sent to the source node for a drag operation when the drag begins and ends.
+
+ +
+
Focus management in HTML
+
The new HTML 5 activeElement and hasFocus attributes are supported.
+
+ +
+
Offline resources in Firefox
+
Firefox now lets web applications request that resources be cached to allow the application to be used while offline.
+
+ +
+
CSS improvements in Firefox 3
+
Firefox 3 features a number of improvements in its CSS support.
+
+ +
+
DOM improvements in Firefox 3
+
Firefox 3 offers a number of new features in Firefox 3's DOM implementation, including support for several Internet Explorer extensions to the DOM.
+
+ +
+
JavaScript 1.8 support
+
Firefox 3 offers JavaScript 1.8.
+
+ +
+
EXSLT support
+
Firefox 3 provides support for a substantial subset of the EXSLT extensions to XSLT.
+
+ +
+
SVG improvements in Firefox 3
+
SVG support in Firefox 3 has been upgraded significantly, with support for over two dozen new filters, several new elements and attributes, and other improvements.
+
+ +
+
Animated PNG graphics
+
Firefox 3 supports the animated PNG (APNG) image format.
+
+ +

For XUL and extension developers

+ +

Notable changes and improvements

+ +
+
Updating extensions for Firefox 3
+
Provides a guide to the things you'll need to do to update your extension to work with Firefox 3.
+
+ +
+
XUL improvements in Firefox 3
+
Firefox 3 offers a number of new XUL elements, including new sliding scales, the date and time pickers, and spin buttons.
+
+ +
+
Templates in Firefox 3
+
Templates have been significantly improved in Firefox 3. The key improvement allows the use of custom query processors to allow data sources other than RDF to be used.
+
+ +
+
Securing updates
+
In order to provide a more secure add-on upgrade path for users, add-ons are now required to provide a secure method for obtaining updates before they can be installed. Add-ons hosted at AMO automatically provide this. Any add-ons installed that do not provide a secure update method when the user upgrades to Firefox 3 will be automatically disabled. Firefox will however continue to check for updates to the extension over the insecure path and attempt to install any update offered (installation will fail if the update also fails to provide a secure update method).
+
+ +
+
Places migration guide
+
An article about how to update an existing extension to use the Places API.
+
+ +
+
Download Manager improvements in Firefox 3
+
The Firefox 3 Download Manager features new and improved APIs, including support for multiple progress listeners.
+
+ +
+
Using nsILoginManager
+
The Password Manager has been replaced by the new Login Manager.
+
+ +
+
Embedding XBL bindings
+
You can now use the data: URL scheme from chrome code to embed XBL bindings directly instead of having them in separate XML files.
+
+ +
+
Localizing extension descriptions
+
Firefox 3 offers a new method for localizing add-on metadata. This lets the localized details be available as soon as the add-on has been downloaded, as well as when the add-on is disabled.
+
+ +
+
Localization and Plurals
+
Firefox 3 adds the new PluralForm module, which provides tools to aid in correctly pluralizing words in multiple localizations.
+
+ +
+
Theme changes in Firefox 3
+
Notes and information of use to people who want to create themes for Firefox 3.
+
+ +

New components and functionality

+ +
+
FUEL Library
+
FUEL is about making it easier for extension developers to be productive, by minimizing some of the XPCOM formality and adding some "modern" JavaScript ideas.
+
+ +
+
Places
+
The history and bookmarks APIs have been completely replaced by the new Places API.
+
+ +
+
Idle service
+
Firefox 3 offers the new {{Interface("nsIIdleService")}} interface, which lets extensions determine how long it's been since the user last pressed a key or moved their mouse.
+
+ +
+
ZIP writer
+
The new {{Interface("nsIZipWriter")}} interface lets extensions create ZIP archives.
+
+ +
+
Full page zoom
+
Firefox 3 improves the user experience by offering full page zoom in addition to text-only zoom.
+
+ +
+
Interfacing with the XPCOM cycle collector
+
XPCOM code can now take advantage of the cycle collector, which helps ensure that unused memory gets released instead of leaking.
+
+ +
+
The Thread Manager
+
Firefox 3 provides the new {{Interface("nsIThreadManager")}} interface, along with new interfaces for threads and thread events, which provides a convenient way to create and manage threads in your code.
+
+ +
+
JavaScript modules
+
Firefox 3 now offers a new shared code module mechanism that lets you easily create modules in JavaScript that can be loaded by extensions and applications for use, much like shared libraries.
+
+ +
+
The nsIJSON interface
+
Firefox 3 offers the new {{Interface("nsIJSON")}} interface, which offers high-performance encoding and decoding of JSON strings.
+
+ +
+
The nsIParentalControlsService interface
+
Firefox 3 now supports the Microsoft Windows Vista parental controls feature, and allows code to interact with it.
+
+ +
+
Using content preferences
+
Firefox 3 includes a new service for getting and setting arbitrary site-specific preferences that extensions as well as core code can use to keep track of their users' preferences for individual sites.
+
+ +
+
Plug-in Monitoring
+
A new component of the plugin system is now available to measure how long it takes plugins (e.g., Macromedia Flash) to execute their calls.
+
+ +

Fixed bugs

+ +
+
Notable bugs fixed in Firefox 3
+
This article provides information about bugs that have been fixed in Firefox 3.
+
+ +

New features for end users

+ +

User experience

+ + + +

Security and privacy

+ + + +

Performance

+ + + +

See also

+ +
{{Firefox_for_developers('2')}}
diff --git a/files/pl/mozilla/firefox/releases/index.html b/files/pl/mozilla/firefox/releases/index.html new file mode 100644 index 0000000000..e5af49da21 --- /dev/null +++ b/files/pl/mozilla/firefox/releases/index.html @@ -0,0 +1,12 @@ +--- +title: Firefox developer release notes +slug: Mozilla/Firefox/Releases +tags: + - Firefox + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Releases +--- +
{{FirefoxSidebar}}

This page provides links to the "Firefox X for developers" articles for each Firefox release. These notes let you see what features were added and bugs eliminated in each version of Firefox.

+ +
{{ListSubpages("",1,0,1)}}
diff --git a/files/pl/mozilla/firefox_for_android/index.html b/files/pl/mozilla/firefox_for_android/index.html new file mode 100644 index 0000000000..a7b9607ff3 --- /dev/null +++ b/files/pl/mozilla/firefox_for_android/index.html @@ -0,0 +1,64 @@ +--- +title: Firefox for Android +slug: Mozilla/Firefox_for_Android +translation_of: Mozilla/Firefox_for_Android +--- +
+

For more and more people mobile devices are the primary way, or even the only way, to access the Web. Firefox for Android (codenamed Fennec) is an open, hackable, standards-based browser, just like the desktop Firefox.

+
+ +

Firefox for Android constructs its user interface from native Android widgets instead of XUL: this greatly improves performance, especially startup time, and memory consumption.

+ +

Contribute to Firefox for Android

+ +

The main starting point for information about the Firefox for Android project itself is the project "Get Involved" page.

+ +

You can help us to create and improve Firefox for Android:

+ + + +

Develop for the mobile web

+ +

We've started putting together a guide to designing web sites for mobile devices.

+ +

With Firefox for Android, you've got access a number of APIs that expose the underlying capabilities of the device, closing the gap between the Web and native applications:

+ + + +

To test your web site on Firefox for Android, you can install it on an Android device or run it on your desktop using the Android Emulator.

+ +

Build mobile add-ons

+ +

Firefox for Android supports add-ons using the same WebExtensions system as desktop Firefox.

+ +

See Developing extensions for Firefox for Android.

+ +

Get help with Firefox for Android

+ +

Documentation and tutorials for using and troubleshooting Firefox for Android are available on the Mozilla Support website.

+ +

Install Firefox for Android

+ +

If you don't already have Firefox installed on your Android device, you can do so at the Google Play store. See the SUMO article Install Firefox on an Android device using Google Play for detailed instructions.

+ +

Alternate installs

+ +

There are some unofficial builds and specialized installations for devices which don't officially support Firefox for Android. Here are some helpful links for these (keep in mind they are not supported by Mozilla and you are using them at your own risk!).

+ + diff --git a/files/pl/mozilla/firefox_for_android_clone/index.html b/files/pl/mozilla/firefox_for_android_clone/index.html new file mode 100644 index 0000000000..0fa7d42129 --- /dev/null +++ b/files/pl/mozilla/firefox_for_android_clone/index.html @@ -0,0 +1,66 @@ +--- +title: Firefox for Android +slug: Mozilla/Firefox_for_Android_clone +tags: + - Android + - Fennec + - Firefox + - Mobile +--- +

For more and more people mobile devices are the primary way, or even the only way, to access the Web. Firefox for Android (codenamed Fennec) is an open, hackable, standards-based browser, just like the desktop Firefox.

+ +

Firefox for Android constructs its user interface from native Android widgets instead of XUL: this greatly improves performance, especially startup time, and memory consumption.

+ +

Contribute to Firefox for Android

+ +

The main starting point for information about the Firefox for Android project itself is the project "Get Involved" page.

+ +

You can help us to create and improve Firefox for Android:

+ + + +

Develop for the mobile web

+ +

We've started putting together a guide to designing web sites for mobile devices.

+ +

With Firefox for Android, you've got access a number of APIs that expose the underlying capabilities of the device, closing the gap between the Web and native applications:

+ + + +

To test your web site on Firefox for Android, you can install it on an Android device or run it on your desktop using the Android Emulator.

+ +

Build mobile add-ons

+ +

Firefox for Android supports add-ons using the exact same extension system used by all other Gecko-based applications. We did not invent a new add-on system. This means that building an add-on for Firefox on Android is the same process that would be used for desktop Firefox. Add-ons that work with desktop Firefox do not automatically work in Firefox on Android. The user interfaces are just too different.

+ +
Firefox on Android has a unique application identifier which must be used in install.rdf. The identifier is {aa3c5121-dab2-40e2-81ca-7ea25febc110}
+ +

Both classic restart-required and newer restartless add-on approaches are supported. Using the restartless approach is preferred whenever possible because the user experience is far superior to forcing an application restart when installing or removing an add-on.

+ +

Quick Overview

+ + + +

Get help with Firefox for Android

+ +

Documentation and tutorials for using and troubleshooting Firefox for Android are available on the Mozilla Support website.

diff --git a/files/pl/mozilla/index.html b/files/pl/mozilla/index.html new file mode 100644 index 0000000000..1b260ab3bf --- /dev/null +++ b/files/pl/mozilla/index.html @@ -0,0 +1,11 @@ +--- +title: Mozilla +slug: Mozilla +tags: + - Landing + - Mozilla +translation_of: Mozilla +--- +

Artykuły poniżej zawierają informacje odnośnie pobierania i tworzenia kodu projektów Mozilli. Dodatkowo znajdują się tu przydatne artykuły o tym, jak działa kod, jak tworzyć rozszerzenia dla aplikacji Mozilli i tym podobne.

+ +
{{LandingPageListSubpages}}
diff --git a/files/pl/mozilla/javascript_code_modules/index.html b/files/pl/mozilla/javascript_code_modules/index.html new file mode 100644 index 0000000000..96c35a7a3d --- /dev/null +++ b/files/pl/mozilla/javascript_code_modules/index.html @@ -0,0 +1,98 @@ +--- +title: JavaScript code modules +slug: Mozilla/JavaScript_code_modules +tags: + - Add-ons + - Extensions + - JavaScript + - Modules + - NeedsTranslation + - TopicStub + - XPCOM +translation_of: Mozilla/JavaScript_code_modules +--- +
{{gecko_minversion_header("1.9")}}
+ +

Moduły kodu JavaScript pozwalają na udostępnianie kodu wielu uprzywilejowanych zakresów JavaScript. Na przykład moduł może być używany zarówno przez samą przeglądarkę Firefox, jak i przez rozszerzenia, aby uniknąć powielania kodu.

+ +
+

Nie są to standardowe moduły JavaScript . Sprawdź {{jsxref("Statements/export", "export")}} oraz {{jsxref("Statements/import", "import")}} aby dowiedzieć się więcej o tym, jak korzystać ze standardowych modułów.

+
+ + + + + + + + +
+

Tematy główne

+ +
+
Używanie modułów kodu JavaScript
+
Wprowadzenie do korzystania z modułów kodu JavaScript.
+
Component.utils.import
+
Jak zaimportować moduł kodu JavaScript.
+
Component.utils.unload {{gecko_minversion_inline("7.0")}}
+
Jak zwolnić moduł kodu JavaScript.
+
Fragmenty kodu: moduły
+
Przykłady korzystania z modułów kodu.
+
Moduły JS Mozilla Labs
+
Ta strona zawiera listę modułów JavaScript wraz z linkami do pobrania i dokumentacją, które programiści rozszerzeń mogą użyć w swoim kodzie.
+
+ +
+
+
+

Standard code modules

+ +
+
AddonManager.jsm {{gecko_minversion_inline("2.0")}}
+
Interface to install, manage, and uninstall add-ons.
+
AddonRepository.jsm {{gecko_minversion_inline("2.0")}}
+
Allows searching of the add-ons repository.
+
ctypes.jsm {{fx_minversion_inline("3.6")}}
+
Provides an interface that allows JavaScript code to call native libraries without requiring the development of an XPCOM component.
+
DeferredTask.jsm {{gecko_minversion_inline("18.0")}}
+
Run a task after a delay.
+
Dict.jsm {{gecko_minversion_inline("5.0")}}
+
Provides an API for key/value pair dictionaries.
+
DownloadLastDir.jsm {{gecko_minversion_inline("2.0")}}
+
Provides the path to the directory into which the last download occurred.
+
Downloads.jsm {{gecko_minversion_inline("23.0")}}
+
Provides a single entry point to interact with the downloading capabilities of the platform.
+
FileUtils.jsm {{gecko_minversion_inline("1.9.2")}}
+
Provides helpers for dealing with files.
+
Geometry.jsm {{gecko_minversion_inline("2.0")}}
+
Provides routines for performing basic geometric operations on points and rectangles.
+
ISO8601DateUtils.jsm
+
Provides routines to convert between JavaScript Date objects and ISO 8601 date strings.
+
NetUtil.jsm
+
Provides helpful networking utility functions, including the ability to easily copy data from an input stream to an output stream asynchronously.
+
openLocationLastURL.jsm {{gecko_minversion_inline("1.9.1.4")}}
+
Provides access to the last URL opened using the "Open Location" option in the File menu.
+
osfile.jsm {{gecko_minversion_inline("16.0")}}
+
JavaScript module OS.File contains primitives for manipulating files
+
PerfMeasurement.jsm {{fx_minversion_inline("4.0")}}
+
Provides access to low-level hardware and OS performance measurement tools.
+
PluralForm.jsm
+
Provides an easy way to get the correct plural forms for the current locale, as well as ways to localize to a specific plural rule.
+
PopupNotifications.jsm {{gecko_minversion_inline("2.0")}}
+
Provides an easy way to present non-modal notifications to users.
+
Promise.jsm {{gecko_minversion_inline("25.0")}}
+
Implements the Promises/A+ proposal as known in April 2013.
+
Services.jsm {{gecko_minversion_inline("2.0")}}
+
Provides getters for conveniently obtaining access to commonly-used services.
+
source-editor.jsm {{fx_minversion_inline("11.0")}}
+
The Source Editor is used by developer tools such as the Style Editor; this interface implements the editor and lets you interact with it.
+
Sqlite.jsm {{gecko_minversion_inline("20.0")}}
+
A Promise-based API to {{ interface("mozIStorage") }}/SQLite.
+
Task.jsm {{gecko_minversion_inline("17.0")}}
+
Implements a subset of Task.js to make sequential, asynchronous operations simple, using the power of JavaScript's yield operator.
+
Timer.jsm {{gecko_minversion_inline("22.0")}}
+
A pure JS implementation of window.setTimeout.
+
XPCOMUtils.jsm
+
Contains utilities for JavaScript components loaded by the JS component loader.
+
+
diff --git "a/files/pl/mozilla/javascript_code_modules/zastosowanie_modu\305\202\303\263w_javascript/index.html" "b/files/pl/mozilla/javascript_code_modules/zastosowanie_modu\305\202\303\263w_javascript/index.html" new file mode 100644 index 0000000000..6b63f8c0f4 --- /dev/null +++ "b/files/pl/mozilla/javascript_code_modules/zastosowanie_modu\305\202\303\263w_javascript/index.html" @@ -0,0 +1,86 @@ +--- +title: Zastosowanie modułów JavaScript +slug: Mozilla/JavaScript_code_modules/Zastosowanie_modułów_JavaScript +translation_of: Mozilla/JavaScript_code_modules/Using +--- +

+{{ Fx_minversion_header(3) }} +

Moduły JavaScript zostały wprowadzone w Firefoksie 3 (Gecko 1.9) i służą do udostępniania kodu pomiędzy różnymi zakresami kodu uprzywilejowanego. Za pomocą modułów można także utworzyć globalne obiekty typu singleton, co dotychczas wymagało korzystania z obiektów JavaScript XPCOM. Moduł JavaScript to po prostu kod w języku JavaScript, umieszczony w zarejestrowanej lokalizacji. Moduł jest ładowany w ramach określonego zakresu JavaScript, takiego jak skrypt XUL lub skrypt JavaScript XPCOM, za pomocą metody Components.utils.import. +

Poniżej przedstawiono przykład prostego modułu JavaScript: +

+
EXPORTED_SYMBOLS = ["foo", "bar"]
+
+function foo() {
+  return "foo";
+}
+
+var bar = {
+  name : "bar",
+  size : "3"
+};
+
+var dummy = "dummy";
+
+

Do tworzenia funkcji, obiektów, stałych oraz dowolnych innych typów obiektów JavaScript stosowana jest zwykła składnia języka JavaScript. W module zdefiniowany jest także specjalny obiekt typu Array o nazwie EXPORTED_SYMBOLS. Każdy element kodu JavaScript umieszczony w tablicy EXPORTED_SYMBOLS zostanie wyeksportowany z modułu i dołączony do zakresu, do którego importowany jest moduł — na przykład: +

+
Components.utils.import("resource://aplikacja/moduly/moj_modul.jsm");
+
+alert(foo());         // wyświetla "foo"
+alert(bar.size + 3);  // wyświetla "6"
+alert(dummy);         // wyświetla "dummy is not defined", ponieważ zmienna 'dummy' nie została wyeksportowana z modułu
+
+

Szczególnie istotną cechą działania metody Components.utils.import jest umieszczanie ładowanych modułów w pamięci podręcznej; przy kolejnych operacjach importu zamiast ładowania nowej wersji modułu używana jest wersja pobrana z pamięci podręcznej. W przypadku wielokrotnego importowania danego modułu jest on współużytkowany. Jakiekolwiek modyfikacje danych, obiektów lub funkcji są dostępne w każdym zakresie, do którego moduł został zaimportowany. Jeżeli na przykład do dwóch różnych zakresów JavaScript zostanie zaimportowany prosty moduł, zmiany dokonane w jednym zakresie będą widoczne w pozostałych zakresach. +

Zakres 1: +

+
Components.utils.import("resource://app/modules/moj_modul.jsm");
+
+alert(bar.size + 3);  // wyświetla "6"
+
+bar.size = 10;
+
+

Zakres 2: +

+
Components.utils.import("resource://app/modules/moj_modul.jsm");
+
+alert(foo());         // wyświetla "foo"
+alert(bar.size + 3);  // wyświetla "13"
+
+

Możliwe jest tworzenie obiektów typu singleton, które mogą udostępniać dane do innych okien, skryptów XUL i komponentów XPCOM. +

+

Protokół resource:

+

W przykładach zastosowania metody Components.utils.import użyto protokołu "resource://". Podstawową składnię adresu URL protokołu resource przedstawiono poniżej: +

+
resource://<alias>/<ścieżka-względna>/<plik.js|jsm>
+
+

<alias> jest aliasem lokalizacji; zazwyczaj jest to fizyczna lokalizacją względna wobec aplikacji lub środowiska uruchomieniowego XUL. W środowisku uruchomieniowym XUL istnieją dwa wstępnie zdefiniowane aliasy:

+ +

<ścieżka-względna> może zawierać wiele zagłębień i jest zawsze względna wobec lokalizacji określonej przez <alias>. Typowa ścieżka względna to "modules" — taka nazwa jest używana w środowisku XUL Runner i w programie Firefox. Moduły kodu to pliki JavaScript z rozszerzeniem .js lub .jsm.

Najprostszym sposobem dodania własnych aliasów w rozszerzeniach i aplikacjach XUL jest zarejestrowanie tych aliasów w manifeście chrome za pomocą poniższego kodu: +

+
resource nazwa_aliasu adres/url/plików/
+
+

Własne aliasy można także w sposób programowy dodać do protokołu resource, na przykład: +

+
var ioService = Components.classes["@mozilla.org/network/io-service;1"]
+                          .getService(Components.interfaces.nsIIOService);
+var resProt = ioService.getProtocolHandler("resource")
+                       .QueryInterface(Components.interfaces.nsIResProtocolHandler);
+
+var aliasFile = Components.classes["@mozilla.org/file/local;1"]
+                          .createInstance(Components.interfaces.nsILocalFile);
+aliasFile.initWithPath("/bezwzględna/ścieżka");
+
+var aliasURI = ioService.newFileURI(aliasFile);
+resProt.setSubstitution("mojalias", aliasURI);
+
+// przyjęto założenie, że moduły kodu znajdują się w folderze określonym przez alias, a nie w podfolderach
+Components.utils.import("resource://mojalias/plik.jsm");
+
+// ...
+
+


+

+
+
+{{ languages( { "en": "en/Using_JavaScript_code_modules", "es": "es/Usando_m\u00f3dulos_de_c\u00f3digo_JavaScript", "fr": "fr/Utilisation_de_modules_de_code_JavaScript", "ja": "ja/Using_JavaScript_code_modules" } ) }} diff --git a/files/pl/mozilla/javascript_tips/index.html b/files/pl/mozilla/javascript_tips/index.html new file mode 100644 index 0000000000..b4b57fa8e1 --- /dev/null +++ b/files/pl/mozilla/javascript_tips/index.html @@ -0,0 +1,110 @@ +--- +title: JavaScript Tips +slug: Mozilla/JavaScript_Tips +translation_of: Mozilla/JavaScript_Tips +--- +

XUL Tips

+ + + +
var UniqueName = {
+  _privateMember: 3,
+  publicMember: "A string",
+
+  init: function() {
+    this.doSomething(this.anotherMember);
+  },
+
+  doSomething: function(aParam) {
+    alert(aParam);
+  }
+};
+
+ +

XPConnect

+ + + +
if (target instanceof Components.interfaces.nsIRDFResource)
+  return target.Value;
+if (target instanceof Components.interfaces.nsIRDFLiteral)
+  return target.Value;
+return null;
+
+ + + +
var weakObserver = {
+  QueryInterface: function QueryInterface(aIID) {
+    if (aIID.equals(Components.interfaces.nsIObserver) ||
+        aIID.equals(Components.interfaces.nsISupportsWeakReference) ||
+        aIID.equals(Components.interfaces.nsISupports))
+       return this;
+    throw Components.results.NS_NOINTERFACE;
+  },
+  observe: function observe(aSubject, aTopic, aState) {
+  }
+}
+
+ + + +

DOM elements

+ + + +

References

+ + diff --git "a/files/pl/mozilla/localization/co_ka\305\274dy_t\305\202umacz_mozilli_powinien_wiedzie\304\207/index.html" "b/files/pl/mozilla/localization/co_ka\305\274dy_t\305\202umacz_mozilli_powinien_wiedzie\304\207/index.html" new file mode 100644 index 0000000000..5e8042e9a2 --- /dev/null +++ "b/files/pl/mozilla/localization/co_ka\305\274dy_t\305\202umacz_mozilli_powinien_wiedzie\304\207/index.html" @@ -0,0 +1,102 @@ +--- +title: Co każdy tłumacz Mozilli powinien wiedzieć +slug: Mozilla/Localization/Co_każdy_tłumacz_Mozilli_powinien_wiedzieć +tags: + - Lokalizacja + - Wszystkie_kategorie +translation_of: Mozilla/Localization/What_every_Mozilla_translator_should_know +--- +

l10n oznacza lokalizację i pochodzi od angielskiego localization = l + kolejne 10 liter + n +

+

Listy mailingowe i inne zasoby

+

Istnieje kilka list mailingowych zawierających informacje dotyczące tego co, gdzie i jak tłumaczyć. Dostępne są jako grupy dyskusyjne zarówno na news.mozilla.org jak i grupach dyskusyjnych Google: +

+
Główna lista l10n 
Także dostępna jako mozilla.dev.l10n, a w skrócie .l10n. Odbywają się tutaj różne dyskusje na temat lokalizacji, są tam także obwieszczane ogłoszenia z nią związane. +
Lista dotycząca planowania 
Także dostępna jako mozilla.dev.planning, w skrócie .planning. Mają tu miejsce ogólne dyskusje na temat planów projektu Mozilla oraz tzw. "kwestie kalendarzowe". Dyskusje dotyczące ogólnie społeczności developerów Mozilli są przynajmniej wspominane tutaj. +
Tłumaczenie stron Mozilli 
lub mozilla.dev.l10n.web - do tej grupy przenieśliśmy ogłoszenia i dyskusje o tłumaczeniach stron Mozilli. +
+

Wszystkie te grupy są grupami o stosunkowo niskim natężeniu ruchu. +

Dobrym pomysłem na to, aby być na bieżąco, jest również czytanie Planet Mozilla L10N +

+

Gdy masz z czymś problem

+ +

Użyteczne narzędzia

+ +

CVS

+

CVS jest zorganizowany w kilka gałęzi. Mamy główną gałąź zwaną pniem (angielskie Trunk), nad którą codziennie trwają prace developerskie. Gdy rozpoczynane są prace nad określoną wersją, tworzone jest odgałęzienie zwane po prostu gałęzią (Branch). Cała zawartość pnia jest wtedy kopiowana do gałęzi tak, aby dalsze prace były wykonywane w dwóch równoległych miejscach: w pniu oraz w gałęzi przeznaczonej na nową wersję. Gdy prace w tej gałęzi są ukończone, wersja ta staje się wydaniem (po angielsku Release). +

Przykładowe nazwy gałęzi/wydań wraz z wyjaśnieniem: +

+ +

Mozilla Cross-Reference

+

Mozilla Cross-Reference to strona internetowa będąca mirrorem serwera CVS. Tutaj możesz łatwo przejrzeć tłumaczenia w innych językach.

+ +

Bonsai

+

Możesz również użyć Bonsai do przeszukania całego serwera CVS. +

+

Bugzilla, system wychwytywania błędów

+

Potrzebne Ci będzie konto na Bugzilli +

Powinieneś skonfigurować swoje konto, aby obserwować następujące adresy: +

+ +

W ten sposób będziesz otrzymywać wiadomości o błędach wpływających na większość lub nawet wszystkie lokalizacje. +

Gdy tworzysz nowe zgłoszenie błędu i chcesz, aby osoba odpowiedzialna za lokalizację je sprawdziła, wyślij kopię jawną na adres: l10n@mozilla.com +

Czasem przed wydaniem gałąź jest zamknięta i jedynym sposobem na zmianę czegokolwiek jest stworzeni błędu z prośbą o akceptację: +

+ +
cvs diff -uN > filename.diff
+
+ +
Product: 	Mozilla Localization
+Component:	Twój język
+...
+CC:		l10n@mozilla.com
+Assigned to: Ty
+Wyjaśnij czego potrzebujesz!
+Określ gałąź (1.8.1 dla Firefox 2, 1.8.1.1 dla Firefox 2.0.1, ...)
+
+ +
Content Type: patch
+Oznacz approval1.8.xxx za pomocą znaku ?, w celu zapytania o zgodę (użyj odpowiedniej gałęzi)
+
+ +
bug 12345, fix typos and resize prefwindow, a=l10n
+
+ +

Tinderbox

+

W Tinderboksie możesz obejrzeć rezultat procesu kompilacji. Gdy tylko dokonasz zmian w CVS i pojawi się kolejna kompilacja, możesz sprawdzić Tinderboksa i zobaczyć, czy coś nie poszło źle. +

+ +

Kolor zielony oznacza, że proces kompilacji został zakończony bez żadnych błędów. W tym wypadku wynikowy plik instalacyjny będzie dostępny na jednym z serwerów FTP Mozilli: +

+ + +

QA (kontrola jakości)

+

W celu zapewnienia jakości kompilacji powinny zostać wykonane testy poprzez użycie http://litmus.mozilla.org/ +

{{ languages( { "en": "en/What_every_Mozilla_translator_should_know" } ) }} diff --git a/files/pl/mozilla/localization/index.html b/files/pl/mozilla/localization/index.html new file mode 100644 index 0000000000..9b7dac8ce9 --- /dev/null +++ b/files/pl/mozilla/localization/index.html @@ -0,0 +1,21 @@ +--- +title: Localization at Mozilla +slug: Mozilla/Localization +tags: + - Landing + - Localization + - Mozilla + - NeedsTranslation + - TopicStub + - Translation + - l10n +translation_of: Mozilla/Localization +--- +

Localization (L10n) is the process of translating software user interfaces from one language to another and adapting it to suit a foreign culture. These resources are for anyone with an interest in the technical aspects involved in localization. They are for developers and all contributors.

+ + +

See also

+ + diff --git a/files/pl/mozilla/mobile/index.html b/files/pl/mozilla/mobile/index.html new file mode 100644 index 0000000000..669a69a9ed --- /dev/null +++ b/files/pl/mozilla/mobile/index.html @@ -0,0 +1,32 @@ +--- +title: Mobile +slug: Mozilla/Mobile +tags: + - Mozilla + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Mobile +--- +

Firefox OS

+ +

Firefox OS is an open source mobile operating system which uses Linux and Mozilla's Gecko engine to run a user interface and set of applications written entirely in HTML, CSS and JavaScript.

+ +

Read about how to install Firefox OS and how to develop apps for it.

+ +

Firefox for Android

+ +

Firefox for Android is Mozilla's mobile web browser for Android devices. It's recently been rewritten to use Android's native UI, making it faster, leaner and more responsive. It provides support for powerful APIs to access device capabilities such as the camera and telephony stack.

+ +

Read about how to help create Firefox for Android, how to use its device APIs, and how to build mobile add-ons.

+ +

Firefox for iOS

+ +

Firefox for iOS is Mozilla's upcoming mobile web browser for iOS devices. Because of AppStore restrictions, it uses the built in WebView supplied by iOS rather than Gecko.

+ +

Read about how to help with Firefox for iOS, and how to integrate it with your other iOS Apps.

+ +

Mobile web development

+ +

Mobile devices have very different hardware characteristics from desktop or laptop computers, and many of the APIs used to work with them are still in the process of being standardized.

+ +

Read about how to develop web sites that look good on mobile devices and take advantage of the new possibilities they offer. Learn how to make sure your web site works well on different browsers.

diff --git a/files/pl/mozilla/mobile/viewport_meta_tag/index.html b/files/pl/mozilla/mobile/viewport_meta_tag/index.html new file mode 100644 index 0000000000..6fbb96f483 --- /dev/null +++ b/files/pl/mozilla/mobile/viewport_meta_tag/index.html @@ -0,0 +1,97 @@ +--- +title: >- + Używanie właściwości viewport znacznika meta w celu kontroli układu strony na + urządzeniach mobilnych. +slug: Mozilla/Mobile/Viewport_meta_tag +tags: + - Układ + - mobilne + - układ strony +translation_of: Mozilla/Mobile/Viewport_meta_tag +--- +

Nadchodzące wydanie Mobile Firefox (Fennec) 1.1 zawiera ulepszone wsparcie dla znacznika <meta name="viewport">. Poprzednie wersje Fenneca wspierały właściwości width (szerokość), height (wysokość), i initial-scale tego znacznika, jednakże witryny projektowane pod iPhone'a i urządzenia z systemem Android miały z tym problemy. Od tej chwili wspieramy te same właściwości jak Mobile Safari, a także Fennec wyświetla strony mobilne zwięźle na ekranach o różnych rozmiarach i rozdzielczościach.

+ +

touch.facebook.com przedtem:

+ +

05-11-fennec-meta-viewport-2.png

+ +

touch.facebook.com teraz:

+ +

05-11-fennec-meta-viewport-1.png

+ +

Już teraz możesz zobaczyć te zmiany w najnowszym Fennecu 1.1 i trunk nightly builds dla Maemo, Windows, Maca czy Linuxa.

+ +

Skąd to się wzięło

+ +

Przeglądarki mobilne, takie jak Fennec wyświetlają strony w wirtualnym "okienku" (viewport), zazwyczaj jest on szerszy niż ekran, tak aby strony nie zoptymalizowane pod wyświetlanie na urządzeniach mobilnych nie musiały się ściaskać w wąskim okienku. Użytkownicy mogą sobie przybliżyć i przesuwać ekran by zobaczyć inne części strony.

+ +

Mobilna wersja Safari przedstawiła "viewport meta tag", aby pozwolić developerom na kontrolę rozmiar widocznego pola i jego skalowanie. Dziś wiele przeglądarek mobilnych wspiera już użycie tego znacznika, nie jest on jednak żadnym standardem. Dokumentacja Apple'a świetnie wyjaśnia jak developerzy mogą używać tego znacznika. Nam jednak zajęło to sporo czasu zanim rozgryźliśmy jak możemy zaimplementować to w Fennecu. Na przykład: dokumentacja Safari mówi, że właściwość content to "dzielona przecinkami lista", problem w tym, że obecnie działające przeglądarki i strony używają różnych mieszanek przecinków, średników i spacji jako separatorów.

+ +

Aby zaczerpnąć więcej informacji zachęcamy do przeczytania artykułu A Tale of Two Viewports na quirksmode.org.

+ +

Podstawy Viewportu

+ +

Każda witryna zoptymalizowana do wyświetlania na urządzeniach mobilnych powinna zawierać coś takiego:

+ +
<meta name="viewport" content="width=device-width, initial-scale=1">
+ +

Właściwość width (szerokość) kontroluje wielkość widocznego pola. Można jej przyisać konkretną liczbę np. width=600, albo specjalne słowo kluczowe - device-width, które oznacza nadanie wielkości ekranu w pikselach przy zoomie na poziomie 100%. (Istnieją również height i device-height, które przydadzą się w przypadku gdy wielkość danego elementu zależy od wysokości ekranu.)

+ +

Właściwość initial-scale kontroluje poziom zbliżenia po załadowaniu strony. Właściwości maximum-scale, minimum-scale i user-scalable mówią o tym jak bardzo przybliżać/oddalać może sam użytkownik.

+ +

Piksel pikselowi nie równy (A pixel is not a pixel)

+ +

iPhone'y, a także wiele popularnych urządzeniem z systemem Android posiada ekrany o wielkości od 3 do 4 cali (7–10 cm) z rozdzielczością 320—480 pikseli (~160 dpi). Firefox dla Maemo działa na urządzeniu Nokia N900, które ma takie same wymiary ale rozdzielczość 480—800 pikseli (~240 dpi). Dlatego też, najnowsza wersja Fenneca wyświetlała wiele stron nawet do trzech razy mniejsze niż na iPhonie czy urządzeniach z Androidem. Spowodowało to wiele problemów z użytkowaniem i czytelnością stron zoptymalizowanych pod urządzenia dotykowe. Peter-Paul Koch napisał artykuł na temat zatytułowany A pixel is not a pixel.

+ +

Fennec 1.1 for Maemo will use 1.5 hardware pixels for each CSS "pixel," following the lead of Android's WebKit-based browser. This means a page with initial-scale=1 will render at close to the same physical size in Fennec for Maemo, Mobile Safari for iPhone, and the Android Browser on both HDPI and MDPI phones. This is consistent with the CSS 2.1 specification, which says:

+ +
+

If the pixel density of the output device is very different from that of a typical computer display, the user agent should rescale pixel values. It is recommended that the pixel unit refer to the whole number of device pixels that best approximates the reference pixel. It is recommended that the reference pixel be the visual angle of one pixel on a device with a pixel density of 96dpi and a distance from the reader of an arm's length.

+
+ +

For web developers, this means that 320px be full width in portrait mode at scale=1, on all of the above-mentioned handheld devices, and they may size their layouts and images accordingly. But remember that not all mobile devices are the same width; you should also make sure that your pages work well in landscape mode, and on larger devices like the iPad and Android tablets.

+ +

On 240-dpi screens, pages with initial-scale=1 will effectively be zoomed to 150% by both Fennec and Android WebKit. Their text will be smooth and crisp, but their bitmap images will probably not take advantage of the full screen resolution. To get sharper images on these screens, web developers may want to design images – or whole layouts – at 150% of their final size (or 200%, to support 320-dpi devices such as a retina display iPhone) and then scale them down using CSS or viewport properties.

+ +

The default ratio depends on the display density.  On a display with density less than 200dpi, the ratio is 1.0.  On displays with density between 200 and 300dpi, the ratio is 1.5.  For displays with density over 300dpi, the ratio is the integer floor(density/150dpi).  Note that the default ratio is true only when the viewport scale equals 1. Otherwise, the relationship between CSS pixels and device pixels depends on the current zoom level.

+ +

Szerokość viewport i szerokość ekranu

+ +

Many sites set their viewport to "width=320, initial-scale=1" to fit precisely onto the iPhone display in portrait mode. As mentioned above, this caused problems when Fennec 1.0 rendered these sites, especially in landscape mode. To fix this, Fennec 1.1 will expand the viewport width if necessary to fill the screen at the requested scale. This matches the behavior of Android and Mobile Safari, and is especially useful on large-screen devices like the iPad. (Allen Pike's Choosing a viewport for iPad sites has a good explanation for web developers.)

+ +

For pages that set an initial or maximum scale, this means the width property actually translates into a minimum viewport width. For example, if your layout needs at least 500 pixels of width then you can use the following markup. When the screen is more than 500 pixels wide, the browser will expand the viewport (rather than zoom in) to fit the screen:

+ +
<meta name="viewport" content="width=500, initial-scale=1">
+ +

Fennec 1.1 also adds support for minimum-scale, maximum-scale, and user-scalable, with defaults and limits similar to Safari's. These properties affect the initial scale and width, as well as limiting changes in zoom level.

+ +

Mobile browsers handle orientation changes slightly differently. For example, Mobile Safari often just zooms the page when changing from portrait to landscape, instead of laying out the page as it would if originally loaded in landscape. If web developers want their scale settings to remain consistent when switching orientations on the iPhone, they must add a maximum-scale value to prevent this zooming, which has the sometimes-unwanted side effect of preventing users from zooming in:

+ +
<meta name="viewport" content="initial-scale=1, maximum-scale=1">
+ +

This is not necessary in Fennec; when the device changes orientation, Fennec updates the viewport size, the page layout, and JavaScript/CSS properties like device-width, based on its new window dimensions.

+ +

Wspólne rozmiary viewport dla urządzeń przenośnych

+ +

If want to know what mobile and tablet devices have which viewport widths, there is a comprehensive list of mobile and tablet viewport sizes here. This gives information such as viewport width on portrait and landscape orientation as well as physical screen size, operating system and the pixel density of the device.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('CSS3 Device', '#viewport-meta', '<meta name="viewport">')}}{{Spec2('CSS3 Device')}}Non-normatively describes the Viewport META element
+ +

There is clearly demand for the viewport meta tag, since it is supported by most popular mobile browsers and used by thousands of web sites. It would be good to have a true standard for web pages to control viewport properties. As the standardization process proceeds, we at Mozilla will work to make sure we can implement any changes made during standardization.

diff --git a/files/pl/mozilla/persona/branding/index.html b/files/pl/mozilla/persona/branding/index.html new file mode 100644 index 0000000000..1b4ac3ba7e --- /dev/null +++ b/files/pl/mozilla/persona/branding/index.html @@ -0,0 +1,43 @@ +--- +title: Zasoby Branding +slug: Mozilla/Persona/branding +translation_of: Archive/Mozilla/Persona/User_interface_guidelines +--- +

Przyciski logowania za pomocą Persony

+

Obrazkowe

+

Przyciski logowania dostępne są w trzech wersjach i kolorach:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Sign in with your EmailSign in with PersonaSign in
Czarny
Niebieski
Czerwony
+

Bazujące na CSS

+

Sawyer Hollenshead stworzył powyższe przyciski za pomocą CSS.
+ Pobierz (.zip)

+

Więcej informacji

+

Więcej informacji na tematy designu Persony możesz znaleść w Sean Martell's style primer.

diff --git a/files/pl/mozilla/persona/index.html b/files/pl/mozilla/persona/index.html new file mode 100644 index 0000000000..9ff44aa7c7 --- /dev/null +++ b/files/pl/mozilla/persona/index.html @@ -0,0 +1,156 @@ +--- +title: Persona +slug: Mozilla/Persona +translation_of: Archive/Mozilla/Persona +--- +
+ +

Śledź naszego bloga, dołącz do naszej listy mailingowej, lub znajdź nas #identity na IRC.

+
+
+
+ Mozilla Persona jest kompletnie zdecentalizowanym i bezpiecznym systemem autoryzacji, opartym na protokole BrowseID. Aby zapewnić, że Persona działa wszędzie i dla wszystkich, Mozilla prowadzi obecnie niewielki zestaw opcjonalnych, scentralizowanych usług związanych z Persona.
+
+
    +
  1. Persona jest łatwa w użyciu. Zaledwie dwa kliknięcia wystarczą, aby użytkwonik Persona mógł zarejestrować się na nowej stronie, takiej jak Voost czy The Times Crossword, pomijając trud związany z tworzeniem nowego konta.
  2. +
  3. Persona jest łatwa w implementacji. Deweloperzy mogą dodać Persona do swojej strony w ciągu zaledwie jednego popołudnia.
  4. +
  5. Co najlepsze, nie ma ograniczeń. Deweloperzy otrzymują zweryfikowany adres mail od wszystkich użytkowników, a użytkownicy mogą używać dowolnego adresu mail w ramach Persona.
  6. +
  7. Persona jest tworzona z wykorzystaniem protokołu BrowserID. Po implementacji protokołu BrowserID przez innych twórców przeglądarek, nie będą oni musieli polegać już na Mozilli, aby się zalogować.
  8. +
+

Czytaj dalej, aby rozpocząć!

+
+ Note: Persona jest aktywnie tworzona. Zobacz nasz blog, żeby dowiedzieć się o nowych funkcjach, lub dołącz do naszej listy mailingowej i zgłoś swoje uwagi!
+

Używaj Persona na Twojej stronie

+ + + + + + + + + + + +
+

Getting started

+
+
+ Dlaczego Persona?
+
+ Learn about reasons to support Persona on your site, and how it compares to other identity and authentication systems.
+
+ Quick setup
+
+ Szybkie wprowadzenie pokazujące jak dodać Persona do Twojej strony.
+
+
+

Persona API reference

+
+
+ The navigator.id API reference
+
+ Reference for the navigator.id object, which web developers can use to integrate Persona into sites.
+
+ Verification API reference
+
+ Reference for the remote verification API hosted at https://verifier.login.persona.org/verify.
+
+
+

Guides

+
+
+ Security considerations
+
+ Practices and techniques to make sure your Persona deployment is secure.
+
+ Browser compatibility
+
+ Learn exactly which browsers support Persona.
+
+ Internationalization
+
+ Learn how Persona handles different languages.
+
+
+

Resources

+
+
+ Libraries and plugins
+
+ Find a drop-in library for your favorite programming language, web framework, blog, or content management system.
+
+ The Persona cookbook
+
+ Example source code for Persona sites. Includes snippets in PHP, Node.JS, and more.
+
+ Branding resources
+
+ Sign in buttons and other graphics to help present Persona to your users.
+
+
+

 

+ + + + + + + +
+

Information for Identity Providers

+

If you're an email provider or another identity-providing service, check out the links below to learn about becoming a Persona Identity Provider.

+
+
+ IdP Overview
+
+ A high level view of Persona Identity Providers.
+
+ Implementing an IdP
+
+ A detailed guide to the technical details of becoming an IdP.
+
+ Development tips
+
+ A set of tips and tricks useful while developing a new Identity Provider.
+
+ .well-known/browserid
+
+ An overview of the structure and purpose of the .well-known/browserid file, which IdPs use to advertise their support for the protocol.
+
+
+

The Persona Project

+
+
+ Glossary
+
+ BrowserID and Persona terminology defined.
+
+ FAQ
+
+ Answers to common questions.
+
+ Protocol overview
+
+ A mid-level technical overview of the underlying BrowserID protocol.
+
+ Crypto
+
+ A look at the cryptographic concepts behind Persona and BrowserID.
+
+ The Spec
+
+ Deep technical details live here.
+
+ The Persona Website
+
+ To get Persona going, we're hosting three services at https://login.persona.org: a fallback Identity Provider, a portable implementation of the {{ domxref("navigator.id") }} APIs, and an identity assertion verification service.
+
+ The Persona Source Code
+
+ The code behind the Persona website lives in a repository on GitHub. Patches welcome!
+
+
+

 

diff --git a/files/pl/mozilla/preferences/index.html b/files/pl/mozilla/preferences/index.html new file mode 100644 index 0000000000..c4c7968577 --- /dev/null +++ b/files/pl/mozilla/preferences/index.html @@ -0,0 +1,68 @@ +--- +title: Preferences +slug: Mozilla/Preferences +tags: + - Junk + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Preferences +--- +

The preference system makes it possible to store data for Mozilla applications using a key/value pairing system. These articles provide information about how to use the preference system.

+ + + + + + + +
+

Documentation

+
+
+ Preferences system
+
+ An introduction to using the preference system in Mozilla.
+
+ XUL School: Handling preferences
+
+ The XUL School tutorial chapter on preferences.
+
+ Mozilla preference reference
+
+ A reference guide to all Mozilla preferences; currently a work in progress.
+
+ A brief guide to Mozilla preferences
+
+ An introductory guide to where preferences are stored and other useful information about the core preference system.
+
+ Using preferences from application code {{gecko_minversion_inline("6.0")}}
+
+ Firefox 6 introduced static functions for accessing preferences efficiently from within application code. This API is not available for add-ons, but if you're working on a Gecko application, this API is the preferred way to access preferences.
+
+ Mozilla networking preferences
+
+ A guide to key networking-related preferences.
+
+ Mozilla preferences for uber-geeks
+
+ A guide to preferences that only truly elite geeks should play with.
+
+

View all pages tagged with "Preferences"...

+
+

Examples

+
+
+ Code snippets
+
+ Preference-related code snippets.
+
+ Adding preferences to an extension
+
+ How to add preferences to an existing extension.
+
+ + +
+

 

diff --git a/files/pl/mozilla/projects/crash_reporting/index.html b/files/pl/mozilla/projects/crash_reporting/index.html new file mode 100644 index 0000000000..bb8fd91519 --- /dev/null +++ b/files/pl/mozilla/projects/crash_reporting/index.html @@ -0,0 +1,47 @@ +--- +title: Crash reporting +slug: Mozilla/Projects/Crash_reporting +tags: + - Crashes + - Developer Guide + - Developing Mozilla + - Firefox + - Mozilla + - NeedsTranslation + - QA + - TopicStub + - crash reports +translation_of: Mozilla/Projects/Crash_reporting +--- +

Firefox ships with an open-source crash reporting system. This system is combination of projects:

+ + + +

Where did my crash get submitted?

+ +

Crash data submitted using the Mozilla Crash Reporter is located on crash-stats. If you want to find a specific crash that you submitted, you first need to find the Crash ID that the server has assigned your crash. Type about:crashes into your location bar to get a page listing both submitted and unsubmitted crash reports. For more information, see How to get a stacktrace for a bug report.

+ +

Reports and queries

+ +

crash-stats has built-in reports of "topcrashes" for each release grouped by signature. There is also a custom query tool which allows users to limit searches on more precise information.

+ +

For more automated usage, a summary of each day's crash reports is published as a CSV file, as well as batch analysis jobs. These can be found at https://crash-analysis.mozilla.com/crash_analysis/

+ +

Finally, a set of Mozilla employees have access to directly query the underlying data in either SQL summary or using mapreduce on the storage cluster. If you are interested in obtaining this advanced access, contact Benjamin Smedberg.

+ +

See also

+ + diff --git a/files/pl/mozilla/projects/crash_reporting/wyszukiwanie_crash_reports/index.html b/files/pl/mozilla/projects/crash_reporting/wyszukiwanie_crash_reports/index.html new file mode 100644 index 0000000000..0eb155863b --- /dev/null +++ b/files/pl/mozilla/projects/crash_reporting/wyszukiwanie_crash_reports/index.html @@ -0,0 +1,250 @@ +--- +title: Przewodnik po wyszukiwaniu raportów o awariach +slug: Mozilla/Projects/Crash_reporting/Wyszukiwanie_crash_reports +translation_of: Mozilla/Projects/Crash_reporting/Searching_crash_reports +--- +

Przed przeczytaniem tej strony przeczytaj dokumentację poszczególnych raportów o awariach.

+ +

Strona z statystyką awarii Mozilli zapewnia narzędzia do badania dużej liczby raportów o awariach Firefoksa. Ten przewodnik po przeszukiwaniu raportów o awariach może pomóc w zlokalizowaniu raportów o awariach, które pomogą Ci znaleźć i naprawić błąd przeglądarki Firefox, nad którym pracujesz.

+ +

W szczególności statystyki awarii oferuje dwie podstawowe funkcje:

+ +

Badawczy
+     Możesz przeszukiwać bazę danych raportów o awariach według ponad 100 kryteriów: podpis awarii, data, platforma, produkt, wersja itp.
+ Grupowanie
+     Możesz grupować wyniki każdego wyszukiwania w grupy przy użyciu tych samych kryteriów.

+ +

Uzyskanie pełnej mocy i elastyczności wymaga dobrego zrozumienia obu tych funkcji. Wyszukiwanie jest łatwe do zrozumienia, ale funkcje grupowania są łatwe do przeoczenia.

+ +

Badawczy
+ Formularz wyszukiwania

+ +

Możesz przejść do strony wyszukiwania, klikając link "Super wyszukiwanie" w pobliżu paska narzędzi w prawym górnym rogu dowolnej strony ze statystykami awarii. Pojawi się formularz wyszukiwania, taki jak na poniższym zrzucie ekranu.

+ +

 

+ +

Results of a default search in crash-stats

+ +

 

+ +

Pola są udostępniane dla czterech powszechnych kryteriów wyszukiwania: produktu, wersji, platformy i typu procesu. Pole produktu jest wstępnie wypełnione "Firefox", ponieważ jest to częsty przypadek. Jak pokazuje drobny druk, domyślny zakres dat to ostatni tydzień.

+ +

Domyślne wyszukiwanie: facet podpisu

+ +

Jeśli klikniesz przycisk "Szukaj", otrzymasz wyniki, takie jak na poniższym zrzucie ekranu.

+ +

 

+ +

Results of a default search in crash-stats

+ +
+
+
+
+
+
Domyślnie wybrana jest karta "Podpis wzorca". ("Facet" to termin oznaczający "grupę".) W tych wynikach znalezione raporty o awariach są pogrupowane według sygnatury awarii i uszeregowane według wielkości grupy. Kolumny pokazują rangę, podpis, rozmiar (zarówno liczbę, jak i proporcję pasujących raportów o awariach), a wreszcie listę błędów, które zostały oznaczone jako odnoszące się do tego podpisu.
+
+Liczby są duże, ponieważ to wyszukiwanie pasowało do wszystkich raportów awarii Firefoksa z ostatnich siedmiu dni. Pierwsza grupa ma ponad 100 000 raportów o awariach, co stanowi 7,77% wszystkich pasujących awarii. Oznacza to, że istnieje ponad 1,3 miliona raportów o awariach pasujących do tego wyszukiwania.
+
+Możesz uporządkować grupy na różne sposoby, klikając nagłówki kolumn. Łącza w wynikach robią następujące rzeczy.
+
+    
Pierwsze łącze w każdej komórce kolumny "Podpis" łączy się z raportem podpisu, który zawiera dodatkowe szczegóły dotyczące raportów o awariach z tym podpisem.
+    
Łącze "Dodaj termin" w każdej komórce kolumny "Podpis" pozwala na węższe późniejsze wyszukiwanie wśród raportów o awariach z tym podpisem.
+    
Linki w każdym linku do komórki w kolumnie "Błędy" do raportów o błędach w Bugzilli.
+
+Domyślne wyszukiwanie: raporty o awariach
+
+Jeśli przejdziesz do zakładki "Crash Reports", zobaczysz wyniki podobne do tych na poniższym zrzucie ekranu.
+
+
+
+
+
+ +

Results of a default search in crash-stats (crash reports tab)

+ +

Wyniki domyślnego wyszukiwania w statystykach awarii (karta raportów awarii)
+
+ Jest to lista wszystkich pojedynczych raportów o awariach pasujących do kryteriów wyszukiwania. Jeśli liczba dopasowań jest duża - w tym przypadku przekracza ona 1,3 miliona, tak jak widzieliśmy w zakładce "Podpis wzorca" - wyniki będą rozłożone na wiele stron, które możesz odwiedzić, klikając linki na górze po prawej stronie karty.
+
+ Łącza w wynikach robią następujące rzeczy.
+
+     
Łącze w każdej komórce kolumny "Identyfikator awarii" łączy się z indywidualnym raportem o awarii.
+     
Łącza w każdej komórce kolumny "Podpis" mają ten sam efekt, co w zakładce "Podpis wzorca".
+     
Łącza w pozostałych komórkach kolumn pozwalają również na węższe późniejsze wyszukiwanie z wartością tego linku dodaną do kryteriów wyszukiwania.
+
+ Węższe wyszukiwanie
+
+ Możesz dodać kryteria, aby wykonać węższe wyszukiwanie. Na przykład, aby wykonać wyszukiwanie wszystkich raportów awarii systemu Mac, które wystąpiły podczas działania modułu czyszczenia pamięci JavaScript, wykonaj następujące czynności.
+
+     
Dodaj "Mac OS X" do pola "Platforma".
+     
Wybierz "Nowa linia", a następnie wybierz pole ("jest zbieranie śmieci") i operator ("jest prawdą"). Operatory dostępne dla każdego pola zależą od jego rodzaju.
+
+ Po dodaniu tych kryteriów formularz wyszukiwania wygląda jak na poniższym zrzucie ekranu.

+ +

crash-stats Super Search form with additional criteria

+ +

crash-stats Super Search z dodatkowymi kryteriami
+
+ Po kliknięciu "Szukaj" otrzymamy wyniki takie jak na poniższym zrzucie ekranu.

+  

+ +

Results of a narrower search in crash-stats

+ +

Wyniki węższego wyszukiwania w statystykach awarii
+
+ Liczba raportów o awariach odpowiadających temu wyszukiwaniu znajduje się w tysiącach, czyli znacznie mniej niż w poprzednim wyszukiwaniu.
+ Podpis Proto
+
+ Pole "podpis proto" jest tylko nieprzetworzonym nieprzetworzonym stosem awarii połączonym razem.
+
+ Możesz zrobić takie rzeczy jak:
+
+     
Wyszukaj awarie, w których podpis jest Foo, a podpis proto zawiera Bar. Jest to przydatne, jeśli masz dość ogólny podpis i chcesz zobaczyć, ile z nich jest szczególnym przypadkiem, z którym się zetknąłeś. Lub zamiast podpisu Foo, powodu awarii lub czegoś innego.
+     
Użyj go jako aspekt. Pozwala to rzucić okiem na pełne podpisy wypadków na jeden rzut oka, trochę razem. Zauważ, że ponieważ podpis proto zawiera cały podpis, rzeczy nie są pogrupowane aż tak dobrze.
+
+ Grupowanie
+
+ W poprzedniej sekcji widzieliśmy jeden przykład grupowania w zakładce "Podpis faceta", która jest domyślnie wyświetlana. Ale istnieje wiele innych interesujących sposobów na grupowanie wyszukiwań.
+ Aspekty w formularzu wyszukiwania
+
+ Aby wykonać wyszukiwanie z grupowaniem bez podpisów, najpierw kliknij tekst "Więcej opcji ...", który pokazuje dodatkowe pola pokazane na poniższym zrzucie ekranu.
+
+ crash-stats Super Search z różnymi aspektami

+ +

crash-stats Super Search form with different facets

+ +

(Pola "Pokaż kolumny" i "Sortuj według" są proste: mają zastosowanie do karty "Raporty o awariach" wszelkich wyników wyszukiwania i nie są związane z grupowaniem).
+
+ Pole "Facet on" jest tym, które kontroluje grupowanie. Domyślnie zawiera ona wartość "podpis", co wyjaśnia, dlaczego we wcześniejszych wynikach wyszukiwania widzieliśmy kartę "Podpis wzorca". Ale możemy zmienić wartości w tym polu i uzyskać różne karty aspektów w wynikach wyszukiwania.
+
+ Grupowanie według platformy
+
+ Na przykład, jeśli zaczniemy od domyślnego wyszukiwania wszystkich awarii Firefoksa w zeszłym tygodniu, ale zastąpimy aspekt "podpisu" słowem "platforma" i "przyczyna krachu moz", otrzymamy wyniki wyszukiwania z dwiema kartami aspektów. Pierwszym z nich jest zakładka "Facility platformy", z wynikami podobnymi do pokazanych na poniższym zrzucie ekranu.
+
+ Wyniki fasetowanego wyszukiwania w statystykach awarii

+ +

Results of a faceted search in crash-stats

+ +

Ma tę samą kolumnę co karta "Podpis wzorca", którą widzieliśmy wcześniej, z wyjątkiem kolumny "Błędy", ponieważ jest to specjalna kolumna, która dotyczy tylko aspektu podpisu. Ta karta pokazuje rozkład raportów o awariach na różnych platformach. Raporty o awariach zawsze zawierają pole platformy (chociaż może być puste, jeśli coś poszło nie tak), a więc wartości procentowe wynoszą do 100.
+ Grupowanie według "przyczyny awarii moz"
+
+ Druga karta aspektów to zakładka "Przyczyna przyczyny awarii", z wynikami podobnymi do pokazanych na poniższym zrzucie ekranu.
+
+ Wyniki wyszukiwania fasetowego w statystykach awarii (karta przyczyny awarii Momo)

+ +

Results of a faceted search in crash-stats (moz crash reason tab)

+ +


+ To natychmiast pokazuje, które połączenia MOZ_CRASH są często trafiane przez użytkowników. Tylko podzbiór raportów o awariach zawiera pole "przyczyna awarii moz" - te, które uległy awarii w wyniku trafienia wywołania MOZ_CRASH - więc wszystkie awarie, których brakuje w tym polu, są pomijane na tej karcie. Z tego powodu wartości procentowe nie sumują się do 100.
+ Przykład mniej przydatnego grupowania
+
+ Przydatność grupowania zależy od pola. W szczególności pola, które mogą mieć wiele możliwych wartości (takich jak pola numeryczne) często nie grupują się dobrze. Na przykład, jeśli wykonamy domyślne wyszukiwanie pogrupowane według czasu działania, otrzymamy wyniki takie jak na poniższym zrzucie ekranu.

+ +

Results of a faceted search in crash-stats (uptime)

+ +

W tym przykładzie 10 najczęstszych grup stanowi mniej niż 12% wszystkich awarii, a ponadto występuje bardzo długi ogon. Wyniki te zostałyby poprawione przy użyciu zakresów numerycznych zamiast poszczególnych wartości, ale niestety nie jest to obsługiwane.
+ Zaawansowane użycie
+
+ Połączenie wyszukiwania i grupowania jest potężne. Wyszukiwania znajdują raporty o awariach pasujące do określonych kryteriów, a grupowanie porządkuje te raporty o awariach w interesujące grupy.
+
+ Po przeprowadzeniu wyszukiwania adres URL strony jest aktualizowany w celu uwzględnienia parametrów wyszukiwania. Oznacza to, że wyniki każdego wyszukiwania można łatwo udostępnić, kopiując i wklejając adres URL strony.
+
+ Aby stać się ekspertem w wyszukiwaniu i grupowaniu, musisz poznać pełny zakres ponad 100 dostępnych pól do wyszukiwania i grupowania. Jednym ze sposobów na poznanie ich jest przeczytanie wielu pojedynczych raportów o wypadkach; Zwróć uwagę, że wszystkie pola widoczne na karcie Szczegóły w pojedynczym raporcie o awarii zawierają wskazówkę, która wskazuje klucz do wyszukiwania. Możesz także przejrzeć kompletną listę.
+
+ Istnieje również interfejs API, za pomocą którego można programowo przeprowadzać wyszukiwanie. Zobacz pełną dokumentację dokumentacji API; zauważ, że używa terminu "agregacja" do grupowania / faceting.
+ Tłumaczenie polskie:
+ Potrzebuję pomocy? • Przewodnik redaktora • Przewodnik po stylach
+ Masz wersję roboczą: 27.12.2017 03:18:03.
+ Automatycznie zapisano wersję roboczą: 27.12.2017 06:00:25

diff --git a/files/pl/mozilla/projects/index.html b/files/pl/mozilla/projects/index.html new file mode 100644 index 0000000000..6291137b31 --- /dev/null +++ b/files/pl/mozilla/projects/index.html @@ -0,0 +1,14 @@ +--- +title: Projects +slug: Mozilla/Projects +tags: + - Mozilla + - NeedsContent + - NeedsTranslation + - Projects + - TopicStub +translation_of: Mozilla/Projects +--- +

{{ draft() }}

+

This page needs to become a pretty index to Mozilla projects whose documentation is located under it.

+

{{ LandingPageListSubpages() }}

diff --git a/files/pl/mozilla/projects/mozmill/index.html b/files/pl/mozilla/projects/mozmill/index.html new file mode 100644 index 0000000000..e43b89333f --- /dev/null +++ b/files/pl/mozilla/projects/mozmill/index.html @@ -0,0 +1,52 @@ +--- +title: Mozmill +slug: Mozilla/Projects/Mozmill +translation_of: Mozilla/Projects/Mozmill +--- +

MozMill jest narzędziem i frameworkiem do pisania testów automatycznych dla aplikacji opartych na Gecko (Firefox, Thunderbird, Songbird, itp). Jest on zbudowany jako klienta wiersza poleceń, aby umożliwić testowanie i debugowanie. MozMill posiada bogate API, które pomogą Ci napisać testy funkcjonalne, które symulują interakcje użytkownika, jak również API do testów jednostowkych.

+

The Mozmill test automation project has been started in January 2009 and covers the automation work for Firefox. Checkout the project page or have a look at the Mozmill Tests documentation to get an impression how to contribute in writing and running Mozmill tests. Existing tests get run in the release testing cycle for new major or security releases of Firefox.

+

Also the Mozilla Messaging team has an active project which handles Thunderbird Testing with Mozmill.

+
+

If you have questions or issues with Mozmill you might want to send us an email to the mozmill-dev mailing list. For bugs please submit a ticket on bugzilla.mozilla.org under the Testing/Mozmill component.

+
+

Installation

+

Mozmill is a Python package hosted on PyPI. It can be installed by using pip or setuptools (easy_install).

+

Windows

+

The simpliest way to have Mozmill running on Windows is by getting this mozmill-env archive. Just extract it and run cmd.run every time you need to use Mozmill. It will open a Unix-like console that will already have Mozmill installed.

+

Mac OS X

+

If you are running Mac OS X 10.4 you have to download and install at least Python 2.5 from python.org first. Afterward, install Mozmill with the setuptools.

+
$ curl -O https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
+$ sudo python ez_setup.py
+$ sudo easy_install pip
+$ sudo pip install mozmill
+

Debian-like GNU-Linux distributions (Debian, Ubuntu, etc.)

+

To install Mozmill on Ubuntu you only have to run two commands in the terminal:

+
$ sudo apt-get install python-pip
+$ sudo pip install mozmill
+

Mozmill versions

+

You can find out your Mozmill version by running:

+
$ mozmill --v
+
+

The current stable version of Mozmill is 2.0. Most likely you have installed this version with the above steps. If the bug you're working on does not require 2.0, then please run the following command, to get the last version of the 1.5 branch:

+
$ sudo pip install --upgrade mozmill==1.5.24
+
+

For development of Mozmill 2.0, we advise you to use a virtual environment and to follow these steps.

+

See also

+

We have a few other pages to help you get the most out of Mozmill.  You might want to bookmark these for reference later.

+ +

References

+ +

Bugs

+

Mozmill is still in development, like most test systems in the Mozilla project. If you think you've found a bug, please check the list of existing bugs. If your found bug is not listed there, please file a new bug under the "Testing" Product and "Mozmill" Component. Please provide as much as possible details and attach the Mozmill test if available, which shows the problem. Thanks for filing!

diff --git a/files/pl/mozilla/projects/nss/index.html b/files/pl/mozilla/projects/nss/index.html new file mode 100644 index 0000000000..718314f916 --- /dev/null +++ b/files/pl/mozilla/projects/nss/index.html @@ -0,0 +1,198 @@ +--- +title: Network Security Services +slug: Mozilla/Projects/NSS +tags: + - JSS + - NSS + - NeedsMigration + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Projects/NSS +--- +

Network Security Services (NSS) is a set of libraries designed to support cross-platform development of security-enabled client and server applications. Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security standards.

+

For detailed information on standards supported, see Overview of NSS. For a list of frequently asked questions, see the FAQ.

+

NSS is available under the Mozilla Public License. For information on downloading NSS releases as tar files, see Download PKI Source.

+

If you're a developer and would like to contribute to NSS, you might want to read the documents highlevel overview of internal details of NSS and getting started with NSS.

+ + + + + + + +
+

Documentation

+

Background Information

+
+
+ Overview of NSS
+
+ Provides a brief summary of NSS and its capabilities.
+
+ NSS FAQ
+
+ Answers basic questions about NSS.
+
+ Introduction to Public-Key Cryptography
+
+ Explains the basic concepts of public-key cryptography that underlie NSS.
+
+ Introduction to SSL
+
+ Introduces the SSL protocol, including information about cryptographic ciphers supported by SSL and the steps involved in the SSL handshake.
+
+

Getting Started

+
+
+ NSS Releases
+
+ This page contains information about the current and past releases of NSS.
+
+ Get the source code and Build it
+
+ Instructions on how to build NSS on the different supported platforms.
+
+ Get Mozilla Source Code Using Mercurial
+
+ Information about with working with Mercurial.
+
+ Get Mozilla Source Code Using CVS (deprecated)
+
+ Old deprecated CVS documentation.
+
+

NSS APIs

+
+
+ Introduction to Network Security Services
+
+ Provides an overview of the NSS libraries and what you need to know to use them.
+
+ NSS Public Functions
+
+ Summarizes the APIs exported by the NSS shared libraries.
+
+ NSS Reference
+
+ API used to invoke SSL operations.
+
+ NSS API Guidelines
+
+ Explains how the libraries and code are organized, and guidelines for developing code (naming conventions, error handling, thread safety, etc.)
+
+ NSS Technical Notes
+
+ Links to NSS technical notes, which provide latest information about new NSS features and supplementary documentation for advanced topics in programming with NSS.
+
+

Tools, testing, and other technical details

+
+
+ Build Instructions for NSS
+
+ Describe how to check out and build NSS releases.
+
+
+
+ NSS Developer Tutorial
+
+ How to make changes in NSS. Coding style, maintaining ABI compatibility.
+
+
+
+ NSS Tools
+
+ Tools for developing, debugging, and managing applications that use NSS.
+
+ Sample Code
+
+ Demonstrates how NSS can be used for cryptographic operations, certificate handling, SSL, etc.
+
+ NSS 3.2 Test Suite
+
+ Archived version. Describes how to run the standard NSS tests.
+
+ NSS Performance Reports
+
+ Archived version. Links to performance reports for NSS 3.2 and later releases.
+
+ Encryption Technologies Available in NSS 3.11
+
+ Archived version. Lists the cryptographic algorithms used by NSS 3.11.
+
+ NSS 3.1 Loadable Root Certificates
+
+ Archived version. Describes the scheme for loading root CA certificates.
+
+ cert7.db
+
+ Archived version. General format of the cert7.db database.
+
+

PKCS #11 information

+ +
+
+

CA certificates pre-loaded into NSS

+ +
+
+

NSS is built on top of Netscape Portable Runtime (NSPR)

+
+
+ Netscape Portable Runtime
+
+ NSPR project page.
+
+ NSPR Reference
+
+ NSPR API documentation.
+
+

Additional Information

+ +

Testing

+ +

Planning

+

Information on NSS planning can be found at wiki.mozilla.org, including:

+ +
+

Community

+
    +
  • View Mozilla Security forums...
  • +
+

{{ DiscussionList("dev-security", "mozilla.dev.security") }}

+
    +
  • View Mozilla Cryptography forums...
  • +
+

{{ DiscussionList("dev-tech-crypto", "mozilla.dev.tech.crypto") }}

+ + +
+

 

diff --git a/files/pl/mozilla/projects/nss/probka_kodu_nss/index.html b/files/pl/mozilla/projects/nss/probka_kodu_nss/index.html new file mode 100644 index 0000000000..3fcb3c95a7 --- /dev/null +++ b/files/pl/mozilla/projects/nss/probka_kodu_nss/index.html @@ -0,0 +1,22 @@ +--- +title: Próbka Kodu NSS +slug: Mozilla/Projects/NSS/Probka_Kodu_NSS +tags: + - NSS +translation_of: Mozilla/Projects/NSS/NSS_Sample_Code +--- +

Próbka kodu NSS

+

Zbiór przykładowych programów demonstruje zastosowanie NSS do zadań związanych z kryptografią, obsługą certyfikatów, SSL, itp. Prezentuje też dobre praktyki w stosowaniu kryptografii.

+

 

+
    +
  1. Próbka 1: Generacja Kluczy i Transport Między Serwerami
  2. +
  3. Próbka 2: Szyfrowanie Symetryczne
  4. +
  5. Próbka 3: Haszowanie, MAC
  6. +
  7. Próbka 4: Kryptografia PKI
  8. +
  9. Próbka 5: Kryptografia PKI poprzez publiczny i prywatny klucz w formacie DER
  10. +
  11. Próbka 6: Stałe Klucze Symetryczne w bazie danych NSS
  12. +
+


+ To dość stare przykłady, które należy zastąpić. Sprawdź https://bugzilla.mozilla.org/show_bug.cgi?id=490238

+

Dostępne jest tymczasowe repozytorium gita z aktualnie rozwijanymi projektami

+
git clone git://fedorapeople.org/~emaldonado/samples.git
diff --git a/files/pl/mozilla/projects/pzbo/index.html b/files/pl/mozilla/projects/pzbo/index.html new file mode 100644 index 0000000000..9a9cdc8761 --- /dev/null +++ b/files/pl/mozilla/projects/pzbo/index.html @@ -0,0 +1,15 @@ +--- +title: >- + Program Zarządzający Bezpieczeństwem Osobistym (ang. Personal Security + Manager) +slug: Mozilla/Projects/PZBO +translation_of: Mozilla/Projects/PSM +--- +

Program Zarządzający Bezpieczeństwem Osobistym (PZBO) składający się ze zbioru bibliotek, wykonuje operacje kodujące w imieniu aplikacji klienckiej. W skład operacji wchodzą ustanawianie połączeń SSL, podpisywanie i weryfikacja podpisu, certyfikat zarządzania (w tym wydanie lub unieważnienie certyfikatu) jak również inne ogólne funkcje Infrastruktury Klucza Publicznego (ang. Public Key Infrastructure).

+ +

Uwagi:

+ + diff --git a/files/pl/mozilla/rejestracja_chrome/index.html b/files/pl/mozilla/rejestracja_chrome/index.html new file mode 100644 index 0000000000..eb0dc9d4a5 --- /dev/null +++ b/files/pl/mozilla/rejestracja_chrome/index.html @@ -0,0 +1,129 @@ +--- +title: Rejestracja Chrome +slug: Mozilla/Rejestracja_Chrome +tags: + - Toolkit API + - Wszystkie_kategorie +translation_of: Mozilla/Chrome_Registration +--- +

 

+

Czym jest chrome?

+

Chrome to zestaw elementów interfejsu użytkownika, które znajdują się poza obszarem treści okna. Paski narzędzi, paski menu, paski postępu i pola tytułu okna to przykłady elementów, które są zazwyczaj elementami chrome.

+

Dostawcy chrome

+

Jednostka dostarczająca chrome dla danego okna (np. dla okna przeglądarki) nazywana jest dostawcą chrome (ang. chrome provider). Dostawcy pracują wspólnie, aby dostarczyć pełny zestaw chrome dla danego typu okna, od obrazków na paskach narzędziowych po pliki zawierające ciągi znakowe, treść oraz opis prezentacji samego okna.

+

Są trzy podstawowe typy dostawców chrome:

+

Zawartość (ang. Content)

+

Główne źródła plików do opisu okna pochodzą z dostawcy zawartości i może to być dowolny plik, który może zostać wyświetlony w Mozilli. Będzie to zazwyczaj plik XUL, ponieważ język XUL jest stworzony do opisywania zawartości okien i okienek dialogowych. Pliki JavaScript opisujące interfejs użytkownika oraz pliki wiążące XBL również są trzymane w pakietach zawartości.

+

Pliki lokalizacyjne (ang. Locale)

+

Aplikacje, które można zlokalizować trzymają wszystkie lokalizowane informacje w dostawcy tekstów. To pozwala tłumaczom dołączać zewnętrzną paczkę chrome z tłumaczeniem aplikacji, bez potrzeby dotykania reszty kodu. Dwoma podstawowymi rodzajami plików tłumaczeń są pliki DTD oraz pliki własności znane z Javy.

+

Skórki (ang. Skin)

+

Dostawca skórek jest odpowiedzialny za dostarczanie pełnego zestawu plików opisujących wygląd chrome. Zazwyczaj dostawca skórek dostarcza pliki CSS i obrazki.

+

Rejestr chrome

+

Środowisko Gecko zarządza serwisem znanym jako rejestr chrome, który dostarcza mapowanie nazw z przestrzeni chrome na fizyczne lokalizacje pakietów chrome na dysku.

+

Rejestr chrome jest konfigurowalny i trwały, dzięki czemu użytkownik może instalować różnych dostawców chrome i używać preferowanej skórki lub języka. Ten proces jest dokonywany poprzez XPInstall oraz menedżer rozszerzeń.

+

W celu informowania rejestru chrome o dostępności chrome używany jest tekst manifestu (ang. text manifest): ten plik nosi nazwę "chrome.manifest" i jest trzymany w korzeniu rozszerzenia lub motywu, oraz chrome/*.manifest w aplikacji XULRunnera.

+

Manifest chrome w postaci czystego tekstu ma prostą postać liniową. Każda linia jest przetwarzana niezależnie; jeżeli linia nadaje się do przetworzenia, rejestry chrome wykonują akcję określoną przez tę linię; w przeciwnym wypadku, rejestry chrome ignorują ją (oraz wypisują ostrzeżenie w konsoli błędów).

+
locale nazwapakietu nazwajezyka sciezka/do/pliku
+skin nazwapakietu nazwaskorki sciezka/do/pliku
+
+

Instrukcje manifestu

+

Komentarze

+

Możemy wprowadzić linię komentarza zaczynając komentarz znakiem '#'. Jakiekolwiek inne znaki w tej linii zostaną zignorowane.

+
# to jest linia komentarza - możemy ją umieścić w każdym miejscu
+
+

zawartość (content)

+

Zawartość pakietu jest rejestrowana poprzez linię

+
contentnazwapakietuuri/do/plików/[flagi]
+
+

Taka linia zarejestruje położenie podczas odtwarzania ścieżki chrome:// + + nazwapakietu + /content/... . URI może być względną lub bezwzględną ścieżką do pliku manifestu.

+

pliki językowe (locale)

+

Pakiet językowy jest rejestrowany poprzez linię

+
localenazwapakietunazwajęzykauri/do/plików/[flagi]
+
+

Taka linia zarejestruje pakiet językowy przy odtwarzaniu ścieżki chrome:// + + nazwapakietu + /locale/... . + + nazwajęzyka + jest zazwyczaj identyfikatorem języka jak "pl" lub identyfikatorem typu język-kraj jak "pt-BR". Jeżeli dla danego pakietu zarejestrowany jest więcej niż jeden pakiet językowy, rejestr chrome wybierze najbardziej pasujący do preferencji użytkownika.

+

skórki (skin)

+

Pakiet skórek jest rejestrowany poprzez linię

+
skinnazwapakietunazwaskorkiuri/do/plików/[flagi]
+
+

Taka linia zarejestruje pakiet skórek przy odtwarzaniu ścieżki chrome:// + + nazwapakietu + /skin/... . + + nazwaskorki + jest zazwyczaj identyfikatorem określającym instalowaną skórkę. Jeżeli dla danego pakietu zarejestrowany jest więcej niż jeden pakiet skórek, rejestr chrome wybierze najbardziej pasujący do preferencji użytkownika.

+

Nakładki (overlays)

+

Nakładki XUL są rejestrowane przy użyciu poniższej składni:

+
overlay chrome://URI-do-pliku-nakładki chrome://URI-nakładki[flagi]
+
+

style

+

Nakładki stylów (własne pliki CSS, które będą nakładane na strony chrome) są rejestrowane przy użyciu poniższej składni:

+
style chrome://URI-do-pliku chrome://URI-arkusza-stylów
+
+

nadpisywanie (override)

+

W pewnych przypadkach rozszerzenia mogą chcieć nadpisać pliki chrome dołączone do aplikacji lub XulRunnera. Aby to zrobić, należy skorzystać z instrukcji "override" w pliku manifestu:

+
override chrome://pakiet/typ/original-uri.whatevernew-resolved-URI
+
+

Flagi manifestu

+

Linie manifestu mogą mieć flagi dodane na końcu linii rejestracji. Te flagi oznaczają specjalne atrybuty, lub ograniczają warunki w których dana linia zostanie użyta.

+

aplikacja (application)

+

Rozszerzenia mogą być instalowane jako wiele aplikacji. Mogą istnieć linie rejestracyjne chrome, które dotyczą tylko wybranych aplikacji. Flaga

+
application=app-ID
+
+

określa, że ta instrukcja ma dotyczyć wyłącznie rozszerzeń instalowanych w aplikacji określonej przez + + app-ID + . Można określić wiele flag aplikacji w jednej linii, i w tym wypadku linia zostanie wykonana, jeśli którakolwiek z nich będzie pasować.

+

appversion

+

Rozszerzenia mogą być instalowane w wielu wersjach aplikacji. Można stworzyć linie rejestracji chrome, które będą dotyczyły tylko wybranych wersji aplikacji. Flaga

+
appversion=version
+appversion<version
+appversion<=version
+appversion>version
+appversion>=version
+
+

określa, że instrukcja ma dotyczyć wyłącznie, jeżeli rozszerzenie jest instalowane w aplikacji o pasującej wersji. Można określić wiele flag appversion w jednej linii, i w tym wypadku linia zostanie wykonana, jeśli którakolwiek z nich będzie pasować.

+

platform (Pakiety dotyczące platformy)

+

Niektóre pakiety posiadają specjalną flagę oznaczającą, że dany pakiet jest dla konkretnej platformy. Niektóre elementy zawartości, skórki, tekstów mogą być różne zależnie od platformy, na której aplikacja została uruchomiona. Te pakiety posiadają trzy różne zestawy plików, dla windows/os2, macintosha oraz platform uniksowych. Na przykład kolejność przycisków "OK" i "anuluj" w okienkach dialogowych jest różna, tak samo jak nazwy niektórych elementów. Modyfikator "platformy" jest przetwarzany tylko dla rejestracji zawartości, nie jest używany przy rejestracji pakietów językowych lub skórek.

+

Aby oznaczyć, że dany pakiet zawartości jest przeznaczony dla konkretnej platformy, należy dodać flagę "platform" za ścieżką; np.

+
content global-platform jar:toolkit.jar!/toolkit/content/global-platform/ platform
+
+

Mając to zdefiniowane w pliku manifestu, należy się upewnić, że w w katalogu global-platform znajdują się podkatalogi win (Windows/OS2), mac (OS9/OSX), lub unix (Wszystko inne). Wszystko, co znajduje się poza tymi podkatalogami, zostanie zignorowane.

+

xpcnativewrappers

+

Pakiety chrome mogą decydować, czy chcą użyć mechanizmu bezpieczeństwa xpcnativewrappers, aby chronić swój kod przed nieuprawnionym dostępem do treści. Zajrzyj do Bezpieczny dostęp do zawartości DOM z chrome po więcej szczegółów.

+

W wydaniu Firefox 1.5 alpha (Deer Park alpha), ta flaga jest *wyłączona* domyślnie i musi zostać ręcznie włączona poprzez ustawienie xpcnativewrappers=yes.

+

Od pierwszego wydania Firefox 1.5 beta, ta flaga będzie domyślnie włączona i rozszerzenia potrzebujące niebezpiecznego dostępu do zawartości obiektów będą musiały ustawić xpcnativewrappers=no.

+

Flaga xpcnativewrappers dotyczy tylko pakietu content: nie jest rozpoznawana w rejestrach locali ani skórek.

+

Przykładowy Manifest Chrome

+
content       necko                   jar:comm.jar!/content/necko/ xpcnativewrappers=yes
+locale	       necko       en-US       jar:en-US.jar!/locale/en-US/necko/
+content       xbl-marquee             jar:comm.jar!/content/xbl-marquee/
+content       pipnss                  jar:pipnss.jar!/content/pipnss/
+locale        pipnss      en-US       jar:en-US.jar!/locale/en-US/pipnss/
+# Firefox-only
+overlay chrome://browser/content/pageInfo.xul           chrome://pippki/content/PageInfoOverlay.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384}
+overlay chrome://communicator/content/pref/preftree.xul chrome://pippki/content/PrefOverlay.xul
+overlay chrome://navigator/content/pageInfo.xul         chrome://pippki/content/PageInfoOverlay.xul application=seamonkey@applications.mozilla.org
+content       pippki                  jar:pippki.jar!/content/pippki/ xpcnativewrappers=yes
+locale        pippki      en-US       jar:en-US.jar!/locale/en-US/pippki/
+content       global-platform         jar:toolkit.jar!/content/global-platform/ platform
+skin          global      classic/1.0 jar:classic.jar!/skin/classic/global/
+override chrome://global/content/netError.xhtml jar:embedder.jar!/global/content/netError.xhtml
+content       inspector               jar:inspector.jar!/content/inspector/ xpcnativewrappers=no
+
+

Manifesty starego typu contents.rdf

+

Zanim manifesty czysto tekstowe zostały wprowadzone (nastąpiło to w Firefoksie 1.5, Toolkit 1.8), używane były manifesty RDF nazywane "contents.rdf". Ten format jest teraz wycofywany; jednakże, Mozilla suite (Seamonkey) nie obsługuje jeszcze manifestów czysto tekstowych, więc manifesty contents.rdf są wymagane dla rozszerzeń, które chcą zachować wsteczną zgodność z Firefoksem 1.0 oraz suite.

+

Oficjalne dokumentacje dla Toolkit API

+

{{ page("pl/docs/Toolkit_API/Official_References") }}

+
+  
+

 

diff --git a/files/pl/mozilla/tech/index.html b/files/pl/mozilla/tech/index.html new file mode 100644 index 0000000000..27f7f56e0c --- /dev/null +++ b/files/pl/mozilla/tech/index.html @@ -0,0 +1,17 @@ +--- +title: Mozilla technologies +slug: Mozilla/Tech +tags: + - Landing + - Mozilla + - NeedsTranslation + - Reference + - TopicStub + - XUL +translation_of: Mozilla/Tech +--- +

(pl translation)

+ +

Mozilla has several technologies used as components of its projects. These are documented here. (flesh out this text).

+ +

{{LandingPageListSubpages}}

diff --git a/files/pl/mozilla/tech/xpcom/language_bindings/index.html b/files/pl/mozilla/tech/xpcom/language_bindings/index.html new file mode 100644 index 0000000000..e115bb0515 --- /dev/null +++ b/files/pl/mozilla/tech/xpcom/language_bindings/index.html @@ -0,0 +1,25 @@ +--- +title: Language bindings +slug: Mozilla/Tech/XPCOM/Language_Bindings +tags: + - Embedding + - Landing + - Mozilla + - NeedsTranslation + - TopicStub + - XPCOM + - 'XPCOM:Language Bindings' +translation_of: Mozilla/Tech/XPCOM/Language_Bindings +--- +

An XPCOM Language Binding is a bridge between a particular language and XPCOM to provide access to XPCOM objects from that language, and to let modules written in that language be used as XPCOM objects by all other languages for which there are XPCOM bindings.

+

More specifically, an XPCOM language binding:

+ +

Since the XPCOM layer itself is written in C/C++, its API can be accessed out-of-the-box using C or C++. In order to allow any other language to use the XPCOM API, a bridging layer is required.

+

The following bridging layers are currently available:

+

+ + +

diff --git a/files/pl/mozilla/tech/xpcom/reference/index.html b/files/pl/mozilla/tech/xpcom/reference/index.html new file mode 100644 index 0000000000..191cbc144e --- /dev/null +++ b/files/pl/mozilla/tech/xpcom/reference/index.html @@ -0,0 +1,21 @@ +--- +title: XPCOM reference +slug: Mozilla/Tech/XPCOM/Reference +tags: + - Landing + - Mozilla + - NeedsTranslation + - Reference + - TopicStub + - XPCOM +translation_of: Mozilla/Tech/XPCOM/Reference +--- +

This reference describes the interfaces and functions provided by the XPCOM library. In addition, it details the various helper classes and functions, as well as the components, provided by the XPCOM glue library. The contents herein are oriented primarily toward extension developers and people embedding XPCOM in other projects.

+
+

Note: If you're working on a module in the Mozilla codebase that's compiled with the MOZILLA_INTERNAL_API flag set, some of these APIs -- the string functions and classes in particular -- are not the ones you should be using. See the XPCOM internal string guide for documentation of the internal string API used within the Mozilla codebase.

+
+

+
+
XPCOM Interface Reference
This is a reference to the XPCOM interfaces provided by the Mozilla platform.
+

+

Many XPCOM pages return an nsresult. Prior to Gecko 19 (Firefox 19 / Thunderbird 19 / SeaMonkey 2.16), this was an integer that simply returned an error code. It is now a strongly typed enum when XPCOM is built using a C++11 compiler. This causes compile-time errors to occur when improper values are returned as nsresult values, thereby making it easier to catch many bugs.

diff --git a/files/pl/mozilla/tech/xul/action/index.html b/files/pl/mozilla/tech/xul/action/index.html new file mode 100644 index 0000000000..900f59e7c0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/action/index.html @@ -0,0 +1,95 @@ +--- +title: action +slug: Mozilla/Tech/XUL/action +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/action +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Powinien zawierać się wewnątrz elementu rule. Stosowany jest do określenia generowanej treści dla każdego dopasowanego węzła. Wewnątrz action atrybuty są przetwarzane dla referencji zmiennych i zasobów. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/arrowscrollbox/index.html b/files/pl/mozilla/tech/xul/arrowscrollbox/index.html new file mode 100644 index 0000000000..e74f985b9f --- /dev/null +++ b/files/pl/mozilla/tech/xul/arrowscrollbox/index.html @@ -0,0 +1,184 @@ +--- +title: arrowscrollbox +slug: Mozilla/Tech/XUL/arrowscrollbox +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/arrowscrollbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+ +

Pudełko, zawierające strzałki przewijania na swoich końcach, dzięki czemu można przewijać jego zawartość. Użytkownik potrzebuje tylko najechać kursorem myszki nad strzałkę w pudełku. Zwykle stosuje się ten element wraz z dużymi wyskakującymi menu.

+ +

Dodatkowe informacje są dostępne w kursie XUL.

+ +
+
Atrybuty
+
disabled, tabindex
+
+ +
+
Własności
+
disabled, scrollBoxObject, scrollIncrement, tabIndex
+
+ +
+
Metody
+
ensureElementIsVisible, scrollByIndex, scrollByPixels
+
+ +

Przykłady

+ +
grafika:menuscroll1.jpg
+ +
<arrowscrollbox orient="vertical" flex="1">
+  <button label="Red"/>
+  <button label="Blue"/>
+  <button label="Green"/>
+  <button label="Yellow"/>
+  <button label="Orange"/>
+  <button label="Silver"/>
+  <button label="Lavender"/>
+  <button label="Gold"/>
+  <button label="Turquoise"/>
+  <button label="Peach"/>
+  <button label="Maroon"/>
+  <button label="Black"/>
+</arrowscrollbox>
+
+ +

Atrybuty

+ +

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +

+ +

Własności

+ +

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+ +
+
scrollIncrement
+
Typ:integer
+
Własność tylko do odczytu, która chce odebrać liczbę pikseli which scrolling will occur when the arrowscrollbox is clicked.
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+

+ +

Metody

+ +

ensureElementIsVisible( element ) +
Zwraca typ: nie zwraca wartości +
Jeśli określony element nie jest aktualnie widziany przez użytkownika, to wyświetlane pozycje są przewijane, do momentu, aż będzie on widoczny. Jeśli pozycja jest już widoczna, przewijanie nie będzie miało miejsca. +
+


+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +

Podobne

+ +

TBD

diff --git a/files/pl/mozilla/tech/xul/atrybut/accessible/index.html b/files/pl/mozilla/tech/xul/atrybut/accessible/index.html new file mode 100644 index 0000000000..c0e732a5bf --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/accessible/index.html @@ -0,0 +1,17 @@ +--- +title: accessible +slug: Mozilla/Tech/XUL/Atrybut/accessible +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/accessible +--- +
« Dokumentacja XUL
+
accessible +
Typ: nsIAccessible +
Zwraca obiekt dostępności dla elementu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/accesskey/index.html b/files/pl/mozilla/tech/xul/atrybut/accesskey/index.html new file mode 100644 index 0000000000..d799000bc6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/accesskey/index.html @@ -0,0 +1,32 @@ +--- +title: accesskey +slug: Mozilla/Tech/XUL/Atrybut/accesskey +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/accesskey +--- +
« Dokumentacja XUL
+
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
Litera ta będzie zazwyczaj podkreślona pomimo, że to zachowanie będzie poza używaną platformą systemową i poza określonym motywem. Kiedy użytkownik naciśnie ALT (lub podobny klawisz, który się różni w zależności od używanej platformy) wraz z klawiszem dostępu, element stanie się aktywny. Pomimo że wielkość liter nie ma tu znaczenia, jeśli w etykiecie dostępne są małe i wielkie litery, podkreślona zostanie ta, której wielkość zgadza się z wielkością litery z tego atrybutu. +
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/afterselected/index.html b/files/pl/mozilla/tech/xul/atrybut/afterselected/index.html new file mode 100644 index 0000000000..b6af844ba1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/afterselected/index.html @@ -0,0 +1,15 @@ +--- +title: afterselected +slug: Mozilla/Tech/XUL/Atrybut/afterselected +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/afterselected +--- +
« Dokumentacja XUL
+
afterselected +
Typ: boolean +
Jest ustawiony na true, jeśli karta tuż po aktualnie zaznaczonej karcie. Ustawienie to jest automatycznie ustawiane i nie powinno się go ustawiać ręcznie. Początkowo znalazło swoją użyteczność w zastosowaniu motywów, tak, że możemy ręcznie dostosować ustawienia zaznaczonej karty. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/align/index.html b/files/pl/mozilla/tech/xul/atrybut/align/index.html new file mode 100644 index 0000000000..f296579a9f --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/align/index.html @@ -0,0 +1,33 @@ +--- +title: align +slug: Mozilla/Tech/XUL/Atrybut/align +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/align +--- +
« Dokumentacja XUL
+ +
+
align
+
Typ:jedna z wartości poniżej
+
Atrybut align określa jak elementy potomne pudełka są rozmieszczone kiedy rozmiar pudełka jest większy, niż wszystkie rozmiary razem dzieci elementu. Dla pudełek, które posiadają poziomą orientację, to określa jak jego dzieci będą rozmieszczone pionowo. Atrybut pack jest podobny do rozmieszczenia, lecz jest stosowany do określenia pozycji w przeciwnych kierunkach. Możemy także określić wartość rozmieszczenia stosując własność stylu -moz-box-align.
+
+ + + +
+

Zobacz także

+ +

Atrybut pack

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/allownegativeassertions/index.html b/files/pl/mozilla/tech/xul/atrybut/allownegativeassertions/index.html new file mode 100644 index 0000000000..aba6023f7d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/allownegativeassertions/index.html @@ -0,0 +1,18 @@ +--- +title: allownegativeassertions +slug: Mozilla/Tech/XUL/Atrybut/allownegativeassertions +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/allownegativeassertions +--- +
« Dokumentacja XUL
+
allownegativeassertions +
Typ: boolean +
Jakikolwiek poprawny element, który posiada atrybut źródła danych. Kiedy wiele źródeł danych jest użytych, jedno może przesłaniać twierdzenie drugiego. Ten atrybut, jeśli jest prawdą, która jest domyślnym ustawieniem, pozwala danym źródłowym na negację wcześniejszego twierdzenia. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/alternatingbackground/index.html b/files/pl/mozilla/tech/xul/atrybut/alternatingbackground/index.html new file mode 100644 index 0000000000..372dd04e0c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/alternatingbackground/index.html @@ -0,0 +1,17 @@ +--- +title: alternatingbackground +slug: Mozilla/Tech/XUL/Atrybut/alternatingbackground +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/alternatingbackground +--- +
« Dokumentacja XUL
+
alternatingbackground +
Typ: boolean +
Jeśli true, tło wierszy w drzewach (tree) będzie się zmieniać pomiędzy dwoma kolorami. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/alwaysopenpopup/index.html b/files/pl/mozilla/tech/xul/atrybut/alwaysopenpopup/index.html new file mode 100644 index 0000000000..e647c0f33d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/alwaysopenpopup/index.html @@ -0,0 +1,17 @@ +--- +title: alwaysopenpopup +slug: Mozilla/Tech/XUL/Atrybut/alwaysopenpopup +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/alwaysopenpopup +--- +
« Dokumentacja XUL
+
alwaysopenpopup +
Typ: boolean +
Jeśli true, auto kompletowanie wyskakującego okienka zostanie wyświetlone zdarzenie, kiedy tam nie będzie dopasowany. Jeśli false, domyślna wartością będzie ukrycie okienka wyskakujące. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/attribute/index.html b/files/pl/mozilla/tech/xul/atrybut/attribute/index.html new file mode 100644 index 0000000000..a828f9abe6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/attribute/index.html @@ -0,0 +1,17 @@ +--- +title: attribute +slug: Mozilla/Tech/XUL/Atrybut/attribute +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/attribute +--- +
« Dokumentacja XUL
+
attribute +
Typ: nazwa atrybutu +
Atrybut, który obserwuje obserwator. Kiedy wartość atrybutu zmieni się, zdarzenie rozgłaszacza jest wywoływane w obserwatorze. Zastosujemy wartość * do obserwacji wszystkich atrybutów rozgłaszaczy. Atrybuty id, ref i persist nie są obserwowane. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autocheck/index.html b/files/pl/mozilla/tech/xul/atrybut/autocheck/index.html new file mode 100644 index 0000000000..4bcf15e42c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autocheck/index.html @@ -0,0 +1,17 @@ +--- +title: autoCheck +slug: Mozilla/Tech/XUL/Atrybut/autoCheck +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autoCheck +--- +
« Dokumentacja XUL
+
autoCheck +
Typ: boolean +
Gdy atrybut ten ma wartość true lub nie jest ustawiony, stan zaznaczenia przycisku będzie przełączany przy każdym jego naciśnięciu. Gdy wartość została ustawiona na false, stan zaznaczenia musi być dopasowany ręcznie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autocompleteenabled/index.html b/files/pl/mozilla/tech/xul/atrybut/autocompleteenabled/index.html new file mode 100644 index 0000000000..1f89a03032 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autocompleteenabled/index.html @@ -0,0 +1,18 @@ +--- +title: autocompleteenabled +slug: Mozilla/Tech/XUL/Atrybut/autocompleteenabled +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autocompleteenabled +--- +
« Dokumentacja XUL
+
autocompleteenabled +
Tylko Firefox +
Typ: boolean +
Wartość true włącza automatyczne uzupełnianie pól tekstowych. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autocompletepopup/index.html b/files/pl/mozilla/tech/xul/atrybut/autocompletepopup/index.html new file mode 100644 index 0000000000..7d0b968a49 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autocompletepopup/index.html @@ -0,0 +1,17 @@ +--- +title: autocompletepopup +slug: Mozilla/Tech/XUL/Atrybut/autocompletepopup +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autocompletepopup +--- +
« Dokumentacja XUL
+
autocompletepopup +
Typ: id elementu wyskakującego (popup) +
id elementu popup wykorzystywanego do przechowywania wyników automatycznego uzupełniania dla tego elementu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autocompletesearch/index.html b/files/pl/mozilla/tech/xul/atrybut/autocompletesearch/index.html new file mode 100644 index 0000000000..25ff04b2c2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autocompletesearch/index.html @@ -0,0 +1,20 @@ +--- +title: autocompletesearch +slug: Mozilla/Tech/XUL/Atrybut/autocompletesearch +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autocompletesearch +--- +
« Dokumentacja XUL
+
autocompletesearch +
Typ: lista wartości oddzielonych spacją +
Lista szukanych nazw komponentów oddzielona spacją, który każdy implementuje interfejs nsIAutoCompleteSearch. Komponenty są tworzone za pomocą nazwy @mozilla.org/autocomplete/search;1?name=, gdzie: name jest listą w tym atrybucie. +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autocompletesearchparam/index.html b/files/pl/mozilla/tech/xul/atrybut/autocompletesearchparam/index.html new file mode 100644 index 0000000000..2df918036b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autocompletesearchparam/index.html @@ -0,0 +1,18 @@ +--- +title: autocompletesearchparam +slug: Mozilla/Tech/XUL/Atrybut/autocompletesearchparam +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autocompletesearchparam +--- +
« Dokumentacja XUL
+ +
+
+ autocompletesearchparam Nowość w Thunderbird 2 Requires SeaMonkey 1.1
+
+ Typ: string
+
+ Łańcuch znaków, który jest komponentem poszukiwania.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autofill/index.html b/files/pl/mozilla/tech/xul/atrybut/autofill/index.html new file mode 100644 index 0000000000..82f122ec22 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autofill/index.html @@ -0,0 +1,18 @@ +--- +title: autoFill +slug: Mozilla/Tech/XUL/Atrybut/autofill +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autofill +--- +
+ « Dokumentacja XUL
+
+
+ autofill Nowość w Thunderbird 3 Requires SeaMonkey 2.0
+
+ Typ: boolean
+
+ Jeśli ustawiony jest na true, najlepsze dopasowanie będzie wybierane w polu tekstowym jako typ użytkownika. Jeśli false, domyślna wartość nie będzie wybrana do momentu aż użytkownik nie zaznaczy pozycji.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autofillaftermatch/index.html b/files/pl/mozilla/tech/xul/atrybut/autofillaftermatch/index.html new file mode 100644 index 0000000000..eab54918f3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autofillaftermatch/index.html @@ -0,0 +1,17 @@ +--- +title: autoFillAfterMatch +slug: Mozilla/Tech/XUL/Atrybut/autoFillAfterMatch +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autoFillAfterMatch +--- +
« Dokumentacja XUL
+
autoFillAfterMatch +
Typ: boolean +
Jeśli zwracana jest wartość true cały tekst najlepszego trafienia zostanie wyświetlony na końcu wejścia. Jeśli wartość false tylko wartość, która nie została wyświetlona zostanie wpisana. Atrybut autoFill musi zostać ustawiony na wartość true, by móc korzystać z powyższej własności. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/autoscroll/index.html b/files/pl/mozilla/tech/xul/atrybut/autoscroll/index.html new file mode 100644 index 0000000000..04d0e59207 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/autoscroll/index.html @@ -0,0 +1,18 @@ +--- +title: autoscroll +slug: Mozilla/Tech/XUL/Atrybut/autoscroll +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/autoscroll +--- +
« Dokumentacja XUL
+
autoscroll +
Tylko Firefox +
Typ: boolean +
Wartość false wyłącza automatyczne przewijanie dla danej przeglądarki. Jeśli atrybut jest ustawiony na true lub zostanie pominięty, automatyczne przewijanie zostanie włączone lub będzie zależne od wartości opcji general.autoScroll. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/beforeselected/index.html b/files/pl/mozilla/tech/xul/atrybut/beforeselected/index.html new file mode 100644 index 0000000000..ea847f78d8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/beforeselected/index.html @@ -0,0 +1,17 @@ +--- +title: beforeselected +slug: Mozilla/Tech/XUL/Atrybut/beforeselected +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/beforeselected +--- +
« Dokumentacja XUL
+
beforeselected +
Typ: boolean +
Jest ustawiony na true, jeśli karta tuż przed aktualnie zaznaczoną kartą. Ustawienie to jest automatycznie ustawiane i nie powinno się go ustawiać ręcznie. Początkowo znalazło swoją użyteczność w zastosowaniu motywów, tak, że możemy ręcznie dostosować ustawienia zaznaczonej karty. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/browser.type/index.html b/files/pl/mozilla/tech/xul/atrybut/browser.type/index.html new file mode 100644 index 0000000000..a1476b17de --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/browser.type/index.html @@ -0,0 +1,22 @@ +--- +title: browser.type +slug: Mozilla/Tech/XUL/Atrybut/browser.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/browser.type +--- +
« Dokumentacja XUL
+
type +
Typ: jedna z wartości poniżej +
Typ przeglądarki, który może zostać użyty do ustawienia dostępu do dokumentu wczytywanego wewnątrz przeglądarki. Jeśli nie jest ustawiony, wczytywany dokument posiada taki sam dostęp jak okno zawierające <browser>. +
+ +

Zobacz także

+

Dodatkowe informacje znaleźć można kursie XUL i iframe +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/button.type/index.html b/files/pl/mozilla/tech/xul/atrybut/button.type/index.html new file mode 100644 index 0000000000..74c0927587 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/button.type/index.html @@ -0,0 +1,20 @@ +--- +title: button.type +slug: Mozilla/Tech/XUL/Atrybut/button.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/button.type +--- +
« Dokumentacja XUL
+
type +
Typ: jedna z wartości poniżej +
Typ przycisku. Jeśli atrybut nie jest dołączony, zostanie utworzony normalny przycisk.
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyaccept/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyaccept/index.html new file mode 100644 index 0000000000..8861772796 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyaccept/index.html @@ -0,0 +1,17 @@ +--- +title: buttonaccesskeyaccept +slug: Mozilla/Tech/XUL/Atrybut/buttonaccesskeyaccept +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonaccesskeyaccept +--- +
« Dokumentacja XUL
+
buttonaccesskeyaccept +
Typ: string +
Klawisz dostępu dla przycisku 'Akceptuj'. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeycancel/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeycancel/index.html new file mode 100644 index 0000000000..1c44459b4d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeycancel/index.html @@ -0,0 +1,17 @@ +--- +title: buttonaccesskeycancel +slug: Mozilla/Tech/XUL/Atrybut/buttonaccesskeycancel +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonaccesskeycancel +--- +
« Dokumentacja XUL
+
buttonaccesskeycancel +
Typ: string +
Klawisz dostępu dla przycisku <tt>Anuluj</tt>. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeydisclosure/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeydisclosure/index.html new file mode 100644 index 0000000000..f59ff4ed58 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeydisclosure/index.html @@ -0,0 +1,17 @@ +--- +title: buttonaccesskeydisclosure +slug: Mozilla/Tech/XUL/Atrybut/buttonaccesskeydisclosure +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonaccesskeydisclosure +--- +
« Dokumentacja XUL
+
buttonaccesskeydisclosure +
Typ: string +
Klawisz dostępu dla przycisku typu "disclosure" (zwykle "Szczegóły" - przyp. tłum.). +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra1/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra1/index.html new file mode 100644 index 0000000000..ca57551eb2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra1/index.html @@ -0,0 +1,17 @@ +--- +title: buttonaccesskeyextra1 +slug: Mozilla/Tech/XUL/Atrybut/buttonaccesskeyextra1 +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonaccesskeyextra1 +--- +
« Dokumentacja XUL
+
buttonaccesskeyextra1 +
Typ: string +
Klawisz dostępu dla pierwszego przycisku. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra2/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra2/index.html new file mode 100644 index 0000000000..13355ee2ec --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyextra2/index.html @@ -0,0 +1,17 @@ +--- +title: buttonaccesskeyextra2 +slug: Mozilla/Tech/XUL/Atrybut/buttonaccesskeyextra2 +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonaccesskeyextra2 +--- +
« Dokumentacja XUL
+
buttonaccesskeyextra2 +
Typ: string +
Klawisz dostępu dla drugiego dodatkowego przycisku. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyhelp/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyhelp/index.html new file mode 100644 index 0000000000..b4196d772c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonaccesskeyhelp/index.html @@ -0,0 +1,17 @@ +--- +title: buttonaccesskeyhelp +slug: Mozilla/Tech/XUL/Atrybut/buttonaccesskeyhelp +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonaccesskeyhelp +--- +
« Dokumentacja XUL
+
buttonaccesskeyhelp +
Typ: string +
Klawisz dostępu dla przycisku "Pomoc". +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonalign/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonalign/index.html new file mode 100644 index 0000000000..46002758f7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonalign/index.html @@ -0,0 +1,17 @@ +--- +title: buttonalign +slug: Mozilla/Tech/XUL/Atrybut/buttonalign +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonalign +--- +
« Dokumentacja XUL
+
buttonalign +
Typ: string +
Wartość atrybutu align dla pudełka zawierającego przyciski. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttondir/index.html b/files/pl/mozilla/tech/xul/atrybut/buttondir/index.html new file mode 100644 index 0000000000..d51e134dc3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttondir/index.html @@ -0,0 +1,17 @@ +--- +title: buttondir +slug: Mozilla/Tech/XUL/Atrybut/buttondir +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttondir +--- +
« Dokumentacja XUL
+
buttondir +
Typ: string +
Wartość atrybutu dir dla pudełka zawierającego przyciski. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttondisabledaccept/index.html b/files/pl/mozilla/tech/xul/atrybut/buttondisabledaccept/index.html new file mode 100644 index 0000000000..c340a0416d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttondisabledaccept/index.html @@ -0,0 +1,15 @@ +--- +title: buttondisabledaccept +slug: Mozilla/Tech/XUL/Atrybut/buttondisabledaccept +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttondisabledaccept +--- +
« Dokumentacja XUL
+
buttondisabledaccept +
Typ: boolean +
Jeśli true, przycisk akceptacji jest początkowo wyłączony. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonlabelaccept/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonlabelaccept/index.html new file mode 100644 index 0000000000..cb4c9d5034 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonlabelaccept/index.html @@ -0,0 +1,17 @@ +--- +title: buttonlabelaccept +slug: Mozilla/Tech/XUL/Atrybut/buttonlabelaccept +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonlabelaccept +--- +
« Dokumentacja XUL
+
buttonlabelaccept +
Typ: string +
Etykieta do wyświetlenia na przycisku "Akceptuj". +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonlabelcancel/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonlabelcancel/index.html new file mode 100644 index 0000000000..590c624d5e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonlabelcancel/index.html @@ -0,0 +1,21 @@ +--- +title: buttonlabelcancel +slug: Mozilla/Tech/XUL/Atrybut/buttonlabelcancel +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonlabelcancel +--- +
+ « Dokumentacja XUL
+
+
+ buttonlabelcancel
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na przycisku "Anuluj".
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonlabeldisclosure/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonlabeldisclosure/index.html new file mode 100644 index 0000000000..9af170621e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonlabeldisclosure/index.html @@ -0,0 +1,21 @@ +--- +title: buttonlabeldisclosure +slug: Mozilla/Tech/XUL/Atrybut/buttonlabeldisclosure +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonlabeldisclosure +--- +
+ « Dokumentacja XUL
+
+
+ buttonlabeldisclosure
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na przycisku "disclosure".
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonlabelextra1/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonlabelextra1/index.html new file mode 100644 index 0000000000..f942417b39 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonlabelextra1/index.html @@ -0,0 +1,17 @@ +--- +title: buttonlabelextra1 +slug: Mozilla/Tech/XUL/Atrybut/buttonlabelextra1 +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonlabelextra1 +--- +
« Dokumentacja XUL
+
buttonlabelextra1 +
Typ: string +
Etykieta do wyświetlenia na pierwszym dodatkowym przycisku. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonlabelextra2/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonlabelextra2/index.html new file mode 100644 index 0000000000..863b0b9df3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonlabelextra2/index.html @@ -0,0 +1,21 @@ +--- +title: buttonlabelextra2 +slug: Mozilla/Tech/XUL/Atrybut/buttonlabelextra2 +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonlabelextra2 +--- +
+ « Dokumentacja XUL
+
+
+ buttonlabelextra2
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na drugim dodatkowym przycisku.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonlabelhelp/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonlabelhelp/index.html new file mode 100644 index 0000000000..9352ee6b76 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonlabelhelp/index.html @@ -0,0 +1,21 @@ +--- +title: buttonlabelhelp +slug: Mozilla/Tech/XUL/Atrybut/buttonlabelhelp +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonlabelhelp +--- +
+ « Dokumentacja XUL
+
+
+ buttonlabelhelp
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na przycisku "Pomoc".
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonorient/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonorient/index.html new file mode 100644 index 0000000000..24a2641b7f --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonorient/index.html @@ -0,0 +1,17 @@ +--- +title: buttonorient +slug: Mozilla/Tech/XUL/Atrybut/buttonorient +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonorient +--- +
« Dokumentacja XUL
+
buttonorient +
Typ: string +
Wartość atrybutu orient dla pudełka zawierającego przyciski. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttonpack/index.html b/files/pl/mozilla/tech/xul/atrybut/buttonpack/index.html new file mode 100644 index 0000000000..8416118b5d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttonpack/index.html @@ -0,0 +1,17 @@ +--- +title: buttonpack +slug: Mozilla/Tech/XUL/Atrybut/buttonpack +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttonpack +--- +
« Dokumentacja XUL
+
buttonpack +
Typ: string +
Wartość atrybutu pack dla pudełka zawierającego przyciski. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/buttons/index.html b/files/pl/mozilla/tech/xul/atrybut/buttons/index.html new file mode 100644 index 0000000000..beb29a9f70 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/buttons/index.html @@ -0,0 +1,21 @@ +--- +title: buttons +slug: Mozilla/Tech/XUL/Atrybut/buttons +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/buttons +--- +
« Dokumentacja XUL
+
buttons +
Typ: rozdzielona przecinkami lista poniższych wartości +
Rozdzielona przecinkami lista przycisków do wyświetlenia w okienku dialogowym. Przyciski zostaną umieszczone w odpowiednim miejscu w zależności od platformy systemowej użytkownika, a podstawowa obsługa zdarzeń zostanie wykonana automatycznie. Następujące wartości mogą zostać użyte w tej liście: +
+ +
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/checked/index.html b/files/pl/mozilla/tech/xul/atrybut/checked/index.html new file mode 100644 index 0000000000..383fbd8d13 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/checked/index.html @@ -0,0 +1,17 @@ +--- +title: checked +slug: Mozilla/Tech/XUL/Atrybut/checked +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/checked +--- +
« Dokumentacja XUL
+
checked +
Typ: boolean +
Określa, czy przycisk jest zaznaczony. Konieczne jest ustawienie atrybutu type na checkbox lub radio, aby zmiana atrybutu checked mogła odnosić jakiekolwiek skutki. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/checkstate/index.html b/files/pl/mozilla/tech/xul/atrybut/checkstate/index.html new file mode 100644 index 0000000000..62eb4ec398 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/checkstate/index.html @@ -0,0 +1,17 @@ +--- +title: checkState +slug: Mozilla/Tech/XUL/Atrybut/checkState +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/checkState +--- +
« Dokumentacja XUL
+
checkState +
Typ: integer, wartość 0, 1 lub 2 +
Ten atrybut może być użyty do utworzenia przycisków trójstanowych, ponumerowanych 0, 1 i 2. W stanie 0 lub 1 naciśnięcie przycisku spowoduje przełączenie go do stanu przeciwnego. To znaczy, że przycisk działa podobnie jak pole wyboru, z wyjątkiem tym, że jest tu także stan trzeci, który musi być ustawiony ręcznie poprzez dostosowanie stanu zaznaczenia. Jeśli chcemy dostosować różne zachowania stanu przycisku, musimy ustawić atrybut autoCheck na false i dostosować stany przycisku za pomocą skryptu. Atrybut type musi być ustawiony na checkbox dla przycisków ze stanem zaznaczenia. Stałe dla dostępnych wartości dla tego atrybutu znajdują się w interfejsie nsIDOMXULButtonElement. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/class/index.html b/files/pl/mozilla/tech/xul/atrybut/class/index.html new file mode 100644 index 0000000000..4c1fe73029 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/class/index.html @@ -0,0 +1,17 @@ +--- +title: class +slug: Mozilla/Tech/XUL/Atrybut/class +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/class +--- +
« Dokumentacja XUL
+
class +
Typ: string +
Definiuje klasę stylu dla elementu. Wiele klas może być określanych przez oddzielenie ich spacją. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/closebutton/index.html b/files/pl/mozilla/tech/xul/atrybut/closebutton/index.html new file mode 100644 index 0000000000..b6aafc5e7b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/closebutton/index.html @@ -0,0 +1,17 @@ +--- +title: closebutton +slug: Mozilla/Tech/XUL/Atrybut/closebutton +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/closebutton +--- +
« Dokumentacja XUL
+
closebutton +
Typ: boolean +
Jeśli ten atrybut jest ustawiony na true, to wiersz tabs będzie miał przycisk "Nowa karta" i przycisk "Zamknij" na swoim końcu. Ta cecha jest stosowana przez element tabbrowser, aby dostarczyć ułatwienie dla dodania lub zamykania kart. Możemy jej ustawić (przypisać) obrazek do 'Nowej karty' i przycisku 'Zamknij' poprzez zaimplementowanie ich do poszczególnych klas tabs-newbutton i tabs-closebutton. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/coalesceduplicatearcs/index.html b/files/pl/mozilla/tech/xul/atrybut/coalesceduplicatearcs/index.html new file mode 100644 index 0000000000..fe34beb905 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/coalesceduplicatearcs/index.html @@ -0,0 +1,18 @@ +--- +title: coalesceduplicatearcs +slug: Mozilla/Tech/XUL/Atrybut/coalesceduplicatearcs +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/coalesceduplicatearcs +--- +
« Dokumentacja XUL
+
coalesceduplicatearcs +
Typ: boolean +
Jakikolwiek poprawny element, który posiada atrybut źródła danych. Kiedy wiele źródeł danych jest użytych, jedno może przesłaniać twierdzenie drugiego. Ten atrybut, jeśli jest prawdą, która jest domyślnym ustawieniem, pozwala danym źródłowym na negację wcześniejszego twierdzenia. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/collapse/index.html b/files/pl/mozilla/tech/xul/atrybut/collapse/index.html new file mode 100644 index 0000000000..66398a037c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/collapse/index.html @@ -0,0 +1,27 @@ +--- +title: collapse +slug: Mozilla/Tech/XUL/Atrybut/collapse +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/collapse +--- +
+ « Dokumentacja XUL
+
+
+ collapse
+
+ Typ: + + jedna z wartości poniżej +
+
+ Określa, która strona rozdzielacza splitter jest zawinięta, kiedy jest kliknięty jego grippy. Jeśli ten atrybut nie jest określony, rozdzielacz nie będzie przypadkiem zawinięty. Powinieneś dodać element grippy wewnątrz rozdzielacza, kiedy chcesz użyć go do zawinięcia.
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/collapsed/index.html b/files/pl/mozilla/tech/xul/atrybut/collapsed/index.html new file mode 100644 index 0000000000..871015a595 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/collapsed/index.html @@ -0,0 +1,21 @@ +--- +title: collapsed +slug: Mozilla/Tech/XUL/Atrybut/collapsed +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/collapsed +--- +
+ « Dokumentacja XUL
+
+
+ collapsed
+
+ Typ: + + boolean +
+
+ Jeśli true, to element jest zawinięty i nie będzie wyświetlony. Jest równoważny do ustawienia widoczności własności CSS 'collapse'.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/color/index.html b/files/pl/mozilla/tech/xul/atrybut/color/index.html new file mode 100644 index 0000000000..31c3ea334b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/color/index.html @@ -0,0 +1,21 @@ +--- +title: color +slug: Mozilla/Tech/XUL/Atrybut/color +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/color +--- +
+ « Dokumentacja XUL
+
+
+ color
+
+ Typ: + + kolor jako łańcuch znaków +
+
+ Aktualnie wybrany kolor. Ulega modyfikacji kiedy użytkownik zaznaczy inną wartość koloru. Łańcuch znaków koloru przydzielamy w formie #RRGGBB do tej własności, aby zmienić wybrany kolor.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/colorpicker.type/index.html b/files/pl/mozilla/tech/xul/atrybut/colorpicker.type/index.html new file mode 100644 index 0000000000..498e9c8096 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/colorpicker.type/index.html @@ -0,0 +1,16 @@ +--- +title: colorpicker.type +slug: Mozilla/Tech/XUL/Atrybut/colorpicker.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/colorpicker.type +--- +
« Dokumentacja XUL
+
type +
Typ: string +
Jeśli ten atrybut nie jest prezentowany, to colorpicker jest wyświetlony wewnątrz okna. Jeśli jest ustawiony w tekście przycisku (button), to colorpicker jest wyświetlony jako przycisk. Kiedy użytkownik naciśnie przycisk, pojawi się okienko popup, z którego użytkownik może wybrać kolor.
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/cols/index.html b/files/pl/mozilla/tech/xul/atrybut/cols/index.html new file mode 100644 index 0000000000..a8f563f2a4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/cols/index.html @@ -0,0 +1,21 @@ +--- +title: cols +slug: Mozilla/Tech/XUL/Atrybut/cols +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/cols +--- +
+ « Dokumentacja XUL
+
+
+ cols
+
+ Typ: + + integer +
+
+ Liczba kolumn w polu tekstowym.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/command/index.html b/files/pl/mozilla/tech/xul/atrybut/command/index.html new file mode 100644 index 0000000000..7520ebdf03 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/command/index.html @@ -0,0 +1,23 @@ +--- +title: command +slug: Mozilla/Tech/XUL/Atrybut/command +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/command +--- +
« Dokumentacja XUL
+
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+
+

Przykład

+
<command id="cmd_openhelp" oncommand="alert('Help');"/>
+<button label="Help" command="cmd_openhelp"/>
+<button label="More Help" command="cmd_openhelp"/>
+
+

Zobacz także

+

Element command, commandset i atrybut oncommand. +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/container/index.html b/files/pl/mozilla/tech/xul/atrybut/container/index.html new file mode 100644 index 0000000000..26283888df --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/container/index.html @@ -0,0 +1,21 @@ +--- +title: container +slug: Mozilla/Tech/XUL/Atrybut/container +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/container +--- +
+ « Dokumentacja XUL
+
+
+ container
+
+ Typ: + + boolean +
+
+ Ustaw na true, jeśli element spełnia funkcję jako kontener, który posiada elementy potomne. Będzie ustawiony jako potrzebny w kreatorze szablonów.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/containment/index.html b/files/pl/mozilla/tech/xul/atrybut/containment/index.html new file mode 100644 index 0000000000..2af4cdbf2d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/containment/index.html @@ -0,0 +1,25 @@ +--- +title: containment +slug: Mozilla/Tech/XUL/Atrybut/containment +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/containment +--- +
+ « Dokumentacja XUL
+
+
+ containment
+
+ Typ: + + URI predykatu RDF +
+
+ Ten atrybut określa własności RDF, które sygnalizują, że źródło jest kontenerem. Kiedy generujemy zawartość z szablonu to jest stosowany do określenia, które zasoby z bazy danych są kontenerami i w ten sposób posiada węzły potomne i które nie są kontenerami.
+
+
+
+ Ten atrybut powinien zostać umieszczony w tym samym elemencie, w którym są źródła danych i atrybuty ref. Może być ustawiona jedna spacja przerwy w liście własności RDF lub źródeł.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/contentcontextmenu/index.html b/files/pl/mozilla/tech/xul/atrybut/contentcontextmenu/index.html new file mode 100644 index 0000000000..22c6f6b939 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/contentcontextmenu/index.html @@ -0,0 +1,21 @@ +--- +title: contentcontextmenu +slug: Mozilla/Tech/XUL/Atrybut/contentcontextmenu +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/contentcontextmenu +--- +
+ « Dokumentacja XUL
+
+
+ contentcontextmenu
+
+ Typ: + + id elementu menupopup +
+
+ Odniesienie do menu kontekstowego dla obszaru kontekstowego w tabbrowser.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/contenttooltip/index.html b/files/pl/mozilla/tech/xul/atrybut/contenttooltip/index.html new file mode 100644 index 0000000000..629f47c464 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/contenttooltip/index.html @@ -0,0 +1,21 @@ +--- +title: contenttooltip +slug: Mozilla/Tech/XUL/Atrybut/contenttooltip +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/contenttooltip +--- +
+ « Dokumentacja XUL
+
+
+ contenttooltip
+
+ Typ: + + id elementu tooltip +
+
+ Odniesienie do elementu tooltip będącego w użyciu dla obszaru kontekstowego w tabbrowser.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/contextmenu/index.html b/files/pl/mozilla/tech/xul/atrybut/contextmenu/index.html new file mode 100644 index 0000000000..c81519190a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/contextmenu/index.html @@ -0,0 +1,18 @@ +--- +title: contextmenu +slug: Mozilla/Tech/XUL/Atrybut/contextmenu +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/contextmenu +--- +
« Dokumentacja XUL
+
contextmenu +
Typ: id elementu popup +
Alternatywna nazwa dla atrybutu context, jednakże odpowiada również własności skryptu 'contextmenu'. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/control/index.html b/files/pl/mozilla/tech/xul/atrybut/control/index.html new file mode 100644 index 0000000000..6e3be23342 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/control/index.html @@ -0,0 +1,15 @@ +--- +title: control +slug: Mozilla/Tech/XUL/Atrybut/control +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/control +--- +
« Dokumentacja XUL
+
control +
Typ: id elementu +
Ten atrybut określa id elementu, z którym powiązana jest etykieta. Kiedy użytkownik na nią kliknie, połączony element staje się aktywny (focus). +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/crop/index.html b/files/pl/mozilla/tech/xul/atrybut/crop/index.html new file mode 100644 index 0000000000..0540b42d36 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/crop/index.html @@ -0,0 +1,26 @@ +--- +title: crop +slug: Mozilla/Tech/XUL/Atrybut/crop +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/crop +--- +
« Dokumentacja XUL
+
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/curpos/index.html b/files/pl/mozilla/tech/xul/atrybut/curpos/index.html new file mode 100644 index 0000000000..f66c5ebff1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/curpos/index.html @@ -0,0 +1,17 @@ +--- +title: curpos +slug: Mozilla/Tech/XUL/Atrybut/curpos +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/curpos +--- +
« Dokumentacja XUL
+
curpos +
Typ: integer +
Aktualna pozycja paska przewijania (scrollbar), która posiada zakres od 0 do wartości atrybutu maxpos. Domyślną wartością jest 0. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/current/index.html b/files/pl/mozilla/tech/xul/atrybut/current/index.html new file mode 100644 index 0000000000..a0667f5255 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/current/index.html @@ -0,0 +1,16 @@ +--- +title: current +slug: Mozilla/Tech/XUL/Atrybut/current +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/current +--- +
« Dokumentacja XUL
+ +
+
current
+
Typ:boolean
+
Ten atrybut będzie ustawiony na true, jeśli listitem jest aktualną pozycją. Jest typowo używany przez motyw do customize the focus ring. Aby zaznaczyć aktualną pozycję w listbox, listbox używa do tego własności selectedItem.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/currentset/index.html b/files/pl/mozilla/tech/xul/atrybut/currentset/index.html new file mode 100644 index 0000000000..132b66c27f --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/currentset/index.html @@ -0,0 +1,23 @@ +--- +title: currentset +slug: Mozilla/Tech/XUL/Atrybut/currentset +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/currentset +--- +
+ « Dokumentacja XUL
+
+
+ currentset
+
+ Tylko Firefox
+
+ Typ: + + łańcuch znaków oddzielony przecinkiem +
+
+ Aktualne ustawienia wyświetlanych pozycji na toolbar. Będą modyfikowane, gdy użytkownik przystosuje do własnych ustawień pasek narzędzi. Wartość tego atrybutu powinna być listą pozycji ID z toolbarpalette oddzielonych przecinkiem lub dodatkowo w następujący sposób: "separator", "spring", "spacer".
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/customindex/index.html b/files/pl/mozilla/tech/xul/atrybut/customindex/index.html new file mode 100644 index 0000000000..51283d5a85 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/customindex/index.html @@ -0,0 +1,23 @@ +--- +title: customindex +slug: Mozilla/Tech/XUL/Atrybut/customindex +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/customindex +--- +
+ « Dokumentacja XUL
+
+
+ customindex
+
+ Tylko Firefox
+
+ Typ: + + integer +
+
+ Ta wartość jest indeksem paska narzędzi toolbar w dostosowanej liście paska narzędzi. Ta wartość jest aktualizowana automatycznie przez okno dialogowe dostosowujące pasek narzędzi.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/customizable/index.html b/files/pl/mozilla/tech/xul/atrybut/customizable/index.html new file mode 100644 index 0000000000..ecdce29518 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/customizable/index.html @@ -0,0 +1,23 @@ +--- +title: customizable +slug: Mozilla/Tech/XUL/Atrybut/customizable +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/customizable +--- +
+ « Dokumentacja XUL
+
+
+ customizable
+
+ Tylko Firefox
+
+ Typ: + + boolean +
+
+ Ustawia ten atrybut na true w paskach narzędzi (toolbar), które mogą zostać dostosowane. Te ustawienie przycisków powoduje bycie trwałymi podczas sesji.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/datepicker.type/index.html b/files/pl/mozilla/tech/xul/atrybut/datepicker.type/index.html new file mode 100644 index 0000000000..087ab720ee --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/datepicker.type/index.html @@ -0,0 +1,38 @@ +--- +title: datepicker.type +slug: Mozilla/Tech/XUL/Atrybut/datepicker.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/datepicker.type +--- +
« Dokumentacja XUL
+ +
+
type
+
Typ:jedna z wartości poniżej
+
Możemy ustawić typ atrybutu na jeden z poniższych określonych typów elementu datepicker, aby je zastosować:
+
+ + + +
+
+
Typ normalny
+
 
+
Image:Controlsguide-datepicker.png
+
Typ siatki
+
 
+
Image:Controlsguide-datepicker-grid.png
+
Typ wyskakującego okienka
+
 
+
Image:Controlsguide-datepicker-popup.png
+
+
+ +

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/datepicker.value/index.html b/files/pl/mozilla/tech/xul/atrybut/datepicker.value/index.html new file mode 100644 index 0000000000..c545d51f17 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/datepicker.value/index.html @@ -0,0 +1,30 @@ +--- +title: datepicker.value +slug: Mozilla/Tech/XUL/Atrybut/datepicker.value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/datepicker.value +--- +
+ « Dokumentacja XUL
+
+
+ value
+
+ Typ: + + string +
+
+ Łańcuch znaków pozwalający na łączenie sie wartości daty z elementem. Nie jest stosowany dla określonego celu, lecz możemy uzyskać do niego dostęp przy pomocy skryptu, wykorzystując go do własnych celów.
+
+
+

Zobacz także

+ +
+

diff --git a/files/pl/mozilla/tech/xul/atrybut/default/index.html b/files/pl/mozilla/tech/xul/atrybut/default/index.html new file mode 100644 index 0000000000..d846ba07f4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/default/index.html @@ -0,0 +1,17 @@ +--- +title: default +slug: Mozilla/Tech/XUL/Atrybut/default +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/default +--- +
« Dokumentacja XUL
+
default +
Typ: boolean +
Jeśli true, element tooltip jest stosowany jako domyślne wyskakujące okienko do wyświetlenia podpowiedzi w okienku. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/defaultbutton/index.html b/files/pl/mozilla/tech/xul/atrybut/defaultbutton/index.html new file mode 100644 index 0000000000..f5bd202c49 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/defaultbutton/index.html @@ -0,0 +1,17 @@ +--- +title: defaultButton +slug: Mozilla/Tech/XUL/Atrybut/defaultButton +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/defaultButton +--- +
« Dokumentacja XUL
+
defaultButton +
Typ: string +
Zwykle nie powinno się ustawiać tego atrybutu. Określa on domyślny przycisk w oknie dialogowym. Zazwyczaj oznacza to, że przycisk zostanie aktywowany po naciśnięciu klawisza Enter. Atrybutowi temu powinna być przypisana jedna z wartości używanych przez atrybut buttons. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/defaultset/index.html b/files/pl/mozilla/tech/xul/atrybut/defaultset/index.html new file mode 100644 index 0000000000..a853caa29c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/defaultset/index.html @@ -0,0 +1,18 @@ +--- +title: defaultset +slug: Mozilla/Tech/XUL/Atrybut/defaultset +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/defaultset +--- +
« Dokumentacja XUL
+
defaultset +
Tylko Firefox +
Typ: lista pozycji id oddzielona przecinkiem +
Domyślne ustawienie wyświetlanych pozycji na toolbar. To powinno być ustawione na listę pozycji ID oddzieloną przecinkiem pochodzącą z toolbarpalette. Na przykład, back-button,forward-button,print-button. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/description/index.html b/files/pl/mozilla/tech/xul/atrybut/description/index.html new file mode 100644 index 0000000000..fc30c6c121 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/description/index.html @@ -0,0 +1,17 @@ +--- +title: description +slug: Mozilla/Tech/XUL/Atrybut/description +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/description +--- +
« Dokumentacja XUL
+
description +
Typ: string +
Tekst opisowy do wyświetlenia w dodatku do tytułu okienka dialogowego. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/dir/index.html b/files/pl/mozilla/tech/xul/atrybut/dir/index.html new file mode 100644 index 0000000000..d43c6a345e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/dir/index.html @@ -0,0 +1,20 @@ +--- +title: dir +slug: Mozilla/Tech/XUL/Atrybut/dir +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/dir +--- +
« Dokumentacja XUL
+
dir +
Typ: jedna z wartości poniżej +
Kierunek, w którym umieszczane są elementy potomne danego elementu.
+ +
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/disableautocomplete/index.html b/files/pl/mozilla/tech/xul/atrybut/disableautocomplete/index.html new file mode 100644 index 0000000000..8f0a4e0b94 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disableautocomplete/index.html @@ -0,0 +1,17 @@ +--- +title: disableAutocomplete +slug: Mozilla/Tech/XUL/Atrybut/disableAutocomplete +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/disableAutocomplete +--- +
« Dokumentacja XUL
+
disableAutocomplete +
Typ: boolean +
Jeśli true, zachowanie automatyczne zostanie wyłączone. Możesz użyć skryptu do zmiany do zmiany tego atrybutu. Jeśli false, domyślnie, autouzupełnianie jest włączone. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/disableautoselect/index.html b/files/pl/mozilla/tech/xul/atrybut/disableautoselect/index.html new file mode 100644 index 0000000000..375d05ac73 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disableautoselect/index.html @@ -0,0 +1,17 @@ +--- +title: disableautoselect +slug: Mozilla/Tech/XUL/Atrybut/disableautoselect +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/disableautoselect +--- +
« Dokumentacja XUL
+
disableautoselect +
Typ: boolean +
Jeśli ten atrybut jest true lub pominięty, zaznaczona pozycja w menu będzie aktualizowana dopasowując się do tego co użytkownik wprowadzi w polu tekstowym. Jeśli tekst nie dopasuje się do jakiejkolwiek pozycji na liście, to zaznaczenie zostanie wyczyszczone. Jeśli ten atrybut jest false, zaznaczenie nigdy nie zostanie zaktualizowane do dopasowania pola tekstowego. Ten atrybut zastosowany jest tylko do menulist, który jest zdolny do edycji. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/disableclose/index.html b/files/pl/mozilla/tech/xul/atrybut/disableclose/index.html new file mode 100644 index 0000000000..1f90606c5c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disableclose/index.html @@ -0,0 +1,17 @@ +--- +title: disableclose +slug: Mozilla/Tech/XUL/Atrybut/disableclose +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/disableclose +--- +
« Dokumentacja XUL
+
disableclose +
Typ: boolean +
Jeśli ten atrybut jest ustawiony na true, to przycisk zamknięcia będzie wyłączony. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/disabled/index.html b/files/pl/mozilla/tech/xul/atrybut/disabled/index.html new file mode 100644 index 0000000000..ddc17391de --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disabled/index.html @@ -0,0 +1,19 @@ +--- +title: disabled +slug: Mozilla/Tech/XUL/Atrybut/disabled +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/disabled +--- +
« Dokumentacja XUL
+
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
Element nadal jednak będzie odpowiadać na zdarzenia myszy. Aby włączyć dany element, atrybut ten musi być pominięty lub przyjąć wartość false. +
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/disablehistory/index.html b/files/pl/mozilla/tech/xul/atrybut/disablehistory/index.html new file mode 100644 index 0000000000..4d120a5c7b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disablehistory/index.html @@ -0,0 +1,17 @@ +--- +title: disablehistory +slug: Mozilla/Tech/XUL/Atrybut/disablehistory +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/textbox.disablehistory +--- +
« Dokumentacja XUL
+
disablehistory +
Typ: boolean +
Jeśli atrybut ma wartość false, przycisk ze strzałką wyświetli się na końcu pola tekstowego, które otworzy menu rozwijane wszystkich dostępnych wyników. Domyślna wartością jest true, ukrywające przycisk rozwijania. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/disablekeynavigation/index.html b/files/pl/mozilla/tech/xul/atrybut/disablekeynavigation/index.html new file mode 100644 index 0000000000..58f8c07738 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disablekeynavigation/index.html @@ -0,0 +1,17 @@ +--- +title: disablekeynavigation +slug: Mozilla/Tech/XUL/Atrybut/disablekeynavigation +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/disableKeyNavigation +--- +
« Dokumentacja XUL
+
disablekeynavigation +
Typ: boolean +
Jeśli atrybut ten nie jest użyty, użytkownik może przechodzić do określonych pozycji listy poprzez naciśnięcie pierwszej litery etykiety danej pozycji. Odbywa się to przyrostowo, dlatego przyciśnięcie dodatkowych klawiszy spowoduje zaznaczenie lepiej określonych pozycji. Opcja ta może zostać wyłączona poprzez ustawienie wartości atrybutu jako true. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/disablesecurity/index.html b/files/pl/mozilla/tech/xul/atrybut/disablesecurity/index.html new file mode 100644 index 0000000000..c6169b3dd0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/disablesecurity/index.html @@ -0,0 +1,17 @@ +--- +title: disablesecurity +slug: Mozilla/Tech/XUL/Atrybut/disablesecurity +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/disablesecurity +--- +
« Dokumentacja XUL
+
disablesecurity +
Typ: boolean +
Wartość true wyłącza UI bezpieczeństwa dla tej przeglądarki. Pominięcie tego atrybutu włącza je. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/dlgtype/index.html b/files/pl/mozilla/tech/xul/atrybut/dlgtype/index.html new file mode 100644 index 0000000000..3ed49bdbef --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/dlgtype/index.html @@ -0,0 +1,23 @@ +--- +title: dlgType +slug: Mozilla/Tech/XUL/Atrybut/dlgType +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/dlgtype +--- +
« Dokumentacja XUL
+
dlgType +
Typ: jedna z wartości poniżej +
Typ dialogowy używany jest tylko, kiedy przycisk znajduje się w oknie dialogowym. Dzięki temu można zastąpić standardowe przyciski okna dialogowego własnymi przyciskami, z tym że metody obsługi zdarzeń okna dialogowego nadal będą funkcjonować. Przykładowo, jeśli dlgType ma wartość accept, przycisk zastąpi przycisk akceptujący okna dialogowego, zwykle mający etykietę OK. Stosowanie tego atrybutu na przycisku nie znajdującym się w oknie dialogowym nie odniesie żadnego skutku. Poniżej przedstawiono możliwe wartości tego atrybutu: +
+ +


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/dragging/index.html b/files/pl/mozilla/tech/xul/atrybut/dragging/index.html new file mode 100644 index 0000000000..e8a3878b32 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/dragging/index.html @@ -0,0 +1,17 @@ +--- +title: dragging +slug: Mozilla/Tech/XUL/Atrybut/dragging +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/dragging +--- +
« Dokumentacja XUL
+
dragging +
Typ: boolean +
Ten atrybut będzie ustawiony na true, jeśli kolumna będzie przesuwana. Ten atrybut jest ustawiony automatycznie, więc nie powinniśmy go przestawiać ręcznie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/editable/index.html b/files/pl/mozilla/tech/xul/atrybut/editable/index.html new file mode 100644 index 0000000000..90f0cc25ca --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/editable/index.html @@ -0,0 +1,16 @@ +--- +title: editable +slug: Mozilla/Tech/XUL/Atrybut/editable +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/editable +--- +
« Dokumentacja XUL
+ +
+
editable
+
Typ:boolean
+
Sygnalizuje, która wartość menulist może być modyfikowana poprzez wpis bezpośrednio do wartości pola. This is rendered as a textbox with a drop-down arrow beside it. The user may enter text into the textbox or select one of the choices by clicking from the drop-down. If used in a tree, editable allows the content to be changed, especially useful when type="checkbox".
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/editor.type/index.html b/files/pl/mozilla/tech/xul/atrybut/editor.type/index.html new file mode 100644 index 0000000000..9b3c3b1ee2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/editor.type/index.html @@ -0,0 +1,17 @@ +--- +title: editor.type +slug: Mozilla/Tech/XUL/Atrybut/editor.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/editor.type +--- +
« Dokumentacja XUL
+
type +
Typ: string +
Jeśli ustawiony jest na content-primary, to edytor stanie się główną zawartością strony. Okno dla głównej zawartości można wygodniej pobrać przy użyciu window.content. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/editortype/index.html b/files/pl/mozilla/tech/xul/atrybut/editortype/index.html new file mode 100644 index 0000000000..f845426cfa --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/editortype/index.html @@ -0,0 +1,20 @@ +--- +title: editortype +slug: Mozilla/Tech/XUL/Atrybut/editortype +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/editortype +--- +
« Dokumentacja XUL
+
editortype +
Typ: jedna z wartości poniżej +
Typ edytora do zastosowania. Ta wartość będzie przesłonięta w zależności od typu dokumentu załadowanego w edytorze. +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/element/index.html b/files/pl/mozilla/tech/xul/atrybut/element/index.html new file mode 100644 index 0000000000..b1bbb7a821 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/element/index.html @@ -0,0 +1,17 @@ +--- +title: element +slug: Mozilla/Tech/XUL/Atrybut/element +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/element +--- +
« Dokumentacja XUL
+
element +
Typ: id elementu broadcaster +
Atrybut id elementu broadcaster, którego obserwator jest obserwowany. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/empty/index.html b/files/pl/mozilla/tech/xul/atrybut/empty/index.html new file mode 100644 index 0000000000..0dcbc61d73 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/empty/index.html @@ -0,0 +1,18 @@ +--- +title: empty +slug: Mozilla/Tech/XUL/Atrybut/empty +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/empty +--- +
« Dokumentacja XUL
+
empty +
Typ: boolean +
Ustawia true, jeśli element jest kontenerem bez elementu potomnego. Zostanie ustawiony poprzez kreator szablonów jako potrzebny. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/enablecolumndrag/index.html b/files/pl/mozilla/tech/xul/atrybut/enablecolumndrag/index.html new file mode 100644 index 0000000000..648dc864bd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/enablecolumndrag/index.html @@ -0,0 +1,17 @@ +--- +title: enableColumnDrag +slug: Mozilla/Tech/XUL/Atrybut/enableColumnDrag +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/enableColumnDrag +--- +
« Dokumentacja XUL
+
enableColumnDrag +
Typ: boolean +
Kiedy ustawimy na true, użytkownik ma możliwość przesunięcia nagłówków kolumny, aby zmienić kolejność w jakiej są one wyświetlane. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/enablehistory/index.html b/files/pl/mozilla/tech/xul/atrybut/enablehistory/index.html new file mode 100644 index 0000000000..46d7acc439 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/enablehistory/index.html @@ -0,0 +1,17 @@ +--- +title: enablehistory +slug: Mozilla/Tech/XUL/Atrybut/enablehistory +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/enablehistory +--- +
« Dokumentacja XUL
+
enablehistory +
Typ: boolean +
Jeśli jest true, przycisk strzałki pokaże się na końcu pola tekstowego, a w momencie naciśnięcia go otworzy rozwijane menu wszystkich dostępnych rezultatów. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/equalsize/index.html b/files/pl/mozilla/tech/xul/atrybut/equalsize/index.html new file mode 100644 index 0000000000..2dc5bcd1e5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/equalsize/index.html @@ -0,0 +1,20 @@ +--- +title: equalsize +slug: Mozilla/Tech/XUL/Atrybut/equalsize +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/equalsize +--- +
« Dokumentacja XUL
+
equalsize +
Typ: jedna z wartości poniżej +
Ten atrybut potrafi tworzyć dziecko elementu o takim samym rozmiarze.
+ +


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/eventnode/index.html b/files/pl/mozilla/tech/xul/atrybut/eventnode/index.html new file mode 100644 index 0000000000..027e2ec64a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/eventnode/index.html @@ -0,0 +1,20 @@ +--- +title: eventnode +slug: Mozilla/Tech/XUL/Atrybut/eventnode +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/eventnode +--- +
« Dokumentacja XUL
+
eventnode +
Typ: jedna z wartości poniżej +
Sygnalizuje gdzie zdarzenia nawigacji klawiaturą są nasłuchiwane. Jeśli ten atrybut jest nieokreślony, zdarzenia są nasłuchiwane z tabbox. Tak więc, jeśli ten atrybut nie jest stosowany, tabbox lub element wewnątrz niego musi posiadać aktywną nawigację klawiatury do zastosowania. +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/first-tab/index.html b/files/pl/mozilla/tech/xul/atrybut/first-tab/index.html new file mode 100644 index 0000000000..f5ff55951d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/first-tab/index.html @@ -0,0 +1,17 @@ +--- +title: first-tab +slug: Mozilla/Tech/XUL/Atrybut/first-tab +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/first-tab +--- +
« Dokumentacja XUL
+
first-tab +
Typ: boolean +
Ten atrybut będzie ustawiony na true, dla pierwszej karty. Ten atrybut nie powinien być ustawiany ręcznie, lecz wtedy, gdy jest stosowany w motywie, a jeśli jest pierwszą kartą, to powinna mieć ona inny sposób nadania stylu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/firstdayofweek/index.html b/files/pl/mozilla/tech/xul/atrybut/firstdayofweek/index.html new file mode 100644 index 0000000000..05b376669b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/firstdayofweek/index.html @@ -0,0 +1,23 @@ +--- +title: firstdayofweek +slug: Mozilla/Tech/XUL/Atrybut/firstdayofweek +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/firstdayofweek +--- +
+ « Dokumentacja XUL
+
+
+ firstdayofweek
+
+ Typ: + + integer +
+
+ Dzień tygodnia, który jest wyświetlany jako pierwszy dzień w siatce kalendarza. Zakres wartości jest od 0 do 6, gdzie 0 jest niedzielą, a 6 jest sobotą. Domyślna wartość jest określana lokalnie, więc tylko stosujemy ten atrybut, jeśli chcemy to przesłonić.
+
+
+  
diff --git a/files/pl/mozilla/tech/xul/atrybut/firstpage/index.html b/files/pl/mozilla/tech/xul/atrybut/firstpage/index.html new file mode 100644 index 0000000000..dec9f7a394 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/firstpage/index.html @@ -0,0 +1,17 @@ +--- +title: firstpage +slug: Mozilla/Tech/XUL/Atrybut/firstpage +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/firstpage +--- +
« Dokumentacja XUL
+
firstpage +
Typ: boolean +
Ustawiony na true, jeśli wizard jest na pierwszej stronie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/flags/index.html b/files/pl/mozilla/tech/xul/atrybut/flags/index.html new file mode 100644 index 0000000000..3ca55141b7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/flags/index.html @@ -0,0 +1,20 @@ +--- +title: flags +slug: Mozilla/Tech/XUL/Atrybut/flags +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/flags +--- +
« Dokumentacja XUL
+
flags +
Typ: lista wartości znajdujących się poniżej oddzielonych spacją +
Ustawia flagi użyte dla różnych celów. Dwie flagi są definiowane, które mogą być wartościami tego atrybutu.
+ +


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/flex/index.html b/files/pl/mozilla/tech/xul/atrybut/flex/index.html new file mode 100644 index 0000000000..14bc5c3bd0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/flex/index.html @@ -0,0 +1,20 @@ +--- +title: flex +slug: Mozilla/Tech/XUL/Atrybut/flex +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/flex +--- +
« Dokumentacja XUL
+ +
+
flex
+
Typ: string (reprezentujący integer)
+
 
+
+ +
+
Określa elastyczność elementu, co oznacza w jaki sposób kontener dystrybuuje dostępną przestrzeń pomiędzy swoimi potomkami. Elementy elastyczne powiększają się i zmniejszają wypełniając całą dostępną przestrzeń. Elementy posiadające wyższą wartość tego atrybutu powiększają się bardziej niż elementy z niższymi wartościami, proporcjonalnie do podanych wartości. Konkretna wartość nie jest brana pod uwagę jeśli nie ma więcej elementów elastycznych w danym kontenerze.  W chwili gdy domyślny rozmiar elementów w pudełku jest już obliczony, elementom przydzielana jest pozostała wolna przestrzeń w zależności od ich współczynnika elastyczności.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/focused/index.html b/files/pl/mozilla/tech/xul/atrybut/focused/index.html new file mode 100644 index 0000000000..eae826ac59 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/focused/index.html @@ -0,0 +1,17 @@ +--- +title: focused +slug: Mozilla/Tech/XUL/Atrybut/focused +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/focused +--- +
« Dokumentacja XUL
+
focused +
Typ: boolean +
Ten atrybut jest ustawiony na true, jeśli element jest aktywny (focused). +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/grippyhidden/index.html b/files/pl/mozilla/tech/xul/atrybut/grippyhidden/index.html new file mode 100644 index 0000000000..a9395fd91f --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/grippyhidden/index.html @@ -0,0 +1,18 @@ +--- +title: grippyhidden +slug: Mozilla/Tech/XUL/Atrybut/grippyhidden +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/grippyhidden +--- +
« Dokumentacja XUL
+
grippyhidden +
Nie w Firefoksie +
Typ: boolean +
Kiedy ustawiamy na true, grippy będzie ukryty. Kiedy ustawienie będzie na false, domyślnie, grippy będzie wyświetlony. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/grippytooltiptext/index.html b/files/pl/mozilla/tech/xul/atrybut/grippytooltiptext/index.html new file mode 100644 index 0000000000..14fa6b32a0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/grippytooltiptext/index.html @@ -0,0 +1,18 @@ +--- +title: grippytooltiptext +slug: Mozilla/Tech/XUL/Atrybut/grippytooltiptext +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/grippytooltiptext +--- +
« Dokumentacja XUL
+
grippytooltiptext +
Nie w Firefoksie +
Typ: string +
Tekst do wyświetlenia w poradzie dla grippy paska narzędzi (toolbar), w momencie gdy pasek narzędzi jest zwinięty. Zostanie on zastosowany do etykiety grippy, więc użytkownik wie, który pasek narzędzi jest reprezentowany. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/group/index.html b/files/pl/mozilla/tech/xul/atrybut/group/index.html new file mode 100644 index 0000000000..4433fb7c6b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/group/index.html @@ -0,0 +1,21 @@ +--- +title: group +slug: Mozilla/Tech/XUL/Atrybut/group +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/group +--- +
+ « Dokumentacja XUL
+
+
+ group
+
+ Typ: + + nazwa grupy jako łańcuch znaków + <magic name="\"PAGENAME\"/"></magic>
+
+ Przyciski z tą samą wartością atrybutu group należą do tej samej grupy. Tylko jeden przycisk z grupy może być zaznaczony w danej chwili. Jeśli użytkownik zaznaczy jeden z przycisków, inne z tej grupy zostaną odznaczone.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/handlectrlpageupdown/index.html b/files/pl/mozilla/tech/xul/atrybut/handlectrlpageupdown/index.html new file mode 100644 index 0000000000..329cd08e57 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/handlectrlpageupdown/index.html @@ -0,0 +1,17 @@ +--- +title: handleCtrlPageUpDown +slug: Mozilla/Tech/XUL/Atrybut/handleCtrlPageUpDown +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Mozilla/Tech/XUL/Attribute/handleCtrlPageUpDown +--- +
« Dokumentacja XUL
+
handleCtrlPageUpDown +
Typ: boolean +
Jeśli jest ustawione na true lub opuszczone, to klawisze <tt>Control</tt> i <tt>Page Up</tt> lub <tt>Page Down</tt> mogą służyć do przełączania do następnej lub wcześniejszej karty. Jeśli ten atrybut jest ustawiony na false, te klawisze nie będą służyły do nawigacji pomiędzy kartami. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/handlectrltab/index.html b/files/pl/mozilla/tech/xul/atrybut/handlectrltab/index.html new file mode 100644 index 0000000000..dfbfb87526 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/handlectrltab/index.html @@ -0,0 +1,17 @@ +--- +title: handleCtrlTab +slug: Mozilla/Tech/XUL/Atrybut/handleCtrlTab +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/handleCtrlTab +--- +
« Dokumentacja XUL
+
handleCtrlTab +
Typ: boolean +
Jeśli ustawiony na true lub zostanie opuszczony, tabbox będzie przełączany do następnej karty gdy naciśniemy klawisze <tt>Control</tt> i <tt>Tab</tt>. Jeśli klawisz <tt>Shift</tt> jest przytrzymany wciśnięty to zostanie wyświetlona wcześniejsza karta. Jeśli ten atrybut jest ustawiony na false, to te klawisze nie będą przenosiły pomiędzy kartami. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/height/index.html b/files/pl/mozilla/tech/xul/atrybut/height/index.html new file mode 100644 index 0000000000..bef6472bbe --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/height/index.html @@ -0,0 +1,17 @@ +--- +title: height +slug: Mozilla/Tech/XUL/Atrybut/height +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/height +--- +
« Dokumentacja XUL
+
height +
Typ: string (reprezentujący integer) +
Wysokość elementu w pikselach. Zalecane jest stosowanie zamiast wysokości - własność wysokości CSS. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/helpuri/index.html b/files/pl/mozilla/tech/xul/atrybut/helpuri/index.html new file mode 100644 index 0000000000..9991d35b45 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/helpuri/index.html @@ -0,0 +1,18 @@ +--- +title: helpURI +slug: Mozilla/Tech/XUL/Atrybut/helpURI +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/helpURI +--- +
+ « Dokumentacja XUL
+
+
+ helpURI
+
+ Typ: uri
+
+ URI strony pomocy połączona z panelem preferencji. URI będzie otwarty przy zastosowaniu przeglądarki pomocy, kiedy zostanie naciśnięty przycisk pomocy.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/hidden/index.html b/files/pl/mozilla/tech/xul/atrybut/hidden/index.html new file mode 100644 index 0000000000..9fad959abd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/hidden/index.html @@ -0,0 +1,17 @@ +--- +title: hidden +slug: Mozilla/Tech/XUL/Atrybut/hidden +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/hidden +--- +
« Dokumentacja XUL
+
hidden +
Typ: boolean +
Jeśli jest ustawiony na true, element jest nie wyświetlane. Jest to podobne do ustawienia wyświetlania własności CSS na none. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/hidechrome/index.html b/files/pl/mozilla/tech/xul/atrybut/hidechrome/index.html new file mode 100644 index 0000000000..106bc9f031 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/hidechrome/index.html @@ -0,0 +1,17 @@ +--- +title: hidechrome +slug: Mozilla/Tech/XUL/Atrybut/hidechrome +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/hidechrome +--- +
« Dokumentacja XUL
+
hidechrome +
Typ: boolean +
Ustawia ten atrybut na true do posiadanego chrome, włączając ukryty pasek tytułu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/hidecolumnpicker/index.html b/files/pl/mozilla/tech/xul/atrybut/hidecolumnpicker/index.html new file mode 100644 index 0000000000..3a119b0712 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/hidecolumnpicker/index.html @@ -0,0 +1,17 @@ +--- +title: hidecolumnpicker +slug: Mozilla/Tech/XUL/Atrybut/hidecolumnpicker +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/hidecolumnpicker +--- +
« Dokumentacja XUL
+
hidecolumnpicker +
Typ: boolean +
Kiedy ustawiony na false, to dostępne będzie rozwijane menu w prawym górnym rogu drzewa (tree), które użytkownik może zastosować do pokazania lub ukrycia kolumn. Kiedy jest ustawiony na true, to column picker będzie ukryty. Domyślną wartością jest false. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/hideheader/index.html b/files/pl/mozilla/tech/xul/atrybut/hideheader/index.html new file mode 100644 index 0000000000..4f08088283 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/hideheader/index.html @@ -0,0 +1,17 @@ +--- +title: hideheader +slug: Mozilla/Tech/XUL/Atrybut/hideheader +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/hideheader +--- +
« Dokumentacja XUL
+
hideheader +
Typ: boolean +
Ustaw atrybut na true, aby wskazać, który nagłówek kolumny drzewa powinien być wyświetlony bez stylu nagłówka kolumny. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/hideseconds/index.html b/files/pl/mozilla/tech/xul/atrybut/hideseconds/index.html new file mode 100644 index 0000000000..8bcaf39e40 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/hideseconds/index.html @@ -0,0 +1,18 @@ +--- +title: hideseconds +slug: Mozilla/Tech/XUL/Atrybut/hideseconds +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/hideseconds +--- +
+ « Dokumentacja XUL
+
+
+ hideseconds
+
+ Typ: boolean
+
+ Sygnalizuje gdzie pokazać pole sekund.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/homepage/index.html b/files/pl/mozilla/tech/xul/atrybut/homepage/index.html new file mode 100644 index 0000000000..322da75efe --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/homepage/index.html @@ -0,0 +1,17 @@ +--- +title: homepage +slug: Mozilla/Tech/XUL/Atrybut/homepage +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/homepage +--- +
« Dokumentacja XUL
+
homepage +
Typ: adres URL strony startowej +
Atrybut ten pozwala ustawić stronę startową dla elementu browser. Nie ma to żadnego związku ze stroną startową użytkownika przeglądarki. Pozwala za to na wygodne przechowywanie adresu strony startowej. Stronę startową można otworzyć przy użyciu metody goHome. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/href/index.html b/files/pl/mozilla/tech/xul/atrybut/href/index.html new file mode 100644 index 0000000000..64dad16d4c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/href/index.html @@ -0,0 +1,19 @@ +--- +title: href +slug: Mozilla/Tech/XUL/Atrybut/href +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/href +--- +
« Dokumentacja XUL
+
href +
Typ: string +
Definiuje adres URL do otworzenia, w momencie naciśnięcia elementu. Żąda atrybutu class, by włączyć text-link. +
+
+
<label href="http://example.com" class="text-link" value="Naciśnij tu, aby przejść do example.com"/>
+
+


+

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/icon/index.html b/files/pl/mozilla/tech/xul/atrybut/icon/index.html new file mode 100644 index 0000000000..c09c4c1329 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/icon/index.html @@ -0,0 +1,18 @@ +--- +title: icon +slug: Mozilla/Tech/XUL/Atrybut/icon +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/icon +--- +
« Dokumentacja XUL
+
icon +
Mozilla 1.8 +
Typ: string +
Ten atrybut powinien być używany dla przycisków związanych z typowymi zadaniami. Niektóre platformy (GNOME - przyp. tłum.) wyświetlają te przyciski z małymi ikonami sygnalizującymi ich zastosowanie. Atrybut ten w pewnym sensie zastępuje atrybut image. Możliwe wartości: accept, cancel, help, open, save, find, clear, yes, no, apply, close, print, add, remove, refresh, go-forward, go-back, properties, select-font, select-color, network. Jeśli tworzony przycisk wiąże się z jednym z powyższych zastosowań, należy to zasygnalizować poprzez odpowiednie ustawienie atrybutu icon. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/id/index.html b/files/pl/mozilla/tech/xul/atrybut/id/index.html new file mode 100644 index 0000000000..f9fc9f811d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/id/index.html @@ -0,0 +1,37 @@ +--- +title: id +slug: Mozilla/Tech/XUL/Atrybut/id +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/id +--- +
« Dokumentacja XUL
+
id +
Typ: id elementu, musi być unikatowym identyfikatorem w oknie +
Unikatowy identyfikator, który będzie identyfikował się z elementem. Możemy go zastosować jako parametr do getElementById() i innych funkcji DOM oraz jako odniesienie do elementu w arkuszach stylu.
+
+

Przykład

+
<button id="foo" label="Click Me" oncommand="doSomething()"/>
+
+<script>
+function doSomething(){
+    var myButton = document.getElementById('foo');
+    myButton.setAttribute('label','The button was pressed');
+}
+</script>
+
+

Więcej abstrakcyjnych wersji powyższego przykładu będzie: +

+
<button id="foo" label="Click Me" oncommand="setWidgetLabel(this, 'I was pressed')"/>
+<script>
+function setWidgetLabel(idName, newCaption){
+   document.getElementById( idName.id ).setAttribute('label',newCaption)
+}
+
+</script>
+
+

Zobacz także

+

name +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/ignoreblurwhilesearching/index.html b/files/pl/mozilla/tech/xul/atrybut/ignoreblurwhilesearching/index.html new file mode 100644 index 0000000000..c97912d03d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ignoreblurwhilesearching/index.html @@ -0,0 +1,12 @@ +--- +title: ignoreblurwhilesearching +slug: Mozilla/Tech/XUL/Atrybut/ignoreBlurWhileSearching +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/ignoreBlurWhileSearching +--- +
« Dokumentacja XUL
+
ignoreblurwhilesearching
Typ: boolean
Jeśli true, zdarzenia blur są ignorowane podczas szukania, co znaczy, że automatyczne wyskakujące okienka nie znikną.
+ +

diff --git a/files/pl/mozilla/tech/xul/atrybut/ignoreincolumnpicker/index.html b/files/pl/mozilla/tech/xul/atrybut/ignoreincolumnpicker/index.html new file mode 100644 index 0000000000..7a5a1c9fa1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ignoreincolumnpicker/index.html @@ -0,0 +1,16 @@ +--- +title: ignoreincolumnpicker +slug: Mozilla/Tech/XUL/Atrybut/ignoreincolumnpicker +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/ignoreincolumnpicker +--- +
« Dokumentacja XUL
+
ignoreincolumnpicker +
Typ: boolean +
Jeśli true, kolumna nie zostanie wyświetlona w zbiorze kolumn.
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/ignorekeys/index.html b/files/pl/mozilla/tech/xul/atrybut/ignorekeys/index.html new file mode 100644 index 0000000000..73bfce071a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ignorekeys/index.html @@ -0,0 +1,17 @@ +--- +title: ignorekeys +slug: Mozilla/Tech/XUL/Atrybut/ignorekeys +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/ignorekeys +--- +
« Dokumentacja XUL
+
ignorekeys +
Typ: boolean +
Jeśli true, poruszanie się za pomocą klawiatury pomiędzy różnymi pozycjami w okienku popup jest wyłączone. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/image/index.html b/files/pl/mozilla/tech/xul/atrybut/image/index.html new file mode 100644 index 0000000000..dc5c2f641b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/image/index.html @@ -0,0 +1,18 @@ +--- +title: image +slug: Mozilla/Tech/XUL/Atrybut/image +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/image +--- +
« Dokumentacja XUL
+
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+
+

Zobacz także

+

Element image +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/increment/index.html b/files/pl/mozilla/tech/xul/atrybut/increment/index.html new file mode 100644 index 0000000000..0dd9b7c843 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/increment/index.html @@ -0,0 +1,21 @@ +--- +title: increment +slug: Mozilla/Tech/XUL/Atrybut/increment +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/increment +--- +
+ « Dokumentacja XUL
+
+
+ increment
+
+ Typ: + + integer +
+
+ Wynosi tyle co wartość atrybutu curpos<magic name="\"PAGENAME\"/"> (dla pasków przewijania) lub value (dla pudełek liczbowych)</magic> zmienionego, gdy strzałka na pasku przewijania jest naciśnięta. Domyślnie posiada wartość równą 1.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/index.html b/files/pl/mozilla/tech/xul/atrybut/index.html new file mode 100644 index 0000000000..119b0b8fee --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/index.html @@ -0,0 +1,274 @@ +--- +title: Atrybuty +slug: Mozilla/Tech/XUL/Atrybut +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute +--- +

« Dokumentacja XUL +

+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/inputtooltiptext/index.html b/files/pl/mozilla/tech/xul/atrybut/inputtooltiptext/index.html new file mode 100644 index 0000000000..2ef99a361c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/inputtooltiptext/index.html @@ -0,0 +1,17 @@ +--- +title: inputtooltiptext +slug: Mozilla/Tech/XUL/Atrybut/inputtooltiptext +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/inputtooltiptext +--- +
« Dokumentacja XUL
+
inputtooltiptext +
Typ: string +
Tekst podpowiedzi dla pudełka tekstu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/insertafter/index.html b/files/pl/mozilla/tech/xul/atrybut/insertafter/index.html new file mode 100644 index 0000000000..8f5f8552f0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/insertafter/index.html @@ -0,0 +1,18 @@ +--- +title: insertafter +slug: Mozilla/Tech/XUL/Atrybut/insertafter +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/insertafter +--- +
« Dokumentacja XUL
+
insertafter +
Typ: id elementu +
Kiedy element jest w overlay, to atrybut insertafter określa id elementu w bazowym oknie, który element powinien zostać później wyświetlony. Ten atrybut przesłania atrybut insertbefore. Ta wartość może być listą składającą się z poszczególnych id oddzielonych przecinkiem, które są skanowane i pierwszy znaleziony w oknie jest użyty. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/insertbefore/index.html b/files/pl/mozilla/tech/xul/atrybut/insertbefore/index.html new file mode 100644 index 0000000000..f449489d77 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/insertbefore/index.html @@ -0,0 +1,18 @@ +--- +title: insertbefore +slug: Mozilla/Tech/XUL/Atrybut/insertbefore +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/insertbefore +--- +
« Dokumentacja XUL
+
insertbefore +
Typ: id elementu +
Kiedy element jest w overlay, to atrybut insertbefore określa id elementu w bazowym oknie, który element powinien zostać wyświetlony wcześniej. Ta wartość może być listą składającą się z poszczególnych id oddzielonych przecinkiem, które są skanowane i pierwszy znaleziony w oknie jest użyty. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/instantapply/index.html b/files/pl/mozilla/tech/xul/atrybut/instantapply/index.html new file mode 100644 index 0000000000..20dad43709 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/instantapply/index.html @@ -0,0 +1,18 @@ +--- +title: instantApply +slug: Mozilla/Tech/XUL/Atrybut/instantApply +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/instantApply +--- +
« Dokumentacja XUL
+
instantApply +
Typ: boolean +
Jeśli true, preferencje zostaną zmienione albo niebawem lub gdy interfejs użytkownika jest modyfikowany. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/inverted/index.html b/files/pl/mozilla/tech/xul/atrybut/inverted/index.html new file mode 100644 index 0000000000..3dd93c2081 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/inverted/index.html @@ -0,0 +1,16 @@ +--- +title: inverted +slug: Mozilla/Tech/XUL/Atrybut/inverted +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/inverted +--- +
« Dokumentacja XUL
+ +
+
inverted
+
Typ:boolean
+
Preferencje logiczne, jeśli ten atrybut jest ustawiony na true, to sygnalizuje, która wartość preferencji jest reverse of the user interface element attached to it. For instance, checking the checkbox disables the preference instead of enabling it.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/key/index.html b/files/pl/mozilla/tech/xul/atrybut/key/index.html new file mode 100644 index 0000000000..5ff0eb5dc2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/key/index.html @@ -0,0 +1,17 @@ +--- +title: key +slug: Mozilla/Tech/XUL/Atrybut/key +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/key +--- +
« Dokumentacja XUL
+
key +
Typ: znak +
Litera, która musi zostać naciśnięta. Powinien to być znak, który może być wyświetlany. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/keycode/index.html b/files/pl/mozilla/tech/xul/atrybut/keycode/index.html new file mode 100644 index 0000000000..f27eb67748 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/keycode/index.html @@ -0,0 +1,17 @@ +--- +title: keycode +slug: Mozilla/Tech/XUL/Atrybut/keycode +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/keycode +--- +
« Dokumentacja XUL
+
keycode +
Typ: kod klawisza łańcucha znaków +
Dla klawiszy skrótu, które nie są wyświetlane jako litery, takich jak Enter lub klawisze funkcyjne, można wykorzystać ten atrybut zamiast key. Dozwolone kody klawiszy są wymienione na tej liście. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/keytext/index.html b/files/pl/mozilla/tech/xul/atrybut/keytext/index.html new file mode 100644 index 0000000000..cd2d442472 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/keytext/index.html @@ -0,0 +1,17 @@ +--- +title: keytext +slug: Mozilla/Tech/XUL/Atrybut/keytext +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/keytext +--- +
« Dokumentacja XUL
+
keytext +
Typ: string +
Etykieta skrótu klawiaturowego. Tekst ten będzie wyświetlony obok etykiety pozycji menu (menuitem), jeśli pozycja ta (menuitem) jest połączona z elementem key poprzez jej atrybut key. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/label.value/index.html b/files/pl/mozilla/tech/xul/atrybut/label.value/index.html new file mode 100644 index 0000000000..f476b2e023 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/label.value/index.html @@ -0,0 +1,15 @@ +--- +title: label.value +slug: Mozilla/Tech/XUL/Atrybut/label.value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/label.value +--- +
« Dokumentacja XUL
+
value +
Typ: string +
Tekst dla etykiety. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/label/index.html b/files/pl/mozilla/tech/xul/atrybut/label/index.html new file mode 100644 index 0000000000..62c4398e42 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/label/index.html @@ -0,0 +1,32 @@ +--- +title: label +slug: Mozilla/Tech/XUL/Atrybut/label +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/label +--- +
« Dokumentacja XUL
+
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+
+

Zobacz także

+ +

Przykłady w JavaScript

+
<label value="Whaw" id="the-big-label" command="the-big-button"/>
+<button id="the-big-button" label="Click me"
+	oncommand="alert(document.getElementById('the-big-label').value)"/>
+
+<label id="myLabel" value="My label"/>
+<button label="Click me"
+	oncommand="document.getElementById('myLabel').setAttribute('value','Value changed');" />
+
+<checkbox label="my Checkbox" id="myCheckboX"/>
+<button label="Another click"
+	oncommand="document.getElementById('myCheckboX').setAttribute('label','Still not checked');"/>
+<button label="Show label of checkbox"
+	oncommand="alert( document.getElementById('myCheckboX').getAttribute('label') )"/>
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/last-tab/index.html b/files/pl/mozilla/tech/xul/atrybut/last-tab/index.html new file mode 100644 index 0000000000..930fb0fb3b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/last-tab/index.html @@ -0,0 +1,17 @@ +--- +title: last-tab +slug: Mozilla/Tech/XUL/Atrybut/last-tab +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/last-tab +--- +
« Dokumentacja XUL
+
last-tab +
Typ: boolean +
Ten atrybut będzie ustawiony na true, dla ostatniej karty. Ten atrybut nie powinien być ustawiany ręcznie, lecz wtedy, gdy jest stosowany w motywie, a jeśli jest ostatnią kartą, to powinna mieć inny sposób nadania stylu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/lastpage/index.html b/files/pl/mozilla/tech/xul/atrybut/lastpage/index.html new file mode 100644 index 0000000000..a819655fac --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/lastpage/index.html @@ -0,0 +1,17 @@ +--- +title: lastpage +slug: Mozilla/Tech/XUL/Atrybut/lastpage +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/lastpage +--- +
« Dokumentacja XUL
+
lastpage +
Typ: boolean +
Ustawiony na true, jeśli wizard jest na ostatniej stronie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/lastselected/index.html b/files/pl/mozilla/tech/xul/atrybut/lastselected/index.html new file mode 100644 index 0000000000..a66991482d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/lastselected/index.html @@ -0,0 +1,17 @@ +--- +title: lastSelected +slug: Mozilla/Tech/XUL/Atrybut/lastSelected +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/lastSelected +--- +
« Dokumentacja XUL
+
lastSelected +
Typ: string +
Ustaw to na id ostatniego zaznaczonego okna. Będzie otwierany domyślnie następnym razem, gdy okno preferencji jest otwarte. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/left/index.html b/files/pl/mozilla/tech/xul/atrybut/left/index.html new file mode 100644 index 0000000000..19ea10b95d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/left/index.html @@ -0,0 +1,17 @@ +--- +title: left +slug: Mozilla/Tech/XUL/Atrybut/left +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/left +--- +
« Dokumentacja XUL
+
left +
Typ: string (reprezentujący integer) +
Dla elementów umieszczonych wewnątrz stosu (stack), określa pozycje elementu od lewego brzegu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/listcell.type/index.html b/files/pl/mozilla/tech/xul/atrybut/listcell.type/index.html new file mode 100644 index 0000000000..8c082dce22 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/listcell.type/index.html @@ -0,0 +1,21 @@ +--- +title: listcell.type +slug: Mozilla/Tech/XUL/Atrybut/listcell.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/listcell.type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: + + string +
+
+ Możemy zrobić komórkę pola wyboru w listbox, przez ustawienie tych wartości atrybutów na checkbox.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/listitem.type/index.html b/files/pl/mozilla/tech/xul/atrybut/listitem.type/index.html new file mode 100644 index 0000000000..dce5a61096 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/listitem.type/index.html @@ -0,0 +1,17 @@ +--- +title: listitem.type +slug: Mozilla/Tech/XUL/Atrybut/listitem.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/listitem.type +--- +
« Dokumentacja XUL
+
type +
Typ: string +
Możemy utworzyć pozycję pola wyboru listbox, poprzez ustawienie tego atrybutu na wartość checkbox. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/max/index.html b/files/pl/mozilla/tech/xul/atrybut/max/index.html new file mode 100644 index 0000000000..d4d7f71d76 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/max/index.html @@ -0,0 +1,14 @@ +--- +title: max +slug: Mozilla/Tech/XUL/Atrybut/max +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/max +--- +
« Dokumentacja XUL
+
max +
Typ: integer +
Maksymalna wartość, która może być na skali. Domyślną wartość jest ustawiona na 100.
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/maxheight/index.html b/files/pl/mozilla/tech/xul/atrybut/maxheight/index.html new file mode 100644 index 0000000000..2fb1b0f626 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/maxheight/index.html @@ -0,0 +1,13 @@ +--- +title: maxheight +slug: Mozilla/Tech/XUL/Atrybut/maxheight +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/maxheight +--- +
« Dokumentacja XUL
+
maxheight +
Typ: string (reprezentujący integer) +
Maksymalna wysokość elementu. Przesyła własność CSS max-height. +
diff --git a/files/pl/mozilla/tech/xul/atrybut/maxlength/index.html b/files/pl/mozilla/tech/xul/atrybut/maxlength/index.html new file mode 100644 index 0000000000..35992f94c4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/maxlength/index.html @@ -0,0 +1,21 @@ +--- +title: maxlength +slug: Mozilla/Tech/XUL/Atrybut/maxlength +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/maxlength +--- +
+ « Dokumentacja XUL
+
+
+ maxlength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków, które można wpisać w pole tekstowe.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/maxpos/index.html b/files/pl/mozilla/tech/xul/atrybut/maxpos/index.html new file mode 100644 index 0000000000..ba39c61fe5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/maxpos/index.html @@ -0,0 +1,17 @@ +--- +title: maxpos +slug: Mozilla/Tech/XUL/Atrybut/maxpos +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/maxpos +--- +
« Dokumentacja XUL
+
maxpos +
Typ: integer +
Maksymalna pozycja elementu scrollbar. Domyślną wartością jest 100. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/maxrows/index.html b/files/pl/mozilla/tech/xul/atrybut/maxrows/index.html new file mode 100644 index 0000000000..a39287a43f --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/maxrows/index.html @@ -0,0 +1,21 @@ +--- +title: maxrows +slug: Mozilla/Tech/XUL/Atrybut/maxrows +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/maxrows +--- +
+ « Dokumentacja XUL
+
+
+ maxrows
+
+ Typ: + + integer +
+
+ Liczba wierszy do pokazania na liście rezultatów w czasie. Pasek przewijania będzie wyświetlony więc użytkownik może przewijać poprzez remaining items.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/maxwidth/index.html b/files/pl/mozilla/tech/xul/atrybut/maxwidth/index.html new file mode 100644 index 0000000000..da9223702f --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/maxwidth/index.html @@ -0,0 +1,17 @@ +--- +title: maxwidth +slug: Mozilla/Tech/XUL/Atrybut/maxwidth +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/maxwidth +--- +
« Dokumentacja XUL
+
maxwidth +
Typ: string (reprezentujący integer) +
Maksymalna szerokość elementu. Przesyła własność CSS max-width. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/menu/index.html b/files/pl/mozilla/tech/xul/atrybut/menu/index.html new file mode 100644 index 0000000000..98854cf720 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/menu/index.html @@ -0,0 +1,21 @@ +--- +title: menu +slug: Mozilla/Tech/XUL/Atrybut/menu +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/menu +--- +
+ « Dokumentacja XUL
+
+
+ menu
+
+ Typ: + + id elementu popup +
+
+ Alternatywna nazwa dla atrybutu popup, lecz także przesyła do skryptu własność 'menu'.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/menuitem.key/index.html b/files/pl/mozilla/tech/xul/atrybut/menuitem.key/index.html new file mode 100644 index 0000000000..89eeff3e1c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/menuitem.key/index.html @@ -0,0 +1,21 @@ +--- +title: menuitem.key +slug: Mozilla/Tech/XUL/Atrybut/menuitem.key +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/menuitem.key +--- +
+ « Dokumentacja XUL
+
+
+ key
+
+ Typ: + + id element +
+
+ Ustawia id elementu key, którego klawisz skrótu jest wyświetlony w menuitem.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/menuitem.name/index.html b/files/pl/mozilla/tech/xul/atrybut/menuitem.name/index.html new file mode 100644 index 0000000000..a004ebdf43 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/menuitem.name/index.html @@ -0,0 +1,39 @@ +--- +title: menuitem.name +slug: Mozilla/Tech/XUL/Atrybut/menuitem.name +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/menuitem.name +--- +
+ « Dokumentacja XUL
+
+
+ name
+
+ Typ: + + nazwa jako łańcuch znaków +
+
+ Opcja menuitem z tą samą nazwą umieszczona w jednej grupie. Tylko jedna pozycja menuitem w każdej grupie opcji, może być zaznaczona w tym samym czasie.
+
+
+

Przykład

+
<toolbox>
+  <menubar id="planets-menubar">
+    <menu id="planet-menu" label="Planet">
+      <menupopup>
+        <menuitem id="jupiter" label="Jupiter" type="radio" name="planet"/>
+        <menuitem id="saturn" label="Saturn" type="radio" name="planet" checked="true"/>
+        <menuitem id="uranus" label="Uranus" type="radio" name="planet"/>
+      </menupopup>
+    </menu>
+  </menubar>
+</toolbox>
+
+

Zobacz także

+

name i menu w kursie XUL

+
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/menuitem.type/index.html b/files/pl/mozilla/tech/xul/atrybut/menuitem.type/index.html new file mode 100644 index 0000000000..0dac8bfe49 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/menuitem.type/index.html @@ -0,0 +1,27 @@ +--- +title: menuitem.type +slug: Mozilla/Tech/XUL/Atrybut/menuitem.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/menuitem.type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: + + jedna z wartości poniżej +
+
+ Może zostać użyta do tworzenia pozycji wielokrotnego (pole wyboru) lub pojedynczego wyboru (przycisk opcji) menu.
+
+ +


+ Więcej informacji na temat dodawania pozycji opcji menu znajduje się w kursie XUL

diff --git a/files/pl/mozilla/tech/xul/atrybut/min/index.html b/files/pl/mozilla/tech/xul/atrybut/min/index.html new file mode 100644 index 0000000000..79e960bcbd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/min/index.html @@ -0,0 +1,14 @@ +--- +title: min +slug: Mozilla/Tech/XUL/Atrybut/min +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/min +--- +
« Dokumentacja XUL
+
min +
Typ: integer +
Wartość minimalna, która może być ustawiona na skali. Domyślną wartością jest 0.
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/minheight/index.html b/files/pl/mozilla/tech/xul/atrybut/minheight/index.html new file mode 100644 index 0000000000..188374a41a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/minheight/index.html @@ -0,0 +1,17 @@ +--- +title: minheight +slug: Mozilla/Tech/XUL/Atrybut/minheight +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/minheight +--- +
« Dokumentacja XUL
+
minheight +
Typ: string (reprezentujący integer) +
Minimalna wysokość elementu. Przesyła własność CSS min-height. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/minresultsforpopup/index.html b/files/pl/mozilla/tech/xul/atrybut/minresultsforpopup/index.html new file mode 100644 index 0000000000..a02d50d680 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/minresultsforpopup/index.html @@ -0,0 +1,21 @@ +--- +title: minresultsforpopup +slug: Mozilla/Tech/XUL/Atrybut/minresultsforpopup +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/minResultsForPopup +--- +
+ « Dokumentacja XUL
+
+
+ minresultsforpopup
+
+ Typ: + + integer +
+
+ Minimalna liczba wyniku, która musi być zwrócona dla wyświetlonego okienka pop-up.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/minwidth/index.html b/files/pl/mozilla/tech/xul/atrybut/minwidth/index.html new file mode 100644 index 0000000000..e48bda2812 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/minwidth/index.html @@ -0,0 +1,21 @@ +--- +title: minwidth +slug: Mozilla/Tech/XUL/Atrybut/minwidth +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/minwidth +--- +
+ « Dokumentacja XUL
+
+
+ minwidth
+
+ Typ: + + string + (reprezentujący integer)
+
+ Minimalna szerokość elementu. Jest przesyłana do własności CSS min-width.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/mode/index.html b/files/pl/mozilla/tech/xul/atrybut/mode/index.html new file mode 100644 index 0000000000..9a245b32ea --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/mode/index.html @@ -0,0 +1,14 @@ +--- +title: mode +slug: Mozilla/Tech/XUL/Atrybut/mode +translation_of: Archive/Mozilla/XUL/Attribute/mode +--- +
+

Zobacz

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/modifiers/index.html b/files/pl/mozilla/tech/xul/atrybut/modifiers/index.html new file mode 100644 index 0000000000..ad5a648985 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/modifiers/index.html @@ -0,0 +1,25 @@ +--- +title: modifiers +slug: Mozilla/Tech/XUL/Atrybut/modifiers +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/modifiers +--- +
« Dokumentacja XUL
+
modifiers +
Typ: oddzielona spacją lista wartości poniżej +
Lista klawiszy-modyfikatorów, które powinny być wciśnięte, aby wywołać dany skrót klawiatury. Jeśli klawiszy-modyfikatorów jest więcej niż jeden, należy je oddzielić spacjami lub przecinkami. Klawisze niedostępne na danej platformie będą mapowane na inne. +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/multiline/index.html b/files/pl/mozilla/tech/xul/atrybut/multiline/index.html new file mode 100644 index 0000000000..bd402ddbdf --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/multiline/index.html @@ -0,0 +1,21 @@ +--- +title: multiline +slug: Mozilla/Tech/XUL/Atrybut/multiline +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/multiline +--- +
+ « Dokumentacja XUL
+
+
+ multiline
+
+ Typ: + + boolean +
+
+ Jeśli true, pole tekstowe wyświetla się w kilku liniach. Jeśli użytkownik naciśnie Enter, to zostanie przeniesiony do nowej lini. Jeśli false to pole tekstowe pozwala wpisać tekst tylko jedną linie.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/name/index.html b/files/pl/mozilla/tech/xul/atrybut/name/index.html new file mode 100644 index 0000000000..a7a6eab523 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/name/index.html @@ -0,0 +1,14 @@ +--- +title: name +slug: Mozilla/Tech/XUL/Atrybut/name +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/name +--- +
« Dokumentacja XUL +

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/next/index.html b/files/pl/mozilla/tech/xul/atrybut/next/index.html new file mode 100644 index 0000000000..643c0941ae --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/next/index.html @@ -0,0 +1,17 @@ +--- +title: next +slug: Mozilla/Tech/XUL/Atrybut/next +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/next +--- +
« Dokumentacja XUL
+
next +
Typ: id łańcucha znaków wizardpage +
Ustawia atrybut pageid następnej strony. Kiedy ustawia stronę z tym pageID to jest wyświetlana, kiedy przycisk <tt>Dalej</tt> zostanie naciśnięty. Może być stosowany do tworzenia kreatorów, które nie mają liniową kolejność. Jeśli jedna ze stron posiada atrybut next, wszystkie strony powinny mieć jeden taki atrybut, oprócz strony ostatniej. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/noautohide/index.html b/files/pl/mozilla/tech/xul/atrybut/noautohide/index.html new file mode 100644 index 0000000000..ccbb691eea --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/noautohide/index.html @@ -0,0 +1,15 @@ +--- +title: noautohide +slug: Mozilla/Tech/XUL/Atrybut/noautohide +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/noautohide +--- +
« Dokumentacja XUL
+
noautohide +
Typ: boolean +
Jeśli ten atrybut jest ustawiony na false lub zostanie opuszczony, Element tooltip będzie automatycznie wyświetlony po kilku sekundach. Jeśli jego atrybut jest ustawiony na true, to nic nie będzie się działo i porada będzie ukryta podczas przesunięcia kursora myszki nad kolejny element. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/nomatch/index.html b/files/pl/mozilla/tech/xul/atrybut/nomatch/index.html new file mode 100644 index 0000000000..fe2f34540e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/nomatch/index.html @@ -0,0 +1,21 @@ +--- +title: nomatch +slug: Mozilla/Tech/XUL/Atrybut/nomatch +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/nomatch +--- +
+ « Dokumentacja XUL
+
+
+ nomatch
+
+ Typ: + + boolean +
+
+ Ten atrybut będzie ustawiony na true, jeśli ostatni rezultat szukania nie jest dopasowany.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/object/index.html b/files/pl/mozilla/tech/xul/atrybut/object/index.html new file mode 100644 index 0000000000..a657ab46b7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/object/index.html @@ -0,0 +1,16 @@ +--- +title: object +slug: Mozilla/Tech/XUL/Atrybut/object +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/object +--- +
« Dokumentacja XUL
+
object +
Obiekt elementu. Może być to odwołanie się do zmiennej i URI źródła RDF lub wartość literalna RDF. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/observes/index.html b/files/pl/mozilla/tech/xul/atrybut/observes/index.html new file mode 100644 index 0000000000..404aa21f14 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/observes/index.html @@ -0,0 +1,21 @@ +--- +title: observes +slug: Mozilla/Tech/XUL/Atrybut/observes +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/observes +--- +
+ « Dokumentacja XUL
+
+
+ observes
+
+ Typ: + + id elementu broadcaster +
+
+ Ustawia id elementu broadcaster, który jest obserwowany poprzez ten element. Jeśli atrybut zostanie zmieniony w rozgłaszaczu, to będzie on także zmieniony w obserwatorze.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onbeforeaccept/index.html b/files/pl/mozilla/tech/xul/atrybut/onbeforeaccept/index.html new file mode 100644 index 0000000000..49b500b4bc --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onbeforeaccept/index.html @@ -0,0 +1,21 @@ +--- +title: onbeforeaccept +slug: Mozilla/Tech/XUL/Atrybut/onbeforeaccept +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onbeforeaccept +--- +
+ « Dokumentacja XUL
+
+
+ onbeforeaccept
+
+ Typ: + + Kod skryptu +
+
+ Kod w tym atrybucie jest wywołany kiedy przycisk OK zostaje naciśnięty lub kiedy wywołana zostaje metoda acceptDialog.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onbookmarkgroup/index.html b/files/pl/mozilla/tech/xul/atrybut/onbookmarkgroup/index.html new file mode 100644 index 0000000000..68fdaee7ee --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onbookmarkgroup/index.html @@ -0,0 +1,17 @@ +--- +title: onbookmarkgroup +slug: Mozilla/Tech/XUL/Atrybut/onbookmarkgroup +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/onbookmarkgroup +--- +
« Dokumentacja XUL
+ +
+
onbookmarkgroup
+
Nie w Firefoksie
+
Typ:Kod skryptu
+
Ten kode zostanie wykony, kiedy użytkownik wybierze polecenie "Bookmark this Group of Tabs".
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onchange/index.html b/files/pl/mozilla/tech/xul/atrybut/onchange/index.html new file mode 100644 index 0000000000..9a17a5bff2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onchange/index.html @@ -0,0 +1,18 @@ +--- +title: onchange +slug: Mozilla/Tech/XUL/Atrybut/onchange +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onchange +--- +
« Dokumentacja XUL
+
onchange +
Typ: kod skryptu +
Kod w atrybucie onchange jest wywołany, kiedy wartość elementu jest zmieniana. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onclosetab/index.html b/files/pl/mozilla/tech/xul/atrybut/onclosetab/index.html new file mode 100644 index 0000000000..28d566c7d0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onclosetab/index.html @@ -0,0 +1,21 @@ +--- +title: onclosetab +slug: Mozilla/Tech/XUL/Atrybut/onclosetab +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onclosetab +--- +
+ « Dokumentacja XUL
+
+
+ onclosetab
+
+ Typ: + + kod skryptu +
+
+ Ten skrypt będzie wywoływany, kiedy przycisk zamknięcia karty jest naciśnięty.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/oncommand/index.html b/files/pl/mozilla/tech/xul/atrybut/oncommand/index.html new file mode 100644 index 0000000000..97cf313780 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/oncommand/index.html @@ -0,0 +1,21 @@ +--- +title: oncommand +slug: Mozilla/Tech/XUL/Atrybut/oncommand +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/oncommand +--- +
« Dokumentacja XUL
+
oncommand +
Typ: kod skrypt +
Ta funkcja obsługi zdarzenia jest wywołana w momencie aktywacji polecenia. Ma to miejsce, gdy użytkownik zaznaczy pozycję menu lub kiedy naciśnie skrót klawiaturowy przypisany do polecenia. +
+
+

Przykład

+
<button label="Naciśnij mnie" oncommand="alert('Cześć!')"/>
+
+

Zobacz także

+

Element command +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/oncommandupdate/index.html b/files/pl/mozilla/tech/xul/atrybut/oncommandupdate/index.html new file mode 100644 index 0000000000..6c008e8442 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/oncommandupdate/index.html @@ -0,0 +1,17 @@ +--- +title: oncommandupdate +slug: Mozilla/Tech/XUL/Atrybut/oncommandupdate +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/oncommandupdate +--- +
« Dokumentacja XUL
+
oncommandupdate +
Typ: kod skryptu +
To zdarzenie ma miejsce w momencie aktualizacji polecenia. Można je stosować do aktualizacji stanu wyłączenia (disabled) danych pozycji. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onerror/index.html b/files/pl/mozilla/tech/xul/atrybut/onerror/index.html new file mode 100644 index 0000000000..b7d7eeb479 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onerror/index.html @@ -0,0 +1,21 @@ +--- +title: onerror +slug: Mozilla/Tech/XUL/Atrybut/onerror +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onerror +--- +
+ « Dokumentacja XUL
+
+
+ onerror
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest przesyłane do elementu image w momencie wystąpienia błędu podczas wczytywania obrazka.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onerrorcommand/index.html b/files/pl/mozilla/tech/xul/atrybut/onerrorcommand/index.html new file mode 100644 index 0000000000..d865461ede --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onerrorcommand/index.html @@ -0,0 +1,21 @@ +--- +title: onerrorcommand +slug: Mozilla/Tech/XUL/Atrybut/onerrorcommand +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onerrorcommand +--- +
+ « Dokumentacja XUL
+
+
+ onerrorcommand
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia jest wywołany kiedy ma miejsce błąd, kiedy zaznaczymy wynik z okienka dialogowego.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/oninput/index.html b/files/pl/mozilla/tech/xul/atrybut/oninput/index.html new file mode 100644 index 0000000000..9443031a9e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/oninput/index.html @@ -0,0 +1,26 @@ +--- +title: oninput +slug: Mozilla/Tech/XUL/Atrybut/oninput +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/oninput +--- +
« Dokumentacja XUL
+
oninput +
Typ: kod skryptu +
To zdarzenie jest wysyłane, kiedy użytkownik wpisuje tekst w textbox. To zdarzenie jest tylko wywoływane, kiedy wyświetlany tekst zostanie zmieniony, tak więc nie jest wykonywany kiedy użytkownik naciśnie nie możliwy do wyświetlenia klawisz.
+
+

Przykład

+
Ustawia tekst etykiety w polu tekstowym wciśnięty klawisz.
+<script language="javascript">
+function setLabel(txtBox){
+	document.getElementById('lbl').value = txtBox.value;
+}
+</script>
+<label id="lbl"/>
+<textbox oninput="setLabel(this);"/>
+
+

Jest on równoważny do zdarzenia onkeypress zastosowanym w dokumentach HTML. +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onload/index.html b/files/pl/mozilla/tech/xul/atrybut/onload/index.html new file mode 100644 index 0000000000..c256bf3bee --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onload/index.html @@ -0,0 +1,23 @@ +--- +title: onload +slug: Mozilla/Tech/XUL/Atrybut/onload +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onload +--- +
+ « Dokumentacja XUL
+
+
+ onload
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia będzie wywołany na elemencie image,
+
+
w momencie zakończenia wczytywania obrazka. Dzieje się tak niezależnie od tego, czy obrazek został określony przez atrybut src, czy przez własność CSS  list-style-image. Zdarzenie zostanie wywołane ponownie także przy zmianie obrazka na inny, w momencie jego wczytania. To zdarzenie nie będzie przechodziło w górę drzewa elementów w modelu bąbelkowym zdarzeń.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onnewtab/index.html b/files/pl/mozilla/tech/xul/atrybut/onnewtab/index.html new file mode 100644 index 0000000000..81fb25b369 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onnewtab/index.html @@ -0,0 +1,23 @@ +--- +title: onnewtab +slug: Mozilla/Tech/XUL/Atrybut/onnewtab +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onnewtab +--- +
+ « Dokumentacja XUL
+
+
+ onnewtab
+
+ Nie w Firefoksie
+
+ Typ: + + kod skryptu +
+
+ Ten skrypt będzie wywołany, kiedy nowy przycisk zostanie naciśnięty.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onpaneload/index.html b/files/pl/mozilla/tech/xul/atrybut/onpaneload/index.html new file mode 100644 index 0000000000..bf0afc382c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onpaneload/index.html @@ -0,0 +1,21 @@ +--- +title: onpaneload +slug: Mozilla/Tech/XUL/Atrybut/onpaneload +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onpaneload +--- +
+ « Dokumentacja XUL
+
+
+ onpaneload
+
+ Typ: + + kod skryptu +
+
+ Zdefiniowany tutaj kod jest wywołany kiedy okno będzie wczytane, bardzo podobnym zdarzeniem dla okna jest load.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onpopuphidden/index.html b/files/pl/mozilla/tech/xul/atrybut/onpopuphidden/index.html new file mode 100644 index 0000000000..92b7f4ed91 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onpopuphidden/index.html @@ -0,0 +1,21 @@ +--- +title: onpopuphidden +slug: Mozilla/Tech/XUL/Atrybut/onpopuphidden +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onpopuphidden +--- +
+ « Dokumentacja XUL
+
+
+ onpopuphidden
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest wysyłane do okienka popup po tym jak zostało ukryte.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onpopuphiding/index.html b/files/pl/mozilla/tech/xul/atrybut/onpopuphiding/index.html new file mode 100644 index 0000000000..6fb8e2ce39 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onpopuphiding/index.html @@ -0,0 +1,21 @@ +--- +title: onpopuphiding +slug: Mozilla/Tech/XUL/Atrybut/onpopuphiding +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onpopuphiding +--- +
+ « Dokumentacja XUL
+
+
+ onpopuphiding
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest wysyłane do okienka popup, kiedy jest ono ukrywane.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onpopupshowing/index.html b/files/pl/mozilla/tech/xul/atrybut/onpopupshowing/index.html new file mode 100644 index 0000000000..d55b71c94c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onpopupshowing/index.html @@ -0,0 +1,21 @@ +--- +title: onpopupshowing +slug: Mozilla/Tech/XUL/Atrybut/onpopupshowing +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onpopupshowing +--- +
+ « Dokumentacja XUL
+
+
+ onpopupshowing
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie wysyła do okienka popup tylko przed jego otwarciem. Uchwyt zazwyczaj jest stosowany do ustawień dynamicznych zawartości, kiedy użytkownik wnioskuje o jego wyświetlenie. Zwraca false z tego uchwytu zdarzenia zapobiegając okienko popup przed pojawieniem się.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onpopupshown/index.html b/files/pl/mozilla/tech/xul/atrybut/onpopupshown/index.html new file mode 100644 index 0000000000..975ce06c50 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onpopupshown/index.html @@ -0,0 +1,21 @@ +--- +title: onpopupshown +slug: Mozilla/Tech/XUL/Atrybut/onpopupshown +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onpopupshown +--- +
+ « Dokumentacja XUL
+
+
+ onpopupshown
+
+ Typ: + + kod skryptu +
+
+ To jest zdarzenie wysyłane do okienka popup, po tym jak zostało otwarte, bardzo podobne do zdarzenia onload wysyłanego do okna, kiedy jest otwierane.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onsearchcomplete/index.html b/files/pl/mozilla/tech/xul/atrybut/onsearchcomplete/index.html new file mode 100644 index 0000000000..4f821dcbbf --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onsearchcomplete/index.html @@ -0,0 +1,17 @@ +--- +title: onsearchcomplete +slug: Mozilla/Tech/XUL/Atrybut/onsearchcomplete +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/onsearchcomplete +--- +
« Dokumentacja XUL
+
onsearchcomplete +
Typ: Kod skryptu +
Ten uchwyt zdarzenia jest wywołany, kiedy zakończone zostało automatyczne wyszukiwanie, a wyniki są dostępne. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/onselect/index.html b/files/pl/mozilla/tech/xul/atrybut/onselect/index.html new file mode 100644 index 0000000000..d18ddfd0cd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/onselect/index.html @@ -0,0 +1,10 @@ +--- +title: onselect +slug: Mozilla/Tech/XUL/Atrybut/onselect +translation_of: Archive/Mozilla/XUL/Attribute/onselect +--- +

Zobacz

+ diff --git a/files/pl/mozilla/tech/xul/atrybut/ontextcommand/index.html b/files/pl/mozilla/tech/xul/atrybut/ontextcommand/index.html new file mode 100644 index 0000000000..ffbb257ba0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ontextcommand/index.html @@ -0,0 +1,21 @@ +--- +title: ontextcommand +slug: Mozilla/Tech/XUL/Atrybut/ontextcommand +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/ontextcommand +--- +
+ « Dokumentacja XUL
+
+
+ ontextcommand
+
+ Typ: + + Kod skryptu +
+
+ Ten uchwyt zdarzeń jest wywołany kiedy wynik jest zaznaczony w polu tekstowym.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/ontextentered/index.html b/files/pl/mozilla/tech/xul/atrybut/ontextentered/index.html new file mode 100644 index 0000000000..7860d168be --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ontextentered/index.html @@ -0,0 +1,21 @@ +--- +title: ontextentered +slug: Mozilla/Tech/XUL/Atrybut/ontextentered +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/ontextentered +--- +
+ « Dokumentacja XUL
+
+
+ ontextentered
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia jest wywoływany, kiedy wynik jest zaznaczony dla pola tekstowego.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/ontextreverted/index.html b/files/pl/mozilla/tech/xul/atrybut/ontextreverted/index.html new file mode 100644 index 0000000000..bcb03d3339 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ontextreverted/index.html @@ -0,0 +1,21 @@ +--- +title: ontextreverted +slug: Mozilla/Tech/XUL/Atrybut/ontextreverted +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/ontextreverted +--- +
+ « Dokumentacja XUL
+
+
+ ontextreverted
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia jest wywołany, gdy użytkownik naciśnie Escape aby przywrócić pole tekstowe do jego oryginalnej niekompletnej wartości.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/open/index.html b/files/pl/mozilla/tech/xul/atrybut/open/index.html new file mode 100644 index 0000000000..739f3a3509 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/open/index.html @@ -0,0 +1,18 @@ +--- +title: open +slug: Mozilla/Tech/XUL/Atrybut/open +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/open +--- +
« Dokumentacja XUL
+
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/orient/index.html b/files/pl/mozilla/tech/xul/atrybut/orient/index.html new file mode 100644 index 0000000000..01210bb01a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/orient/index.html @@ -0,0 +1,21 @@ +--- +title: orient +slug: Mozilla/Tech/XUL/Atrybut/orient +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/orient +--- +
« Dokumentacja XUL
+
orient +
Typ: jedna z wartości poniżej +
Wykorzystywany do określenia, czy elementy potomne danego elementu zorientowane są poziomo czy pionowo. Domyślna wartość zależy od danego elementu. Można także skorzystać z własności stylu -moz-box-orient. +
+ +
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/pack/index.html b/files/pl/mozilla/tech/xul/atrybut/pack/index.html new file mode 100644 index 0000000000..425721c4b4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/pack/index.html @@ -0,0 +1,26 @@ +--- +title: pack +slug: Mozilla/Tech/XUL/Atrybut/pack +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/pack +--- +
« Dokumentacja XUL
+ +
+
pack
+
Typ:jedna z wartości poniżej
+
Atrybut pack określa gdzie elementy potomne box są umieszczone, kiedy pudełko jest większe niż rozmiar dziecka. Dla pudełek z orientacją poziomą jest użyty to sygnalizowania pozycji dziecka poziomo. Dla pudełek z orientacją pionową jest stosowany dla pozycji poziomej dziecka. Atrybut align jest stosowany do określenia pozycji w przeciwnych kierunkach. Możemy także określić wartość pack stosując własność stylu -moz-box-pack.
+
+ + + +

Zobacz także

+ +

Więcej informacji znajduje się w kursie XUL

diff --git a/files/pl/mozilla/tech/xul/atrybut/pageid/index.html b/files/pl/mozilla/tech/xul/atrybut/pageid/index.html new file mode 100644 index 0000000000..74670ea481 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/pageid/index.html @@ -0,0 +1,21 @@ +--- +title: pageid +slug: Mozilla/Tech/XUL/Atrybut/pageid +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/pageid +--- +
+ « Dokumentacja XUL
+
+
+ pageid
+
+ Typ: + + id łańcucha znaków wizardpage +
+
+ Atrybut powinien być ustawiony na łańcuch znaków, który identyfikuje identyfikator stron w kreatorze ( wizard). Stosowany z atrybutem next. Kreator zawsze zaczyna z wizardpage, który pojawia się pierwszy w kreatorze na liście potomnych.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/pageincrement/index.html b/files/pl/mozilla/tech/xul/atrybut/pageincrement/index.html new file mode 100644 index 0000000000..b52bf37edf --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/pageincrement/index.html @@ -0,0 +1,15 @@ +--- +title: pageincrement +slug: Mozilla/Tech/XUL/Atrybut/pageincrement +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/pageincrement +--- +
« Dokumentacja XUL
+
pageincrement +
Typ: integer +
Wynosi tyle co wartość atrybutu curpos zmienionego, gdy powierzchnia paska przewijania jest kliknięta. Powierzchnia jest obszarem, w którym przytrzymany kursorem pasek przewijania jest przesuwany. Domyślną wartością jest 10. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/pagestep/index.html b/files/pl/mozilla/tech/xul/atrybut/pagestep/index.html new file mode 100644 index 0000000000..084972a9f8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/pagestep/index.html @@ -0,0 +1,21 @@ +--- +title: pagestep +slug: Mozilla/Tech/XUL/Atrybut/pagestep +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/pagestep +--- +
+ « Dokumentacja XUL
+
+
+ pagestep
+
+ Typ: + + integer +
+
+ Indeks bieżącej strony.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/phase/index.html b/files/pl/mozilla/tech/xul/atrybut/phase/index.html new file mode 100644 index 0000000000..3a6a2b3b02 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/phase/index.html @@ -0,0 +1,16 @@ +--- +title: phase +slug: Mozilla/Tech/XUL/Atrybut/phase +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/phase +--- +
« Dokumentacja XUL
+ +
+
phase
+
Typ:ciąg znaków
+
Faza zdarzeń, w której wywoływana jest funkcja obsługi. Należy atrybut ten ustawić na wartość capturing, by określić, że ma to nastąpić w fazie przechwytywania, albo na target, aby określić to na elemencie docelowym, albo pominąć, by wywołanie funkcji obsługi nastąpiło w fazie bąbelkowania.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/pickertooltiptext/index.html b/files/pl/mozilla/tech/xul/atrybut/pickertooltiptext/index.html new file mode 100644 index 0000000000..61cf015b57 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/pickertooltiptext/index.html @@ -0,0 +1,17 @@ +--- +title: pickertooltiptext +slug: Mozilla/Tech/XUL/Atrybut/pickertooltiptext +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/pickertooltiptext +--- +
« Dokumentacja XUL
+
pickertooltiptext +
Typ: string +
Tekst podpowiedzi zebrany w kolumnie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/popup.left/index.html b/files/pl/mozilla/tech/xul/atrybut/popup.left/index.html new file mode 100644 index 0000000000..90b615f75c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/popup.left/index.html @@ -0,0 +1,21 @@ +--- +title: popup.left +slug: Mozilla/Tech/XUL/Atrybut/popup.left +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/popup.left +--- +
+ « Dokumentacja XUL
+
+
+ left
+
+ Typ: + + integer +
+
+ Przesłania poziome położenie określonego okienka popup poprzez metodę showPopup.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/popup.top/index.html b/files/pl/mozilla/tech/xul/atrybut/popup.top/index.html new file mode 100644 index 0000000000..a182f93edd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/popup.top/index.html @@ -0,0 +1,21 @@ +--- +title: popup.top +slug: Mozilla/Tech/XUL/Atrybut/popup.top +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/popup.top +--- +
+ « Dokumentacja XUL
+
+
+ top
+
+ Typ: + + integer +
+
+ Przesłania pionowe położenie okienka popup określone poprzez metodę showPopup.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/popup/index.html b/files/pl/mozilla/tech/xul/atrybut/popup/index.html new file mode 100644 index 0000000000..5933ac6d40 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/popup/index.html @@ -0,0 +1,26 @@ +--- +title: popup +slug: Mozilla/Tech/XUL/Atrybut/popup +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/popup +--- +
+ « Dokumentacja XUL
+
+
+ popup
+
+ Typ: + + id elementu popup +
+
+ Powinien być ustawiony na wartość id elementu popup, który powinien się wyświetlić, gdy użytkownik kliknie w ten element.
+
+
+

Zobacz także

+

Więcej informacji o elemencie popup znajdziemy w kursie XUL

+
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/predicate/index.html b/files/pl/mozilla/tech/xul/atrybut/predicate/index.html new file mode 100644 index 0000000000..f512761669 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/predicate/index.html @@ -0,0 +1,15 @@ +--- +title: predicate +slug: Mozilla/Tech/XUL/Atrybut/predicate +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/predicate +--- +
« Dokumentacja XUL
+
predicate +
Predykat własności do dopasowania. Musi być to URI własności.
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/preference.name/index.html b/files/pl/mozilla/tech/xul/atrybut/preference.name/index.html new file mode 100644 index 0000000000..1865f2038d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/preference.name/index.html @@ -0,0 +1,18 @@ +--- +title: preference.name +slug: Mozilla/Tech/XUL/Atrybut/preference.name +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/preference.name +--- +
« Dokumentacja XUL
+
name +
Typ: string +
Nazwa preferencji do zmiany. Na przykład strona startowa przeglądarki jest ustawiona z preferencją browser.startup.homepage. +
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/preference.type/index.html b/files/pl/mozilla/tech/xul/atrybut/preference.type/index.html new file mode 100644 index 0000000000..9476ffe0b8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/preference.type/index.html @@ -0,0 +1,23 @@ +--- +title: preference.type +slug: Mozilla/Tech/XUL/Atrybut/preference.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/preference.type +--- +
« Dokumentacja XUL
+
type +
Typ: jedna z poniższych wartości +
Typ preferencji, która powinna posiadać jedną z poniższych wartości: +
+ +


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/preference/index.html b/files/pl/mozilla/tech/xul/atrybut/preference/index.html new file mode 100644 index 0000000000..a708d4f1e6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/preference/index.html @@ -0,0 +1,18 @@ +--- +title: preference +slug: Mozilla/Tech/XUL/Atrybut/preference +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/preference +--- +
« Dokumentacja XUL
+
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/prefpane.selected/index.html b/files/pl/mozilla/tech/xul/atrybut/prefpane.selected/index.html new file mode 100644 index 0000000000..a7836d5300 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/prefpane.selected/index.html @@ -0,0 +1,28 @@ +--- +title: prefpane.selected +slug: Mozilla/Tech/XUL/Atrybut/prefpane.selected +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/prefpane.selected +--- +
+ « Dokumentacja XUL
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Ten atrybut będzie ustawiony na true dla aktualnie zaznaczonego prefpane. Do zmiany okna zastosuj metodę showPane w elemntach prefwindow.
+
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/prefpane.src/index.html b/files/pl/mozilla/tech/xul/atrybut/prefpane.src/index.html new file mode 100644 index 0000000000..befe65f0cd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/prefpane.src/index.html @@ -0,0 +1,24 @@ +--- +title: prefpane.src +slug: Mozilla/Tech/XUL/Atrybut/prefpane.src +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/prefpane.src +--- +
+ « Dokumentacja XUL
+
+
+ src
+
+ Typ: adres URL nakładki
+
+ Adres URL zawartości okna preferencji. Jeśli nie jest określono, zawartość elementu prefpane jest stosowana.
+
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/progressmeter.mode/index.html b/files/pl/mozilla/tech/xul/atrybut/progressmeter.mode/index.html new file mode 100644 index 0000000000..ff2a851496 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/progressmeter.mode/index.html @@ -0,0 +1,19 @@ +--- +title: progressmeter.mode +slug: Mozilla/Tech/XUL/Atrybut/progressmeter.mode +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/progressmeter.mode +--- +
« Dokumentacja XUL
+
mode +
Typ: jedna z wartości poniżej +
determined czyli określony progressmeter możemy zastosować w przypadku, gdzie znamy długość operacji jaka jest wykonywana. undetermined czyli nieokreślony progressmeter możemy zastosować do do operacji, w której nie możemy określić czasu jej przebiegu i zazwyczaj będzie wyświetlony jako słupek. '''as a spinning barber pole.''' +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/progressmeter.value/index.html b/files/pl/mozilla/tech/xul/atrybut/progressmeter.value/index.html new file mode 100644 index 0000000000..2dc3b4ce38 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/progressmeter.value/index.html @@ -0,0 +1,16 @@ +--- +title: progressmeter.value +slug: Mozilla/Tech/XUL/Atrybut/progressmeter.value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/progressmeter.value +--- +
« Dokumentacja XUL
+
value +
Typ: integer +
Zakres liczbowy od 0 do 100, który wyświetla postęp. Dla przykładu, ustaw wartość na "0", która pokaże pusty pasek. Natomiast ustawiając wartość na "100" zobaczymy wypełnienie całej długości paska, a wartość ustawiona na "25" zajmie jedną czwartą paska. Znaki po liczbie są ignorowane.
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/properties/index.html b/files/pl/mozilla/tech/xul/atrybut/properties/index.html new file mode 100644 index 0000000000..206a76863d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/properties/index.html @@ -0,0 +1,21 @@ +--- +title: properties +slug: Mozilla/Tech/XUL/Atrybut/properties +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/properties +--- +
+ « Dokumentacja XUL
+
+
+ properties
+
+ Typ: + + lista własności nazwy oddzielona separatorem +
+
+ Ustawia własności elementu, który stosujemy do stylu elementu.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/readonly/index.html b/files/pl/mozilla/tech/xul/atrybut/readonly/index.html new file mode 100644 index 0000000000..fbc0a2aae7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/readonly/index.html @@ -0,0 +1,15 @@ +--- +title: readonly +slug: Mozilla/Tech/XUL/Atrybut/readonly +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/readonly +--- +
« Dokumentacja XUL
+
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/ref/index.html b/files/pl/mozilla/tech/xul/atrybut/ref/index.html new file mode 100644 index 0000000000..4e52cf62cd --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/ref/index.html @@ -0,0 +1,16 @@ +--- +title: ref +slug: Mozilla/Tech/XUL/Atrybut/ref +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/ref +--- +
« Dokumentacja XUL
+ +
+
ref
+
Typ:URI źródła RDF
+
Dla szablonowo generowanych elementów, ten atrybut jest stosowany do określenia korzenia (węzła głównego) RDF, gdzie rozpoczyna się generowanie zawartości. Będzie ona przesyłana do wartości. This will correspond to the value of an about attribute on an RDF container. This attribute should be placed alongside the datasources attribute.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/removeelement/index.html b/files/pl/mozilla/tech/xul/atrybut/removeelement/index.html new file mode 100644 index 0000000000..947a1f3c52 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/removeelement/index.html @@ -0,0 +1,21 @@ +--- +title: removeelement +slug: Mozilla/Tech/XUL/Atrybut/removeelement +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/removeelement +--- +
+ « Dokumentacja XUL
+
+
+ removeelement
+
+ Typ: + + id elementu +
+
+ Kiedy umieszczony na elemencie w nakładce overlay, to sygnalizuje, który element w bazowym pliku powinien być usunięty z okna.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/resizeafter/index.html b/files/pl/mozilla/tech/xul/atrybut/resizeafter/index.html new file mode 100644 index 0000000000..f49901fc4e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/resizeafter/index.html @@ -0,0 +1,32 @@ +--- +title: resizeafter +slug: Mozilla/Tech/XUL/Atrybut/resizeafter +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/resizeafter +--- +
« Dokumentacja XUL
+ +
+
resizeafter
+
+ +
+
Typ:jedna z poniższych wartości
+
Ten atrybut sygnalizuje, który element po prawej lub poniżej rozdzielacza (splitter) powinien zmienić rozmiar, kiedy rozdzielacz zmienia swoje położenie.
+
+ + + +
+

Zobacz także

+ +

resizebefore

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/resizebefore/index.html b/files/pl/mozilla/tech/xul/atrybut/resizebefore/index.html new file mode 100644 index 0000000000..a59c601ece --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/resizebefore/index.html @@ -0,0 +1,25 @@ +--- +title: resizebefore +slug: Mozilla/Tech/XUL/Atrybut/resizebefore +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/resizebefore +--- +
+ « Dokumentacja XUL
+
+
+ resizebefore
+
+ Typ: + + jedna wartość z poniższych +
+
+ Ten atrybut sygnalizuje, który element po lewej lub powyżej rozdzielacza (splitter) powinien zmienić rozmiar, kiedy rozdzielacz zmienia swoje położenie.
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/resizer.dir/index.html b/files/pl/mozilla/tech/xul/atrybut/resizer.dir/index.html new file mode 100644 index 0000000000..53f9b69a51 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/resizer.dir/index.html @@ -0,0 +1,26 @@ +--- +title: resizer.dir +slug: Mozilla/Tech/XUL/Atrybut/resizer.dir +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/resizer.dir +--- +
« Dokumentacja XUL
+
dir +
Typ: jedna z wartości poniżej +
Kierunek w którym zmienia się rozmiar okna.
+ +
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/rows/index.html b/files/pl/mozilla/tech/xul/atrybut/rows/index.html new file mode 100644 index 0000000000..9fede72cce --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/rows/index.html @@ -0,0 +1,21 @@ +--- +title: rows +slug: Mozilla/Tech/XUL/Atrybut/rows +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/rows +--- +
+ « Dokumentacja XUL
+
+
+ rows
+
+ Typ: + + integer +
+
+ Liczba wierszy do wyświetlenia w elemencie. Jeśli w elemencie znajduje się więcej niż ta liczba wierszy, pojawi się pasek przewijania, który użytkownik może zastosować do przewijania do innych wierszy. Aby pobrać aktualną liczbę wierszy w elemencie, zastosuj metodę getRowCount.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/screenx/index.html b/files/pl/mozilla/tech/xul/atrybut/screenx/index.html new file mode 100644 index 0000000000..56c22ec003 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/screenx/index.html @@ -0,0 +1,21 @@ +--- +title: screenX +slug: Mozilla/Tech/XUL/Atrybut/screenX +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/screenX +--- +
+ « Dokumentacja XUL
+
+
+ screenX
+
+ Typ: + + integer +
+
+ Pozioma pozycja, w którym miejscu pojawi się w oknie na ekranie.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/screeny/index.html b/files/pl/mozilla/tech/xul/atrybut/screeny/index.html new file mode 100644 index 0000000000..d550a1abf7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/screeny/index.html @@ -0,0 +1,18 @@ +--- +title: screenY +slug: Mozilla/Tech/XUL/Atrybut/screenY +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/screenY +--- +
« Dokumentacja XUL
+
screenY +
Typ: integer +
Pionowe położenie, w którym pojawia się okno na ekranie. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/script.src/index.html b/files/pl/mozilla/tech/xul/atrybut/script.src/index.html new file mode 100644 index 0000000000..7a8c0c0cad --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/script.src/index.html @@ -0,0 +1,17 @@ +--- +title: script.src +slug: Mozilla/Tech/XUL/Atrybut/script.src +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/script.src +--- +
« Dokumentacja XUL
+
src +
Typ: URL +
Adres URL skryptu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/script.type/index.html b/files/pl/mozilla/tech/xul/atrybut/script.type/index.html new file mode 100644 index 0000000000..70b8fbe7c1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/script.type/index.html @@ -0,0 +1,21 @@ +--- +title: script.type +slug: Mozilla/Tech/XUL/Atrybut/script.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/script.type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: + + Typ zawartości językowej +
+
+ Język skryptu. Zazwyczaj, będziemy ustawiać go na application/x-javascript.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/searchsessions/index.html b/files/pl/mozilla/tech/xul/atrybut/searchsessions/index.html new file mode 100644 index 0000000000..04da29c900 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/searchsessions/index.html @@ -0,0 +1,26 @@ +--- +title: searchSessions +slug: Mozilla/Tech/XUL/Atrybut/searchSessions +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/searchSessions +--- +
+ « Dokumentacja XUL
+
+
+ searchSessions
+
+ Typ: + + lista nazw sesji rozdzielona spacją +
+
+ Ustawia słowo kluczowe sygnalizując jakiego typu dane są szukane dla autouzupełnienia. Możemy ustawić wiele typów poprzez rozdzielenie ich nazw spacją. Następujące wartości są możliwe, mimo że komponenty użytkownika mogą być zainstalowane, które dodają inne.
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/selected/index.html b/files/pl/mozilla/tech/xul/atrybut/selected/index.html new file mode 100644 index 0000000000..5640dc6c5e --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/selected/index.html @@ -0,0 +1,29 @@ +--- +title: selected +slug: Mozilla/Tech/XUL/Atrybut/selected +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/selected +--- +
+ « Dokumentacja XUL
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Sygnalizuje gdzie element jest zaznaczony lub nie. Ta wartość jest tylko do odczytu. Aby zmienić zaznaczenie, ustaw pozostałe własności selectedIndex lub selectedItem stanowiące ten element.
+
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/selectedindex/index.html b/files/pl/mozilla/tech/xul/atrybut/selectedindex/index.html new file mode 100644 index 0000000000..261d77a9c9 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/selectedindex/index.html @@ -0,0 +1,21 @@ +--- +title: selectedIndex +slug: Mozilla/Tech/XUL/Atrybut/selectedIndex +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/selectedIndex +--- +
+ « Dokumentacja XUL
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia indeks aktualnie zaznaczonego panelu. Pierwsza pozycja jest w indeksie jako 0.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/separator.orient/index.html b/files/pl/mozilla/tech/xul/atrybut/separator.orient/index.html new file mode 100644 index 0000000000..2067c04438 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/separator.orient/index.html @@ -0,0 +1,20 @@ +--- +title: separator.orient +slug: Mozilla/Tech/XUL/Atrybut/separator.orient +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/separator.orient +--- +
« Dokumentacja XUL
+
orient +
Typ: jedna z wartości poniżej +
Stosowany do określenia czy separator oddziela poziomo czy pionowo. Uważaj, niektóre wartości są odwrotnością tego, co mogłoby się wydawać niemożliwe. +
+ +
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/showcommentcolumn/index.html b/files/pl/mozilla/tech/xul/atrybut/showcommentcolumn/index.html new file mode 100644 index 0000000000..a1cc0f2a5a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/showcommentcolumn/index.html @@ -0,0 +1,21 @@ +--- +title: showCommentColumn +slug: Mozilla/Tech/XUL/Atrybut/showCommentColumn +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/showCommentColumn +--- +
+ « Dokumentacja XUL
+
+
+ showCommentColumn
+
+ Typ: + + boolean +
+
+ Jeśli true, kolumna komentarza pojawi się w okienku wyskakującym. Dla historii adresów URL, kolumnę komentarzy będzie stanowić tytuł strony połączony z każdym adresem URL. Jeśli ten atrybut nie jest określony, kolumna komentarza nie pojawi się.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/size/index.html b/files/pl/mozilla/tech/xul/atrybut/size/index.html new file mode 100644 index 0000000000..1856859259 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/size/index.html @@ -0,0 +1,21 @@ +--- +title: size +slug: Mozilla/Tech/XUL/Atrybut/size +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/size +--- +
+ « Dokumentacja XUL
+
+
+ size
+
+ Typ: + + integer +
+
+ Liczba znaków, które mogą zostać wyświetlone w polu tekstowym.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/sizemode/index.html b/files/pl/mozilla/tech/xul/atrybut/sizemode/index.html new file mode 100644 index 0000000000..9566479900 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/sizemode/index.html @@ -0,0 +1,26 @@ +--- +title: sizemode +slug: Mozilla/Tech/XUL/Atrybut/sizemode +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/sizemode +--- +
+ « Dokumentacja XUL
+
+
+ sizemode
+
+ Typ: + + jedna z wartości poniżej +
+
+ Stan okna (window). Następujące wartości mogą zostać zastosowane:
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/sizetopopup/index.html b/files/pl/mozilla/tech/xul/atrybut/sizetopopup/index.html new file mode 100644 index 0000000000..0f2a126189 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/sizetopopup/index.html @@ -0,0 +1,21 @@ +--- +title: sizetopopup +slug: Mozilla/Tech/XUL/Atrybut/sizetopopup +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/sizetopopup +--- +
« Dokumentacja XUL
+ +
+
sizetopopup
+
Typ:jedna z poniższych wartości
+
Indicates how the menu width and the menupopup width are determined. If the sizetopopup attribute is left out or set to none, the menu will be its preferred width and the popup may extend outside of this width, unaffected by the maximum width of the menu itself.
+
+ + diff --git a/files/pl/mozilla/tech/xul/atrybut/sortactive/index.html b/files/pl/mozilla/tech/xul/atrybut/sortactive/index.html new file mode 100644 index 0000000000..55507b63ce --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/sortactive/index.html @@ -0,0 +1,21 @@ +--- +title: sortActive +slug: Mozilla/Tech/XUL/Atrybut/sortActive +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/sortActive +--- +
+ « Dokumentacja XUL
+
+
+ sortActive
+
+ Typ: + + boolean +
+
+ Powinien być ustawiony na true, dla kolumn, które powinny być domyślnie sortowane.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/sortdirection/index.html b/files/pl/mozilla/tech/xul/atrybut/sortdirection/index.html new file mode 100644 index 0000000000..b330d81b70 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/sortdirection/index.html @@ -0,0 +1,26 @@ +--- +title: sortDirection +slug: Mozilla/Tech/XUL/Atrybut/sortDirection +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/sortDirection +--- +
+ « Dokumentacja XUL
+
+
+ sortDirection
+
+ Typ: + + jedna z wartości poniżej +
+
+ Ustaw ten atrybut na ustawienie kierunku, w którym zawartość szablonów została wygenerowana i posortowana. Zastosuj atrybut sortResource, aby określić klucz sortowania.
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/sortresource/index.html b/files/pl/mozilla/tech/xul/atrybut/sortresource/index.html new file mode 100644 index 0000000000..8d1ef44005 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/sortresource/index.html @@ -0,0 +1,21 @@ +--- +title: sortResource +slug: Mozilla/Tech/XUL/Atrybut/sortResource +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/sortResource +--- +
+ « Dokumentacja XUL
+
+
+ sortResource
+
+ Typ: + + adres URI predykatu RDF +
+
+ Dla szablonu generowanej treści, określa słowo kluczowe sortowania, jeśli będziemy chcieli, aby treść była sortowana. Słowo kluczowe powinno być pełnym adresem URI źródła sortowania, na przykład 'http://home.netscape.com/NC-rdf#Name'. Umieść ten atrybut na tym samym elemencie jako atrybut datasources. Zastosuj sortResource2 do określenia drugiego słowa kluczowego sortowania.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/sortresource2/index.html b/files/pl/mozilla/tech/xul/atrybut/sortresource2/index.html new file mode 100644 index 0000000000..1c1fdb3bf2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/sortresource2/index.html @@ -0,0 +1,18 @@ +--- +title: sortResource2 +slug: Mozilla/Tech/XUL/Atrybut/sortResource2 +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/sortResource2 +--- +
« Dokumentacja XUL
+
sortResource2 +
Typ: adres URI predykatu RDF +
Drugie słowo kluczowe dla sortowanej treści. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/spellcheck/index.html b/files/pl/mozilla/tech/xul/atrybut/spellcheck/index.html new file mode 100644 index 0000000000..7000f4b371 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/spellcheck/index.html @@ -0,0 +1,25 @@ +--- +title: spellcheck +slug: Mozilla/Tech/XUL/Atrybut/spellcheck +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/spellcheck +--- +
+ « Dokumentacja XUL
+
+
+ spellcheck
+
+ Typ: + + boolean +
+
+ Nowość od wersji Firefoksa 2.0.0.2
+
+ Jeśli true, sprawdzanie pisowni jest włączone domyślnie dla pól tekstowych; jeśli false, sprawdzanie pisowni jest wyłączone domyślnie.
+
+ Jeśli nie jest określone, to domyślnie jest false
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/src/index.html b/files/pl/mozilla/tech/xul/atrybut/src/index.html new file mode 100644 index 0000000000..d70ceaf06d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/src/index.html @@ -0,0 +1,35 @@ +--- +title: src +slug: Mozilla/Tech/XUL/Atrybut/src +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/src +--- +
+ « Dokumentacja XUL
+
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+
+

Przykłady

+
<iframe id="content-body" src="http://www.mozilla.org/"/>
+<browser src="http://www.mozilla.org" flex="1"/>
+<image src='Firefoxlogo.png' width='135' height='130'/>
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/state/index.html b/files/pl/mozilla/tech/xul/atrybut/state/index.html new file mode 100644 index 0000000000..8abd191d0a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/state/index.html @@ -0,0 +1,21 @@ +--- +title: state +slug: Mozilla/Tech/XUL/Atrybut/state +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/state +--- +
« Dokumentacja XUL
+
state +
Typ: jedna z wartości poniżej +
Sygnalizuje gdzie splitter posiada zawiniętą zawartość lub nie. Ten atrybut będzie aktualizowany automatycznie jak rozdzielacz jest przenoszony i generalnie jest stosowany w arkuszu stylów, aby móc zastosować różne wyglądy dla każdego stanu. +
+ +
+

Więcej informacji w artykule o rozdzielaczach w kursie XUL +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/statusbar/index.html b/files/pl/mozilla/tech/xul/atrybut/statusbar/index.html new file mode 100644 index 0000000000..5e4470211d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/statusbar/index.html @@ -0,0 +1,23 @@ +--- +title: statusbar +slug: Mozilla/Tech/XUL/Atrybut/statusbar +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/statusbar +--- +
+ « Dokumentacja XUL
+
+
+ statusbar
+
+ Typ: + + id elementu paska stanu +
+
+ Jeśli ustawimy ten atrybut na id elementu statusbar, to etykieta na pasku stanu będzie aktualizowana do statustext w momencie, gdy użytkownik przesunie kursor myszy nad pozycję w menu.
+
+
+  
diff --git a/files/pl/mozilla/tech/xul/atrybut/statustext/index.html b/files/pl/mozilla/tech/xul/atrybut/statustext/index.html new file mode 100644 index 0000000000..fbbc7ce428 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/statustext/index.html @@ -0,0 +1,39 @@ +--- +title: statustext +slug: Mozilla/Tech/XUL/Atrybut/statustext +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/statustext +--- +
« Dokumentacja XUL
+
statustext +
Typ: string +
Stosujemy do ustawienia tekstu, który zostanie wyświetlony na pasku stanu, kiedy użytkownik przesuwa mysz nad elementem. Przeglądarka Mozilli nie reguluje paska stanu automatycznie. Ten atrybut służy tylko jako miejsce do przechowywania tekstu. W Firefoksie, ten tekst jest umieszczany automatycznie w statusbar dla pozycji menu (menuitems) na pasku menu. +
+
+

Przykład

+
<!-- ustaw wiadomość do pokazania kiedy najedziemy myszką na przycisk -->
+<button label="Connect" statustext="Connect to remote server"
+      onmouseover="setStatusMessage(this)" onmouseout="clearStatusMessage()"/>
+<button label="Ping" statustext="Ping the server"
+      onmouseover="setStatusMessage(this)" onmouseout="clearStatusMessage()"/>
+
+<statusbar>
+  <statusbarpanel id="myStatusPanel" label="" flex="1"/>
+  <spacer flex="1"/>
+</statusbar>
+
+<script>
+function setStatusMessage(obj){
+  document.getElementById('myStatusPanel').label = obj.getAttribute('statustext');
+}
+function clearStatusMessage(obj){
+  document.getElementById('myStatusPanel').label = '';
+}
+</script>
+
+

Zobacz także

+

statusbar i statusbarpanel +

+
diff --git a/files/pl/mozilla/tech/xul/atrybut/stringbundle.src/index.html b/files/pl/mozilla/tech/xul/atrybut/stringbundle.src/index.html new file mode 100644 index 0000000000..1e2a12e072 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/stringbundle.src/index.html @@ -0,0 +1,18 @@ +--- +title: stringbundle.src +slug: Mozilla/Tech/XUL/Atrybut/stringbundle.src +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/stringbundle.src +--- +
« Dokumentacja XUL
+
src +
Typ: własność tekstowa adresu URL pliku +
Adres URL własności pliku zawierający łańcuch tekstowy do lokalizacji. +
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/style/index.html b/files/pl/mozilla/tech/xul/atrybut/style/index.html new file mode 100644 index 0000000000..3525d99052 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/style/index.html @@ -0,0 +1,21 @@ +--- +title: style +slug: Mozilla/Tech/XUL/Atrybut/style +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/style +--- +
+ « Dokumentacja XUL
+
+
+ style
+
+ Typ: + + styl CSS inline +
+
+ Reguły stylu CSS stosowany do elementu. Składnia jest jako atrybut stylu HTML. Jest preferowany do umieszczenia reguł stylu w arkuszu stylów.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/subject/index.html b/files/pl/mozilla/tech/xul/atrybut/subject/index.html new file mode 100644 index 0000000000..2f0352bdc7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/subject/index.html @@ -0,0 +1,16 @@ +--- +title: subject +slug: Mozilla/Tech/XUL/Atrybut/subject +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/subject +--- +
« Dokumentacja XUL
+
subject +
Temat elementu. Może być odwołaniem się do zmiennej lub URI źródła RDF. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/substate/index.html b/files/pl/mozilla/tech/xul/atrybut/substate/index.html new file mode 100644 index 0000000000..88dddbd18d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/substate/index.html @@ -0,0 +1,27 @@ +--- +title: substate +slug: Mozilla/Tech/XUL/Atrybut/substate +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/substate +--- +
+ « Dokumentacja XUL
+
+
+ substate
+
+ Typ: + + jedna z wartości poniżej +
+
+ W rozdzielaczu, który posiada state="collapsed" i collapse="both", określa kierunek w którym rozdzielacz aktualnie zawijany. Cechą Gecko 1.9+ jest collapse="both" i nie będzie ona miała efektu we wcześniejszych wersjach.
+
+ +
+  
diff --git a/files/pl/mozilla/tech/xul/atrybut/tab.selected/index.html b/files/pl/mozilla/tech/xul/atrybut/tab.selected/index.html new file mode 100644 index 0000000000..a317f330cb --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/tab.selected/index.html @@ -0,0 +1,28 @@ +--- +title: tab.selected +slug: Mozilla/Tech/XUL/Atrybut/tab.selected +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/tab.selected +--- +
+ « Dokumentacja XUL
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Ten atrybut ustawia true, jeśli karta jest zaznaczona domyślnie.
+
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/tabindex/index.html b/files/pl/mozilla/tech/xul/atrybut/tabindex/index.html new file mode 100644 index 0000000000..886f8e55ec --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/tabindex/index.html @@ -0,0 +1,15 @@ +--- +title: tabindex +slug: Mozilla/Tech/XUL/Atrybut/tabindex +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/tabindex +--- +
« Dokumentacja XUL
+
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/tabs.onselect/index.html b/files/pl/mozilla/tech/xul/atrybut/tabs.onselect/index.html new file mode 100644 index 0000000000..30866b2ac5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/tabs.onselect/index.html @@ -0,0 +1,28 @@ +--- +title: tabs.onselect +slug: Mozilla/Tech/XUL/Atrybut/tabs.onselect +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/tabs.onselect +--- +
+ « Dokumentacja XUL
+
+
+ onselect
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest przesyłane do elementu tabs, kiedy ta karta jest zmieniana.
+
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/template.container/index.html b/files/pl/mozilla/tech/xul/atrybut/template.container/index.html new file mode 100644 index 0000000000..9a9d4fcc17 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/template.container/index.html @@ -0,0 +1,21 @@ +--- +title: template.container +slug: Mozilla/Tech/XUL/Atrybut/template.container +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/template.container +--- +
+ « Dokumentacja XUL
+
+
+ container
+
+ Typ: + + string +
+
+ Opcjonalnie może być ustawiony na zmienną do zastosowania jako kontener lub odniesienie do zmiennej. Jeśli nie jest określony, zmienna określa w atrybucie uri użycie znacznika zawartości w pierwszej zasadzie szablonów.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/textbox.onchange/index.html b/files/pl/mozilla/tech/xul/atrybut/textbox.onchange/index.html new file mode 100644 index 0000000000..38a7ff82b8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/textbox.onchange/index.html @@ -0,0 +1,21 @@ +--- +title: textbox.onchange +slug: Mozilla/Tech/XUL/Atrybut/textbox.onchange +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/textbox.onchange +--- +
+ « Dokumentacja XUL
+
+
+ onchange
+
+ Typ: + + kod skryptu +
+
+ Kod w atrybucie onchange jest wywołany, kiedy wartość elementu jest zmieniona.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/textbox.type/index.html b/files/pl/mozilla/tech/xul/atrybut/textbox.type/index.html new file mode 100644 index 0000000000..a28aa65508 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/textbox.type/index.html @@ -0,0 +1,31 @@ +--- +title: textbox.type +slug: Mozilla/Tech/XUL/Atrybut/textbox.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Attribute/textbox.type +--- +
« Dokumentacja XUL
+ +
+
type
+
Typ:jedna z wartości poniżej
+
Możemy ustawić typ tego atrybutu na jedną z poniższych wartości dla bardziej specjalistycznych typów pola tekstowego. Nie ustawiaj tego typu, jeśli chcesz zastosować regularne pole tekstowe.
+
+ + + +
+

Zobacz także

+ + +
diff --git a/files/pl/mozilla/tech/xul/atrybut/textbox.value/index.html b/files/pl/mozilla/tech/xul/atrybut/textbox.value/index.html new file mode 100644 index 0000000000..a3279f1b04 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/textbox.value/index.html @@ -0,0 +1,28 @@ +--- +title: textbox.value +slug: Mozilla/Tech/XUL/Atrybut/textbox.value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/textbox.value +--- +
+ « Dokumentacja XUL
+
+
+ value
+
+ Typ: + + string +
+
+ Wartość domyślna wpisywana w pole tekstowe. Atrybut tylko podtrzymuje domyślną wartość i nie zostanie ona nigdy zmodyfikowana, kiedy użytkownik wpisze tekst. Aby pobrać zaktualizowaną wartość, zastosuj własność value.
+
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/textnode.value/index.html b/files/pl/mozilla/tech/xul/atrybut/textnode.value/index.html new file mode 100644 index 0000000000..d727f44016 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/textnode.value/index.html @@ -0,0 +1,18 @@ +--- +title: textnode.value +slug: Mozilla/Tech/XUL/Atrybut/textnode.value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/textnode.value +--- +
« Dokumentacja XUL
+
value +
Typ: adres URL predykatu RDF +
Wartość tekstowa do wyświetlenia. Ta wartość powinna być własnością RDF. +
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/timepicker.value/index.html b/files/pl/mozilla/tech/xul/atrybut/timepicker.value/index.html new file mode 100644 index 0000000000..016e8f1944 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/timepicker.value/index.html @@ -0,0 +1,18 @@ +--- +title: timepicker.value +slug: Mozilla/Tech/XUL/Atrybut/timepicker.value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/timepicker.value +--- +
+ « Dokumentacja XUL
+
+
+ value
+
+ Typ: string
+
+ Początkowa wartość elementu timepicker w obu formach, czyli HH:MM:SS lub HH:MM.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/title/index.html b/files/pl/mozilla/tech/xul/atrybut/title/index.html new file mode 100644 index 0000000000..038f45340c --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/title/index.html @@ -0,0 +1,18 @@ +--- +title: title +slug: Mozilla/Tech/XUL/Atrybut/title +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/title +--- +
« Dokumentacja XUL
+
title +
Typ: string +
Tekst wyświetlony na pasku tytułu w oknie dialogowym. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/toolbar.mode/index.html b/files/pl/mozilla/tech/xul/atrybut/toolbar.mode/index.html new file mode 100644 index 0000000000..7a3dae7d67 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/toolbar.mode/index.html @@ -0,0 +1,27 @@ +--- +title: toolbar.mode +slug: Mozilla/Tech/XUL/Atrybut/toolbar.mode +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Attribute/toolbar.mode +--- +
+ « Dokumentacja XUL
+
+
+ mode
+
+ Tylko Firefox
+
+ Typ: + + jedna z poniższych wartości +
+
+ Jak element toolbarbutton jest wyświetlany na pasku narzędzi (toolbar).
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/toolbarbutton.type/index.html b/files/pl/mozilla/tech/xul/atrybut/toolbarbutton.type/index.html new file mode 100644 index 0000000000..b6962ab7a8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/toolbarbutton.type/index.html @@ -0,0 +1,32 @@ +--- +title: toolbarbutton.type +slug: Mozilla/Tech/XUL/Atrybut/toolbarbutton.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/toolbarbutton.type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: + + string +
+
+ Typ przycisku. Jeśli ten atrybut nie jest prezentowany, tworzony jest normalny przycisk. Możemy użyć tego atrybutu do wartości menu, aby tworzyć przyciski wyskakującego menu. To będzie typowy przypadek przycisku wyświetlanego w inny sposób.
+
+ +
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/toolbarname/index.html b/files/pl/mozilla/tech/xul/atrybut/toolbarname/index.html new file mode 100644 index 0000000000..077430caea --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/toolbarname/index.html @@ -0,0 +1,23 @@ +--- +title: toolbarname +slug: Mozilla/Tech/XUL/Atrybut/toolbarname +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/toolbarname +--- +
+ « Dokumentacja XUL
+
+
+ toolbarname
+
+ Tylko w Firefoksie
+
+ Typ: + + string +
+
+ Nazwa paska narzędzi toolbar, który jest na liście pasków narzędzi w menu, aby użyć paska zaznacz Pokaż/Ukryj.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/tooltip/index.html b/files/pl/mozilla/tech/xul/atrybut/tooltip/index.html new file mode 100644 index 0000000000..82be83c0ab --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/tooltip/index.html @@ -0,0 +1,21 @@ +--- +title: tooltip +slug: Mozilla/Tech/XUL/Atrybut/tooltip +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/tooltip +--- +
+ « Dokumentacja XUL
+
+
+ tooltip
+
+ Typ: + + id elementu tooltip +
+
+ Powinien być ustawiony na wartość id elementu popup, który powinien być zastosowany jako okienko porady, kiedy kursor myszki jest w danym momencie nad elementem. Porada automatycznie znika, kiedy kursor zostaje przesunięty z nad elementu. Jeśli ten atrybut jest ustawiony na '_child', to pierwsza porada elementu potomnego zostanie użyta wewnątrz elementu.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/tooltiptextnew/index.html b/files/pl/mozilla/tech/xul/atrybut/tooltiptextnew/index.html new file mode 100644 index 0000000000..616e1cbbe5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/tooltiptextnew/index.html @@ -0,0 +1,23 @@ +--- +title: tooltiptextnew +slug: Mozilla/Tech/XUL/Atrybut/tooltiptextnew +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/tooltiptextnew +--- +
+ « Dokumentacja XUL
+
+
+ tooltiptextnew
+
+ Nie w Firefoksie
+
+ Typ: + + string +
+
+ Stosuje się do ustawienia tekstu, który przydzielony jest do podpowiedzi, kiedy użytkownik przesunie kursor myszki nad nowym przyciskiem w wierszu karty.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/top/index.html b/files/pl/mozilla/tech/xul/atrybut/top/index.html new file mode 100644 index 0000000000..ef4506d502 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/top/index.html @@ -0,0 +1,21 @@ +--- +title: top +slug: Mozilla/Tech/XUL/Atrybut/top +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/top +--- +
+ « Dokumentacja XUL
+
+
+ top
+
+ Typ: + + string + (reprezentujący integer)
+
+ Dla elementów umieszczonych wewnątrz stosu (stack), określa pozycję elementu od górnego brzegu.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/tree.onselect/index.html b/files/pl/mozilla/tech/xul/atrybut/tree.onselect/index.html new file mode 100644 index 0000000000..66f23f58b4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/tree.onselect/index.html @@ -0,0 +1,23 @@ +--- +title: tree.onselect +slug: Mozilla/Tech/XUL/Atrybut/tree.onselect +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/tree.onselect +--- +
+ « Dokumentacja XUL
+
+
+ onselect
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest wysyłane do tree, kiedy zostanie zaznaczony wiersz lub kiedykolwiek zostanie zmienione zaznaczenie. Użytkownik może zaznaczyć wiele wierszy poprzez przytrzymanie klawisza Shift lub Control i klikanie kursorem myszki w wiersze, które chce zaznaczyć. Zdarzenie onselect będzie przesyłane dla każdej pozycji która zostanie zaznaczona lub odznaczona.
+
+
+ Zobacz stronę o zaznaczeniu drzewa w kursie XUL-a, aby dowiedzieć się więcej na ten temat.
diff --git a/files/pl/mozilla/tech/xul/atrybut/treecell.mode/index.html b/files/pl/mozilla/tech/xul/atrybut/treecell.mode/index.html new file mode 100644 index 0000000000..920383c864 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/treecell.mode/index.html @@ -0,0 +1,26 @@ +--- +title: treecell.mode +slug: Mozilla/Tech/XUL/Atrybut/treecell.mode +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/treecell.mode +--- +
+ « Dokumentacja XUL
+
+
+ mode
+
+ Typ: + + jedna z poniższych wartości +
+
+ Dla kolumn, które są paskami postępu, typu określonego paska postępu w użyciu:
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/treecell.src/index.html b/files/pl/mozilla/tech/xul/atrybut/treecell.src/index.html new file mode 100644 index 0000000000..58f967701b --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/treecell.src/index.html @@ -0,0 +1,18 @@ +--- +title: treecell.src +slug: Mozilla/Tech/XUL/Atrybut/treecell.src +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/treecell.src +--- +
« Dokumentacja XUL
+
src +
Typ: adres URL obrazka +
Ustawia ten adres URL obrazka do wyświetlenia w komórce drzewa. Jeśli ten atrybut jest opuszczony, to żaden obrazek się nie wyświetli. Możemy posiadać oba obrazki i etykiety.
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/treecol.src/index.html b/files/pl/mozilla/tech/xul/atrybut/treecol.src/index.html new file mode 100644 index 0000000000..ac3ecf85ef --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/treecol.src/index.html @@ -0,0 +1,18 @@ +--- +title: treecol.src +slug: Mozilla/Tech/XUL/Atrybut/treecol.src +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/treecol.src +--- +
« Dokumentacja XUL
+
src +
Typ: adres URL obrazka +
Ustaw ten atrybut aby posiadać element obrazka w nagłówku treecol zamiast etykiety (label). Ustaw adres URL obrazka, który zostanie wyświetlony w nagłówku kolumny drzewa. Jeśli ten atrybut zostanie opuszczony, to nie pojawi się żaden obrazek i zamiast niego użyta zostanie etykieta. Klasa treecol-image musi być zastosowana na elemencie treecol dla obrazka do wyświetlenia. Nie możemy mieć obu (obrazka i etykiety) pokazanych w jednym momencie. +
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/treecol.type/index.html b/files/pl/mozilla/tech/xul/atrybut/treecol.type/index.html new file mode 100644 index 0000000000..26b7927b1d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/treecol.type/index.html @@ -0,0 +1,50 @@ +--- +title: treecol.type +slug: Mozilla/Tech/XUL/Atrybut/treecol.type +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/treecol.type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: + + jedna z wartości poniżej +
+
+ Typ kolumny drzewa. Domyślnie jest to kolumna tekstowa, która wyświetla zawartość jako tekst.
+
+ +
+

Jeśli używamy type="checkbox", to tree i każda kolumna drzewa (treecol) musi być edytowalna. Jest nam potrzebne zastosowanie CSS, do zrobienia przełącznika pola wyboru. Przykład poniżej stylu CSS wykorzystuje pola wyboru aktualnego motywu:

+
treechildren::-moz-tree-checkbox
+{
+  /* odznaczone pole wyboru komórek */
+  list-style-image: none;
+}
+treechildren::-moz-tree-checkbox(checked)
+{
+  /* zaznaczone pole wyboru komórek */
+  list-style-image: url("chrome://global/skin/checkbox/cbox-check.gif");
+}
+treechildren::-moz-tree-checkbox(disabled)
+{
+  /* wyłączone pole wyboru komórek  */
+  list-style-image: url("chrome://global/skin/checkbox/cbox-check-dis.gif");
+}
+
+

Zobacz także

+ +
+

 

diff --git a/files/pl/mozilla/tech/xul/atrybut/treeitem.label/index.html b/files/pl/mozilla/tech/xul/atrybut/treeitem.label/index.html new file mode 100644 index 0000000000..666fe13319 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/treeitem.label/index.html @@ -0,0 +1,18 @@ +--- +title: treeitem.label +slug: Mozilla/Tech/XUL/Atrybut/treeitem.label +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/treeitem.label +--- +
« Dokumentacja XUL
+
label +
Typ: string +
Dla elementów tree z pojedynczą kolumną, etykieta może być umieszczona bezpośrednio na elemencie treeitem bez potrzebnych elementów treerow i treecell wewnątrz. +
+
+

Zobacz także

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/type/index.html b/files/pl/mozilla/tech/xul/atrybut/type/index.html new file mode 100644 index 0000000000..1915cec3c0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/type/index.html @@ -0,0 +1,16 @@ +--- +title: type +slug: Mozilla/Tech/XUL/Atrybut/type +translation_of: Archive/Mozilla/XUL/Attribute/type +--- +
+

Zobacz

+ +
diff --git a/files/pl/mozilla/tech/xul/atrybut/useraction/index.html b/files/pl/mozilla/tech/xul/atrybut/useraction/index.html new file mode 100644 index 0000000000..df1773dcc2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/useraction/index.html @@ -0,0 +1,26 @@ +--- +title: userAction +slug: Mozilla/Tech/XUL/Atrybut/userAction +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/userAction +--- +
+ « Dokumentacja XUL
+
+
+ userAction
+
+ Typ: + + jedna z wartości poniżej +
+
+ Ten atrybut ustawia akcje wykonywane aktualnie przez użytkownika. Możliwe wartości:
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/validate/index.html b/files/pl/mozilla/tech/xul/atrybut/validate/index.html new file mode 100644 index 0000000000..3a86e502f8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/validate/index.html @@ -0,0 +1,25 @@ +--- +title: validate +slug: Mozilla/Tech/XUL/Atrybut/validate +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/validate +--- +
+ « Dokumentacja XUL
+
+
+ validate
+
+ Typ: + + jedna z poniższych wartości +
+
+ Atrybut ten określa, czy obrazek ma być wczytywany z pamięci podręcznej. Może być to przydatne, jeśli obrazki są wczytywane z serwera zdalnego, albo planowana jest częsta ich podmiana. Poniższe wartości są akceptowane; pominięcie tego atrybutu spowoduje zastosowanie wartości domyślnej.
+
+ diff --git a/files/pl/mozilla/tech/xul/atrybut/value/index.html b/files/pl/mozilla/tech/xul/atrybut/value/index.html new file mode 100644 index 0000000000..57e42ed489 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/value/index.html @@ -0,0 +1,30 @@ +--- +title: value +slug: Mozilla/Tech/XUL/Atrybut/value +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/value +--- +
+ « Dokumentacja XUL
+
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+
+

Zobacz także

+ +
+

diff --git a/files/pl/mozilla/tech/xul/atrybut/wait-cursor/index.html b/files/pl/mozilla/tech/xul/atrybut/wait-cursor/index.html new file mode 100644 index 0000000000..c6a7fd539a --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/wait-cursor/index.html @@ -0,0 +1,21 @@ +--- +title: wait-cursor +slug: Mozilla/Tech/XUL/Atrybut/wait-cursor +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/wait-cursor +--- +
+ « Dokumentacja XUL
+
+
+ wait-cursor
+
+ Typ: + + boolean +
+
+ Ustaw ten atrybut na wartość true, aby zmienić kursor na zajęty, kiedy znajdzie się on nad danym elementem. Zwykle ustawia się ten atrybut w elemencie window lub innym elemencie najwyższego poziomu.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/width/index.html b/files/pl/mozilla/tech/xul/atrybut/width/index.html new file mode 100644 index 0000000000..6a81d4bf4d --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/width/index.html @@ -0,0 +1,21 @@ +--- +title: width +slug: Mozilla/Tech/XUL/Atrybut/width +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/width +--- +
+ « Dokumentacja XUL
+
+
+ width
+
+ Typ: + + string + (reprezentujący integer)
+
+ Szerokość elementu w pikselach. Zwykle jednak powinno stosować się własność width w arkuszu stylów.
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/windowtype/index.html b/files/pl/mozilla/tech/xul/atrybut/windowtype/index.html new file mode 100644 index 0000000000..c4837a7a87 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/windowtype/index.html @@ -0,0 +1,18 @@ +--- +title: windowtype +slug: Mozilla/Tech/XUL/Atrybut/windowtype +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/windowtype +--- +
« Dokumentacja XUL
+
windowtype +
Typ: string +
Ustawia wartość atrybutu na łańcuch znaków, który będzie identyfikował typ okna. Może być wykorzystany, na przykład, do odróżnienia okna przeglądarki i okna edytora. Część funkcji obsługi okien w Mozilli stosuje ten atrybut do grupowania razem okien tego samego typu. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/atrybut/wrap/index.html b/files/pl/mozilla/tech/xul/atrybut/wrap/index.html new file mode 100644 index 0000000000..45b653c188 --- /dev/null +++ b/files/pl/mozilla/tech/xul/atrybut/wrap/index.html @@ -0,0 +1,17 @@ +--- +title: wrap +slug: Mozilla/Tech/XUL/Atrybut/wrap +tags: + - Atrybuty_XUL + - Dokumentacja_XUL +translation_of: Archive/Mozilla/XUL/Attribute/wrap +--- +
« Dokumentacja XUL
+
wrap +
Typ: string +
Ustawia wartość atrybutu na off, aby wyłączyć zawijanie linii w polu tekstowym. Jeśli atrybut nie jest podany, zawijanie linii jest włączone. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/bbox/index.html b/files/pl/mozilla/tech/xul/bbox/index.html new file mode 100644 index 0000000000..a78db47690 --- /dev/null +++ b/files/pl/mozilla/tech/xul/bbox/index.html @@ -0,0 +1,91 @@ +--- +title: bbox +slug: Mozilla/Tech/XUL/bbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/bbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Poziome pudełko, które jest ułożone na linii odniesienia. Jest to odpowiednik stosowanego elementu hbox wraz z atrybutem align ustawionym do linii odniesienia.

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/binding/index.html b/files/pl/mozilla/tech/xul/binding/index.html new file mode 100644 index 0000000000..b7708175f0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/binding/index.html @@ -0,0 +1,114 @@ +--- +title: binding +slug: Mozilla/Tech/XUL/binding +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/binding +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Powinien zawierać się w wewnątrz elementu bindings. binding jest stosowany do wiązania zmiennej do węzła. Podobnie jak element triple może być stosowany do wiązania danej własności dopasowanej do węzła ze zmienną o danej nazwę. Nazwa ta może być wykorzystana w przypisaniu akcji do reguły. +

+
Własności
object, predicate, subject
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ object
+
+ Obiekt elementu. Może być referencją zmiennej, URI źródła RDF lub wartością literalną RDF.
+
+
+
+
+ predicate
+
+ Predykat lub własność do dopasowania. Musi być adresem URI własności.
+
+
+
+
+ subject
+
+ Element tematu. Potrafi być odniesieniem zmiennej lub źródłem RDF adresu URI.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/bindings/index.html b/files/pl/mozilla/tech/xul/bindings/index.html new file mode 100644 index 0000000000..543fd49d39 --- /dev/null +++ b/files/pl/mozilla/tech/xul/bindings/index.html @@ -0,0 +1,103 @@ +--- +title: bindings +slug: Mozilla/Tech/XUL/bindings +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/bindings +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+
+

Wycofywany
This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Do not use it in old or new projects. Pages or Web apps using it may break at any time.

+
+ +

Powinien pozostawać wewnątrz reguł (rule). Stosowany do określenia wiązań zmiennych dla reguły. Ten element powinien zawierać jeden lub więcej elementów binding.

+ +

Dodatkowe informacje są dostępne w kursie XUL.

+ +

Przykłady

+ +

(potrzebne przykłady)

+ +

Atrybuty

+ +
+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+ +

Własności

+ +
+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+ +

Metody

+ +
+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +

Podobne

+ +

TBD

diff --git a/files/pl/mozilla/tech/xul/box/index.html b/files/pl/mozilla/tech/xul/box/index.html new file mode 100644 index 0000000000..052814e3ed --- /dev/null +++ b/files/pl/mozilla/tech/xul/box/index.html @@ -0,0 +1,102 @@ +--- +title: box +slug: Mozilla/Tech/XUL/box +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/box +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+

Kontener, który może zawierać wiele elementów potomnych. Jeśli box posiada atrybut orient ustawiony na horizontal, to elementy potomne są rozłożone od lewej do prawej strony tak, że będą wyświetlone w pudełku. Jeśli orient jest ustawiony na vertical, to elementy potomne będą rozłożone od góry do dołu. Elementy potomne nie nachodzą na siebie. Domyślną orientacją jest horizontal.

+

Dodatkowe informacje są dostępne w kursie XUL.

+

Przykłady

+
grafika:XUL_ref_box.png
+
<box orient="horizontal">
+  <label value="Zero"/>
+  <box orient="vertical">
+    <label value="One"/>
+    <label value="Two"/>
+  </box>
+  <box orient="horizontal">
+    <label value="Three"/>
+    <label value="Four"/>
+  </box>
+</box>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

Podobne

+
Elementy
vbox, hbox
+ +

diff --git a/files/pl/mozilla/tech/xul/broadcaster/index.html b/files/pl/mozilla/tech/xul/broadcaster/index.html new file mode 100644 index 0000000000..921648e1ae --- /dev/null +++ b/files/pl/mozilla/tech/xul/broadcaster/index.html @@ -0,0 +1,94 @@ +--- +title: broadcaster +slug: Mozilla/Tech/XUL/broadcaster +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/broadcaster +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Rozgłaszacz jest stosowany, gdy chcemy, aby wiele elementów dzieliło się jednym lub kilkoma wartościami atrybutów lub kiedy chcemy, aby elementy odpowiadały na zmianę stanu. Wszystkie elementy obserwujące rozgłaszacze będą współdzielić atrybuty umieszczone w rozgłaszaczu. Na przykład, jeśli rozgłaszacz posiada atrybut label, obserwatory będą używać tej etykiety. Jeśli etykieta zmieni się, etykiety obserwatorów zmienią się automatycznie. W momencie wykonania zmian do obserwatorów wysłane zostanie zdarzenie onbroadcast. +

W przypadku pozycji (menuitem) lub przycisków (button), których stan disabled powinien zostać ustawiony, kiedy dana opcja ma być zablokowana, powinno się stosować element command. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/broadcasterset/index.html b/files/pl/mozilla/tech/xul/broadcasterset/index.html new file mode 100644 index 0000000000..c3e5c7368f --- /dev/null +++ b/files/pl/mozilla/tech/xul/broadcasterset/index.html @@ -0,0 +1,92 @@ +--- +title: broadcasterset +slug: Mozilla/Tech/XUL/broadcasterset +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/broadcasterset +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element kontenera dla elementów broadcaster. broadcasterset i jego elementy potomne nie są wyświetlane.

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/browser/index.html b/files/pl/mozilla/tech/xul/browser/index.html new file mode 100644 index 0000000000..8ac5ac100f --- /dev/null +++ b/files/pl/mozilla/tech/xul/browser/index.html @@ -0,0 +1,406 @@ +--- +title: browser +slug: Mozilla/Tech/XUL/browser +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/browser +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ramka, która powinna wyświetlać dokument WWW. Element ten jest podobny do elementu iframe z tą różnicą, że podtrzymuje historię stron i zawiera dodatkowe metody do manipulacji aktualnie wyświetlaną stroną. +

Większość własności i metod przeglądarki będzie rzadko używana i będzie je można wywołać tylko z poziomu dokumentu o adresie URL chrome. Dokumenty z innych adresów URL będą do zmiany wyświetlanego dokumentu musiały stosować obiekty dokumentu i historii. +

+
Atrybuty
autocompleteenabled, autocompletepopup, autoscroll, disablehistory, disablesecurity, homepage, src, type +
+
Własności +
accessible, canGoBack, canGoForward, contentDocument, contentTitle, contentViewerEdit, contentViewerFile, contentWindow, currentURI, docShell, documentCharsetInfo, homePage, markupDocumentViewer, preferences, securityUI, sessionHistory, webBrowserFind, webNavigation, webProgress +
+
Metody +
addProgressListener, goBack, goForward, goHome, gotoIndex, loadURI, loadURIWithFlags, reload, reloadWithFlags, removeProgressListener, stop +
+

Przykłady

+
Image:XUL_ref_browser.png
+
<!-- shows Mozilla homepage inside a groupbox -->
+<groupbox flex="1">
+  <caption label="Mozilla homepage"/>
+  <browser type="content" src="http://www.mozilla.org" flex="1"/>
+</groupbox>
+
+

Atrybuty

+

+

+ +
autocompleteenabled +
Tylko Firefox +
Typ: boolean +
Wartość true włącza automatyczne uzupełnianie pól tekstowych. +
+


+

+ + +
+
+ +
autocompletepopup +
Typ: id elementu wyskakującego (popup) +
id elementu popup wykorzystywanego do przechowywania wyników automatycznego uzupełniania dla tego elementu. +
+


+

+ + +
+
+ +
autoscroll +
Tylko Firefox +
Typ: boolean +
Wartość false wyłącza automatyczne przewijanie dla danej przeglądarki. Jeśli atrybut jest ustawiony na true lub zostanie pominięty, automatyczne przewijanie zostanie włączone lub będzie zależne od wartości opcji general.autoScroll. +
+


+

+ + +
+
+ +
disablehistory +
Typ: boolean +
Jeśli atrybut ma wartość false, przycisk ze strzałką wyświetli się na końcu pola tekstowego, które otworzy menu rozwijane wszystkich dostępnych wyników. Domyślna wartością jest true, ukrywające przycisk rozwijania. +
+


+

+ + +
+
+ +
disablesecurity +
Typ: boolean +
Wartość true wyłącza UI bezpieczeństwa dla tej przeglądarki. Pominięcie tego atrybutu włącza je. +
+


+

+ + +
+
+ +
homepage +
Typ: adres URL strony startowej +
Atrybut ten pozwala ustawić stronę startową dla elementu browser. Nie ma to żadnego związku ze stroną startową użytkownika przeglądarki. Pozwala za to na wygodne przechowywanie adresu strony startowej. Stronę startową można otworzyć przy użyciu metody goHome. +
+


+

+ + +
+
+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+
+ +
type +
Typ: jedna z wartości poniżej +
Typ przeglądarki, który może zostać użyty do ustawienia dostępu do dokumentu wczytywanego wewnątrz przeglądarki. Jeśli nie jest ustawiony, wczytywany dokument posiada taki sam dostęp jak okno zawierające <browser>. +
+ +

Zobacz także

+

Dodatkowe informacje znaleźć można kursie XUL i iframe +


+

+ + +
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
canGoBack +
Typ: boolean +
Własność tylko do odczytu ma wartość true, jeśli istnieje strona w historii sesji, do której można się cofnąć, a przycisk 'Wstecz' powinien być dostępny. +
+ +
+
+
+
+ canGoForward
+
+ Typ: + + boolean +
+
+ Własność tylko do odczytu ma wartość true, jeśli istnieje strona w historii sesji, do której można przejść, a przycisk 'Do przodu' powinien być dostępny.
+
+
+
contentDocument +
Typ: document +
Własność tylko do odczytu zawierająca obiekt dokumentu w danym elemencie. +
+


+

+ +
+
+
contentTitle +
Typ: string +
Własność tylko do odczytu zawierająca tytuł obiektu dokumentu w przeglądarce. +
+


+

+ +
+
+
contentViewerEdit +
Typ: nsIContentViewerEdit +
Własność tylko do odczytu zawierająca nsIContentViewerEdit, który zajmuje się operacjami związanymi ze schowkiem w danym dokumencie. +
+


+

+ +
+
+
contentViewerFile +
Typ: nsIContentViewerFile +
Referencja do interfejsu nsIContentViewerFile dla dokumentu. +
+


+

+ +
+
+
+
+ contentWindow
+
+ Typ: window
+
+ Własność tylko do odczytu zawierająca obiekt okna w elemencie.
+
+

+
+
currentURI +
Typ: nsIURI +
Własność tylko do odczytu zawierająca aktualnie wczytany adres URL. Aby zmienić adres URL, należy zastosować metodę loadURI. +
+


+

+ +
+
+
docShell +
Typ: nsIDocShell +
Własność tylko do odczytu zawierająca obiekt nsIDocShell dla dokumentu. +
+ +
+
+
documentCharsetInfo +
Typ: nsIDocumentCharsetInfo +
Własność tylko do odczytu zawierająca obiekt nsIDocumentCharsetInfo dla dokumentu, stosowany do określenia, które kodowanie znaków powinno być zastosowane do wyświetlenia dokumentu. +
+


+

+ +
+
+
homePage +
Typ: tekstowy adres URL strony domowej +
Ta własność przechowuje adres strony startowej ustawionej przez użytkownika. +
+


+

+ +
+
+
markupDocumentViewer +
Typ: nsIMarkupDocumentViewer +
Własność tylko do odczytu zawierająca nsIMarkupDocumentViewer, który jest odpowiedzialny za rysowanie dokumentu. +
+


+

+ +
+
+
preferences +
Typ: nsIPrefService +
Własność tylko do odczytu zawierająca obiekt nsIPref służący do pobierania i ustawiania właściwości użytkownika. +
+


+

+ +
+
+
securityUI +
Typ: nsISecureBrowserUI +
Własność tylko do odczytu przechowująca obiekt, który może zostać użyty do określenia poziomu bezpieczeństwa we wczytanym dokumencie. +
+


+

+ +
+
+
sessionHistory +
Typ: nsISHistory +
Własność tylko do odczytu zawierająca obiekt nsISHistory, przechowujący historię sesji. +
+


+

+ +
+
+
webBrowserFind +
Typ: nsIWebBrowserFind +
Własność tylko do odczytu zawierająca obiekt nsIWebBrowserFind, którego można użyć do szukania tekstu w dokumencie. +
+


+

+ +
+
+
webNavigation +
Typ: nsIWebNavigation +
Własność tylko do odczytu zawiera obiekt nsIWebNavigation dla dokumentu. Wiele z jego metod może być wywoływanych bezpośrednio na dokumencie; są to takie metody jak goBack i goForward. Zawiera także stałe wczytywania wykorzystywane przez reloadWithFlags i loadURIWithFlags. +
+


+

+ +
+
+
webProgress +
Typ: nsIWebProgress +
Własność tylko do odczytu zawierająca obiekt nsIWebProgress, który jest stosowany do monitorowania postępu podczas ładowania dokumentu. +
+


+

+ +
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+

+
+ addProgressListener( listener )
+
+ Zwraca typ: nie zwraca wartości
+
+ Dodaje do przeglądarki element nasłuchujący postęp, który będzie monitorował wczytywane dokumenty. Element nasłuchujący powinien implementować interfejs nsIWebProgressListener.
+
+
goBack() +
Zwraca typ: nie zwraca wartości +
Przejście o jedną stronę wstecz w historii. +
+


+

+
goForward() +
Zwraca typ: nie zwraca wartości +
Przejście o jedną stronę do przodu w historii. +
+


+

+
goHome() +
Zwraca typ: nie zwraca wartości +
Wczytuje stronę startową użytkownika do przeglądarki. +
+


+

+
gotoIndex( index ) +
Zwraca typ: nie zwraca wartości +
Przechodzi do strony o podanym indeksie w historii. Użyj wartości dodatniej, by przejść w przód, a ujemnej by w tył. +
+


+

+
loadURI( uri, adres-odsyłający, kodowanie-znaków ) +
Zwraca typ: nie zwraca wartości +
Wczytuje dokument spod danego adresu URL, z danym kodowaniem i adresem odsyłającym. +
+


+

+
loadURIWithFlags( uri, flagi, adres-odsyłający, kodowanie-znaków, postData ) +
Zwraca typ: nie zwraca wartości +
Wczytuje adres URL do dokumentu z określonymi flagami wczytywania, pozwala określić adres odsyłający, kodowanie znaków oraz dane przesyłane metodą POST. Poza flagami dozwolonymi dla metody reloadWithFlags, dostępne są także: +
+ +


+

+
reload() +
Zwraca typ: nie zwraca wartości +
Wczytuje ponownie dokument w przeglądarce. +
+


+

+
reloadWithFlags( flags ) +
Zwraca typ: nie zwraca wartości +
Wczytuje ponownie dokument w przeglądarce z danymi flagami wczytywania. Można użyć poniższych flag; wszystkie one są stałymi własności webNavigation (lub interfejsu nsIWebNavigation). Flagi te można łączyć przy użyciu symbolu ( | ). +
+ +


+

+
removeProgressListener( listener ) +
Zwraca typ: nie zwraca wartości +
Usuwa element nasłuchujący postęp wczytywania z przeglądarki. +
+


+

+
stop() +
Zwraca typ: nie zwraca wartości +
Odpowiednik naciśnięcia przycisku Zatrzymaj. Metoda ta zatrzymuje wczytywanie bieżącego dokumentu. +
+


+


+

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider +
diff --git a/files/pl/mozilla/tech/xul/button/index.html b/files/pl/mozilla/tech/xul/button/index.html new file mode 100644 index 0000000000..7c7572481f --- /dev/null +++ b/files/pl/mozilla/tech/xul/button/index.html @@ -0,0 +1,457 @@ +--- +title: button +slug: Mozilla/Tech/XUL/button +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/button +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Przycisk, który może zostać naciśnięty przez użytkownika. Uchwyty zdarzeń można zastosować do nasłuchiwania myszki, klawiatury i innych zdarzeń. Zazwyczaj jest renderowany początkowo jako szary kwadrat. Można określić etykietę przycisku stosując atrybut label lub poprzez wpisanie treści wewnątrz przycisku. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, autoCheck, checkState, checked, command, crop, dir, disabled, dlgType, group, icon, image, label, open, orient, tabindex, type +
+
Własności
accessKey, accessible, autoCheck, checkState, checked, command, crop, dir, disabled, dlgType, group, image, label, open, orient, tabIndex, type +
+

Przykłady

+
Image:XUL_ref_button.png
+
<button label="Press Me"
+        oncommand="alert('You pressed me!');"/>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
autoCheck +
Typ: boolean +
Gdy atrybut ten ma wartość true lub nie jest ustawiony, stan zaznaczenia przycisku będzie przełączany przy każdym jego naciśnięciu. Gdy wartość została ustawiona na false, stan zaznaczenia musi być dopasowany ręcznie. +
+


+

+ + +
+
+ +
checkState +
Typ: integer, wartość 0, 1 lub 2 +
Ten atrybut może być użyty do utworzenia przycisków trójstanowych, ponumerowanych 0, 1 i 2. W stanie 0 lub 1 naciśnięcie przycisku spowoduje przełączenie go do stanu przeciwnego. To znaczy, że przycisk działa podobnie jak pole wyboru, z wyjątkiem tym, że jest tu także stan trzeci, który musi być ustawiony ręcznie poprzez dostosowanie stanu zaznaczenia. Jeśli chcemy dostosować różne zachowania stanu przycisku, musimy ustawić atrybut autoCheck na false i dostosować stany przycisku za pomocą skryptu. Atrybut type musi być ustawiony na checkbox dla przycisków ze stanem zaznaczenia. Stałe dla dostępnych wartości dla tego atrybutu znajdują się w interfejsie nsIDOMXULButtonElement. +
+


+

+ + +
+
+ +
checked +
Typ: boolean +
Określa, czy przycisk jest zaznaczony. Konieczne jest ustawienie atrybutu type na checkbox lub radio, aby zmiana atrybutu checked mogła odnosić jakiekolwiek skutki. +
+


+

+ + +
+
+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
dir +
Typ: jedna z wartości poniżej +
Kierunek, w którym umieszczane są elementy potomne danego elementu.
+ + + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
dlgType +
Typ: jedna z wartości poniżej +
Typ dialogowy używany jest tylko, kiedy przycisk znajduje się w oknie dialogowym. Dzięki temu można zastąpić standardowe przyciski okna dialogowego własnymi przyciskami, z tym że metody obsługi zdarzeń okna dialogowego nadal będą funkcjonować. Przykładowo, jeśli dlgType ma wartość accept, przycisk zastąpi przycisk akceptujący okna dialogowego, zwykle mający etykietę OK. Stosowanie tego atrybutu na przycisku nie znajdującym się w oknie dialogowym nie odniesie żadnego skutku. Poniżej przedstawiono możliwe wartości tego atrybutu: +
+ +


+


+

+ + +
+
+ +
+
+ group
+
+ Typ: + + nazwa grupy jako łańcuch znaków + <magic name="\"PAGENAME\"/"></magic>
+
+ Przyciski z tą samą wartością atrybutu group należą do tej samej grupy. Tylko jeden przycisk z grupy może być zaznaczony w danej chwili. Jeśli użytkownik zaznaczy jeden z przycisków, inne z tej grupy zostaną odznaczone.
+
+
+
+ +
icon +
Mozilla 1.8 +
Typ: string +
Ten atrybut powinien być używany dla przycisków związanych z typowymi zadaniami. Niektóre platformy (GNOME - przyp. tłum.) wyświetlają te przyciski z małymi ikonami sygnalizującymi ich zastosowanie. Atrybut ten w pewnym sensie zastępuje atrybut image. Możliwe wartości: accept, cancel, help, open, save, find, clear, yes, no, apply, close, print, add, remove, refresh, go-forward, go-back, properties, select-font, select-color, network. Jeśli tworzony przycisk wiąże się z jednym z powyższych zastosowań, należy to zasygnalizować poprzez odpowiednie ustawienie atrybutu icon. +
+


+

+ + +
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ + +
+
+ +
orient +
Typ: jedna z wartości poniżej +
Wykorzystywany do określenia, czy elementy potomne danego elementu zorientowane są poziomo czy pionowo. Domyślna wartość zależy od danego elementu. Można także skorzystać z własności stylu -moz-box-orient. +
+ + + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
type +
Typ: jedna z wartości poniżej +
Typ przycisku. Jeśli atrybut nie jest dołączony, zostanie utworzony normalny przycisk.
+ +


+

+ + +
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ autoCheck
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoCheck.
+
+
+
checkState +
Typ: integer, wartości 0, 1 lub 2 +
Pobiera i ustawia wartość atrybutu checkState. +
+


+

+ +
+
+
checked +
Typ: boolean +
Pobiera i ustawia wartość atrybutu checked. +
+


+

+ +
+
+
+
+ command
+
+ Typ: + + element id +
+
+ Pobiera i ustawia wartość atrybutu command.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ dir
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu dir.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ dlgType
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu dlgType.
+
+
+
+
+ group
+
+ Typ: + + tekstowa nazwa grupy +
+
+ Pobiera i ustawia wartość atrybutu group.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ open
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu open.
+
+
+
+
+ orient
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu orient.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULButtonElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/caption/index.html b/files/pl/mozilla/tech/xul/caption/index.html new file mode 100644 index 0000000000..212d526b15 --- /dev/null +++ b/files/pl/mozilla/tech/xul/caption/index.html @@ -0,0 +1,176 @@ +--- +title: caption +slug: Mozilla/Tech/XUL/caption +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/caption +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Nagłówek elementu groupbox. Może zawierać etykietę tekstową utworzoną przy użyciu atrybutu label lub elementów potomnych dla nieco bardziej rozbudowanych nagłówków. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, crop, image, label, tabindex +
+
Własności +
accessKey, crop, image, label, tabIndex +
+

Przykłady

+
grafika:XUL_ref_caption.png
+
<groupbox>
+  <caption label="My groupbox"/>
+</groupbox>
+<groupbox flex="1">
+  <caption>
+    <checkbox label="A checked groupbox"/>
+  </caption>
+</groupbox>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
groupbox, checkbox +
diff --git a/files/pl/mozilla/tech/xul/checkbox/index.html b/files/pl/mozilla/tech/xul/checkbox/index.html new file mode 100644 index 0000000000..3877921bed --- /dev/null +++ b/files/pl/mozilla/tech/xul/checkbox/index.html @@ -0,0 +1,272 @@ +--- +title: checkbox +slug: Mozilla/Tech/XUL/checkbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/checkbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który można włączać i wyłączać. Zazwyczaj jest wyświetlany jako pusty prostokąt, kiedy jest wyłączony i jako prostokąt z zaznaczeniem, kiedy jest włączony. Użytkownik posiada możliwość włączenia stanu pola wyboru poprzez zaznaczenie pudełka myszą. Etykieta, określona atrybutem label może być dodana obok pola wyboru.

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, checked, command, crop, disabled, image, label, preference, tabindex +
+
Własności +
accessKey, accessible, checked, command, crop, disabled, image, label, tabIndex, value +
+

Przykłady

+
Image:XUL_ref_checkbox.png
+
<checkbox label="Enable JavaScript" checked="true"/>
+<checkbox label="Enable Java" checked="false"/>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
checked +
Typ: boolean +
Określa, czy przycisk jest zaznaczony. Konieczne jest ustawienie atrybutu type na checkbox lub radio, aby zmiana atrybutu checked mogła odnosić jakiekolwiek skutki. +
+


+

+ + +
+
+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
checked +
Typ: boolean +
Pobiera i ustawia wartość atrybutu checked. +
+


+

+ +
+
+
+
+ command
+
+ Typ: + + element id +
+
+ Pobiera i ustawia wartość atrybutu command.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULCheckboxElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/colorpicker/index.html b/files/pl/mozilla/tech/xul/colorpicker/index.html new file mode 100644 index 0000000000..8f82f9096b --- /dev/null +++ b/files/pl/mozilla/tech/xul/colorpicker/index.html @@ -0,0 +1,159 @@ +--- +title: colorpicker +slug: Mozilla/Tech/XUL/colorpicker +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/colorpicker +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Paleta kolorów, z której użytkownik może wybrać jedną komórkę siatki z kolorem poprzez kliknięcie w nią. +

+
Atrybuty +
disabled, color, onchange, preference, tabindex, type +
+
Własności +
color, disabled, tabIndex, value +
+

Przykłady

+

grafika:XUL_REF_rgb.gif +

+
<colorpicker type="button"/>
+
+

Atybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
+
+ color
+
+ Typ: + + kolor jako łańcuch znaków +
+
+ Aktualnie wybrany kolor. Ulega modyfikacji kiedy użytkownik zaznaczy inną wartość koloru. Łańcuch znaków koloru przydzielamy w formie #RRGGBB do tej własności, aby zmienić wybrany kolor.
+
+
+
+ +
onchange +
Typ: kod skryptu +
Kod w atrybucie onchange jest wywołany, kiedy wartość elementu jest zmieniana. +
+


+


+

+ + +
+
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
type +
Typ: string +
Jeśli ten atrybut nie jest prezentowany, to colorpicker jest wyświetlony wewnątrz okna. Jeśli jest ustawiony w tekście przycisku (button), to colorpicker jest wyświetlony jako przycisk. Kiedy użytkownik naciśnie przycisk, pojawi się okienko popup, z którego użytkownik może wybrać kolor.
+


+

+ + +
+

+

Własności

+

+

+
+
+ color
+
+ Typ: + + kolor jako łańcuch znaków +
+
+ Aktualnie wybrany kolor. Ulega modyfikacji kiedy użytkownik zaznaczy inną wartość koloru. Łańcuch znaków koloru przydzielamy w formie #RRGGBB do tej własności, aby zmienić wybrany kolor.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIDOMXULControlElement +
diff --git a/files/pl/mozilla/tech/xul/column/index.html b/files/pl/mozilla/tech/xul/column/index.html new file mode 100644 index 0000000000..36fdbc2862 --- /dev/null +++ b/files/pl/mozilla/tech/xul/column/index.html @@ -0,0 +1,94 @@ +--- +title: column +slug: Mozilla/Tech/XUL/column +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/column +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedyncza kolumna w elemencie columns. Każdy potomek elementu kolumny jest umieszczony w każdej kolejnej komórce siatki. Kolumna z większą liczbą elementów potomnych decyduje o liczbie wierszy w każdej kolumnie. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykład

+

Zobacz grid dla przykładu. +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
grid, columns, rows, row. +
diff --git a/files/pl/mozilla/tech/xul/columns/index.html b/files/pl/mozilla/tech/xul/columns/index.html new file mode 100644 index 0000000000..1691277a50 --- /dev/null +++ b/files/pl/mozilla/tech/xul/columns/index.html @@ -0,0 +1,94 @@ +--- +title: columns +slug: Mozilla/Tech/XUL/columns +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/columns +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Definiuje kolumny siatki. Każdy potomek elementu kolumny powinien być elementem column. +

Dodatkowe informacje na temat kolumn są dostępne w kursie XUL. +

+

Przykład

+

Zobacz grid dla przykładu. +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
grid, column, rows, row. +
diff --git a/files/pl/mozilla/tech/xul/command/index.html b/files/pl/mozilla/tech/xul/command/index.html new file mode 100644 index 0000000000..b433bd3cff --- /dev/null +++ b/files/pl/mozilla/tech/xul/command/index.html @@ -0,0 +1,79 @@ +--- +title: command +slug: Mozilla/Tech/XUL/command +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/command +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element command może być stosowany do przywołania operacji, która może być wywoływana z różnych miejsc. Na przykład, operacja wklejenia ze schowka może być wywołana z menu Edycja, menu kontekstowego i poprzez skrót klawiaturowy. Można dołączyć kod do elementu command poprzez atrybut oncommand. Zostanie on wywołany bez względu na to, jak został przywołany przez użytkownika. Ponadto, wyłączanie elementu command spowoduje automatyczne wyłączenie elementów menu i skrótów klawiaturowych. +

Polecenia są identyfikowane poprzez ich atrybut id. Po dołączeniu skryptu chrome://global/content/globalOverlay.js do okna można stosować funkcję goDoCommand aby wywołać dane polecenie. Stosowanie tej funkcji ma tę zaletę, że polecenie zostanie wysłane do części interfejsu użytkownika, która na nie odpowiada. Zwykle będzie to element z fokusem w danym momencie. +

Podobnie jak element broadcaster, elementy command przekazują atrybuty do innych elementów. +Dodatkowe informacje są dostępne w kursie XUL. Zobacz także: atrybut command, element commandset +

+
Atrybuty +
disabled, label, oncommand +
+

Przykłady

+

Następujący kod wyśle komendę paste (cmd_paste) do aktualnie aktywnego elementu: +

+
 goDoCommand("cmd_paste");
+
+

Przykład z dwoma przyciskami: +

+
<command id="cmd_openhelp" oncommand="alert('Help');"/>
+<button label="Help" command="cmd_openhelp"/>
+<button label="More Help" command="cmd_openhelp"/>
+
+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
oncommand +
Typ: kod skrypt +
Ta funkcja obsługi zdarzenia jest wywołana w momencie aktywacji polecenia. Ma to miejsce, gdy użytkownik zaznaczy pozycję menu lub kiedy naciśnie skrót klawiaturowy przypisany do polecenia. +
+ + +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/commandset/index.html b/files/pl/mozilla/tech/xul/commandset/index.html new file mode 100644 index 0000000000..0f2441e83b --- /dev/null +++ b/files/pl/mozilla/tech/xul/commandset/index.html @@ -0,0 +1,61 @@ +--- +title: commandset +slug: Mozilla/Tech/XUL/commandset +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/commandset +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element nie jest wyświetlany; służy jako kontener dla elementów command. +

Ponadto, element ten może działać jako aktualizator poleceń, stosowany do aktualizowania stanu (włączony/wyłączony) jednego lub więcej poleceń, kiedy pewne zdarzenia mają miejsce. Powszechnym zastosowaniem aktualizatora poleceń jest aktualizacja elementów <tt>Wytnij</tt>, <tt>Kopiuj</tt> i <tt>Wklej</tt> menu w momencie zaznaczenia tekstu przez użytkownika. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty
commandupdater, events, oncommandupdate, targets +
+

Przykłady

+
<commandset>
+  <command id="cmd_open" oncommand="alert('Open!');"/>
+  <command id="cmd_help" oncommand="alert('Help!');"/>
+</commandset>
+
+

Atrybuty

+

+

+ +
+
+ +
+
+ +
oncommandupdate +
Typ: kod skryptu +
To zdarzenie ma miejsce w momencie aktualizacji polecenia. Można je stosować do aktualizacji stanu wyłączenia (disabled) danych pozycji. +
+


+

+ + +
+
+ +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/conditions/index.html b/files/pl/mozilla/tech/xul/conditions/index.html new file mode 100644 index 0000000000..3abcf1cc54 --- /dev/null +++ b/files/pl/mozilla/tech/xul/conditions/index.html @@ -0,0 +1,93 @@ +--- +title: conditions +slug: Mozilla/Tech/XUL/conditions +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/conditions +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element powinien zawierać się bezpośrednio wewnątrz elementu rule i jest stosowany do definiowania warunków (conditions) dla reguł. Wewnątrz conditions można umieścić elementy content, member i triple. Mogą one posiadać atrybuty, których wartością jest nazwa zmiennej rozpoczynająca się od znaku zapytania (?). Podczas wykonywania reguły dla konkretnego zasobu RDF, zmienne są zamieniane na wartości ze źródła. Reguła jest dopasowana, jeśli wszystkie zmienne można zamienić. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/content/index.html b/files/pl/mozilla/tech/xul/content/index.html new file mode 100644 index 0000000000..dc88c24fb2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/content/index.html @@ -0,0 +1,96 @@ +--- +title: content +slug: Mozilla/Tech/XUL/content +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/content +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element powinien pojawić się wewnątrz elementu conditions. Warunek zasady powinien zawierać jeden i tylko jeden element content. Element content powinien również posiadać atrybut uri. Jest on używany do połączenia zmiennej do wierzchołka zawartości podczas porównania. W przypadku stosowania drzewa z atrybutem flags ustawionym na dont-build-content, zastosuj zamiast tego element treeitem. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Własności
tag, uri +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/datepicker/index.html b/files/pl/mozilla/tech/xul/datepicker/index.html new file mode 100644 index 0000000000..cd46bbf73a --- /dev/null +++ b/files/pl/mozilla/tech/xul/datepicker/index.html @@ -0,0 +1,228 @@ +--- +title: datepicker +slug: Mozilla/Tech/XUL/datepicker +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/datepicker +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element datepicker pozwala użytkownikowi na wprowadzenie daty. Trzy typy są wyświetlone, które to mogą być określone przy zastosowaniu atrybutu type. +

+ +

Jest tu kilka sposobów na ustawienie zaznaczenia dnia. W języku XUL wartość atrybutu może być ustawiona na wartość w formie: YYYY/MM/DD, aby inicjalizować datepicker do pewnej daty. Jeśli nie jest określona to domyślnie datepicker jest bieżącym dniem. +

Aby zmienić zaznaczoną datę, wartość własności może być zastosowana do ustawienia nowej wartości w formie YYYY/MM/DD. Własność dateValue może być zastosowana do odzyskania i ustawienia daty stosując obiekt Date. W dodatku własności date, month i year mogą być zastosowane do odzyskania i modyfikacji każdego komponentu daty osobno. +

+
Atrybuty
disabled, firstdayofweek, readonly, type, tabindex, value +
+
Własności
date, dateLeadingZero, dateValue, disabled, month, monthLeadingZero, open, readOnly, tabIndex, value, year, yearLeadingZero +
+

Przykład

+

Grafika:Controlsguide-datepicker-grid.png +

+
<datepicker type="grid" value="2007/03/26"/>
+
+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
+
+ firstdayofweek
+
+ Typ: + + integer +
+
+ Dzień tygodnia, który jest wyświetlany jako pierwszy dzień w siatce kalendarza. Zakres wartości jest od 0 do 6, gdzie 0 jest niedzielą, a 6 jest sobotą. Domyślna wartość jest określana lokalnie, więc tylko stosujemy ten atrybut, jeśli chcemy to przesłonić.
+
+ +
+
+ +
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ + +
+
type
+
Typ:jedna z wartości poniżej
+
Możemy ustawić typ atrybutu na jeden z poniższych określonych typów elementu datepicker, aby je zastosować:
+
+ + + + + +

 

+
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Łańcuch znaków pozwalający na łączenie sie wartości daty z elementem. Nie jest stosowany dla określonego celu, lecz możemy uzyskać do niego dostęp przy pomocy skryptu, wykorzystując go do własnych celów.
+
+ +

+
+

+

Własności

+

+

+
+
+ date
+
+ Typ: integer
+
+ Aktualnie zaznaczona data dnia miesiąca od 1 do 31. Ustaw tą własność do zmiany zaznaczonej daty.
+
+
+
+
+ dateLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed datą zanim jest ona mniejsza niż 10.
+
+
+
+
+ dateValue
+
+ Typ: Date
+
+ Data, która jest aktualnie wprowadzana lub zaznaczona w datepicker jako obiekt Date.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ month
+
+ Typ: integer
+
+ Aktualnie zaznaczony miesiąc z przedziału od 0 do 11. Ustaw tą własność, aby zmienić zaznaczony miesiąc.
+
+
+
+
+ monthLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed miesiącem zanim jest on mniejszy niż 10.
+
+
+
+
+
+ readonly
+
+ Typ: + + boolean +
+
+ Jeśli jest ustawiony na true, to użytkownik nie może zmieniać wartości elementu. Jest to odpowiednia własności do użytku textbox zamiast własności readonly.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+
+ year
+
+ Typ: integer
+
+ Aktualnie zaznaczony rok z przedziału od 1 do 9999. Ustaw tą własność, aby zmienić zaznaczony rok.
+
+
+
+
+ yearLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed rokiem zanim jest on mniejszy niż 1000.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy
nsIDOMXULControlElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/deck/index.html b/files/pl/mozilla/tech/xul/deck/index.html new file mode 100644 index 0000000000..c441b7f07d --- /dev/null +++ b/files/pl/mozilla/tech/xul/deck/index.html @@ -0,0 +1,140 @@ +--- +title: deck +slug: Mozilla/Tech/XUL/deck +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/deck +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który potrafi wyświetlić tylko jednego potomka w jednym momencie. Atrybut selectedIndex decyduje, który z potomków zostanie wyświetlony.

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
selectedIndex +
+
Własności +
selectedIndex, selectedPanel +
+

Przykłady

+
<deck selectedIndex="2">
+  <description value="To jest pierwsza strona"/>
+  <button label="To jest druga strona"/>
+  <box>
+    <description value="To jest trzecia strona"/>
+    <button label="To jest także trzecia strona"/>
+  </box>
+</deck>
+
+

Atrybuty

+

+ +
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia indeks aktualnie zaznaczonego panelu. Pierwsza pozycja jest w indeksie jako 0.
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
selectedPanel +
Typ: element +
Przechowuje referencję do aktualnie zaznaczonego panelu wewnątrz elementu <deck>. Przypisanie wartości do tej własności zmienia zaznaczony panel. +
+


+

+ +
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

stack +

diff --git a/files/pl/mozilla/tech/xul/description/index.html b/files/pl/mozilla/tech/xul/description/index.html new file mode 100644 index 0000000000..c9aaf6bebf --- /dev/null +++ b/files/pl/mozilla/tech/xul/description/index.html @@ -0,0 +1,235 @@ +--- +title: description +slug: Mozilla/Tech/XUL/description +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/description +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest stosowany do tworzenia bloku tekstu. Tekst może być ustawiony przy użyciu atrybutu value lub umieszczony wewnątrz znaczników description (otwierającego i zamykającego). Atrybut value stosuje się do ustawienia tekstu, który pojawi się w jednej linii. Jeśli tekst podany zostanie jako element potomny, będzie zawijany do nowej linii. Element ten może zawierać dowolne elementy potomne, którym w razie potrzeby można nadawać styl. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, control, crop, disabled, value +
+
Własności +
acccessKey, accessible, control, crop, disabled, value +
+
Klasy stylów +
header, indent, monospace, plain, small-margin +
+

Przykłady

+
grafika:XUL_ref_description.png
+
<description>
+  This is a long section of text that is displayed.
+</description>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
control +
Typ: id elementu +
Ten atrybut określa id elementu, z którym powiązana jest etykieta. Kiedy użytkownik na nią kliknie, połączony element staje się aktywny (focus). +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

+
+ header
+
+ Klasę stosujemy do nagłówków. Zazwyczaj będzie powodować, że tekst ukaże się pogrubiony.
+
+
+
+ indent
+
+ Klasa ta powoduje wcięcie z lewej strony tekstu.
+
+
+
+ monospace
+
+ Klasa powoduje, że tekst będzie wyświetlany w czcionce o stałej szerokości znaków.
+
+
+
+ plain
+
+ Ta klasa sprawia, że element będzie wyświetlony bez obramowania lub marginesu.
+
+
small-margin +
Ta klasa powoduje wyświetlenie tekstu z małym marginesem. +
+


+

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/dialog/index.html b/files/pl/mozilla/tech/xul/dialog/index.html new file mode 100644 index 0000000000..6c9b9af6e3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/dialog/index.html @@ -0,0 +1,448 @@ +--- +title: dialog +slug: Mozilla/Tech/XUL/dialog +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/dialog +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element stosuje się zamiast elementu window dla okien dialogowych. Atrybutu buttons można użyć do ustawienia, które przyciski powinny być wyświetlane w oknie dialogowym. Przyciski te będą umieszczane w miejscu określonym przez daną platformę. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
buttonaccesskeyaccept, buttonaccesskeycancel, buttonaccesskeydisclosure, buttonaccesskeyextra1, buttonaccesskeyextra2, buttonaccesskeyhelp, buttonalign, buttondir, buttondisabledaccept, buttonlabelaccept, buttonlabelcancel, buttonlabeldisclosure, buttonlabelextra1, buttonlabelextra2, buttonlabelhelp, buttonorient, buttonpack, buttons, defaultButton, ondialogaccept, ondialogcancel, ondialogdisclosure, ondialogextra1, ondialogextra2, ondialoghelp, title +
+
Własności +
buttons, defaultButton +
+
Metody +
acceptDialog, cancelDialog, centerWindowOnScreen, getButton, moveToAlertPosition +
+

Przykłady

+
grafika:XUL_ref_dialog.png
+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
+<dialog id="donothing" title="Dialog example"
+   xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+   buttons="accept,cancel"
+   buttonlabelcancel="Cancel"
+   buttonlabelaccept="Save"
+   ondialogaccept="return doOK();"
+   ondialogcancel="return doCancel();">
+
+    <dialogheader title="Options" description="My preferences"/>
+    <groupbox>
+      <caption label="Colour"/>
+      <radiogroup>
+        <radio label="Red"/>
+        <radio label="Green" selected="true"/>
+        <radio label="Blue"/>
+      </radiogroup>
+      <label value="Nickname"/>
+      <textbox />
+   </groupbox>
+</dialog>
+
+

Atrybuty

+

+

+ +
buttonaccesskeyaccept +
Typ: string +
Klawisz dostępu dla przycisku 'Akceptuj'. +
+


+

+ + +
+
+ +
buttonaccesskeycancel +
Typ: string +
Klawisz dostępu dla przycisku <tt>Anuluj</tt>. +
+


+

+ + +
+
+ +
buttonaccesskeydisclosure +
Typ: string +
Klawisz dostępu dla przycisku typu "disclosure" (zwykle "Szczegóły" - przyp. tłum.). +
+


+

+ + +
+
+ +
buttonaccesskeyextra1 +
Typ: string +
Klawisz dostępu dla pierwszego przycisku. +
+


+

+ + +
+
+ +
buttonaccesskeyextra2 +
Typ: string +
Klawisz dostępu dla drugiego dodatkowego przycisku. +
+


+

+ + +
+
+ +
buttonaccesskeyhelp +
Typ: string +
Klawisz dostępu dla przycisku "Pomoc". +
+


+

+ + +
+
+ +
buttonalign +
Typ: string +
Wartość atrybutu align dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttondir +
Typ: string +
Wartość atrybutu dir dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttondisabledaccept +
Typ: boolean +
Jeśli true, przycisk akceptacji jest początkowo wyłączony. +
+ + +
+
+ +
buttonlabelaccept +
Typ: string +
Etykieta do wyświetlenia na przycisku "Akceptuj". +
+


+

+ + +
+
+ +
+
+ buttonlabelcancel
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na przycisku "Anuluj".
+
+
+
+ +
+
+ buttonlabeldisclosure
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na przycisku "disclosure".
+
+
+
+ +
buttonlabelextra1 +
Typ: string +
Etykieta do wyświetlenia na pierwszym dodatkowym przycisku. +
+


+

+ + +
+
+ +
+
+ buttonlabelextra2
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na drugim dodatkowym przycisku.
+
+
+
+ +
+
+ buttonlabelhelp
+
+ Typ: + + string +
+
+ Etykieta do wyświetlenia na przycisku "Pomoc".
+
+
+
+ +
buttonorient +
Typ: string +
Wartość atrybutu orient dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttonpack +
Typ: string +
Wartość atrybutu pack dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttons +
Typ: rozdzielona przecinkami lista poniższych wartości +
Rozdzielona przecinkami lista przycisków do wyświetlenia w okienku dialogowym. Przyciski zostaną umieszczone w odpowiednim miejscu w zależności od platformy systemowej użytkownika, a podstawowa obsługa zdarzeń zostanie wykonana automatycznie. Następujące wartości mogą zostać użyte w tej liście: +
+ + + +
+
+ +
defaultButton +
Typ: string +
Zwykle nie powinno się ustawiać tego atrybutu. Określa on domyślny przycisk w oknie dialogowym. Zazwyczaj oznacza to, że przycisk zostanie aktywowany po naciśnięciu klawisza Enter. Atrybutowi temu powinna być przypisana jedna z wartości używanych przez atrybut buttons. +
+


+

+ + +
+
+ +
+
+ ondialogaccept
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku akceptacji lub po wywołaniu metody acceptDialog.
+
+
+
+ +
+
+ ondialogcancel
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku 'Anuluj' lub po wywołaniu metody cancelDialog.
+
+
+
+ +
+
+ ondialogdisclosure
+
+ Typ: + + Kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku ujawniającego (ang. disclosure).
+
+
+
+ +
ondialogextra1 +
Typ: kod skryptu +
Kod w tym atrybucie jest wywołany po naciśnięciu pierwszego przycisku dodatkowego. +
+


+

+ + +
+
+ +
ondialogextra2 +
Typ: kod skryptu +
Kod w tym atrybucie jest wywołany po naciśnięciu drugiego przycisku dodatkowego. +
+


+

+ + +
+
+ +
+
+ ondialoghelp
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku 'Pomoc'.
+
+
+
+ +
title +
Typ: string +
Tekst wyświetlony na pasku tytułu w oknie dialogowym. +
+


+


+

+ + +
+

+

Własności

+

+

+
buttons +
Typ: rozdzielona przecinkami lista poniższych wartości +
Rozdzielona przecinkami lista przycisków do wyświetlenia w okienku dialogowym. Przyciski zostaną umieszczone w odpowiednim miejscu w zależności od platformy systemowej użytkownika, a podstawowa obsługa zdarzeń zostanie wykonana automatycznie. Następujące wartości mogą zostać użyte w tej liście: +
+ +


+

+ +
+
+
+
+ defaultButton
+
+ Typ: + + string +
+
+ Zwykle nie powinno się ustawiać tej własności. Określa ona domyślny przycisk w oknie dialogowym. Zazwyczaj oznacza to, że przycisk zostanie aktywowany po naciśnięciu klawisza Enter. Własności tej powinna być przypisana jedna z wartości używanych przez atrybut buttons.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
+
+ acceptDialog()
+
+ Zwraca typ: nie zwraca wartości
+
+ Akceptuje okienko dialogowe i je zamyka, działa podobnie jak naciśnięcie przycisku OK.
+
+
cancelDialog() +
Zwraca typ: nie zwraca wartości +
Anuluje okienko dialogowe i je zamyka, działa podobnie jak naciśnięcie przycisku <tt>Anuluj</tt>. +
+


+

+
centerWindowOnScreen() +
Zwraca typ: nie zwraca wartości +
Ustawia okienko dialogowe na środku ekranu. +
+


+

+
getButton( typ ) +
Zwraca typ: element button +
Zwraca element button o zadanym typie, znajdujący się w okienku dialogowym. +
+


+

+
moveToAlertPosition() +
Zwraca typ: nie zwraca wartości +
Przenosi okno dialogowe na pozycję właściwą dla okna z ostrzeżeniem, jednocześnie nadając mu rozmiar właściwy dla takiego okna. +
+


+

+

+

Podobne

+
Elementy +
dialogheader +
diff --git a/files/pl/mozilla/tech/xul/dialogheader/index.html b/files/pl/mozilla/tech/xul/dialogheader/index.html new file mode 100644 index 0000000000..fe435ea1dc --- /dev/null +++ b/files/pl/mozilla/tech/xul/dialogheader/index.html @@ -0,0 +1,89 @@ +--- +title: dialogheader +slug: Mozilla/Tech/XUL/dialogheader +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/dialogheader +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Wiersz nagłówka okna dialogowego. Element ten powinien być umieszczony wewnątrz elementu dialog. Nagłówek może posiadać tytuł i opis.

+
Atrybuty +
crop, description, title +
+

Przykłady

+
Image:XUL_ref_dialogheader.png
+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
+<dialog id="donothing" title="Dialog example"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+    <dialogheader title="My dialog" description="Example dialog"/>
+    <!-- Other widgets -->
+
+</dialog>
+
+

Atrybuty

+

+

+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
description +
Typ: string +
Tekst opisowy do wyświetlenia w dodatku do tytułu okienka dialogowego. +
+


+

+ + +
+
+ +
title +
Typ: string +
Tekst wyświetlony na pasku tytułu w oknie dialogowym. +
+


+


+

+ + +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
dialog, window +
diff --git a/files/pl/mozilla/tech/xul/dokumentacja_xul/index.html b/files/pl/mozilla/tech/xul/dokumentacja_xul/index.html new file mode 100644 index 0000000000..7b9bde470f --- /dev/null +++ b/files/pl/mozilla/tech/xul/dokumentacja_xul/index.html @@ -0,0 +1,166 @@ +--- +title: Dokumentacja XUL +slug: Mozilla/Tech/XUL/Dokumentacja_XUL +tags: + - Dokumentacja_XUL + - Wszystkie_kategorie + - XUL +translation_of: Archive/Mozilla/XUL/XUL_Reference +--- +

« XUL Reference « +

+ + + + + + + + + +
Wszystkie elementy XUL
+

action
+arrowscrollbox
+assign
+bbox
+binding
+bindings
+box
+broadcaster
+broadcasterset
+button
+browser
+checkbox
+caption
+colorpicker
+column
+columns
+commandset
+command
+conditions
+content
+datepicker
+deck
+description
+dialog
+dialogheader
+dropmarker
+editor
+grid
+grippy
+groupbox
+hbox
+iframe
+image
+key
+keyset
+label
+listbox
+listcell
+listcol
+listcols
+listhead
+listheader
+listitem
+

+
+

member
+menu
+menubar
+menuitem
+menulist
+menupopup
+menuseparator
+notification
+notificationbox
+observes
+overlay
+page
+panel
+param
+popup
+popupset
+preference
+preferences
+prefpane
+prefwindow
+progressmeter
+query
+queryset
+radio
+radiogroup
+resizer
+richlistbox
+richlistitem
+row
+rows
+rule
+scale
+script
+scrollbar
+scrollbox
+scrollcorner
+separator
+spacer
+spinbuttons
+splitter
+stack
+statusbar
+

+
+

statusbarpanel
+stringbundle
+stringbundleset
+tab
+tabbrowser (tylko Firefox
powyżej wersji 3/Gecko 1.9)
+tabbox
+tabpanel
+tabpanels
+tabs
+template
+textnode
+textbox
+textbox (Firefox - automatyczne uzupełnianie)
+textbox (Mozilla - automatyczne uzupełnianie)
+timepicker
+titlebar
+toolbar
+toolbarbutton
+toolbargrippy
+toolbaritem
+toolbarpalette
+toolbarseparator
+toolbarset
+toolbarspacer
+toolbarspring
+toolbox
+tooltip
+tree
+treecell
+treechildren
+treecol
+treecols
+treeitem
+treerow
+treeseparator
+triple
+vbox
+where
+window
+wizard
+wizardpage
+

+
+

Inne listy o XUL

+ +


+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/editor/index.html b/files/pl/mozilla/tech/xul/editor/index.html new file mode 100644 index 0000000000..c58cd9c6fe --- /dev/null +++ b/files/pl/mozilla/tech/xul/editor/index.html @@ -0,0 +1,213 @@ +--- +title: editor +slug: Mozilla/Tech/XUL/editor +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/editor +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ramka, która powinna zawierać edytowalny dokument. Aby utworzyć dokument edytora, należy ustawić wartość atrybutu editortype na html. Mozilla posiada dwa typy edytorów, edytor HTML i edytor tekstowy. Edytor nie posiada żadnego interfejsu użytkownika; należy go utworzyć we własnym zakresie. Jednakże funkcje edycji tekstu, zmiany rozmiaru obrazków i edycji tabel są od razu udostępniane. W przypadku nieustawienia atrybutu editortype, edytowalność musi zostać włączona przy użyciu metody makeEditable. +

Aby określić dokument do załadowania w edytorze, należy użyć atrybutu src. Jednakże istnieje problem, gdy wstępnie zostanie określony atrybut src znacznika editor w pliku XUL, dokument nie będzie domyślnie edytowalny. Aby włączyć edytowalność, należy skorzystać z jednej z poniższych metod: +

+
  1. Ustawić atrybut src po załadowaniu okna, na przykład za pomocą uchwytu zdarzenia onload. Można również ustawić atrybut src na plik wybrany przez użytkownika w oknie wyboru pliku. W tym przypadku należy ustawić atrybut editortype edytora. +
  2. Wywołać metodę makeEditable, aby dokument załadowany do edytora stał się edytowalny. +
+

Aby edytować nowy dokument, należy ustawić atrybut src na about:blank.

+
Atrybuty +
editortype, src, type +
+
Własności +
accessible, commandManager, contentDocument, contentWindow, docShell, editingSession, editortype, webBrowserFind, webNavigation +
+
Metody +
getEditor, getHTMLEditor, makeEditable +
+

Przykłady

+

Poniższy przykład demonstruje sposób nadania edytowalności dokumentowi otwartemu w edytorze przy użyciu własności designMode wczytanego dokumentu HTML: +

+
<script language="javascript">
+function initEditor(){
+    // funkcja wywoływana do przygotowania edytora
+    var editor = document.getElementById("myEditor");
+    editor.contentDocument.designMode = 'on'
+}
+</script>
+<editor id="myEditor" editortype="html" src="about:blank" flex="1" type="content-primary"/>
+
+

Po nadaniu edytowalności, do dokumentu można wstawiać specjalne formatowanie, a także inne elementy HTML, przy użyciu metody document.execCommand: +

+
    var editor = document.getElementById("myEditor");
+
+    // toggle bold for the current selection
+    editor.contentDocument.execCommand("bold", false, null);
+
+

Artykuł na temat edytora Midas zawiera więcej informacji na temat poleceń metody execCommand. +

+

Atrybuty

+

+

+ +
editortype +
Typ: jedna z wartości poniżej +
Typ edytora do zastosowania. Ta wartość będzie przesłonięta w zależności od typu dokumentu załadowanego w edytorze. +
+ +


+

+ + +
+
+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+
+ +
type +
Typ: string +
Jeśli ustawiony jest na content-primary, to edytor stanie się główną zawartością strony. Okno dla głównej zawartości można wygodniej pobrać przy użyciu window.content. +
+


+

+ + +
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ commandManager
+
+ Typ: + + nsICommandManager +
+
+ Menedżer poleceń pozwalający na dokonywanie operacji w edytorze.
+
+
+
contentDocument +
Typ: document +
Własność tylko do odczytu zawierająca obiekt dokumentu w danym elemencie. +
+


+

+ +
+
+
+
+ contentWindow
+
+ Typ: window
+
+ Własność tylko do odczytu zawierająca obiekt okna w elemencie.
+
+

+
+
docShell +
Typ: nsIDocShell +
Własność tylko do odczytu zawierająca obiekt nsIDocShell dla dokumentu. +
+ +
+
+
editingSession +
Typ: nsIEditingSession +
Sesja edycji dla edytora, używana do zainicjowania edytora. Zazwyczaj korzystanie z tej własności nie jest konieczne. +
+


+

+ +
+
+
editortype +
Typ: jedna z wartości poniżej +
Typ edytora do zastosowania. Ta wartość będzie przesłonięta w zależności od typu dokumentu załadowanego w edytorze. +
+ +


+

+ +
+
+
webBrowserFind +
Typ: nsIWebBrowserFind +
Własność tylko do odczytu zawierająca obiekt nsIWebBrowserFind, którego można użyć do szukania tekstu w dokumencie. +
+


+

+ +
+
+
webNavigation +
Typ: nsIWebNavigation +
Własność tylko do odczytu zawiera obiekt nsIWebNavigation dla dokumentu. Wiele z jego metod może być wywoływanych bezpośrednio na dokumencie; są to takie metody jak goBack i goForward. Zawiera także stałe wczytywania wykorzystywane przez reloadWithFlags i loadURIWithFlags. +
+


+

+ +
+

+

Metody

+

getEditor( window ) +
Zwraca typ: nsIEditor +
Zwraca interfejs edycji dla edytora, który zawiera szereg metod pozwalających na manipulację dokumentem. Jako argument należy przekazać contentWindow edytora. +
+


+

+
getHTMLEditor( window ) +
Zwraca typ: nsIHTMLEditor +
Zwraca interfejs edycji HTML dla edytora, który zawiera szereg metod pozwalających na manipulację dokumentem HTML. Jako argument należy przekazać contentWindow edytora. +
+


+

+
makeEditable( editortype, waitForLoad ) +
Zwraca typ: nie zwraca wartości +
Ta funkcja włącza edycję w edytorze. Należy określić typ edytora – text lub html – w atrybucie editortype. +
+


+

+ +

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/grid/index.html b/files/pl/mozilla/tech/xul/grid/index.html new file mode 100644 index 0000000000..94d143c0b3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/grid/index.html @@ -0,0 +1,121 @@ +--- +title: grid +slug: Mozilla/Tech/XUL/grid +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/grid +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Siatka jest elementem składającym się z dwóch elementów; wierszy (rows) oraz kolumn (columns). Jest ona stosowana do tworzenia siatki elementów. Wyświetlane są zarówno wiersze, jak i kolumny, choć zazwyczaj tylko jeden z tych rodzajów elementów będzie zawierał treść, podczas gdy drugi będzie zawierał informacje o wymiarach. Na wierzchu wyświetlany jest ostatni element, niezależnie od jego rodzaju. chodzi najwyrażniej o to, że jeśli najpierw zadeklarujemy kolumny, to wyświetlane będą wiersze, a kolumny opisują wymiary komórek i odwrotnie - jeśli zadeklarujemy wiersze najpierw, to treść umieszczamy w kolumnach... ostatnie zdanie i tak jest niejasne w en-US... +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+
Image:XUL_ref_grid.png
+
<!-- groupbox containing a grid.
+     The second column is twice as big as the first column -->
+<groupbox>
+  <caption label="Details"/>
+  <grid>
+    <columns>
+      <column flex="1"/>
+      <column flex="2"/>
+    </columns>
+    <rows>
+      <row>
+        <label value="User name"/>
+        <textbox id="user"/>
+      </row>
+      <row>
+        <label value="Group"/>
+        <menulist>
+          <menupopup>
+            <menuitem label="Accounts"/>
+            <menuitem label="Sales" selected="true"/>
+            <menuitem label="Support"/>
+          </menupopup>
+        </menulist>
+      </row>
+    </rows>
+  </grid>
+</groupbox>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
columns, column, rows, row. +
diff --git a/files/pl/mozilla/tech/xul/grippy/index.html b/files/pl/mozilla/tech/xul/grippy/index.html new file mode 100644 index 0000000000..1f89bfc8e2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/grippy/index.html @@ -0,0 +1,95 @@ +--- +title: grippy +slug: Mozilla/Tech/XUL/grippy +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/grippy +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który można zastosować wewnątrz elementu splitter; stosowany do zwinięcia elementu siostrzanego względem rozdzielacza (tj. umieszczonego tuż obok niego - przyp. tłum). Przeglądarka Firefox nie obsługuje elementu grippy. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/groupbox/index.html b/files/pl/mozilla/tech/xul/groupbox/index.html new file mode 100644 index 0000000000..74eb8d137b --- /dev/null +++ b/files/pl/mozilla/tech/xul/groupbox/index.html @@ -0,0 +1,116 @@ +--- +title: groupbox +slug: Mozilla/Tech/XUL/groupbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/groupbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pudełko, które wyświetla ramkę wokół siebie, służące do grupowania szeregu logicznie powiązanych elementów. Jeśli element caption zostanie umieszczony wewnątrz groupbox, zostanie użyty jako nagłówek, pojawiający się w górnej części elementu groupbox. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Własności
accessible +
+

Przykłady

+
Image:XUL_ref_groupbox.png
+
<groupbox>
+  <caption label="Settings"/>
+  <radiogroup>
+    <radio label="Black and white"/>
+    <radio label="Colour"/>
+  </radiogroup>
+  <checkbox label="Enabled"/>
+</groupbox>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider +
diff --git a/files/pl/mozilla/tech/xul/hbox/index.html b/files/pl/mozilla/tech/xul/hbox/index.html new file mode 100644 index 0000000000..2988eefa0d --- /dev/null +++ b/files/pl/mozilla/tech/xul/hbox/index.html @@ -0,0 +1,100 @@ +--- +title: hbox +slug: Mozilla/Tech/XUL/hbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/hbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener mogący zawierać wiele elementów potomnych. Równoważny z elementem box. +

Dodatkowe informacje są dostępne w kursie XUL.

+

Przykłady

+
<!-- Dwa przyciski z prawej strony -->
+<hbox>
+  <spacer flex="1"/>
+  <button label="Połacz"/>
+  <button label="Ping" />
+</hbox>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
box, vbox +
+
+
diff --git a/files/pl/mozilla/tech/xul/iframe/index.html b/files/pl/mozilla/tech/xul/iframe/index.html new file mode 100644 index 0000000000..61df7e583c --- /dev/null +++ b/files/pl/mozilla/tech/xul/iframe/index.html @@ -0,0 +1,182 @@ +--- +title: iframe +slug: Mozilla/Tech/XUL/iframe +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/iframe +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Wewnętrzna ramka, która działa bardzo podobnie do elementu iframe z języka HTML. Atrybut src służy do określenia zawartości ramki. Treść ta stanowi osobny dokument. Elementy potomne ramki (iframe) są ignorowane. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
src +
+
Własności
accessible, contentDocument, contentWindow, docShell, webNavigation +
+

Przykłady

+
<iframe src="table.php" flex="2" id="browserTable" name="table_frame"/>
+
+

Wybór adres URL z menu +

+
<menulist oncommand="doNav(this);">
+  <menupopup>
+    <menuitem label="Mozilla" value="http://mozilla.org" />
+    <menuitem label="Slashdot" value="http://slashdot.org"/>
+    <menuitem label="Sourceforge" value="http://sf.net" />
+    <menuitem label="Freshmeat" value="http://freshmeat.net"/>
+  </menupopup>
+</menulist>
+
+
+<iframe id="myFrame" flex="1"/>
+
+<script>
+function doNav(obj){
+  var url = obj.selectedItem.value;
+  // firstChild odpowiada elementowi menupopup
+  document.getElementById('myFrame').setAttribute('src', url);
+}
+</script>
+
+

Atrybuty

+

+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
contentDocument +
Typ: document +
Własność tylko do odczytu zawierająca obiekt dokumentu w danym elemencie. +
+


+

+ +
+
+
+
+ contentWindow
+
+ Typ: window
+
+ Własność tylko do odczytu zawierająca obiekt okna w elemencie.
+
+

+
+
docShell +
Typ: nsIDocShell +
Własność tylko do odczytu zawierająca obiekt nsIDocShell dla dokumentu. +
+ +
+
+
webNavigation +
Typ: nsIWebNavigation +
Własność tylko do odczytu zawiera obiekt nsIWebNavigation dla dokumentu. Wiele z jego metod może być wywoływanych bezpośrednio na dokumencie; są to takie metody jak goBack i goForward. Zawiera także stałe wczytywania wykorzystywane przez reloadWithFlags i loadURIWithFlags. +
+


+

+ +
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/image/index.html b/files/pl/mozilla/tech/xul/image/index.html new file mode 100644 index 0000000000..4d9a66b45a --- /dev/null +++ b/files/pl/mozilla/tech/xul/image/index.html @@ -0,0 +1,163 @@ +--- +title: image +slug: Mozilla/Tech/XUL/image +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/image +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element wyświetlający obrazek, bardzo podobny do HTML-owego elementu img. Atrybut src można zastosować do określenia adresu URL obrazka. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
onerror, onload, src, validate +
+
Własności +
accessible, src +
+
Klasy stylów +
alert-icon, error-icon, message-icon, question-icon +
+

Przykłady

+
grafika:Firefoxlogo.png
+
<image src='Firefoxlogo.png' width='135' height='130'/>
+
+
+

Atrybuty

+

+

+ +
+
+ onerror
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest przesyłane do elementu image w momencie wystąpienia błędu podczas wczytywania obrazka.
+
+
+
+ +
+
+ onload
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia będzie wywołany na elemencie image,
+
+
w momencie zakończenia wczytywania obrazka. Dzieje się tak niezależnie od tego, czy obrazek został określony przez atrybut src, czy przez własność CSS  list-style-image. Zdarzenie zostanie wywołane ponownie także przy zmianie obrazka na inny, w momencie jego wczytania. To zdarzenie nie będzie przechodziło w górę drzewa elementów w modelu bąbelkowym zdarzeń.
+
+
+
+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+
+ +
+
+ validate
+
+ Typ: + + jedna z poniższych wartości +
+
+ Atrybut ten określa, czy obrazek ma być wczytywany z pamięci podręcznej. Może być to przydatne, jeśli obrazki są wczytywane z serwera zdalnego, albo planowana jest częsta ich podmiana. Poniższe wartości są akceptowane; pominięcie tego atrybutu spowoduje zastosowanie wartości domyślnej.
+
+
    +
  • always: Obrazek będzie zawsze sprawdzany, czy powinien być wczytany ponownie.
  • +
  • never: Obrazek będzie wczytywany z pamięci podręcznej, o ile to tylko możliwe.
  • +
+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ src
+
+ Typ: + + URL +
+
+ Pobiera i ustawia wartość atrybutu src.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

+
+ alert-icon
+
+ Klasa, która dodaje ikonę ostrzeżenia. Zazwyczaj wygląda jak znak wykrzyknika. Ta i inne klasy ikon może być zastosowana dla elementów image lub innych mogących zawierać obrazek.
+
+
+
+ error-icon
+
+ Klasa, która dodaje ikonę błedu. Zazwyczaj będzie to czerwona ikona z "X".
+
+
+
+ message-icon
+
+ Klasa, która dodaje ikonę pudełka wiadomości.
+
+
+
+ question-icon
+
+ Klasa dodaje ikonę pytania, która zazwyczaj wygląda jak znak zapytania.
+
+

+

Podobne

+

Zobacz także atrybut icon. +

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULImageElement +
+
+
+
diff --git a/files/pl/mozilla/tech/xul/index.html b/files/pl/mozilla/tech/xul/index.html new file mode 100644 index 0000000000..4565b38c15 --- /dev/null +++ b/files/pl/mozilla/tech/xul/index.html @@ -0,0 +1,31 @@ +--- +title: XUL +slug: Mozilla/Tech/XUL +tags: + - Wszystkie_kategorie + - XUL +translation_of: Archive/Mozilla/XUL +--- +

 

+

"Getting Started" box, if there is no "Getting Started" article yet written, should be populated with another featurearticle or tutorial.

+
Na początek
+Poradnik w formie kursu, pozwalający zapoznać się z językiem XUL, przeniesiony z XULPlanet.
+
+

XUL (wym. "zul"; ang. XML-based User-interface Language) jest opartym na XML-u językiem opisu interfejsu użytkownika autorstwa Mozilli, pozwalającym budować bogate aplikacje między platformowe, które mogą działać podłączone i odłączone od Internetu. Takie aplikacje można łatwo profilować ze zmodyfikowanym tekstem, grafikami i warstwą prezentacji, tak, aby łatwo było przygotować je i zlokalizować na konkretny rynek. Autorzy stron, którzy znają Dynamiczny HTML (DHTML) mogą szybko nauczyć się języka XUL i zacząć budować aplikacje praktycznie od zaraz.

+
+ +

Dokumentacja

Dokumentacja XUL
Zobacz także dokumentację MDC - prefwindow i richlistbox.
Kurs XUL
Ten kurs pozwoli Ci zapoznać się z XUL-em (XML User Interface Language), wieloplatformowym językiem Mozilli służącym do opisu interfejsu użytkownika. W trakcie kursu stworzysz prosty interfejs wyszukiwania plików, i krok po kroku nauczysz się korzystać z tego języka do tworzenia własnych interfejsów.
Kontrolki XUL
Lista dostępnych kontrolek w języku XUL.
Zabawa językiem XUL
Opis klucza własności dokumentów XUL.
Dostosowanie aplikacji XUL do Firefoksa 1.5
Lista zmian w Firefoksie 1.5 wpływających na programistów XUL-a.
Przewodnik po szablonach XUL
Szczegółowy przewodnik po szablonach XUL, które są odpowiedzialne za generowanie treści ze źródeł danych.
Nakładki XUL
Artykuł opisujący nakładki XUL. Za pomocą nakładek definiuje się dodatkowe elementy UI. Dostarczają one mechanizmu rozszerzenia lub zmiany istniejących aplikacji XUL.


Pokaż wszystkie...

Społeczność

  • Obejrzyj fora Mozilli...

Narzędzia

Pokaż wszystkie...

Powiązane tematy

JavaScript, XBL, CSS, RDF, Rozszerzenia, XULRunner
+

Categories

+

Interwiki Language Links

+

 

+

 

+

 

+

 

+ +

diff --git a/files/pl/mozilla/tech/xul/key/index.html b/files/pl/mozilla/tech/xul/key/index.html new file mode 100644 index 0000000000..3f552b09c6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/key/index.html @@ -0,0 +1,149 @@ +--- +title: key +slug: Mozilla/Tech/XUL/key +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/key +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+ +

Element key określa skrót klawiaturowy. Dzięki funkcjom obsługi zdarzeń można odpowiedzieć na wciśnięcie danego klawisza. Element key musi być umieszczony wewnątrz elementu keyset.

+ +

When a key matching the attributes on the key element is pressed, the command will be fired on the key element. The key pressed must match the key attribute (or keycode attribute) as well as the modifiers attribute in order for the key element to be activated and fire a command event.

+ +

For example, consider the following key:

+ +
<key key="r" modifiers="shift"/>
+
+ +

This key will only match when the Shift key is pressed as well as the R key, and no other keys. For instance, if the Shift, Control and R keys are all pressed, the key will not match.

+ +

To indiciate that a modifier key may optionally be pressed, place the word 'any' after a listing the optional modifier key. For example:

+ +
<key key="r" modifiers="shift any control"/>
+
+ +

In this example, the shift key may or may not be pressed, while the control key must be pressed. This allows keys to match more loosely for modifier keys that aren't relevant, yet still allows specific modifiers to be required.

+ +

If the modifiers attribute is not specified, then no modifiers may be pressed for the key to match.

+ +

Dodatkowe informacje są dostępne w kursie XUL.

+ +
+
Atrybuty
+
command, disabled, key, keycode, keytext, modifiers, oncommand, phase
+
+ +

Przykłady

+ +

(potrzebne przykłady)

+ +

Atrybuty

+ +

+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+ +
key +
Typ: znak +
Litera, która musi zostać naciśnięta. Powinien to być znak, który może być wyświetlany. +
+


+

+ + +
+ +
keycode +
Typ: kod klawisza łańcucha znaków +
Dla klawiszy skrótu, które nie są wyświetlane jako litery, takich jak Enter lub klawisze funkcyjne, można wykorzystać ten atrybut zamiast key. Dozwolone kody klawiszy są wymienione na tej liście. +
+


+

+ + +
+ +
keytext +
Typ: string +
Etykieta skrótu klawiaturowego. Tekst ten będzie wyświetlony obok etykiety pozycji menu (menuitem), jeśli pozycja ta (menuitem) jest połączona z elementem key poprzez jej atrybut key. +
+


+

+ + +
+ +
modifiers +
Typ: oddzielona spacją lista wartości poniżej +
Lista klawiszy-modyfikatorów, które powinny być wciśnięte, aby wywołać dany skrót klawiatury. Jeśli klawiszy-modyfikatorów jest więcej niż jeden, należy je oddzielić spacjami lub przecinkami. Klawisze niedostępne na danej platformie będą mapowane na inne. +
+ +


+

+ + +
+ +
oncommand +
Typ: kod skrypt +
Ta funkcja obsługi zdarzenia jest wywołana w momencie aktywacji polecenia. Ma to miejsce, gdy użytkownik zaznaczy pozycję menu lub kiedy naciśnie skrót klawiaturowy przypisany do polecenia. +
+ + +
+ + +
+
phase
+
Typ:ciąg znaków
+
Faza zdarzeń, w której wywoływana jest funkcja obsługi. Należy atrybut ten ustawić na wartość capturing, by określić, że ma to nastąpić w fazie przechwytywania, albo na target, aby określić to na elemencie docelowym, albo pominąć, by wywołanie funkcji obsługi nastąpiło w fazie bąbelkowania.
+
+

+ +

Własności

+ +

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+ +

Metody

+ +

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +

Podobne

+ +

TBD

diff --git a/files/pl/mozilla/tech/xul/keyset/index.html b/files/pl/mozilla/tech/xul/keyset/index.html new file mode 100644 index 0000000000..f6bc0edf13 --- /dev/null +++ b/files/pl/mozilla/tech/xul/keyset/index.html @@ -0,0 +1,97 @@ +--- +title: keyset +slug: Mozilla/Tech/XUL/keyset +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/keyset +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener dla elementów key. Element keyset i jego elementy potomne nie są wyświetlane. +

Dodatkowe dostępne informacje w kursie XUL. +

+

Przykłady

+
<keyset>
+  <key id="sample-key" modifiers="shift" key="R"/>
+</keyset>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/kontrolki_xul/index.html b/files/pl/mozilla/tech/xul/kontrolki_xul/index.html new file mode 100644 index 0000000000..9038830bc8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kontrolki_xul/index.html @@ -0,0 +1,145 @@ +--- +title: Kontrolki XUL +slug: Mozilla/Tech/XUL/Kontrolki_XUL +tags: + - Wszystkie_kategorie + - XUL +translation_of: Archive/Mozilla/XUL/XUL_controls +--- +

Poniższa tabela przedstawia listę kontrolek dostarczanych przez język XUL użytkownikowi. Zobacz Kurs XUL, by dowiedzieć się, w jaki sposób są one używane oraz dokumentację XUL.

+ +
<button>

Przycisk, który może być naciśnięty przez użytkownika.

+<button label="Save" accesskey="S"/>
+
Grafika:Controlsguide-button.png
<button type="menu">

Przycisk, który posiada dołączone rozwijane menu. Naciskając przycisk otworzymy menu.

+<button type="menu" label="View">
+  <menupopup>
+    <menuitem label="List"/>
+    <menuitem label="Details"/>
+  </menupopup>
+</button>
+
Grafika:Controlsguide-button-menu.png
<button type="menu-button">

Przycisk, który posiada odrębną strzałkę z załączonym do niej menu. W przeciwieństwie do przycisku typu "menu", po naciśnięciu na główną jego część może zostać wykonana oddzielna akcja.

+<button type="menu-button" label="New">
+  <menupopup>
+    <menuitem label="New Document"/>
+    <menuitem label="New Image"/>
+  </menupopup>
+</button>
+
Grafika:Controlsguide-button-menubutton.png
<checkbox>

Kontrolka, która może być włączona lub wyłączona, zazwyczaj stosujemy ją do utworzenia opcji, która może być włączona lub wyłączona.

+<checkbox label="Show Toolbar Labels" checked="true"/>
+
Grafika:Controlsguide-checkbox.png
<colorpicker>

Kontrolka pozwalająca użytkownikowi na wybór koloru.

+<colorpicker color="#FF0000"/>
+
Grafika:Controlsguide-colorpicker.png
<colorpicker type="button">

Specjalny typ kontrolki colorpicker, który pokazuje tylko przycisk, lecz po jego naciśnięciu wyświetli się okienko z możliwością wyboru koloru.

+<colorpicker type="button" color="#CC0080"/>
+
Grafika:Controlsguide-colorpicker-button.png
<datepicker>

Nowość w Mozilli 1.9 / Firefox 3

Ustawienie pola tekstowego, które może być zastosowane do wprowadzenia daty.

+<datepicker value="2007/03/26"/>
+
Grafika:Controlsguide-datepicker.png
<datepicker type="grid">

Nowość w Mozilli 1.9 / Firefox 3

Element datepicker, który wyświetla siatkę z wyborem daty.

+<datepicker type="grid" value="2007/02/20"/>
+
Grafika:Controlsguide-datepicker-grid.png
<datepicker type="popup" >

Nowość w Mozilli 1.9 / Firefox 3

Element datepicker, który wyświetla zbiór pól tekstowych do wprowadzenia daty, lecz posiada również przycisk, po którego naciśnięciu wyświetla się siatka kalendarza.

+<datepicker type="popup" value="2008/08/24"/>
+
 
<description>

Element description jest stosowany do tekstu opisowego.

+<description>
+  Select a time for the event to start
+</description>
+
Grafika:Controlguide-description.png
<groupbox>

Element groupbox wyświetla pudełko z etykietą wokoło interfejsu kontrolek.

+<groupbox>
+  <caption label="Network"/>
+</groupbox>
+
Grafika:Controlguide-groupbox.png
<image>

Obrazek określony przez adres URL.

+<image src="start.png"/>
+
Grafika:Controlguide-image.png
<label>

Etykieta jest stosowana do tworzenia tekstu, który jest etykietą pobliskiej kontrolki.

+<label control="volume" value="Volume:"/>
+
Grafika:Controlguide-label.png
<listbox>

Element listbox jest stosowany do zaznaczenia pozycji z listy pozycji będących etykietami.

+<listbox>
+  <listitem label="Chocolate"/>
+  <listitem label="Jelly Beans"/>
+</listbox>
+
Grafika:Controlguide-listbox.png
<menulist>

Element menulist (lub combobox) jest stosowany do tworzenia kontrolki wyboru z rozwijanym menu.

+<menulist>
+  <menupopup>
+    <menulist label="Lions" value="l"/>
+    <menuitem label="Tigers" value="t"/>
+    <menuitem label="Bears" value="b"/>
+  </menupopup>
+</menulist>
+
Grafika:Controlguide-menulist.png
<menulist editable="true">

Edytowalna lista menu jest jak standardowa lista menu oprócz tego, że zaznaczona wartość jest wyświetlana w polu tekstowym, gdzie może ona zostać bezpośrednio zmodyfikowana lub posłużyć do wpisania nowej wartości, której nie ma w menu po jego rozwinięciu.

+<menulist editable="true">
+  <menupopup>
+    <menuitem label="Elephants" value="Elephants"/>
+    <menuitem label="Kangaroos" value="Kangaroos"/>
+    <menuitem label="Bats" value="Bats"/>
+  </menupopup>
+</menulist>
+
Grafika:Controlguide-menulist-editable.png
<progressmeter>

Pasek postępu jest stosowany do wyświetlenia postępu długości zadania.

+<progressmeter value="40"/>
+
Grafika:Controlguide-progressmeter.png
<radio>

Przycisk opcji jest stosowany, gdy tylko jedna z zestawu opcji może zostać wybrana za jednym razem.

+<radiogroup>
+  <radio label="Light" value="light"/>
+  <radio label="Heavy" value="heavy"/>
+</radiogroup>
+
Grafika:Controlguide-radio.png
<richlistbox>

Element richlistbox wyświetla listę pozycji, gdzie jedna lub więcej z nich może zostać zaznaczona. W przeciwieństwie do elementu listbox, który został zaprojektowany, aby wyświetlać tylko tekst, richlistbox może wyświetlać dowolny typ zawartości.

+<richlistbox>
+  <richlistitem>
+    <image src="happy.png"/>
+  </richlistitem>
+  <richlistitem>
+    <image src="sad.png"/>
+  </richlistitem>
+  <richlistitem>
+    <image src="angry.png"/>
+  </richlistitem>
+</richlistbox>
+
Grafika:Controlguide-richlistbox.png
<scale>

Nowość w Mozilli 1.9 / Firefox 3

Element scale wyświetla pasek z uchwytem, który może być przesuwany wzdłuż paska, aby wybrać wartości z określonego zakresu.

+<scale min="1" max="10"/>
+
Grafika:Controlguide-scale.png
<textbox>

Element textbox, który pozwala wprowadzić pojedynczą linię tekstu.

+<textbox value="firefox"/>
+
Grafika:Controlguide-textbox.png
<textbox multiline="true">

Element textbox, który pozwala na wprowadzenie wieloliniowego tekstu.

+<textbox multiline="true"/>
+
Grafika:Controlguide-textbox-multiline.png
<textbox type="autocomplete">

Element textbox, który dostarcza rozwijane menu pokazujące podpowiedzi, które mogłyby pasować do wpisywanego przez użytkownika tekstu. Użytkownik może zaznaczyć jedną z podpowiedzi, aby wstawić ją do pola tekstowego.

+<textbox type="autocomplete" autocompletesearch="history"/>
+
 
<textbox type="number">

Nowość w Mozilli 1.9 / Firefox 3

Element textbox dla wprowadzanych liczb. Dwa przyciski strzałek są wyświetlane do przechodzenia między wartościami.

+<textbox type="number" min="1" max="20"/>
+
Grafika:Controlguide-textbox-number.png
<textbox type="password">

Element textbox, który ukrywa typ znaków, stosowany w polach z hasłami.

+<textbox type="password"/>
+
Grafika:Controlguide-textbox-password.png
<timepicker>

Nowość w Mozilli 1.9 / Firefox 3

Element timepicker wyświetla zbiór pól tekstowych do wprowadzenia czasu.

+<timepicker value="12:05"/>
+
Grafika:Controlguide-timepicker.png
<toolbarbutton>

Przycisk, który jest wyświetlany na pasku narzędzi.

+<toolbarbutton label="Reload"/>
+
Grafika:Controlguide-toolbarbutton.png
<toolbarbutton type="menu">

Przycisk, który jest wyświetlony z załączonym rozwijalnym menu w sobie.

+<toolbarbutton type="menu" label="Show">
+  <menupopup>
+    <menuitem label="Toolbars"/>
+    <menuitem label="Status Bar"/>
+  </menupopup>
+</toolbarbutton>
+
 
<toolbarbutton type="menu-button">

Przycisk na pasku narzędzi, który posiada odrębną strzałkę z załączonym do niej menu. W przeciwieństwie do przycisku typu "menu", po naciśnięciu na główną jego część może zostać wykonana oddzielna akcja.

+<toolbarbutton type="menu-button" label="Open">
+  <menupopup>
+    <menuitem label="Open Changed Files"/>
+    <menuitem label="Open All"/>
+  </menupopup>
+</toolbarbutton>
+
 
<tree>

Drzewo wyświetla hierarchię pozycji w wielu kolumnach.

+<tree>
+  <treecols>
+    <treecol label="Name" flex="1"/>
+    <treecol label="Size" flex="1"/>
+  </treecols>
+  <treechildren>
+    <treeitem>
+      <treerow>
+        <treecell label="Popcorn"/>
+        <treecell label="Large"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="Root Beer"/>
+        <treecell label="Small"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+</tree>
+
Grafika:Controlguide-tree.png
+

 

+ +

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/aktualizacja_polece\305\204/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/aktualizacja_polece\305\204/index.html" new file mode 100644 index 0000000000..36f474223b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/aktualizacja_polece\305\204/index.html" @@ -0,0 +1,133 @@ +--- +title: Aktualizacja poleceń +slug: Mozilla/Tech/XUL/Kurs_XUL/Aktualizacja_poleceń +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Updating_Commands +--- +
+

« PoprzedniNastępny »

+
+ +

W tym artykule zajmiemy się aktualizacją poleceń.

+ +

Wywoływanie komend

+ +

Jeśli element command posiada atrybut oncommand, możesz po prostu ją wywołać używając metody oncommand na komendę albo element przypisany do niej. Dla innych komend będziesz musiał użyć kilka dodatkowych linii kodu, np. gdy wywołujesz komendę zaimplementowaną przez kontroler. Dodatkowo będziesz musiał tego użyć, gdy tworzysz własne menu komend, np. żeby zaimplementować menu edytowania komend w swojej aplikacji.

+ +

Na szczęście dodatkowy kod jest w miarę prosty. Wszystko czego potrzebujesz to pobrać potrzebny kontroler i wywołać komendę. Oto prosty sposób aby to wykonać:

+ +

If a <code>command</code> has an <code>oncommand</code> attribute, you can just invoke it by using the <code>doCommand</code> method of the command or an element which is attached to it. For other commands, you will need to use a couple of additional lines of code. You will need to use these extra steps when invoking commands implemented by a controller. In addition, you will need to do this when creating your own menu commands, for instance to implement the edit menu commands in your own application. Fortunately, the extra code is fairly simple. All we need to do is get the needed controller and call the command. A simple way of doing this is the following:

+ +
var controller = document.commandDispatcher.getControllerForCommand("cmd_paste");
+if (controller && controller.isCommandEnabled("cmd_paste")){
+  controller.doCommand(command);
+}
+
+ +

Powyższy kod najpierw odzyskuje kontrolera dla polecenia <tt>cmd_paste</tt> z rozdzielacza poleceń. Następnie, sprawdza czy polecenie jest włączone i wykonuje polecenie używając metody kontrolera doCommand . Zauważmy, że nie potrzebujemy zgadywać którego elementu albo którego kontrolera musimy użyć. Rozdzielacz komend zajmie się tym sam. Moglibyśmy również po prostu wywołać + + doCommand + bez sprawdzania czy komenda jest dostępna, choć prawdopodobnie nie powinniśmy tak robić.

+ +

Powyższy kod jest wystarczająco ogólny, że może być funkcją wykonującą komendę, z komendą jako argumentem. Taka funkcja mogłaby być użyta wielokrotnie dla wielu komend. W rzeczywistości jest to bardzo częste, więc w Mozilli zawarta jest biblioteka, która właśnie to robi. Jeśli zawrzesz skrypt "chrome://global/content/globalOverlay.js" w pliku XUL, możesz wywoływać metodę + + goDoCommand + , która wykonuje komendę przekazaną w argumencie. Kod tej funkcji to tylko kilka linijek, więc możesz zawrzeć go bezpośrednio w swoim kodzie, jeśli z pewnych powodów nie chcesz importować biblioteki.

+ +

The code above first retrieves the controller for the '<tt>cmd_paste</tt>' command from the command dispatcher. Then, it checks to see whether the command is enabled, and then executes the command using the <code>doCommand</code> method of the controller. Note that we don't need to figure out which element to use or which controller to use. The command dispatcher handles that part. Also, we could just call <code>doCommand</code> without checking if the command was enabled or not, although we probably shouldn't do that. The code above is generic enough that it can be a function that takes a command as an argument and executes that command. This function could then be reused for all commands. In fact, this is common enough that Mozilla includes a library which does just that. If you include the script '<tt>chrome://global/content/globalOverlay.js</tt>' in a XUL file, you can call the <code>goDoCommand</code> method which executes the command passed as the argument. The code for this function is only a few lines long so you could include it directly in your code if for some reason you didn't want to include the library.

+ +
<script src="chrome://global/content/globalOverlay.js"/>
+
+<command id="cmd_paste" oncommand="goDoCommand('cmd_paste');"/>
+<button label="Paste" command="cmd_paste"/>
+
+ +

Przykład powyżej zaimplementuje przycisk "Wklej" ( + Paste + ). Jest on dołączony do komendy, która wywoła komendę z określonego kontrolera. Kod ten to wszystko czego potrzebujesz, aby zaimplementować funkcjonalną komendę wklejania do swojej aplikacji. Jedyna inna rzecz, której potrzebujesz to upewnić się, czy status dostępności komendy wklej, a także przycisku, jest update'owany w odpowiednim czasie, co jest opisane poniżej.

+ +

The example above will implement a Paste button. It is attached to the command which will invoke the command on the necessary controller when called. The code above is all you need to implement the functionality of the paste command in your application. The only other thing you need to do is ensure that the enabled status of the paste command, and therefore the button, is updated at the right time, which is described below.

+ +

Command Updaters

+ +

Edytor komend to dodatkowa cecha elementu <commandset>, która pozwala edytować dostępne statusy jednej lub więcej komend, gdy zaszła pewna akcja. Musisz się zastanowić kiedy komenda jest ważna, a kiedy nie. Dodatkowo musisz rozważyć kiedy status może się zmienić i kiedy komenda powinna zostać edytowana.

+ +

Na przykład komenda "wklej" jest ważna, gdy coś dzieje się w oknie tekstowym i schowek nie jest pusty. Komenda stanie się dostępna za każdym razem, gdy kursor będzie w polu tekstowym i gdy zmieni się zawartość schowka. Edytor komend będzie wyczekiwał na te sytuacje i kod włączający lub wyłączający dostępność komend będzie wykonany.

+ +

Prosty edytor wygląda tak:

+ +

A command updater is an extra feature of the <code>commandset</code> element which allows it to update the enabled status of one or more commands when certain events happen. You will need to think about when a command is valid and when it is not. In addition, you will need to consider when the state could change and when the commands should be updated. For example, the paste command is valid when a textbox has the focus and there is something on the clipboard to paste. The command will become enabled whenever a textbox is focused and when the clipboard contents change. A command updater will listen for these situations and code can be executed which enables and disables commands as necessary. A simple command updater looks like this:

+ +
<commandset id="updatePasteItem"
+            commandupdater="true"
+            events="focus"
+            oncommandupdate="goUpdateCommand('cmd_paste');"/>
+
+ +

Edytor jest oznaczony przez atrybut + commandupdater + , który powinien mieć wartość + + true + . Atrybut + + events + jest używany aby wypisać sytuacje, w które wsłuchuje się edytor. Możesz wyszczególnić wiele wydarzeń, przedzielając je przecinkiem. W powyższym przykładzie edytor czeka na wydarzenie, gdy kursor znajdzie się w odpowiednim polu ( + + focus event + ). Sprawi to, że komenda zostanie edytowana.

+ +

Gdy pojawi się oczekiwane wydarzenie, zostanie wywołany kod w atrybucie + oncommandupdate + . W przykładzie wywołana jest metoda + + goUpdateCommand + , która jest funkcją dostarczaną przez skrypt globalOverlay.js opisany wcześniej. Wyedytuje on komendę i dostosuje dostępność odpowiednich przycisków i elementów menu. Stojący za tym kod jest w miarę łatwy. Po prostu bierze wymaganego kontrolera, wywołuje jego metodę + + isCommandEnabled + i dostosowuje dostępność komendy. Jeśli masz kilka komend do wyedytowania, wywołaj metodę + + goUpdateCommand + dla każdej z nich.

+ +

Zauważmy, że edytor komendy otrzyma powiadomienia o wszystkich wydarzeniach z wszystkich elementów, nawet jeśli inny słuchacz wydarzeń na nie odpowiada. Tak więc edytor komend jest jak globalny słuchacz wydarzeń ( + event handler + ).

+ +

Edytorzy mają kilka wydarzeń, na które odpowiadają, wymienione poniżej. Można też stworzyć własne wydarzenia.

+ + + +

Następujący przykład pokazuje edytorów komend używanych w Mozilli do edytowania komend menu edycji. Użyte tu funkcje możecie znaleźć w skrypcie "chrome://communicator/content/utilityOverlay.js".

+ +
<commandset id="globalEditMenuItems"
+            commandupdater="true"
+            events="focus"
+            oncommandupdate="goUpdateGlobalEditMenuItems()"/>
+<commandset id="selectEditMenuItems"
+            commandupdater="true"
+            events="select"
+            oncommandupdate="goUpdateSelectEditMenuItems()"/>
+<commandset id="undoEditMenuItems"
+            commandupdater="true"
+            events="undo"
+            oncommandupdate="goUpdateUndoEditMenuItems()"/>
+<commandset id="clipboardEditMenuItems"
+            commandupdater="true"
+            events="clipboard"
+            oncommandupdate="goUpdatePasteMenuItems()"/>
+
+ +

Następnie dowiemy się jak używać obserwatorów.

+ +
+

« PoprzedniNastępny »

+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_drzewa/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_drzewa/index.html" new file mode 100644 index 0000000000..756c6eec33 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_drzewa/index.html" @@ -0,0 +1,117 @@ +--- +title: Dodatkowe możliwości drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodatkowe_możliwości_drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/More_Tree_Features +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule poznamy więcej możliwości drzewa. +

+

Hierarchia drzew

+

Elementy drzewa są także zastosowane do tworzenia list hierarchicznych, takich, jakie możemy znaleźć w menedżerach plików lub na liście ulubionych zakładek w przeglądarce. Widok drzewa posiada funkcję, która określa hierarchię poszczególnych pozycji w drzewie. Każda pozycja w drzewie posiada swoją pozycję, która zaczyna się od poziomu 0. Najwyżej wysunięte elementy w drzewie będą posiadały poziom 0, dziecko tej pozycji będzie posiadało poziom 1, dziecko poniżej będzie posiadało poziom 2 i tak dalej. Drzewo będzie pytało o poziom każdej pozycji według ustalonych zasad jak wyrysować wiersze. +

Drzewo wyrysuje ikony otwierania i zamykania pozycji rodzica, służące do rozwijania wierszy, jak również linie łączące wiersz rodzica z wierszami dzieci. Widok musi się upewniać, czy ścieżka wierszy jest taka, jak było wymagane. To może czasem się okazać zawodne, jednak, na szczęście, wbudowany widok treści drzewa wykona za nas najcięższą pracę.

W celu utworzenia zestawu zagnieżdżonych wierszy, dodajemy drugi element treechildren wewnątrz rodzica treeitem. Możemy wtedy dodać pozycję wewnątrz tamtego, żeby określić wiersze potomne kolejnych pozycji. Nie umieszczaj wewnętrznego elementu treechildren wewnątrz treerow, ponieważ to nie będzie działało. +

Możemy powtarzać ten proces do utworzenia głęboko zagnieżdżonych drzew. Zasadniczo jednak element treeitem może zawierać którykolwiek z pojedynczych wierszy, które są zadeklarowane z elementem treerow lub całym kompletem wierszy, zadeklarowanych z elementem treechildren. +

Są dwie inne rzeczy, które trzeba zrobić żeby upewnić się, że hierarchia zadziała poprawnie. Po pierwsze, trzeba zaznaczyć element treeitem, który posiada 'dzieci' jako kontener. Robimy to poprzez dodanie atrybutu container w następujący sposób: +

+
<treeitem container="true"/>
+
+

Pozwala to użytkownikowi na kliknięcie w wiersz przesłany do elementu treeitem w celu rozwinięcia i zwinięcia wewnętrznych wierszy. Można mieć rozwinięte wiersze już na samym początku, dodając atrybut open. Kiedy użytkownik rozwija i zwija główny wiersz, wywoływana jest funkcja toggleOpenState, która to właśnie przełącza te widoki. Dla widoku treści drzewa umieści atrybut open, żeby ustawić aktualny stan. +

Drugą zmianą jest to, że musisz umieścić atrybut primary w pierwszej kolumnie. To spowoduje ukazanie się małego symbolu trójkąta przed komórkami, który będzie wskazywał na to, że wiersz można rozwinąć. Dodatkowo wiersze potomne są wcięte (akapit). Zauważ, że użytkownik nie ma możliwości ukrycia pierwszej kolumny, używając przeciągania do prawych kolumn. +

+

Przykład drzewa hierarchicznego

+

Następujący prosty przykład: +

Przykład 1 : Źródła Podgląd +

+
grafika:advtrees1.png
+
<tree rows="6">
+  <treecols>
+      <treecol id="firstname" label="Imię" primary="true" flex="3"/>
+      <treecol id="lastname" label="Nazwisko" flex="7"/>
+  </treecols>
+
+  <treechildren>
+    <treeitem container="true" open="true">
+      <treerow>
+        <treecell label="Znajomi"/>
+      </treerow>
+
+      <treechildren>
+        <treeitem>
+          <treerow>
+            <treecell label="Bob"/>
+            <treecell label="Carpenter"/>
+          </treerow>
+        </treeitem>
+        <treeitem>
+          <treerow>
+            <treecell label="Jerry"/>
+            <treecell label="Hodge"/>
+          </treerow>
+        </treeitem>
+      </treechildren>
+    </treeitem>
+  </treechildren>
+</tree>
+
+

Utworzone zostało hierarchiczne drzewo. Jak widać na obrazku obok pierwszego wiersza ukazał się mały znak plusa lub minusa, wskazując, że wiersz zawiera wiersze potomne. Klikając na ten wiersz użytkownik może rozwinąć i zwinąć listę. Wiersz <tt>Znajomi</tt> potrzebuje jednej kolumny do umieszczenia jego pozycji dla elementów dzieci. +

Zewnętrzny treeitem zawiera pojedynczy element treerow i treechildren. Ten pierwszy tworzy dane dla źródłowego wiersza, a ten drugi dla późniejszych pozycji potomnych.

Można również zagnieżdżać głębsze wiersze. Pamiętaj, że musimy użyć atrybutu container na wierszach, które zawierają wiersze potomne. Zwykła obecność pochodnych wierszy nie jest wystarczająca do wskazania, czy masz kontener, który jest pusty, ale nadal będzie traktowany jako kontener. Na przykład pusty folder powinien być cały czas traktowany jako kontener, ale plik już nie. +

+

Więcej o kolumnach drzewa

+

Jednym z dodatkowych atrybutów, które mogą być dodane do drzewa, jest enableColumnDrag. Jeżeli ma wartość true, użytkownik może złapać za nagłówek i dowolnie przemieszczać kolumny wg uznania. +

Prawdopodobnie użytkownik będzie chciał też zmienić szerokość kolumn. Można to zrobić umieszczając rozdzielacz (splitter) pomiędzy każdym z elementów treecol. Pojawi się małe nacięcie pomiędzy kolumnami, które użytkownik może złapać i przeciągać, zmieniając szerokość kolumn. Można zastosować klasę stylu tree-splitter w celu ukrycia przerwy, ale mimo to nadal będzie możliwa zmiana szerokości kolumn. +

Można narzucić maksymalną i minimalną szerokość kolumn przy pomocy atrybutów minwidth i maxwidth. +

Jest możliwość umieszczenia atrybutu hidden w kolumnie, z wartością true, żeby domyślnie uzyskać ukrytą kolumnę. Użytkownik może wybierać, która kolumna ma być ukryta, wybierając ją z rozwijanej listy na końcu wiersza nagłówka.

+

Zapamiętywanie stanu kolumn

+
Grafika:XUL_rememberingStatofColumnsPL.png
+

Atrybut persist może być używany do zachowywania stanu kolumn pomiędzy sesjami (więcej informacji znajduje się w jednym z kolejnych artykułów). Tak, że w przypadku, gdy użytkownik zmieni układ wg własnego uznania, ustawienia zostaną zapamiętanie na następny raz. Będzie trzeba zachować pewna liczbę atrybutów jak w przykładzie: +

Przykład 2 : Źródła Podgląd +

+
<tree enableColumnDrag="true" flex="1">
+  <treecols>
+    <treecol id="runner" label="Biegacz" flex="2" persist="width ordinal hidden"/>
+    <splitter class="tree-splitter"/>
+    <treecol id="city" label="Miasto rodzinne" flex="2" persist="width ordinal hidden"/>
+    <splitter class="tree-splitter"/>
+    <treecol id="starttime" label="Czas startu" flex="1" persist="width ordinal hidden"/>
+    <splitter class="tree-splitter"/>
+    <treecol id="endtime" label="Czas ukończenia" flex="1" persist="width ordinal hidden"/>
+  </treecols>
+
+  <treechildren>
+    <treeitem>
+      <treerow>
+        <treecell label="Joshua Granville"/>
+        <treecell label="Vancouver"/>
+        <treecell label="7:06:00"/>
+        <treecell label="9:10:26"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="Robert Valhalla"/>
+        <treecell label="Seattle"/>
+        <treecell label="7:08:00"/>
+        <treecell label="9:15:51"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+</tree>
+
+

Trzy atrybuty kolumn są trwałe: +

+ +

Następnie dowiemy się, jak pobrać i ustawić zaznaczenie drzew. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_instalacji/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_instalacji/index.html" new file mode 100644 index 0000000000..c6ea120a63 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_instalacji/index.html" @@ -0,0 +1,58 @@ +--- +title: Dodatkowe możliwości instalacji +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodatkowe_możliwości_instalacji +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Additional_Install_Features +--- +

+

« Poprzedni

+

+ +

W tym artykule poznamy dodatkowe możliwości instalacji.

+ +

Dodatkowe możliwości instalacji

+ +

Poprzedni artykuł podstawowego instalatora. Jednak możliwe, że zajdzie potrzeba bardziej zaawansowanego przetwarzania danych podczas instalacji. Na przykład, możesz zechcieć instalować paczkę tylko, gdy jakieś warunki zostaną spełnione, np., gdy dana biblioteka jest zainstalowana.

+ +

Dodatkowo w obiekcie instalacyjnym, plik obiektu jest dostępny podczas instalacji. To dostarcza funkcji mogących zostać użytymi do badania i modyfikowania plików na dysku. Możesz ich użyć do przemieszczenia, skopiowania, lub usunięcia plików, przed lub po instalacji. Na przykład mógłbyś wcześniej stworzyć kopie bezpieczeństwa plików.

+ +

Następujący kod wykona kopię pliku "/bin/grep/" i umieści go w katalogu "/main".

+ +
var binFolder=getFolder("file:///","bin");
+var grep=getFolder(binFolder,"grep");
+
+var mainFolder=getFolder("file:///","main");
+
+File.copy(grep,mainFolder);
+
+ +

Pierwsza linia służy do pozyskania położenia katalogu "/bin. Tekst "file//" jest specjalnym ciągiem oznaczającym katalog główny systemu plików. Stamtąd uzyskujemy plik ‘grep’, który zawarty jest w katalogu ‘bin’. Jeżeli plik nie istnieje nastąpi błąd instalacji. Następnie, otrzymujemy katalog ‘main’, znowu z katalogu głównego systemu. W końcu wywołujemy funkcję File.copy, która kopiuje plik źródłowy do miejsca przeznaczenia.

+ +

Funkcje także przemieszczają, zmieniają nazwę i uruchamiają pliki. Tak można przemieścić plik gdyby kolidował z twoją paczka.

+ +

Obsługa błędów

+ +

Będziesz musiał sprawnie posługiwać się błędami. Zdarzy się ze plik lub katalog nie może zostać odnaleziony, lub brakuje miejsca na dysku, lub są jakiekolwiek inne problemy.

+ +

Możesz stosować funkcję getLastError(), aby sprawdzić czy wystąpił błąd. Jeżeli zwróci SUCCESS, nie było błędów. W przeciwnym wypadku, pojawi się liczba z kodem błędu. Funkcji tej możesz użyć w dowolnym momencie, aby sprawdzić czy nie pojawia się błąd.

+ +

Jeżeli nastąpi błąd, prawdopodobnie będziesz musiał przerwać instalację. Możesz także wyświetlić komunikat o błędzie. Na przykład mógłbyś umieścić następujący kod na końcu twojego skryptu instalacji.

+ +
if (getLastError() == SUCCESS){
+  performInstall();
+}
+else {
+  cancelInstall();
+}
+
+ +

Kody błędu, który mogłyby zostać zwrócone przez getLastError() umieszczone są w pliku źródłowym Mozilla: nsInstall.h. Podczas instalacji, jest tworzony plik dziennika, który zawiera spis wykonanych operacji. Tam zostaną umieszczone błędy, które nastąpiły. Plik dziennika znajduje się w pliku ‘install.log’ w katalogu instalacyjnym Mozilli. Każda instalacja pozostawi po sobie w nim fragment teksu dokumentujący przebieg instalacji.

+ +

Funkcja logComment() jest używana do umieszczania komentarzy instalacji w dzienniku, pobiera ona jeden argument.

+ +

+

« Poprzedni

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_kreator\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_kreator\303\263w/index.html" new file mode 100644 index 0000000000..acfc8bca14 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_kreator\303\263w/index.html" @@ -0,0 +1,85 @@ +--- +title: Dodatkowe możliwości kreatorów +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodatkowe_możliwości_kreatorów +tags: + - Kurs_XUL + - Projekt_MDC + - Przewodniki + - Strony_do_aktualizacji + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/More_Wizards +--- +

+

« PoprzedniNastępny »

+

+ +

Artykuł opisuje dodatkowe możliwości kreatorów.

+ +

Bardziej złożona nawigacja w kreatorze

+ +

Normalnie, kreator wyświetla każdy wizardpage w takiej kolejności w jakiej umieściłeś je w pliku XUL. Jednak w pewnych przypadkach możesz chcieć mieć różne strony kreatorów pojawiające się w zależności od tego co użytkownik wybrał na wcześniejszych stronach.

+ +

W tym przypadku umieść atrybut pageid na każdej z tych stron powinno być to ustawione jako identyfikator dla każdej strony. Potem, aby nawigować po stronie użyj jednej z dwóch metod:

+ +
    +
  1. Ustaw atrybut next na każdej stronie na ID kolejnej strony. Możesz zmienić te atrybuty jako potrzebne do nawigacji po różnych stronach.
  2. +
  3. Wywołaj metodę goTo(). Pobiera ona jeden argument, ID strony do której chcesz przejść. Możesz wywołać tą metodę w funkcji obsługi onpageadvanced lub onwizardnext. Pamiętaj o zwróceniu fałszu w tym przypadku, ponieważ już sam zmieniłeś stronę. Odnotuj metodę goTo(), ponieważ powoduje zmianę strony, ponownie uruchamiając zdarzenia, więc musisz się upewnić, że obsługujesz ten przypadek.
  4. +
+ +

Na przykład tu mamy zbiór stron kreatora (wewnętrzna zawartość została pominięta):

+ +
<wizardpage pageid="type" next="font">
+<wizardpage pageid="font" next="done">
+<wizardpage pageid="color" next="done">
+<wizardpage pageid="done">
+
+ +

Kreator zawsze zaczyna się od pierwszej strony, którą w tym przypadku ma ID strony type. Następna strona jest stroną z ID strony font, więc kreator będzie nawigował do kolejnej strony. Na stronie z ID strony font, widzimy, że kolejna strona to done, więc ta strona będzie wyświetlona później Strona z ID strony done nie ma atrybutu next, więc będzie to ostatnia strona. Skrypt będzie modyfikował atrybut next, jeśli to konieczne do pójścia do strony z ID strony color kiedy to potrzebne.

+ +

Funkcje kreatora

+ +

Kreator pracuje podobnie jak panel kart, z wyjątkiem tego, że karty nie są wyświetlane, a użytkownik przechodzi pomiędzy stronami używając przycisków ułożonych na dole. Ponieważ wszystkie strony są częścią tego samego pliku, wszystkie wartości tych pól na wszystkich stronach będą zapamiętane. Zatem, nie musisz wczytywać i zapisywać informacji pomiędzy stronami.

+ +

Jednakże, możesz chcieć wykonać sprawdzanie każde pole na każdej stronie. Do tego użyj funkcji obsługi opisanych w poprzednim rozdziale. Jeśli pole jest niepoprawne, możesz wyświetlić alarm. W pewnych przypadkach byłoby bardziej dogodne zablokować przycisk Next dopóki ie zostanie wprowadzona poprawna wartość.

+ +

Kreator ma własność canAdvance, która może być ustawiona na prawdę do wskazania, że przycisk Next powinien być włączony. Jeśli ustawimy ją na fałsz, przycisk Next będzie zablokowany. Możesz zmienić tą własność kiedy niepoprawna lub poprawna dana zostanie wprowadzona.

+ +

W poniższym przykładzie, użytkownik musi wprowadzić tajny kod do pola tekstowego na pierwszej stronie kreatora. Funkcja checkCode() jest wywoływana kiedy pierwsza strona jest pokazywana jako wskazywana przez atrybut onpageshow. Jest również wywoływane, kiedy jest naciśnięty klawisz w polu tekstowym, określającym czy przycisk Next powinien ponownie być włączony.

+ +

Przykład kreatora

+ +

Źródła

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<wizard id="theWizard" title="Secret Code Wizard"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<script>
+function checkCode(){
+  document.getElementById('theWizard').canAdvance = (document.getElementById('secretCode').value == "cabbage");
+}
+</script>
+
+  <wizardpage onpageshow="checkCode(); return true;">
+       <label value="Enter the secret code:"/>
+       <textbox id="secretCode" onkeyup="checkCode();"/>
+  </wizardpage>
+
+  <wizardpage>
+       <label value="That is the correct secret code."/>
+  </wizardpage>
+
+</wizard>
+
+ +

Jest również odpowiednia własność canRewind, której możesz użyć do włączenia lub wyłączenia przycisku Back. Obie własności są modyfikowane automatycznie kiedy przełączasz strony. Zatem, przycisk Back będzie wyłączony na pierwszej stronie, więc nie musisz ustawiać go sam.

+ +

Inna użyteczną własnością kreatora jest currentPage, która przechowuje odniesienie do aktualnie wyświetlanego wizardpage. Możesz również modyfikować bieżąca stronę przez zmianę tej własności. Jeśli zmienisz ją, będzie uruchomione kilka zdarzeń zmian strony.

+ +

W kolejnym artykule dowiemy się jak stosować nakładki do obsługi wspólnej zawartości.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_menu/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_menu/index.html" new file mode 100644 index 0000000000..7c64ec271e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_menu/index.html" @@ -0,0 +1,121 @@ +--- +title: Dodatkowe możliwości menu +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodatkowe_możliwości_menu +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/More_Menu_Features +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule zobaczymy, jak utworzyć podmenu i zaznaczyć jego elementy. +

+

Tworzenie podmenu

+

Możemy tworzyć podmenu wewnątrz innych menu (zagnieżdżając się w menu) stosując istniejące elementy. Pamiętaj, że możemy umieszczać elementy do wewnątrz elementu menupopup. Widzieliśmy już wcześniej, jak umieścić pozycje menu (menuitem) i separatory (menuseparator) w wyskakującym menu (menupopup). Jednakże możemy tworzyć podmenu poprzez proste umieszczenie elementu menu wewnątrz elementu menupopup. Będzie ono nam działało, ponieważ element menu można tworzyć nawet wtedy, gdy nie jest ono bezpośrednio umieszczone wewnątrz paska menu. Przykład poniżej tworzy proste podmenu wewnątrz menu <tt>Plik</tt>: +

Przykład 1 : Źródła Podgląd +

+
grafika:menubar-ex3.png
+
<toolbox flex="1">
+  <menubar id="sample-menubar">
+    <menu id="file-menu" label="Plik">
+      <menupopup id="file-popup">
+        <menu id="new-menu" label="Nowy">
+          <menupopup id="new-popup">
+            <menuitem label="Okno"/>
+            <menuitem label="Wiadomość"/>
+          </menupopup>
+        </menu>
+        <menuitem label="Otwórz"/>
+        <menuitem label="Zapisz"/>
+        <menuseparator/>
+        <menuitem label="Zakończ"/>
+      </menupopup>
+    </menu>
+  </menubar>
+</toolbox>
+
+
+

Dodawanie menu do przykładu Znajdź pliki

+

Dodajmy menu do okienka dialogowego <tt>Znajdź pliki</tt> poprzez wstawienie kilku prostych komend do menu <tt>Plik</tt> i <tt>Edycja</tt>. Podobnie jak w przykładzie powyżej. +

+
<toolbox>
+
+ <menubar id="findfiles-menubar">
+  <menu id="file-menu" label="Plik" accesskey="P">
+    <menupopup id="file-popup">
+      <menuitem label="Otwórz szukanie..." accesskey="O"/>
+      <menuitem label="Zapisz szukanie..." accesskey="s"/>
+      <menuseparator/>
+      <menuitem label="Zakończ" accesskey="k"/>
+    </menupopup>
+  </menu>
+  <menu id="edit-menu" label="Edycja" accesskey="E">
+    <menupopup id="edit-popup">
+      <menuitem label="Wytnij" accesskey="W"/>
+      <menuitem label="Kopiuj" accesskey="K"/>
+      <menuitem label="Wklej" accesskey="l" disabled="true"/>
+    </menupopup>
+  </menu>
+ </menubar>
+
+<toolbar id="findfiles-toolbar>
+
+
grafika:menubar1.png
+

Dodaliśmy dwa menu z różnymi poleceniami. Jak można zauważyć, pasek menu został dodany do paska zadań. W naszym przykładzie po <tt>Otwórz szukanie...</tt> i <tt>Zapisz szukanie...</tt> znajdują się trzy kropki, co według ogólnie przyjętej konwencji wskazuje, że po kliknięciu tych poleceń, otworzy się kolejne okienko dialogowe. Do każdego menu oraz elementu menu został dodany skrót klawiszowy, co spowodowało podkreślenie danej litery skrótu klawiaturowego w etykiecie polecenia, litera ta wywołuje dane polecenie i jest równoważna z kliknięciem w pozycję menu za pomocą kursora. Polecenie <tt>Wklej</tt> zostało wyłączone (disabled), ponieważ zakładamy, że nie mamy jeszcze czego wklejać. +

Nasz przykład: Okno dialogowe <tt>Znajdź pliki</tt>: Źródła Podgląd +

+
+

Dodawanie zaznaczania w menu

+

Wiele aplikacji posiada pozycje menu, które są zaznaczone. Na przykład, właściwość, która jest włączona, posiada obok polecenia zaznaczenie, natomiast właściwość, która jest wyłączona nie posiada tego zaznaczenia. Kiedy użytkownik zaznaczy menu, pole zaznaczenia jest włączone. Możemy także utworzyć przyciski opcji i pozycje menu.

Zaznaczenia są tworzone w podobny sposób jak elementy checkbox i radio. Wymagają one zaangażowania do zastosowania dwóch atrybutów: type, aby zdefiniować typ zaznaczenia oraz name, aby możliwe było pogrupowanie razem poleceń. +

+
Przykładowe menu z zaznaczonymi pozycjami
+

Przykład 2 : Źródła Podgląd +

+
<toolbox>
+  <menubar id="options-menubar">
+    <menu id="options_menu" label="Opcje">
+      <menupopup>
+        <menuitem id="backups" label="Zrób kopię zapasową" type="checkbox"/>
+        <menuitem id="backups" label="E-mail administratora" type="checkbox" checked="true"/>
+      </menupopup>
+    </menu>
+  </menubar>
+</toolbox>
+
+


+

+
grafika:menubar-ex00.png
+

Dzięki dodaniu atrybutu type z wartością ustawioną na checkbox element menu może zostać zaznaczony lub odznaczony, po kliknięciu pozycji w menu przez użytkownika.

Oprócz zwyczajnego zaznaczenia możemy również ustawić wartość atrybutu type na radio. Stosuje się go po to, aby spośród kilku elementów była możliwość wybrania tylko jednej pozycji na raz. Przykładem może być menu z różnymi czcionkami, gdzie może być zastosowany tylko jeden krój czcionki. Jeśli zostanie wybrana inna czcionka, to poprzednia stanie się automatycznie nieaktywna. +

W celu pogrupowania elementów menu należy do każdej z pozycji menu dodać atrybut name, o takiej samej wartości string. Poniżej przykład nam to zademonstruje: +

+
Przykładowe menu z opcjami
+

Przykład 3 : Źródła Podgląd +

+
grafika:menubar-ex000.png
+
<toolbox>
+  <menubar id="planets-menubar">
+    <menu id="planet-menu" label="Planety">
+      <menupopup>
+        <menuitem id="jupiter" label="Jowisz" type="radio" name="ringed"/>
+        <menuitem id="saturn" label="Saturn" type="radio" name="ringed" checked="true"/>
+        <menuitem id="uranus" label="Uran" type="radio" name="ringed"/>
+        <menuseparator/>
+        <menuitem id="earth" label="Ziemia" type="radio" name="inhabited" checked="true"/>
+        <menuitem id="moon" label="Księżyc" type="radio" name="inhabited"/>
+      </menupopup>
+    </menu>
+  </menubar>
+</toolbox>
+
+

W powyższym przykładzie znajdują się trzy pierwsze pozycje menu, z których tylko jedna może być zaznaczona. Są one zgrupowane wszystkie razem, ponieważ mają tę samą nazwę. Ostatni element <tt>Ziemia</tt>, podobnie jak przycisk opcji, nie jest częścią tej grupy, ponieważ posiada inną nazwę niż elementy z wcześniejszej grupy. +

Oczywiście wszystkie elementy są zgrupowane w tym samym menu. Nie muszą one być umieszczone obok siebie, lecz, jeśli tak nie jest, to nie ma to większego sensu.

W następnym artykule zostanie pokazane, jak utworzyć menu wyskakujące. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_przycisku/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_przycisku/index.html" new file mode 100644 index 0000000000..20bf9d2bb1 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodatkowe_mo\305\274liwo\305\233ci_przycisku/index.html" @@ -0,0 +1,84 @@ +--- +title: Dodatkowe możliwości przycisku +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodatkowe_możliwości_przycisku +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/More_Button_Features +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule poznamy kilka dodatkowych własności przycisków. +

+

Dodawanie obrazka

+

Możemy dodać obrazek do przycisku poprzez określenie adresu URL w atrybucie image. Obrazek jest wczytany z podanego URL, który może być względnym lub bezwzględnym adresem URL. Wczytany obrazek jest wyświetlony na przycisku. +

+

Przycisk z obrazkiem

+

Przycisk poniżej posiada dwa atrybuty: label i image (obrazek 'happy.png'). Obrazek będzie znajdował się z lewej strony etykiety. Możemy zmienić pozycję za pomocą dwóch innych atrybutów. Zostanie to wyjaśnione za chwilę.

Przykład 1 : Źródła Podgląd +

+
<button label="Pomoc" image="happy.png"/>
+
+

Innym sposobem do określenia obrazka jest zastosowanie własności stylu CSS list-style-image w przycisku. Zaprojektowane jest to w taki sposób, że pozwala zmienić 'skórkę' (w tym przypadku wygląd obrazka) bez zmiany pliku XUL. Przykład pokazany został poniżej. +

+

Przycisk z obrazkiem w CSS

+

Przykład 2 : Źródła Podgląd +

+
Grafika:advbtns00-ex.png
+
<button id="find-button"
+  label="Znajdź" style="list-style-image: url('happy.png')"/>
+
+

W tym przypadku obrazek 'happy.png' jest wyświetlony na przycisku. Atrybut style funkcjonuje podobnie jak jego odpowiednik z języka HTML. Ogólnie możemy go zastosować do wszystkich elementów XUL. Zwróć uwagę na deklarację stylów, które powinno się w rzeczywistości umieszczać w osobnym pliku arkusza stylów. +

+

Pozycjonowanie obrazków

+

Domyślnie obrazek na przycisku wyświetla się z lewej strony tekstu etykiety. Są dwa atrybuty, które mogą być zastosowane do ustawienia pozycji poszczególnych elementów. +

Atrybut dir steruje kierunkiem obrazka i tekstu. Poprzez ustawienie tego atrybutu na wartość reverse obrazek zostanie umieszczony z prawej strony tekstu. Stosując wartość normal lub w ogóle nie stosując żadnego atrybutu, obrazek zostanie umieszczony z lewej strony tekstu. +

Atrybut orient możemy zastosować do umieszczenia obrazka powyżej lub poniżej tekstu. Domyślną wartością jest horizontal, który stosujemy do umieszczenia obrazka z prawej lub lewej strony tekstu. Możemy także zastosować wartość vertical, aby umieścić obrazek powyżej lub poniżej tekstu. W tym przypadku atrybut dir steruje położeniem powyżej lub poniżej tekstu. Takie same wartości są stosowane tam, gdzie normal oznacza umieszczenie obrazka powyżej tekstu, a reverse oznacza umieszczenie obrazka poniżej tekstu.

Przykład 3 : Źródła Podgląd +

+
Grafika:advbtns1.png
+
<button label="Z lewej" image="happy.png"/>
+<button label="Z prawej" image="happy.png" dir="reverse"/>
+<button label="Powyżej" image="happy.png" orient="vertical"/>
+<button label="Poniżej" image="happy.png" orient="vertical" dir="reverse"/>
+
+

Użyty tutaj przykład pokazuje wszystkie cztery typy ustawienia przycisków. Zwracamy uwagę, że dwa atrybuty nie są określone, gdyż można w nich zastosować wartości domyślne. +

+

Przyciski z dodatkową zawartością

+

Przyciski mogą zawierać dowolny zestaw znaków wewnątrz siebie i będą one interpretowane wewnątrz przycisku. Prawdopodobnie nie będziesz bardzo często ich stosował, ale będziesz mógł je zastosować w momencie tworzenia zwykłych elementów. +

Na przykład, utworzymy następujący przycisk, w którym dwa słowa będą koloru czerwonego: +

Przykład 4 : Źródła Podgląd +

+
grafika:advbtns0-ex.png
+
<button>
+  <description value="To jest"/>
+  <description value="nieco inny" style="color: red;"/>
+  <description value="przycisk"/>
+</button>
+
+

Dowolny element XUL możemy umieścić wewnątrz przycisku (button). Elementy HTML-a będą ignorowane, więc musimy je dołożyć do wewnątrz elementu description. Jeśli określimy na przycisku atrybut label, nałoży się ona na jakąkolwiek zawartość umieszczoną wewnątrz przycisku. +

Możemy umieścić menupopup wewnątrz przycisku powodując pojawianie się menu rozwijanego w momencie, gdy przycisk zostanie naciśnięty, podobnie jak menulist. Jednakże w tym przypadku musimy ustawić atrybut type o wartości menu. +

+
Przycisk z menupopup
+

Przykład 5 : Źródła Podgląd +

+
grafika:advbtns2.png
+
<button type="menu" label="Urządzenia">
+  <menupopup>
+    <menuitem label="Drukarka"/>
+    <menuitem label="Myszka"/>
+    <menuitem label="Klawiatura"/>
+  </menupopup>
+</button>
+
+

W tym przykładzie użytkownik może kliknąć przycisk, po czym pojawi się menu rozwijane zawierające trzy pozycje. Zwróć uwagę, że zaznaczenie jednej z tych pozycji menu nie zmieni etykiety na przycisku, nie tak jak menulist. Ten typ przycisku jest przeznaczony do zastosowania podobnego do menu, ze skryptami dołączonymi do każdej pozycji wykonującej zadane zadanie. Zobaczymy więcej później w menu. +

Możemy także ustawić atrybut type o wartości menu-button. Również utworzymy przycisk z menu, ale wygląd będzie miał inny. Obrazek z prawej pokazuje te różnice. Z lewej jest menu, a z drugiej strony jest menu-button. Posiada on strzałkę sygnalizującą obecność menu. Dla menu użytkownik może kliknąć gdziekolwiek na przycisku, aby pokazać menu. Dla menu-button użytkownik musi kliknąć strzałkę, aby pokazało się menu. +

W następnym artykule poznamy więcej szczegółów nt. pozycjonowania elementów XUL w oknie. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_arkuszy_styl\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_arkuszy_styl\303\263w/index.html" new file mode 100644 index 0000000000..08b9168eb7 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_arkuszy_styl\303\263w/index.html" @@ -0,0 +1,165 @@ +--- +title: Dodawanie arkuszy stylów +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_arkuszy_stylów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Style_Sheets +--- +

+

« PoprzedniNastępny »

+

+ +

Posiadamy zmodyfikowany widok elementów, stworzonych wcześniej. XUL używa CSS (Kaskadowe arkusze stylów) do dostosowania swoich elementów.

+ +

Arkusze stylów

+ +

Arkusz stylów jest plikiem zawierającym informację na temat stylu danego elementu. Jest to oryginalnie zaprojektowany element HTML lub potrafiący być dodanym tylko do elementów XUL, oraz posiada odwołanie do XML-a. Arkusz stylów zawiera informacje dotyczące; czcionki, kolorów, obramowania i rozmiarów elementów.

+ +

Mozilla stosuje domyślne arkusze stylów, dla każdego okna XUL. W wielu przypadkach to będzie wystarczający powód wyłączenia tego ustawienia jako domyślnego. W przyszłości, użytkownik będzie miał możliwość dodania arkusz stylów. Generalnie, będziemy łączyć jeden plik arkusza stylów z każdym plikiem XUL.

+ +

Możesz wstawiać arkusze stylów, gdziekolwiek sobie życzysz. Jeśli Wasz plik XUL jest przechowywany i posiadasz dojście do HTTP URL, możesz przechować działający arkusz stylów. Jeśli tworzysz paczkę XUL, to zostanie ona zainstalowana jako część systemu chrome, masz dwie możliwości. Pierwsza, możesz magazynować arkusz stylów w tym samym katalogu co plik XUL. Ta metoda jest wadliwa, ponieważ znaczy to, że twoja nie będzie zdolna być motywem. Druga metoda angażuje położenie twoich plików jako część tematu.

+ +
+

Podsumujmy, co zbudowaliśmy i jakie zdolności zostały zawarte w oknie dialogowym "Znajdź pliki", ponieważ okno dialogowe Znajdź pliki kieruje do adresu URL chrome://findfile/content/findfile.xul, więc plik arkusza stylów będzie magazynowany w chrome://findfile/skin/findfile.css.

+
+ +

Wszystkie przykłady umieszczono dalej, aktualnie zostały one użyte już jako arkusz stylów:

+ +
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+ +

Linia ta sygnalizuje użycie stylu pobranego z chrome://global/skin/. W Mozilli, może zostać przetłumaczone jako plik global.css, który stanowi domyślny styl informacji dla elementu XUL. Możesz tą linię usunąć i elementy wciąż będą pracowały, jednakże będą wyglądały raczej dobrze. Arkusz stylów nakłada rozmaite czcionki, kolory i obramowania do tworzenia elementów wyglądających bardziej odpowiednio.

+ +

Zmieniamy style

+ +

Jednakże, zdążają się sytuacje kiedy domyślny wygląd elementów nie da pożądanych przez nas efektów. W takiej sytuacji, będziemy musieli dodać własny arkusz stylów. Tak więc, dodamy style używając do tego atrybut style elementu. Wykonanie tego, nie jest najlepszym sposobem na dodanie stylu. Lepszym sposobem, od poprzedniego będzie utworzenie osobnego pliku arkusza stylów. Powodem jest inny wygląd, lub skóra, może zostać wczytana w prosty sposób.

+ +

W pewnych sytuacjach, gdzie klasa atrybutu style jest dopuszczalna. Przykładem mógł być moment kiedy skrypt zmienia style lub gdzie różnice w layoucie mogą znaczyć zmienić zachowanie lub przeznaczenie elementu. Jednakże powinieneś unikać tego bardzo jako of the element.

+ +

Dla zainstalowanych plików, utwórz lub zmodyfikuj listę plików i zainstaluj motyw.

+ +

Przykład okna dialogowego: <tt>Znajdź pliki</tt>

+ +
+

Zmodyfikujmy okno dialogowe <tt>Znajdź pliki</tt>, tak więc style pochodzą z oddzielonego pliku stylów. Po pierwsze, zmodyfikowane linie w pliku findfile.xul:

+ +
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<?xml-stylesheet href="findfile.css" type="text/css"?>
+  ...
+<spacer class="titlespace"/>
+  <groupbox orient="horizontal">
+    <caption label="Search Criteria"/>
+
+      <menulist id="searchtype">
+        <menupopup>
+          <menuitem label="Name"/>
+          <menuitem label="Size"/>
+          <menuitem label="Date Modified"/>
+        </menupopup>
+      </menulist>
+      <spacer class="springspace"/>
+      <menulist id="searchmode">
+        <menupopup>
+          <menuitem label="Is"/>
+          <menuitem label="Is Not"/>
+        </menupopup>
+      </menulist>
+
+      <spacer class="springspace"/>
+      <menulist id="find-text" flex="1"
+          editable="true"
+          datasources="file:///mozilla/recents.rdf"
+          ref="http://www.xulplanet.com/rdf/recent/all"/>
+  ...
+<spacer class="titlespace"/>
+<hbox>
+
+  <progressmeter id="progmeter" value="50%" style="display:none;"/>
+
+ +

Nowa linia kodu xml-stylesheet jest użyta do importu arkusza stylów. Zawiera on style, które umieszczamy w pliku arkusza stylów, zamiast umieszczania ich w pliku XUL. Możemy użyć dowolną liczbę arkuszy stylów w podobny sposób jak przedstawione było wcześniej. Arkusz stylów umieszczamy w tym samym katalogu co plik findfile.xul.

+ +

Niektóre style znajdujące sie w kodzie powyżej zostały usunięte. Jeden nie wyświetlił (display) własności przez progressmeter. Zostanie zmieniony skrypt znajdującego się po lewej stronie, dlatego że nie miałoby to większego sensu wyświetlanie paska początkowego postępu. Wciąż umieszczamy style w osobnym pliku arkuszy stylów, jeśli Ci jest to potrzebne. Klasę (class) dodajemy do zawartości tagów, przy których możemy zdefiniować style.

+ +

Arkusz stylów także musi zostać utworzony. Stwórz plik findfile.css, w tym samym katalogu co plik XUL (to jest normalne, gdy położymy je do innych motywów). W pliku zadeklarujemy style, tak jak jest to pokazane poniżej.

+ +
#find-text {
+  min-width: 15em;
+}
+
+#progmeter {
+  margin: 4px;
+}
+
+.springspace {
+  width: 10px;
+}
+
+.titlespace {
+  height: 10px;
+}
+
+ +

Zauważ, że znajdujące się tutaj pliki stylów są równoważne do plików jakie mieliśmy wcześniej. Jednakże, jest to bardzo proste dla każdej osoby zmieniającej widok okienka dialogowego <tt>Zajdź pliki</tt>, ponieważ one nie dodają oraz modyfikują deklarację stylów, wcześniej modyfikowany plik oraz zmiana motywów. Jeśli użytkownik nie zmienia pliku lub zmienionych motywów, a zmieni się on w pliku motywy. Jeśli zmienimy, interfejs zawierający motywy, pliki w innych katalogach zawierających motywy.

+
+ +

Importowanie arkuszy stylów

+ +

Tymczasem zobacz, jak importować arkusze stylów. Przykład poniżej przestawia:

+ +
<?xml-stylesheet href="chrome://bookmarks/skin/" type="text/css"?>
+
+ +

To mogłaby być pierwsza linia zakładki okna. To importuje zakładki arkuszy stylów, które są w bookmarks.css. System motywów Mozilli jest wystarczająco eleganckiej sylwetki, która jest użyta w arkuszu stylów, ponieważ specyficzna nazwa pliku nie jest tutaj zasygnalizowana. Mamy zrobione coś podobnego jak globalny plik arkusza stylów (chrome://global/skin).

+ +

Arkusz stylów może importować style z innego arkusza używając dyrektywy import. Zazwyczaj importujemy jeden arkusz stylów z każdego pliku XUL. Arkusz stylu globalnego potrafi być importowany wraz z arkuszem stylów łączącym się z plikiem XUL. Wykonanie tego wymaga zrobienia kodu jak poniżej, uznającego Tobie usunięty kod, importowany z pliku XUL:

+ +
Style import from XUL:
+<?xml-stylesheet href="chrome://global/skin/"  type="text/css"?>
+
+Style import from CSS:
+@import url(chrome://global/skin/);
+
+ +

Druga składnia jest preferowana, ponieważ redukuje to liczbę uzależnień samemu sobie wobec pliku XUL.

+ +
+

Usuń z pliku findfile.xul import globalnego arkusza stylów i dodaj import findfile.css

+
+ +

Wszystkie elementy mogą być formatowane stylami używając CSS. Możesz użyć selektorów do zaznaczenia elementów, które sobie życzysz formatować za pomocą stylów (selektory to część przed kędzierzawą klamrą w zasadach stylów). Idąc na przód w tabeli podsumowanie dostępnych selektorów:

+ +
+
button 
+
Dopasuje wszystkie znaczniki przycisku.
+
#special-button 
+
Dopasuje elementy z identyfikatorem (id) special-button.
+
.bigbuttons 
+
Dopasuje wszystkie elementy z klasą (class) bigbuttons.
+
button.bigbuttons 
+
Dopasuje wszystkie elementy przycisku z klasą (class) bigbuttons.
+
toolbar > button 
+
Dopasuje wszystkie przyciski, które są bezpośrednio wewnątrz elementów paska narzędzi.
+
toolbar > button.bigbuttons 
+
Dopasuje wszystkie elementy przycisku z klasą (class) bigbuttons, które są bezpośrednio wewnątrz elementów paska narzędzi.
+
button.bigbuttons:hover 
+
Dopasuje wszystkie elementy przycisku z klasą (class) bigbuttons, lecz tylko wtedy, gdy kursor myszki znajduje się nad nim.
+
button#special-button:active 
+
Dopasuje wszystkie elementy przycisku z identyfikatorem (id) special-button, lecz tylko wtedy, gdy są one aktywne (zostały kliknięte).
+
box[orient="horizontal"] 
+
Dopasuje wszystkie elementy pudełka, które posiadają atrybut orient, który jest ustawiony na wartość horizontal.
+
+ +

Jak kombinujesz coś z zasadami arkusza stylów, w różnych przypadkach według naszego uznania. Zawsze dobry pomysł jest precyzyjny jako prawdopodobnie wtedy kiedy specyficzny gest jest formatowana stylami. Jest to więcej efektywne i także redukcja prawdopodobieństwa taka, że twój arkusz stylów będzie źle się wyświetlał.

+ +
+

Przykład <tt>Znajdź pliki</tt> : Źródła Podgląd

+
+ +

W następnym artykule, zobaczymy jak zastosować style do drzew.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_element\303\263w_html/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_element\303\263w_html/index.html" new file mode 100644 index 0000000000..cd6f58b899 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_element\303\263w_html/index.html" @@ -0,0 +1,124 @@ +--- +title: Dodawanie elementów HTML +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_elementów_HTML +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_HTML_Elements +--- +

 

+

+

« PoprzedniNastępny »

+

+

Wiemy już, jak się dodaje przyciski, więc pora na dodanie kilku innych elementów.

+

Dodawanie elementów języka HTML do okna

+

Dodatkowo do wszystkich elementów XUL, które są dostępne, możemy dodać elementy języka HTML, bezpośrednio do wewnątrz pliku XUL. Aktualnie możemy zastosować dowolny element języka HTML w pliku XUL, co oznacza, że aplety Javy lub tabele mogą zostać umieszczone w naszym oknie. Powinniśmy unikać stosowania elementów HTML w plikach XUL, jeśli jest to tylko możliwe. Jednakże w tym artykule został opisany sposób ich stosowania. Zapamiętaj, że XML uwzględnia wielkość liter, więc musimy wprowadzać znaczniki oraz atrybuty z małej litery.

+

Przestrzeń nazw XHTML

+

Chcąc zastosować elementy języka HTML w pliku XUL, musimy zadeklarować, że to robimy, więc do tego celu stosujemy przestrzeń nazw XHTML. W ten sposób przeglądarka Mozilli będzie mogła odróżnić znaczniki HTML od znaczników XUL. Poniższy atrybut powinien zostać dodany do elementu window w pliku XUL lub do znajdującego się najdalej na zewnątrz elementu HTML.

+
xmlns:html="http://www.w3.org/1999/xhtml"
+
+

Jest to deklaracja języka HTML i jest bardzo podobna do tej, jaką zastosujemy w deklaracji XUL. Musimy ją wpisać dokładnie tak, jak pokazano poniżej, bo inaczej nie będzie ona działała poprawnie. Zwróć uwagę, że przeglądarka Mozilli nie pobierze tego adresu URL, lecz uzna go jako początek języka HTML.

+

Tu mamy przykład jaki może być dodany do okna Znajdź pliki:

+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<window
+   id="findfile-window"
+   title="Znajdź pliki"
+   orient="horizontal"
+   xmlns:html="http://www.w3.org/1999/xhtml"
+   xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+

Następnie możemy stosować znaczniki HTML trzymając się następujących reguł:

+ +

Zastosowanie elementów HTML

+

Możemy stosować jakikolwiek znacznik HTML, lecz niektóre znaczniki, takie jak head i body, nie są w rzeczywistości potrzebne. Przykłady zastosowania elementów HTML są pokazane poniżej:

+
<html:img src="banner.jpg"/>
+
+<html:input type="checkbox" value="true"/>
+
+<html:table>
+  <html:tr>
+    <html:td>
+      Prosta tabela
+    </html:td>
+  </html:tr>
+</html:table>
+
+

W tym przykładzie utworzony zostanie obrazek z pliku banner.jpg, pole wyboru oraz pojedyncza komórka tabeli. Powinniśmy zawsze stosować własności XUL-a, jeśli są one dostępne i najprawdopodobniej nie powinniśmy stosować tabelek do układu graficznego w XUL (ponieważ są elementy XUL do tworzenia układu graficznego). Zwróć uwagę, że prefiks html: został dodany z przodu każdego znacznika. Dzięki temu przeglądarka Mozilli wie, że są to znaczniki HTML-a, a nie XUL-a. Jeśli opuścimy część html:, przeglądarka pomyśli, że element był elementem XUL i nie będą wyświetlone, ponieważ elementy img, input, table nie są poprawnymi znacznikami XUL.

+

W XUL możesz dodać etykiety za pomocą elementu description lub label. Powinniśmy stosować te elementy jak najczęściej. Możemy również dodawać etykiety do kontrolek poprzez zastosowanie elementu HTML - label lub możemy po prostu wstawiać tekst do wewnątrz innego bloku elementów HTML (takich jak p lub div) w sposób pokazany poniżej:

+

Przykład 1 : Źródła Podgląd

+
<html:p>
+  Szukaj dla:
+  <html:input id="find-text"/>
+  <button id="okbutton" label="OK"/>
+</html:p>
+
+

Ten kod spowoduje, że będzie wyświetlony tekst Szukaj dla:, następnie element input i przycisk OK. Zwróć uwagę, że przycisk XUL może się pojawić wewnątrz elementu HTML, jak jest to tu pokazane. Tekst będzie tylko wyświetlony, jeśli umieścimy go wewnątrz znacznika, który normalnie pozwala na wyświetlenie tekstu (takiego znacznika jak p). Tekst na zewnątrz nie będzie wyświetlony, chyba że element XUL-a, w którym się on znajduje, pozwala na to (na przykład element description). Przykład poniżej pomoże w zrozumieniu tego:

+

Przykłady elementów HTML

+

Tutaj mamy kilka przykładów dodawania elementów HTML do okien. W każdym przypadku okno i inne zwykłe informacje zostaną pominięte dla uproszczenia przykładu.

+

Okno dialogowe z polem wyboru

+

Przykład 2 : Źródła Podgląd

+
+ Grafika:htmlelem-ex1.png
+
<html:p>
+  Zaznacz poniższe pole, aby zapamiętać tą decyzje.
+  <html:p>
+    <html:input id="rtd" type="checkbox"/>
+    <html:label for="rtd">Zapamiętaj tą decyzję</html:label>
+  </html:p>
+</html:p>
+
+

W tym przypadku znacznik p został zastosowany do umieszczenia tekstu, a inne zostały zastosowane do podzielenia tekstu na wiele linii.

+

Tekst poza blokami HTML

+

Przykład 3 : Źródła Podgląd

+
+ grafika:htmlelem-ex2.png
+
<html:div>
+    Chciałbyś zapisać następujące dokumenty?
+    <html:hr/>
+</html:div>
+Kosztorys 1
+Co robiłem ostatniego lata
+<button id="yes" label="Tak"/>
+<button id="no" label="Nie"/>
+
+

Jak widać na tym obrazku, tekst wewnątrz znacznika div został wyświetlony, ale pozostały tekst ( + + Kosztorys 1 + i + + Co robiłem ostatniego lata + ) już nie. Jest tak, ponieważ nie ma otaczającego go elementu HTML-a lub elementu XUL zdolnego do wyświetlenia tekstu. Mając taki tekst, powinniśmy wstawić go wewnątrz znacznika div lub otoczyć tekst znacznikiem description.

+

Niepoprawne zastosowanie elementów HTML

+
<html:po>Przypadek 1</html:po>
+<div>Przypadek 2</div>
+<html:description value="Przypadek 3"/>
+
+

Wszystkie powyższe trzy przypadki nie zostaną wyświetlone, każdy z innego powodu:

+
+
+ Przypadek 1 
+
+ po nie jest poprawnym znacznikiem HTML-a, a przeglądarka Mozilli nie wie, jak odczytać ten znacznik.
+
+ Przypadek 2 
+
+ div jest poprawny, ale tylko w HTML-u. Aby działał i tu, musimy dodać kwalifikator html:.
+
+ Przypadek 3 
+
+ Element description jest poprawny tylko w XUL-u, a nie w HTML-u. Nie powinniśmy mieć kwalifikatora html: przed tym elementem.
+
+

W następnym artykule zobaczymy, jak dodać odstęp pomiędzy elementami.

+

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_etykiet_i_obrazk\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_etykiet_i_obrazk\303\263w/index.html" new file mode 100644 index 0000000000..7f9c284131 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_etykiet_i_obrazk\303\263w/index.html" @@ -0,0 +1,70 @@ +--- +title: Dodawanie etykiet i obrazków +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_etykiet_i_obrazków +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Labels_and_Images +--- +

+

+

« PoprzedniNastępny »

+
+

Artykuł przedstawia sposoby dodawania etykiet i obrazków do okna. Dodatkowo zobaczymy, jak się łączy elementy w grupy. +

+

Elementy tekstowe

+

Nie można umieścić tekstu bezpośrednio w pliku XUL bez wcześniejszego otoczenia go znacznikami, gdyż nie zostanie on wyświetlony. +

+

Element label

+

Najprostszym sposobem umieszczenia tekstu w oknie jest użycie elementu label, w sposób przedstawiony poniżej:

Przykład 1 : Źródła Podgląd +

+
<label value="To jest jakiś tekst"/>
+
+

Atrybut value służy do określania tekstu, który miałby zostać wyświetlony w oknie. Tekst ten nie jest zawijany, więc zostanie wyświetlony w tylko jednej linii. Przedstawiony element jest przydatny w przypadku krótkich fragmentów tekstu. +

+

Element description

+

Dłuższy tekst można umieścić pomiędzy otwierającym a zamykającym znacznikiem description. W przeciwieństwie do tekstu zadeklarowanego za pomocą elementu label i atrybutu value, potomek tekstu będzie łamany na wiele linii w momencie, gdy zajdzie taka potrzeba. Zmień rozmiar okna, aby zobaczyć, jak tekst zostanie zawinięty. Podobnie jak w języku HTML, nowe linie i dodatkowe białe znaki są zamieniane w pojedynczy znak odstępu. W kolejnych artykułach zobaczymy, w jaki sposób można ograniczyć długość elementu, więc zawijanie wierszy stanie się lepiej widoczne. +

Przykład 2 : Źródła Podgląd +

+
<description>
+  Dłuższa sekcja tekstu jest wyświetlona.
+</description>
+
+

Wewnątrz oba elementy label oraz description są tym samym, co znaczy, że tekst w etykietach może być zawijany, jeśli umieścisz go wewnątrz znacznika tak, że w elemencie opisu możesz korzystać z atrybutu value. Element label jest przeznaczony dla etykiety kontrolek, takich jak pola tekstowe. Element description przeznaczony jest dla pozostałych tekstów opisujących, takich jak tekst informacyjny u góry okna dialogowego (dialog). W zasadzie powinniśmy się trzymać takiego przeznaczenia. +

+

Atrybut control

+

Możemy stosować atrybut control do ustawienia, z którą kontrolką jest powiązana etykieta. Kiedy użytkownik kliknie w etykietę, ta kontrolka zostanie wywołana. Ustaw wartość atrybutu control na wartość id elementu przycisku, który ma być wywołany.

Przykład 3 : Źródła Podgląd +

+
<label value="Kliknij tu:" control="open-button"/>
+<button id="open-button" label="Otwórz"/>
+
+

W powyższym przykładzie kliknięcie na etykietę spowoduje wywołanie przycisku. +

+

Obrazki

+

Podobnie jak HTML XUL posiada element do wyświetlania obrazków wewnątrz okna, który odpowiednio nazwano image. Zwróć uwagę, że nazwa znacznika jest inna niż w języku HTML (image zamiast img). Atrybut src określa adresu URL do pliku z obrazkiem. Przykład poniżej ilustruje jego użycie: +

+
<image src="images/banner.jpg"/>
+
+

Mimo że możesz skorzystać z podanej składni, lepszym rozwiązaniem jest używanie arkuszy stylów do określania adresu URL obrazka. W dalszej części kursu znajdziesz, jak stosować arkusze stylów lub często będzie pokazany przykład dla pełności opisu. Do ustawienia adresu URL obrazka możemy zastosować własności CSS list-style-image. Przykłady:

+
XUL:
+ <image id="image1"/>
+ <image id="search"/>
+
+
Arkusz stylu:
+ #image1 {
+   list-style-image: url("chrome://findfile/skin/banner.jpg");
+ }
+
+ #search {
+   list-style-image: url("http://example.com/images/search.png");
+ }
+
+

Obrazki pochodzą z katalogu chrome i należą do motywu z pakietu findfile. Ponieważ obrazki różnią się w zależności od używanego motywu, dlatego powinieneś je umieszczać w katalogu używanego motywu. +

W następnym artykule nauczymy się, jak dodać kilka kontrolek wejścia do naszego okna. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarzenia/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarzenia/index.html" new file mode 100644 index 0000000000..0bb0004af9 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarzenia/index.html" @@ -0,0 +1,152 @@ +--- +title: Dodawanie funkcji obsługi zdarzenia +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_funkcji_obsługi_zdarzenia +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XBL + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Event_Handlers_to_XBL-defined_Elements +--- +

+

« PoprzedniNastępny »

+

+ +

Następnie, dowiemy się jak dodać uchwyt zdarzenia do definiowanego elementu XBL.

+ +

Uchwyt zdarzenia

+ +

Jak możemy się spodziewać, kliknięcie myszką, naciśnięcie klawisza i inne zdarzenia są przypisane do każdego z elementów posiadających wewnątrz pewną wartość. Jednakże, are passed to each of the elements inside the content. However, you may wish to trap the events and handle them in a special way. You can add event handlers to the elements inside the content if needed. The last example in the previous section demonstrated this. In that example, oncommand handlers were added to some buttons.

+ +

Handler Element

+ +

However, you may want to add an event handler to the entire contents, that is, all the elements defined in the content tag. This could be useful when trapping the focus and blur events. To define an event XBLElem|handler, use the handler element. Each will describe the action taken for a single event handler. You can use more than one handler if necessary. If an event does not match any of the handler events, it is simply passed to the inner content as usual.

+ +

Generalna składnia uchwytu wygląda następująco:

+ +
<binding id="binding-name">
+  <handlers>
+    <handler event="event-name" action="script"/>
+  </handlers>
+</binding>
+
+ +

Połóż wszystkie moje uchwyty wewnątrz elementu handlers. Każdy element handler definiuje akcję pobrania szczegółowego zdarzenia określonego atrybutem event. Prawidłowymi typami zdarzenia są utrzymywane poprzez XUL i JavaScript, także jako click i focus. Użyj nazwy zdarzenia bez początku 'on'.

+ +

A common reason to set handlers is to modify the custom properties when an event occurs. For example, a custom checkbox might have a checked property which needs to be changed when the user clicks the checkbox:

+ +
<handlers>
+  <handler event="mouseup" action="this.checked=!this.checked"/>
+</handlers>
+
+ +

When the user clicks and releases the mouse button over the check box, the mouseup event is sent to it, and the handler defined here is called, causing the state of the checked property to be reversed. Similarly, you may wish to change a property when the element is focused. You might have a need to change whether an element can have the focus or not. For this, you can use a special style property -moz-user-focus. This property controls whether an element can be focused. (see Kontrola zaznaczenia i aktywacji elementów)

+ +

Handling Mouse Events

+ +

For mouse events, you can use the button attribute to have the handler only trap events that occur from a certain button. Without this attribute, the handler traps all events regardless of the button that was pressed. The button attribute should be set to either 0 for the left mouse button, 1 for the middle mouse button or 2 for the right mouse button.

+ +
<handlers>
+  <handler event="click" button="0" action="alert('Left button pressed');"/>
+  <handler event="mouseup" button="1" action="alert('Middle button pressed')"/>
+  <handler event="click" button="2" action="alert('Right button pressed');"/>
+</handlers>
+
+ +

Handling Key Events

+ +

For key events, you can use a number of attributes similar to those for the key element to match a specific key and match only when certain modifer keys are pressed. The previous example could be extended so that the checked property of the check box is changed when the space bar is pressed.

+ +
<handlers>
+  <handler event="keypress" key=" " action="this.checked=!checked"/>
+</handlers>
+
+ +

You can also use the keycode attribute to check for non-printable keys. Artykuł o skrótach klawiaturowych dostarczy dodatkowych informacji. The modifier keys can be checked by adding a modifiers attribute. This should be set to one of the values set below:

+ +
+
alt
+
Użytkownik musi nacisnąć klawisz Alt.
+
+ +
+
control
+
Użytkownik musi nacisnąć klawisz Control.
+
+ +
+
meta
+
Użytkownik musi nacisnąć klawisz Meta.
+
+ +
+
shift
+
Użytkownik musi nacisnąć klawisz Shift.
+
+ +
+
accel
+
Użytkownik musi nacisnąć specjalny the special modifier key that is usually used for keyboard shortcuts on their platform.
+
+ +

If set, the handler is only called when the modifier is pressed. You can require multiple modifier keys by separating them with spaces.

+ +

The following alternate syntax can be used when the code in a handler is more complex:

+ +
<binding id="binding-name">
+  <handlers>
+    <handler event="event-name">
+      -- handler code goes here --
+    </handler>
+  </handlers>
+</binding>
+
+ +

Przykład uchwytu

+ +

Następujący przykład dodaje uchwyty kluczy, tworząc bardzo prymitywny lokalny clipboard:

+ +

Przykład 1 : Źródła

+ +
<binding id="clipbox">
+  <content>
+    <xul:textbox/>
+  </content>
+  <implementation>
+    <field name="clipboard"/>
+  </implementation>
+  <handlers>
+    <handler event="keypress" key="x" modifiers="control"
+      action="this.clipboard=document.getAnonymousNodes(this)[0].value; document.getAnonymousNodes(this)[0].value='';"/>
+    <handler event="keypress" key="c" modifiers="control"
+      action="this.clipboard=document.getAnonymousNodes(this)[0].value;"/>
+    <handler event="keypress" key="v" modifiers="control"
+      action="document.getAnonymousNodes(this)[0].value=this.clipboard ? this.clipboard : '';"/>
+  </handlers>
+</binding>
+
+ +

The content is a single textbox. A field clipboard has been added to it to store the clipboard contents. This does mean that the clipboard operations are limited to this single textbox. However, each one will have its own buffer.

+ +

Three handlers have been added, one for cut, one for copy and the other for paste. Each has its own keystroke that invokes it. The first handler is the cut operation and is invoked when the Control key is pressed along with the x key. The script within the action attribute is used to cut the text from the textbox and put it into the clipboard field. For simplicity, the entire text is cut and not just the selected text. The code works as follows:

+ +
    +
  1. +
    this.clipboard=document.getAnonymousNodes(this)[0].value;
    +
    + The first element of the anonymous content array is retrieved which gives a reference to the textbox element, which happens to be the first (and only) element within the content element. The value property is retrieved which will provide the text within the textbox. This is then assigned to the clipboard field. The result is copying the text in the textbox into this special clipboard.
  2. +
  3. +
    document.getAnonymousNodes(this)[0].value=''
    +
    + The text of the textbox is then assigned a value of a null string. This effectively clears the text in the textbox.
  4. +
+ +

A copy operation is similar but does not the clear the text afterwards. Pasting is the opposite where the value of the textbox is assigned from the value in the clipboard field. If we were creating a real implementation of these clipboard keyboard shortcuts, we would probably use the real clipboard interface and handle the current selection as well.

+ +

W następnym temacie, zobaczymy jak są zdefiniowane okna rozszerzeń XBL.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarze\305\204/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarze\305\204/index.html" new file mode 100644 index 0000000000..f06c8be41b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_funkcji_obs\305\202ugi_zdarze\305\204/index.html" @@ -0,0 +1,133 @@ +--- +title: Dodawanie funkcji obsługi zdarzeń +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_funkcji_obsługi_zdarzeń +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Event_Handlers +--- +

+

« PoprzedniNastępny »

+

+ +

Jak dotąd, okno dialogowe Znajdź pliki wygląda całkiem dobrze. Nie oczyściliśmy go za bardzo, ale za to łatwo stworzony został prosty interfejs użytkownika. Następnie, pokażemy jak dodawać skrypty do naszego okna.

+ +

Zastosowanie skryptów

+ +

Aby utworzone okno dialogowe Znajdź pliki było funkcjonalne, potrzebujemy dodać pewne skrypty, które będą wykonane w trakcie interakcji użytkownika z oknem dialogowym. Chcielibyśmy dodać skrypt funkcji, która będzie obsługiwała przycisk Znajdź, przycisk Anuluj oraz wszystkich funkcji obsługi zdarzeń - każdego polecenia w menu. Należy wspomnieć, że korzystanie z funkcji języka JavaScript, jest podobne do tego z jakim się możemy spotkać w HTML.

+ +

Możemy wykorzystać element script, aby dołączyć skrypty do plików XUL. Możemy zagnieżdżać kod skryptu bezpośrednio w pliku XUL poprzez umieszczenie go pomiędzy otartym i zamkniętym znacznikiem script, ale znacznie lepiej korzystać z plików zewnętrznych, które będą wczytywane znacznie szybciej. Atrybut src jest stosowany do odniesienia się do zewnętrznego pliku ze skryptem.

+ +
+

Nasz przykład: Okno Znajdź pliki

+ +

Dodajmy, skrypt do okna dialogowego Znajdź pliki. Chociaż, że nie ma znaczenia jaką nazwę mu nadamy, plik przechowujący skrypt to zazwyczaj jest o tej samej nazwie, co pliku XUL, z tą tylko różnicą, że z rozszerzeniem .js. W tym przypadku użyjemy findfile.js. Dodamy linię poniżej zaraz za otwierającym znacznikiem window i PRZED jakimkolwiek innym elementem.

+ +
<script src="findfile.js"/>
+
+ +

Plik ze skryptem stworzymy później, kiedy będziemy już wiedzieli, co chcemy umieścić wewnątrz naszego skryptu. Zdefiniujemy kilka funkcji w pliku i będziemy mogli później wywołać za pomocą funkcji obsługi zdarzeń.

+
+ +

Możemy dołączać wiele skryptów w pliku XUL, poprzez wielokrotne zastosowanie znacznika script, przy czym każdy wskazywałby na inny skrypt. Adresy URL możemy stosować względne lub bezwzględne. Na przykład możemy stosować adresy URL w następujących formach:

+ +
<script src="findfile.js"/>
+<script src="chrome://findfiles/content/help.js"/>
+<script src="http://www.example.com/js/items.js"/>
+
+ +

Ten kurs nie jest jednak próbą nauki posługiwania się językiem JavaScript, ze względu na ogromny rozmiar tego tematu, jak i łatwą dostępność odpowiednich do tego materiałów.

+ +
Domyślnie konsola JavaScript pokazuje tylko błędy znajdujące się w treści strony, aby wyświetlić błędy chrome JavaScriptu. Do wprowadzenia tych ustawień jest konieczna zmiana ustawień javascript.options.showInConsole na wartość true. Możemy również zmienić ustawienie javascript.options.strict dla debugowania. Poprzez ustawienie wartości na true, non-standard, poorly written lub syntax prone to cause logic errors are logged to the JavaScript console.
+ +

Odpowiadanie na zdarzenia

+ +

Skrypt będzie zawierał kod odpowiadający na różne zdarzenia wywoływane przez użytkownika lub inne sytuacje. Istnieje około trzydziestu różnych zdarzeń, które mogą być obsługiwane kilkoma różnymi sposobami. Typowym zdarzeniem jest to, że użytkownik naciska klawisz myszy lub klawiatury. Każdy element języka XUL posiada zdolność do wywoływania pewnych zdarzeń w różnych sytuacjach. Pewne zdarzenia są wywoływane tylko poprzez niektóre elementy.

+ +

Każde zdarzenie posiada nazwę, dla przykładu; 'mousemove' jest nazwą zdarzenia, które jest wywoływane, kiedy użytkownik przeniesie kursor myszy nad element UI. XUL stosuje ten sam mechanizm zdarzeń, który jest zdefiniowany przez zdarzenia DOM. Kiedy pojawia się akcja powodująca zdarzenie, taka jak; użytkownik poruszający myszką, tworzony jest obiekt zdarzenia odnoszący się do typu tego zdarzenia. Wiele rozmaitych własności jest ustawionych na obiekt zdarzenia, takich jak pozycja myszki, klawisz, który został naciśnięty i inne.

+ +

Zdarzenie jest wysyłane do XUL-a fazowo:

+ + + +

Możemy zareagować na zdarzenia podczas obu wspomnianych wyżej faz. Kiedy zdarzenie zakończy swoją propagacje, następuje dowolna domyślna akcja, która jest wbudowana w zachowanie elementu.

+ +

Na przykład, kiedy poruszymy myszą ponad przyciskiem znajdującym się w pudełku, generowane jest zdarzenie 'mousemove' i jest ono pierwszym, które zostaje wysłane do okna, następnie do dokumentu, i w końcu do pudełka. To zakańcza fazę przejęcia. Następnie, zdarzenie 'mousemove' zostaje wysłane do przycisku. Ostateczna faza powoduje, że zdarzenie zostaje wysłane do pudełka, dokumentu oraz okna. Ostatnia faza jest odwrotnością fazy przejęcia. Warto też zaznaczyć, że niektóre zdarzenia nie wykorzystują ostatniej fazy.

+ +

Możemy również dołączyć nasłuch do każdego z elementów, aby każdy z nich był w stanie nasłuchiwać zdarzenia, w trakcie każdego etapu propagacji zdarzenia. Z względu na sposób, w jaki pojedyncze zdarzenie jest przekazywane do wszystkich przodków, można dodać nasłuch do określonego elementu lub do elementu, który znajduje się wyżej w hierarchii. Naturalnie, zdarzenie dodane do elementu wyższego otrzyma powiadomienie o wszystkich elementach wewnątrz jego, natomiast zdarzenie dodane do przycisku będzie w stanie tylko odbierać zdarzenia odnoszące się do tego przycisku. Jest to użyteczne, w przypadku istnienia kilku różnych elementów, które chcielibyśmy obsłużyć poprzez zastosowanie tego samego lub podobnego kodu. ok Kiedy już obsłużysz zdarzenie, bez względu na to gdzie następuje propagacja zdarzenia, prawdopodobnie zechcesz powstrzymać wydarzenie od wysłania go do kolejnych elementów, zatrzymując fazę przejęcia lub wrzenia. W zależności od tego jak dodasz nasłuch zdarzenia do elementu, istnieje kilka możliwości realizacji tego zagadnienia.

+ +

Najczęściej używanym zdarzeniem jest zdarzenie 'command'. Zdarzenie command jest 'odpalane' w momencie aktywacji elementu przez użytkownika, na przykład poprzez naciśnięcie przycisku, zmianę pola wyboru lub zaznaczenie jednej pozycji z menu. Zdarzenie command jest użytecznym zdarzeniem ze względu na jego zdolność do automatycznej obsługi różnych sposobów aktywacji elementów. Na przykład: zdarzenie command wystąpi bez względu na to, czy użytkownik użyje przycisku myszy, bądź też naciśnie klawisz Enter.

+ +

Istnieją dwa sposoby na dodanie nasłuchu do elementu. Pierwszy, następuje poprzez użycie atrybutu, którego wartość reprezentuje skrypt. Drugi, następuje natomiast dzięki odwołaniu się do metody addEventListener dotyczącej poszczególnego elementu. Pierwsza metoda, mimo prostoty swojej implementacji jest w stanie obsługiwać jedynie zdarzenia fazy wrzenia. Druga natomiast, jest w stanie obsługiwać zdarzenia będące w dowolnej fazie i może być także używana do dodawania wielu nasłuchów zdarzenia obsługującego dany element. Wykorzystywanie atrybutów jest najczęściej stosowaną metodą dla większości zdarzeń.

+ +

Nasłuch atrybutu zdarzenia

+ +

W celu wykorzystania atrybutów, należy umieścić atrybut w elemencie, do którego chcielibyśmy dodać nasłuch jego zdarzenia. Jego nazwa powinna być nazwą samego zdarzenia poprzedzoną przedrostkiem 'on'. Przykładowo, atrybut przesyłający zdarzenie 'command' to 'oncommand'. Wartość atrybutu powinna być skryptem, który zostanie wykonany w przypadku zajścia zdarzenia. W większości przypadków kod ten jest wyjątkowo prosty i odnosi się do funkcji zdefiniowanej w oddzielnym skrypcie. Poniżej przykład odpowiedzi na wciśnięcie przycisku:

+ +

Przykład 1 : Źródła Podgląd

+ +
<button label="OK" oncommand="alert('Przycisk został naciśnięty!');"/>
+
+ +

Ponieważ zdarzenie 'command' będzie w fazie wrzenia, jest także możliwe, aby umieścić nasłuch zdarzenia w otaczającym je elemencie. W poniższym przykładzie, nasłuch został umieszczony w pudełku i będzie otrzymywał zdarzenia dla obu tych elementów.

+ +

Przykład 2 : Źródła Podgląd

+ +
<vbox oncommand="alert(event.target.tagName);">
+  <button label="OK"/>
+  <checkbox label="Pokaż obrazki"/>
+</vbox>
+
+ +

W tym przykładzie, zdarzenie 'command' będzie w fazie wrzenia, począwszy od przycisku lub checkbox, aż do vbox, który je obsłuży. W przypadku drugiego nasłuchu (atrybut oncommand), który został umieszczony w przycisku, jego kod będzie wywołany w pierwszej kolejności, a dopiero po nim wywołana będzie obsługa vbox. Obsługa zdarzeń jest przekazywana, dzięki obiektom zdarzeń, jako dołączony argument nazwany 'event'. Jest to używane w celu otrzymania specyficznych informacji na temat wydarzenia. Jedną z najczęściej używanych własności jest własność 'target', która zawiera element, odnośnie którego zaszło dane wydarzenie. W poniższym przykładzie wyświetlamy alert zawierający nazwy znaczników celu (target). Cel jest zazwyczaj użyteczny, w przypadku użycia zdarzeń w fazie wrzenia, tak aby otrzymać zestaw przycisków, które wszystkie będą obsługiwane przez pojedynczy skrypt.

+ +

Można zauważyć, że składnia atrybutów jest podobna do tej użytej przy obsłudze zdarzeń w dokumentach HTML. W zasadzie, obydwa HTML i XUL dzielą ten sam mechanizm zdarzeń. Jedną z ważniejszych różnic jest użycie zdarzenia 'click' (lub atrybutu onclick), które to często używane w HTML-u w celu obsługi funkcji zdarzeń przycisków, w XUL-u jest zastąpione zdarzeniem 'command'. XUL również posiada zdarzenie "click", jednak odnosi się ono jedynie do obsługi przycisków myszy, nie klawiatury. Powinno się unikać zdarzenia "click" korzystając z XUL-a, chyba że istnieje przypadek, w którym dany element może być obsłużony tylko za pomocą myszy.

+ +
+

Nasz przykład: Okno Znajdź pliki

+ +

Obsługa poleceń, może zostać dodana tak do przycisku Znajdź i Anuluj występujących w naszym oknie dialogowym. Wciśnięcie przycisku Znajdź, powinno uruchomić proces wyszukiwania. Ponieważ nie mamy zamiaru implementować jeszcze tej części, zostawimy to na razie. Jednakże, wciśnięcie przycisku Anuluj, powinno zamknąć okno. Poniższy kod obrazuje sposób wykonania tego zadania. Dodajmy także podobne zdarzenie do pozycji Zamknij znajdującej się w menu.

+ +
<menuitem label="Zamknij" accesskey="z" oncommand="window.close();"/>
+...
+
+<button id="cancel-button" label="Anuluj"
+     oncommand="window.close();"/>
+
+ +

Obsługa zdarzeń została dodana do obu elementów. Atrybut oncommand został dodany do pozycji Zamknij znajdującej się w menu. Poprzez użycie tej specyficznej obsługi zdarzeń, użytkownik będzie w stanie zamknąć okno poprzez kliknięcie na pozycji Zamknij myszką lub przez jej wybór za pomocą klawiatury. Obsługa zdarzenia oncommand została także dodana do przycisku Anuluj.

+
+ +

Nasłuchiwanie zdarzeń DOM

+ +

Drugim sposobem dodania obsługi zdarzeń jest wywoływanie metody addEventListener związanej z danym elementem. Pozwala nam to na dołączenie nasłuchu zdarzenia dynamicznie i słuchanie zdarzeń podczas fazy przejęcia. Składnia jest następująca:

+ +

Przykład 3 : Źródła Podgląd

+ +
<button id="okbutton" label="OK"/>
+
+<script>
+function buttonPressed(event)
+{
+  alert('Przycisk został wciśnięty!');
+}
+
+var button = document.getElementById("okbutton");
+button.addEventListener('command', buttonPressed, true);
+</script>
+
+ +

Funkcja getElementById() zwraca element o danym id, w tym przypadku będzie to identyfikator przycisku. Funkcja addEventListener() jest wywoływana w celu dodania nowego nasłuchu zdarzenia znajdującego się w fazie przejęcia. Pierwszym argumentem jest nazwa zdarzenia, do której jest przypisany nasłuch. Drugi argument to funkcja nasłuchu zdarzenia, która będzie wywoływana, kiedy zajdzie zdarzenie. Wreszcie ostatni argument powinien mieć wartość true dla wszystkich nasłuchiwanych zdarzeń odnoszących się do fazy przejęcia. Można także obsługiwać zdarzenia w trakcie fazy wrzenia, poprzez ustawianie wartości ostatniego argumentu na false. Funkcja nasłuchu zdarzenia przekazywana jako drugi argument, sama powinna pobierać jeden argument, obiekt zdarzenia, tak jak jest pokazane to w powyższej deklaracji funkcji buttonPressed.

+ +
Przykład: Znajdź pliki : Źródła Podgląd
+ +

Następnie, dowiemy się trochę więcej szczegółów na temat zdarzeń obiektów.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_innych_element\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_innych_element\303\263w/index.html" new file mode 100644 index 0000000000..2ef702672e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_innych_element\303\263w/index.html" @@ -0,0 +1,87 @@ +--- +title: Dodawanie innych elementów +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_innych_elementów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_More_Elements +--- +

 

+

+

« PoprzedniNastępny »

+

+

Podsumowaniem dyskusji o pudełkach będzie dodanie kilku pudełek do okna dialogowego służącego do szukania plików.

+
+

Dodawanie elementów do przykładu: <tt>Znajdź pliki</tt>

+

Dodamy więcej elementów do okna dialogowego szukania plików. Po pierwsze, dodamy możliwość szukania według innych kryteriów, takich jak rozmiar pliku lub według daty.

+
<hbox>
+  <menulist id="searchtype">
+    <menupopup>
+      <menuitem label="Nazwa"/>
+      <menuitem label="Rozmiar"/>
+      <menuitem label="Data modyfikacji"/>
+    </menupopup>
+  </menulist>
+  <spacer style="width: 10px;"/>
+  <menulist id="searchmode">
+    <menupopup>
+      <menuitem label="Jest"/>
+      <menuitem label="Nie ma"/>
+    </menupopup>
+  </menulist>
+  <spacer style="width: 10px;"/>
+  <textbox id="find-text" flex="1" style="min-width: 15em;"/>
+</hbox>
+
+
+ grafika:boxfinal1.png
+

Powyżej zostały dodane dwa rozwijane pola do okienka dialogowego. Element spacer zostanie dodany pomiędzy różne elementy, aby stworzyć przerwę między nimi. Każde z tych pól jest o szerokości 10 pikseli. Widoczne jest to, jeśli rozszerzysz okno, to następnie pole tekstowe także się rozszerzy, ale pozostałe komponenty już nie. Zwróć uwagę także, że etykieta została usunięta.

+

Jeżeli rozszerzymy okno w pionie, elementy nie zmienią rozmiaru. To dlatego, że są one wewnątrz poziomych pól. Jeżeli przyciski <tt>Znajdź</tt> i <tt>Anuluj</tt> będą znajdowały się z daleka od dolnej krawędzi okna, będą wtedy odpowiednio ustawione. W prosty sposób możemy dodać puste pola pomiędzy dwa poziome pola.

+
<spacer style="height: 10px"/>
+<hbox>
+  <menulist id="searchtype">
+    <menupopup>
+      <menuitem label="Nazwa"/>
+      <menuitem label="Rozmiar"/>
+      <menuitem label="Data modyfikacji"/>
+    </menupopup>
+  </menulist>
+  <spacer style="width: 10px;"/>
+  <menulist id="searchmode">
+    <menupopup>
+      <menuitem label="Jest"/>
+      <menuitem label="Nie ma"/>
+    </menupopup>
+  </menulist>
+  <spacer style="width: 10px;"/>
+  <textbox id="find-text" flex="1" style="min-width: 15em;"/>
+</hbox>
+
+<spacer style="height: 10px" flex="1"/>
+
+<hbox>
+
+

Teraz, gdy okno jest rozszerzone, dwa przyciski będą przesunięte, lecz, tak jak zawsze, będą one wzdłuż dolnej krawędzi okna. Pierwszy element spacer dodaje dodatkową wolną przestrzeń pomiędzy etykietą tytułu a elementem 'Kryteria szukania'.

+

Ładnie by wyglądało, gdyby tekst 'Kryteria szukania' był otoczony ramką. Możemy ją wykonać dwoma sposobami. Pierwszym sposobem jest użycie własności border z pliku CSS lub drugim będzie zastosowanie gotowego elementu groupbox. Pierwsza metoda wymagałaby od nas ustawienia stylu dla elementu. W kursie będziemy stosowali drugą metodę. Pola grup mają tę przewagę, że mają tą zaletę, że przyciągają pole po skosie, w odpowiedni sposób dla aktualnie zastosowanego motywu.

+

Wykonajmy zmiany w groupbox:

+
<groupbox orient="horizontal">
+  <caption label="Kryteria szukania"/>
+  <menulist id="searchtype">
+  .
+  .
+  .
+  <spacer style="width: 10px;"/>
+  <textbox id="find-text" flex="1" style="min-width: 15em;"/>
+</groupbox>
+
+
+ Grafika:boxfinal2.png
+

Zostały już poprawione wszystkie kosmetyczne błędy. Możemy także ustawić element groupbox tak, aby rozszerzyć/zwężać pionowo okna do krawędzi dolnego pola. Możemy także modyfikować marginesy w celu lepszego ustawienia elementów.

+

Więcej przykładów modelu pudełkowego i jego własności zobaczymy podczas dalszej nauki dodawania elementów, opisanych w tym kursie.

+

Przykład: Znajdź pliki: Źródła Podgląd

+
+

Następnie dowiemy się jak wygląda utworzenie stosu.

+

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_metod/index.html b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_metod/index.html new file mode 100644 index 0000000000..3e7812bbff --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_metod/index.html @@ -0,0 +1,196 @@ +--- +title: Dodawanie metod +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_metod +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XBL + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Methods_to_XBL-defined_Elements +--- +

+

« PoprzedniNastępny »

+

+ +

Następnie, znajdziemy w jaki sposób dodać metody użytkownika definiujące elementy XBL.

+ +

Metody

+ +

Dodatkowo dodając własności skryptu do definiowanego elementu XBL, możemy dodać metody. Te metody są nazywamy od skryptu. Metody są funkcjami obiektów, takie jak 'window.open()'. Możemy definiować zwyczajne metody dla elementów używając elementów method. Generalna składnia metod jest następująca:

+ +
<implementation>
+  <method name="method-name">
+    <parameter name="parameter-name1"/>
+    <parameter name="parameter-name2"/>
+    .
+    .
+    .
+    <body>
+      -- method script goes here --
+    </body>
+  </method>
+</implementation>
+
+ +

Deklaracja metod odbywa się wewnątrz implementation elementu, jak the fields and properties do. Element method stanowią dwa typy elementów potomnych, parameter elementów które opisuje parametry metody oraz body, które są zawartością skryptu dla metod.

+ +

Wartość atrybutu name staje się nazwą metody. Podobnie, atrybuty name w elementach parameter stają się nazwą każdego parametru. Każdy element parameter jest używany do deklaracji jednego parametru na metodę. Na przykład, jeśli metoda posiada trzy parametry, co będzie trzema elementami parameter. Nie musisz go posiadać, w którym wypadku metoda będzie bez parametrów.

+ +

Element body stanowi skrypt, który jest wykonywany w momencie kiedy nazywana jest metoda. Nazwy parametrów są zdefiniowane jako zmienne w skrypcie, jeśli posiadają one przepustkę jako parametry. Na przykład, nadchodzące funkcje JavaScript będą zapisywane jako ulubione programy:

+ +
function getMaximum(num1,num2)
+{
+  if (num1<=num2) return num2;
+  else return num1;
+}
+
+XBL:
+
+<method name="getMaximum">
+  <parameter name="num1"/>
+  <parameter name="num2"/>
+  <body>
+    if (num1&lt;=num2) return num2;
+    else return num1;
+  </body>
+</method>
+
+ +

This function, getMaximum, returns the largest of the values, each passed as a parameter to the method. Note that the less-than symbol has to be escaped because otherwise it would look like the start of a tag. You can also use a CDATA section to escape the entire block of code. You can call the method by using code such as 'element.getMaximum(5,10)' where element is a reference to an element defined by the XBL containing the getMaximum method. (The bound element.)

+ +

The parameter tag allows you to define parameters for a method. Because Mozilla uses JavaScript as its scripting language, and JavaScript is a non-typed language, you do not need to specify the types of the parameters. However, in the future, other languages may be used with XBL.

+ +

Dostęp do jakichkolwiek wartości

+ +

There may be times when you want to modify some aspect of the elements defined in the content element, either from a method body or elsewhere. These elements are created anonymously and are not accessible from the regular DOM functions. They are hidden so that developers do not need to know how the element is implemented to use it. However, there is a special way of getting this anonymous content.

+ +

Elements with an XBL behavior attached to them have a special property which holds an array of the anonymous child elements inside it. Each element of the array stores each direct child element of the XBL-defined element. This special property cannot be accessed directly. Instead, you must call the document's getAnonymousNodes() method:

+ +
var value=document.getAnonymousNodes(element);
+
+ +

Here, 'element' should be set to a reference to the element that you want to get the anonymous content of. The function returns an array of elements, which is the anonymous content. To get elements below that, you can use the regular DOM functions because they aren't hidden. Note that it is possible for an XBL-bound element to be placed inside another one, in which case you will have to use the getAnonymousNodes() function again.

+ +

The following example creates a row of buttons:

+ +
<binding id="buttonrow">
+  <content>
+    <button label="Yes"/>
+    <button label="No"/>
+    <button label="Sort Of"/>
+  </content>
+</binding>
+
+ +

To refer to each button, you can use the getAnonymousNodes() function, passing it a reference to the element the binding is bound to as the parameter. In the returned array, the first button is stored in the first array element ('getAnonymousNodes(element)[0]'), the second button is stored in the second array element and the third button is stored in the third array element. For code inside a binding method, you can pass 'this' as the parameter to getAnonymousNodes().

+ +

The next example can be used to create text with a label. The method 'showTitle' can be used to show or hide the label. It works by getting a reference to the title element using the anonymous array and changing the visibility of it.

+ +
XUL:
+
+<box id="num" class="labeledbutton" title="Number of Things:" value="52"/>
+
+<button label="Show" oncommand="document.getElementById('num').showTitle(true)"/>
+<button label="Hide" oncommand="document.getElementById('num').showTitle(false)"/>
+
+XBL:
+
+<binding id="labeledbutton">
+  <content>
+    <xul:label xbl:inherits="value=title"/>
+    <xul:label xbl:inherits="value"/>
+  </content>
+  <implementation>
+    <method name="showTitle">
+      <parameter name="state"/>
+      <body>
+        if (state) document.getAnonymousNodes(this)[0].
+          setAttribute("style","visibility: visible");
+        else document.getAnonymousNodes(this)[0].
+          setAttribute("style","visibility: collapse");
+      </body>
+    </method>
+  </implementation>
+</binding>
+
+ +

Two buttons added to the XUL have oncommand handlers which are used to change the visibility of the label. Each calls the 'showTitle' method. This method checks to see whether the element is being hidden or shown from the 'state' parameter that is passed in. In either case, it grabs the first element of the anonymous array. This refers to the first child in the content element, which here is the first label widget. The visibility is changed by modifying the style on the element.

+ +

Accessing from Inside the Anonymous Content

+ +

To go the other way, and get the bound element from inside the anonymous content, use the DOM parentNode property. This gets the parent element of an element. For example, we could move the Show and Hide buttons into the XBL file and do the following:

+ +

Przykład 1 : Źródła

+ +
<binding id="labeledbutton">
+  <content>
+    <xul:label xbl:inherits="value=title"/>
+    <xul:label xbl:inherits="value"/>
+    <xul:button label="Show" oncommand="parentNode.showTitle(true);"/>
+    <xul:button label="Hide" oncommand="parentNode.showTitle(false);"/>
+  </content>
+  <implementation>
+    <method name="showTitle">
+      <parameter name="state"/>
+      <body>
+        if (state) document.getAnonymousNodes(this)[0].setAttribute("style","visibility: visible");
+        else document.getAnonymousNodes(this)[0].setAttribute("style","visibility: collapse");
+      </body>
+    </method>
+  </implementation>
+</binding>
+
+ +

The oncommand handlers here first get a reference to their parent element. This is not the content element but the XUL element that the XBL is bound to. (In this example, it is the box with the labeledbutton class). Then, the 'showTitle' method is called, which functions as it did before.

+ +

Custom properties and methods are added only to the outer XUL element the XBL is bound to. None of the elements declared inside the content tag have these properties or methods. This is why we have to get the parent first.

+ +

The children of an element placed in the XUL file can be retrieved in the normal way and don't move even if you use the children tag. For example:

+ +
XUL:
+
+<box id="outer" class="container">
+  <button label="One"/>
+  <button label="Two"/>
+  <button label="Three"/>
+  <button label="Four"/>
+</box>
+
+XBL:
+
+<binding id="labeledbutton">
+  <content>
+    <description value="A stack:"/>
+    <stack>
+      <children/>
+    </stack>
+  </content>
+</binding>
+
+ +

If you use the DOM functions such as childNodes to get the children of an element, you'll find that the XUL box, the one with the id of outer, has 4 children. These correspond to its four buttons, even though those buttons are drawn inside the stack. The stack has only one child, the children element itself. The length of the anonymous array of the outer box is two, the first element the description element and the second the stack element.

+ +

Konstruktory i destruktory

+ +

XBL supports two special methods created with separate tags, constructor and destructor. A constructor is called whenever the binding is attached to an element. It is used to initialize the content such as loading preferences or setting the default values of fields. The destructor is called when a binding is removed from an element. This might be used to save information.

+ +

There are two points when a binding is attached to an element. The first occurs when a window is displayed. All elements that have XBL-bound content will have their constructors invoked. The order that they are called in should not be relied upon, as they are loaded from various files. The window's onload handler is not called until after all the bindings have been attached and their constructors finished. The second point a binding is attached is if you change the -moz-binding style property of an element. The existing binding will be removed, after its destructor is called. Then, the new binding will be added in its place and its constructor invoked.

+ +

The script for a constructor or destructor should be placed directly inside the appropriate tag. There should only be at most one of each per binding and they take no arguments. Here are some examples:

+ +
<constructor>
+  if (this.childNodes[0].getAttribute("open") == "true"){
+    this.loadChildren();
+  }
+</constructor>
+
+<destructor action="saveMyself(this);"/>
+
+ +

Następny artykuł pokaże jak dodać funkcje obsługi zdarzenia do definiowanego elementu XBL.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_przycisk\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_przycisk\303\263w/index.html" new file mode 100644 index 0000000000..9d6311c2ed --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_przycisk\303\263w/index.html" @@ -0,0 +1,82 @@ +--- +title: Dodawanie przycisków +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_przycisków +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Buttons +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule zajmiemy się dodawaniem przycisków do okna. +

+

Dodawanie przycisków do okna

+

Okno, które utworzyliśmy, jest puste, więc niezbyt ciekawe. W tym rozdziale dodamy dwa przyciski, Znajdź oraz Anuluj. Nauczymy się też w prosty sposób układać je w oknie. +

Podobnie jak HTML, XUL posiada wiele znaczników, które mogą zostać użyte do tworzenia elementów interfejsu użytkownika. Najprostszym z nich jest znacznik button, który jest używany do tworzenia prostych przycisków. +

Element button posiada dwie główne własności: label (etykietę) oraz image (obrazek). Możesz skorzystać z jednej lub z obu. Zatem przycisk może posiadać tylko etykietę, tylko obrazek lub obie własności jednocześnie. Przyciski najczęściej stosuje się do tworzenia przycisków <tt>OK</tt> i <tt>Anuluj</tt> wykorzystanych w oknach dialogowych. +

+

Składnia przycisków

+

Znacznik button ma następującą składnię: +

+
<button
+    id="identifier"
+    class="dialog"
+    label="OK"
+    image="images/image.jpg"
+    disabled="true"
+    accesskey="t"/>
+
+

Znaczenie poszczególnych atrybutów (wszystkie są opcjonalne): +

+
id 
Unikatowy identyfikator, za pomocą którego można odwoływać się do przycisku. Ten atrybut posiadają wszystkie elementy. Będziemy z niego korzystać za każdym razem, gdy będziemy chcieli się odwołać do przycisku w arkuszu stylów lub w skrypcie. Powinno się go używać we wszystkich elementach., ale w tym kursie czasami został on pominięty dla zwiększenia czytelności. +
class 
Klasa stylu przycisku. Działa na tej samej zasadzie jak w HTML-u. Atrybutu używa się do wskazania stylu, który będzie wyświetlony w przycisku. W tym przypadku nadano mu wartość dialog. W większości przypadków nie będziemy używali klasy dla przycisku. +
label 
Etykieta, która pojawi się na przycisku, np. <tt>OK</tt> lub <tt>Anuluj</tt>. Jeśli atrybut zostanie pominięty, na przycisku nie pojawi się żaden tekst.
image 
URL obrazka pojawiającego się na przycisku. Jeśli atrybut zostanie pomięty, przycisk pozostanie bez obrazka. Obrazek również można przypisać w arkuszu stylów używając do tego własności list-style-image. +
disabled 
Jeśli ten atrybut zostanie ustawiony na true, przycisk zostanie wyłączony. Objawia się to zwykle jego "wyszarzeniem". Jeśli jest wyłączony, nie może być wykonana powiązana z nim funkcja. Domyślnie przycisk jest włączony. Do zmiany stanu przycisku można użyć języka JavaScript. +
accesskey 
Wartością tego atrybutu powinna być litera używana w skrócie klawiaturowym. Litera ta powinna występować w etykiecie przycisku, wówczas zostanie wyróżniona - zwykle poprzez podkreślenie. Kiedy użytkownik naciśnie ALT (lub analogiczny klawisz, w zależności od używanej platformy systemowej) i klawisz skrótu, wybrany przycisk zostanie wywołany z jakiegokolwiek miejsca w oknie. +
+

Przycisk obsługuje więcej atrybutów poza tymi, które zostały wymienione powyżej. Zostaną one omówione w dalszej części kursu. +

+

Kilka przykładów przycisków

+

Przykład 1 : Źródła Podgląd +

+
grafika:buttons1.png
+
<button label="Normaly"/>
+<button label="Wyłączony" disabled="true"/>
+
+

W przykładzie przedstawionym powyżej pierwszy przycisk jest normalnym przyciskiem. Drugi natomiast jest wyłączony, co jest widoczne poprzez jego "wyszarzenie". +


+Rozpoczynamy od utworzenia zwykłego przycisku <tt>Znajdź</tt>, który znajdzie się w oknie narzędzia do szukania plików. Poniżej znajduje się kod, który dodamy do przykładu <tt>findfile.xul</tt>. +

+
<button id="find-button" label="Znajdź"/>
+
+
W Firefoksie 1.0 nie jest dozwolone otwieranie okien chrome z sieci WWW, więc odnośniki <tt>Podgląd</tt> w tym kursie będą otwierane w zwykłych oknach przeglądarki. Z tego też powodu przyciski zostaną rozciągnięte do pełnego rozmiaru okna przeglądarki. Aby zapobiec rozciągnięciu się naszego przykładu, dodaj ten fragment kodu align="start" do znacznika window.
+
+
Przykład <tt>findfile.xul</tt>
+

Dodajmy kod do pliku <tt>findfile.xul</tt>, który utworzyliśmy w poprzednim artykule. Kod musi być wstawiony pomiędzy znacznikami window. Fragment kodu zaznaczony na czerwono dodajmy do naszego przykładu:

+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<window
+   id="findfile-window"
+   title="Znajdź pliki"
+   orient="horizontal"
+   xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+   <button id="find-button" label="Znajdź"/>
+   <button id="cancel-button" label="Anuluj"/>
+
+</window>
+
+
grafika:buttons2.png
+Dodany został również przycisk <tt>Anuluj</tt>. Ponieważ w oknie została określona orientacja pozioma, oba przyciski umieszczone są obok siebie. Jeśli otworzymy plik z przykładowym kodem w przeglądarce Mozilla, powinniśmy otrzymać podobne okno do obrazka z boku.
+
Nie powinno się umieszczać etykiety bezpośrednio w pliku XUL. Zamiast tego powinniśmy używać encji, aby tekst mógł być łatwo tłumaczony.
+

W następnym temacie nauczymy się umieszczać w oknie etykiety i obrazki. +

Zobacz także Dodatkowe możliwości przycisku +

+

« PoprzedniNastępny »

+
+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_w\305\202asno\305\233ci/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_w\305\202asno\305\233ci/index.html" new file mode 100644 index 0000000000..d0ce531fb3 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/dodawanie_w\305\202asno\305\233ci/index.html" @@ -0,0 +1,165 @@ +--- +title: Dodawanie własności +slug: Mozilla/Tech/XUL/Kurs_XUL/Dodawanie_własności +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XBL + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Properties_to_XBL-defined_Elements +--- +

+

« PoprzedniNastępny »

+
W tym artykule dowiemy się jak dodać ustawienia właściwości użytkownika do elementów XBL.

+ +

Interfejs XBL

+ +

JavaScript i DOM dają nam dostęp do pobrania i ustawienia własności elementów. Z XBL, możemy zdefiniować własne właściwości, dla elementów przez nas tworzonych. Mamy możliwość dodania własnych nazw meteod. To jest wszystko czego byś potrzebował aby dostać referencję do elementu, (używając getElementById lub podobnych funkcji) i następnie pobranie lub ustawienie dodatkowych właściwości i nazwaniu jego metod.

+ +

Tutaj są trzy typy pozycji, które dodaj.

+ + + +

Wszystkie trzy są zdefiniowane wewnątrz implementation elementu, który powinien być dzieckiem binding elementem. Wewnątrz implementacji, definiujesz swoje własne field, property i method elementów, dla każdej jednej, którą wybierzesz. Składnia główna wygląda następująco:

+ +
<binding id="element-name">
+  <content>
+    -- content goes here --
+  </content>
+  <implementation>
+    <field name="field-name-1"/>
+    <field name="field-name-2"/>
+    <field name="field-name-3"/>
+
+    <property name="property-name-1"/>
+    <property name="property-name-2"/>
+    <property name="property-name-3"/>
+    .
+    .
+    .
+    <method name="method-name-1">
+      -- method content goes here --
+    </method>
+    .
+    .
+    .
+  </implementation>
+</binding>
+
+ +

Pola

+ +

Każde pole jest definiowane używając elementów field. Często, pola będą odpowiadać atrybutom położonym wewnątrz elementu, są to label lub disabled, ale on do not have to.

+ +

Atrybut name w field (polu) elementu jest użyty do wskazania nazwy pola. Możesz użyć nazwę ze skryptu aby pobrać i ustawić wartość. Przykład poniżej tworzy przycisk, który generuje i ukrywa losową liczbę. You can retrieve this same number multiple times by getting the number property from the button. Most of the work here is done in the oncommand handlers. Later, we'll find out how to move this to XBL.

+ +
XUL:
+
+<box id="random-box" class="randomizer"/>
+
+<button label="Generate"
+           oncommand="document.getElementById('random-box').number=Math.random();"/>
+<button label="Show"
+           oncommand="alert(document.getElementById('random-box').number)"/>
+
+XBL:
+
+<binding id="randomizer">
+  <implementation>
+    <field name="number"/>
+  </implementation>
+</binding>
+
+ +

Pola number zostały zdefiniowane w wiązaniach, które przechowują random number. Dwa dodatkowe przyciski ustawiamy i pobieramy wartości tych pól. Składnia jest bardzo podobna do pobieranej i wysyłanej do własności języka HTML. W tym przykładzie, no content has been placed inside either the XUL box or its definition in XBL, which is perfectly valid.

+ +

Ten przykład nie jest do końca poprawny, ponieważ polu nie jest przypisana wartość domyślna. Aby to zrobić, dodaj domyślną wartość jako zawartość zakładki field. Na przykład:

+ +
<field name="number">
+  25
+</field>
+
+ +

To przypisze wartość 25 jako wartość domyślną pola liczbowego. W rzeczywistości zamiast tego możesz wpisać skrypt wewnątrz zakładki field, który oszacuje domyślną wartość. Może się to okazać konieczne, jeśli wartość musi być obliczona. Na przykład, następującemu polu przypisana jest wartość domyślna równa aktualnemu czasowi:

+ +
<field name="currentTime">
+  new Date().getTime();
+</field>
+
+ +

Własności

+ +

Czasem będziesz chciał odświeżyć dane, dołączone do własności, albo chciałbyś, żeby wartość była obliczana dynamicznie, gdy o to poprosi użytkownik. Na przykład, jeśli masz własność, która przechowuje aktualny czas, będziesz pewnie chciał, żeby jej wartość była generowana w czasie rzeczywistym. W takim przypadku musisz użyć zakładki property zamiast zakładki field. Jego składnia jest podobna, ale ma inne dodatkowe cechy.

+ +

Onget Attribute and Onset Attribute

+ +

Możesz użyć atrybutu onget and onset aby wywołać kod, gdy własność jest odzyskiwana lub modyfikowana. Dodaj każdy atrybut do elementu property i ustaw jej wartość na skrypt, który albo pobiera albo ustawia wartość danej własności.

+ +

Na przykład, możesz przypisać skrypt do wartości onget aby obliczyć aktualny czas. Gdy tylko skrypt będzie chciał uzyskać dostęp do wartości tej własności, wywołany zostanie skrypt onget, aby odzyskać wartość. Powinien on zwrócić wartość, która będzie uważana za wartość tej własności.

+ +

Trener onset jest podobny, ale jest wywoływany wtedy, gdy skrypt próbuje przypisać nową wartość danej własności. Ten skrypt powinien przechowywać gdzieś wartość albo uaktualniać ją. Na przykład niektóre własności mogą przechowywać tylko liczby. Próba przypisania tekstu do takiej własności powinna być przerwana.

+ +
<property name="size"
+          onget="return 77;"
+          onset="alert('Changed to:'+val); return val;"/>
+
+ +

Ta własność będzie zawsze zwracała 77, przy próbie pobrania. Przy próbie ustawienia wartości, wyświetli się komunikat ostrzegawczy, który pokaże jaką wartość przypisano własności. Specjalna zmienna val przechowuje wartość, która powinna być przypisana własności. Użyj tego do uaktualnienia jej lub przechowywania. Kod onset powinien także zwrócić nową wartość.

+ +

Następujący fragment opisuje typową sytuację:

+ +

Są dwa elementy: jeden nazywa się "banana", a drugi "orange". Każdy ma odpowiednią własność nazwaną "size" (rozmiar). Napiszmy następujący skrypt:

+ +
banana.size = orange.size;
+
+ +
    +
  1. Skrypt onget jest wywoływany dla własności rozmiaru dla "orange". Skrypt oblicza wartość i ją zwraca.
  2. +
  3. Uchwyt onset własności "size" obiektu "banana" jest wywoływany. Skrypt użyje wartości znajdującej się w zmiennej val i przypisze ją własności "size" obiektu "banana".
  4. +
+ +

Zauważmy, że w odróżnieniu od pola, własność nie przechowuje wartości. Próba ustawienia własności, która nie posiada trenera onset spowoduje wyświetlenie błędu. Często będziesz korzystał z oddzielnego pola, aby przechowywać wartość własności. Równie często sprawia się, że własność odpowiada atrybutowi elementu zdefiniowanego przez XBL. Następujący przykład mapuje własność na atrybut pewnego elementu:

+ +
<property name="size"
+          onget="return this.getAttribute('size');"
+          onset="return this.setAttribute('size',val);"
+/>
+
+ +

Gdy tylko skrypt próbuje pobrać wartość własności, pobiera ją z atrybutu elementu o tej samej nazwie. Natomiast gdy próbuje ustawić jej wartość, jest ona przypisywana do atrybutu tego elementu. Jest to bardzo wygodne, ponieważ wtedy możesz modyfikować własność lub atrybut i obydwoje będą miały taką samą wartość.

+ +

Getter Element and Setter Element

+ +

Możesz użyć alternatywnej składni dla atrybutów onget i onset, która jest przydatna, jeśli skrypt jest dłuższy. Możesz wymienić atrybut onget na element potomny nazywany getter. Podobnie, możesz wymienić atrybut onset na element setter. Poniższy przykład ilustruje tą zamianę:

+ +
<property name="number">
+  <getter>
+    return this.getAttribute('number');
+  </getter>
+  <setter>
+    var v = parseInt(val,10);
+    if (!isNaN(v)) return this.setAttribute('number',''+v);
+    else return this.getAttribute('number');"
+  </setter>
+</property>
+
+ +

Własność w tym przykładzie będzie mogła przechowywać wyłącznie liczby całkowite. Jeśli inne cyfry lub litery będą wpisane, zostaną usunięte. Jeśli nie będzie żadnych cyfr, wartość pozostanie niezmieniona. Jest to wykonywane przez część kodu wewnątrz elementu setter. Prawdziwa wartość własności jest przechowywana w atrybucie number.

+ +

Możesz używać obu składni do tworzenia uchwytów pobrania i ustawienia.

+ +

Atrybut tylko do odczytu

+ +

Utwórz pole z własnościami 'Tylko do odczytu', dodając atrybut readonly do znacznika pola (field) lub własności znacznika (property) i ustawienie go na true. Próbując ustawić wartość własności 'Tylko do odczytu' zakończone nie powodzeniem.

+ +

W następnym artykule zobaczymy jak dodać metody do definicji elementu XBL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/drzewa/index.html b/files/pl/mozilla/tech/xul/kurs_xul/drzewa/index.html new file mode 100644 index 0000000000..b416840314 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/drzewa/index.html @@ -0,0 +1,117 @@ +--- +title: Drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Trees +--- +

 

+

+

« PoprzedniNastępny »

+

+

XUL umożliwia tworzenie tabelarycznych lub hierarchicznych list przy użyciu drzewa.

+

Drzewo

+

Drzewo w XUL jest jednym z najbardziej złożonych elementów. Drzewo może być użyte w celu wyświetlenia wierszy tekstu w kolumnach, na liście lub hierarchicznie. Drzewo umożliwia zmiany wyglądu, rozmiaru czy ukrywanie poszczególnych kolumn. Przykładami drzew są między innymi te zawierające listę wiadomości w programie pocztowym lub w okno zakładek w Mozilli.

+

W wielu sytuacjach drzewo posiada wiele wspólnych cech z polami listy (listbox). Oba mogą być użyte do utworzenia tabel z danymi, zawierających wiele wierszy i kolumn oraz nagłówków. Jednak drzewa umożliwiają zagnieżdżanie wierszy, czego nie umożliwiają pola list. Przewagą pól list jest to, że można w nich zawrzeć dowolny typ zawartości, podczas gdy drzewa mogą zawierać tylko obrazy i tekst (stosując zaawansowane możliwości, możemy dodać do drzewa paski postępu lub pola wyboru).

+

Drzewo składa się z dwóch części, ciała drzewa i ustawienia kolumn:

+ +

Drzewo jest wyjątkowym elementem. Ciało drzewa składa się z pojedynczego widgetu, który wyświetla wszystkie dane w drzewie. To kontrastuje z polem listy, gdzie pojedynczy znacznik listitem i listcell jest stosowany by wyszczególnić wiersze w polu listy. W drzewie wszelkie dane do wyświetlenia są dostarczane przez oddzielny obiekt zwany widokiem drzewa. Gdy przyjdzie kolej na pokazanie komórki, widget drzewa określi, co jest do wyświetlenia i wyśle taką informację do widoku drzewa, co następnie będzie wyświetlone przez drzewo. Drzewo jest zdolne do tego, by wyciągać informacje z widoku, które wiersze mają być wyświetlone. To umożliwia optymalizację widoku w taki sposób, by pobierał informacje tylko o tym, co ma być wyświetlone. Dla przykładu, drzewo może mieć tysiące wierszy, dodatkowo większość z nich rozwiniętych poza granice widoku, tak że nie są widoczne. To znaczy, że drzewo jest skalowalne do dowolnych rozmiarów bez problemów z wydajnością.

+

Widok drzewa jest obiektem implementującym interfejs nsITreeView. Interfejs ten zawiera trzydzieści własności i funkcji, które można zaimplementować. Funkcje te będą wywoływane przez drzewo zawsze, kiedy będzie konieczne uzyskać dane o stanie drzewa. Na przykład funkcja getCellText() będzie wywoływana w celu pobrania etykiety dla konkretnej komórki drzewa.

+

Korzyścią z używania widoku jest w pewnym stopniu możliwość przechowywania w widoku danych w sposób dla nich odpowiedniejszy lub ładowania danych na żądanie (tak jak wiersze są wyświetlane). To umożliwia uzyskanie większej elastyczności podczas używania drzew.

+

Naturalnie, próba implementacji widoku drzewa z trzydziestoma lub więcej własnościami i metodami może być bardzo niewygodna, w szczególności dla prostych drzew. Na szczęście XUL dostarcza kilka wbudowanych rozwiązań, które wykonają najtrudniejsze zadania za Ciebie. Dla większości drzew (szczególnie, gdy zaczynasz prace z drzewami), możesz użyć jednego z gotowych, wbudowanych typów. Jednak nic nie stoi na przeszkodzie, aby utworzyć całkowicie nowy wygląd. Jeżeli chcesz możesz przechowywać dane w tablicy lub w strukturze danych JavaScriptarray, bądź wczytywać dane z pliku XML.

+

Ponieważ całe ciało drzewa to pojedynczy widget, nie można zmienić stylu podanego wiersza lub komórki normalną drogą dlatego, że nie ma tam elementów, które wyświetlają pojedyncze komórki, jak to ma miejsce przy listbox. Zamiast tego całość jest rysowana przez ciało drzewa przy użyciu danych dostarczanych przez widok. To jest ważny punkt i wielu programistów XUL ma problem w zrozumieniu tego aspektu. By zmodyfikować wygląd pojawiającej się komórki, widok musi połączyć zestaw słów kluczowych dla wiersza i komórki. Używana jest specjalna składnia CSS. W pewien sposób to wygląda jak używanie klas CSS. Stylizacja drzew będzie omówiona bardziej szczegółowo nieco później.

+

Elementy drzewa

+

Drzewa mogą być tworzone przy użyciu elementów tree, które są opisane w następnych artykułach. Są też tam dwa elementy używane przy definiowaniu kolumn, które są wyświetlone w drzewie.

+
tree
Zewnętrzny element drzewa.
+
+
treecols
Element wypełniający zestaw treecol.
+
+
treecol
Jest używany do deklarowania pojedynczej kolumny drzewa. Używając tego elementu, można określić dodatkową informację o tym, jak dane w kolumnach maja być posortowane, a także czy użytkownik może zmieniać rozmiar kolumn. Zawsze powinno się umieszczać atrybut id na kolumnie. Mozilla stosuje id do identyfikacji kolumn przy ich ponownej aranżacji lub ich ukrywaniu. Od wersji 1.8 Mozilla już tego nie wymaga, jednak mimo wszystko dobrze jest używać atrybutu id do oznaczania kolumn.
+
+
treechildren
Zawiera główne ciało drzewa, w którym są wyświetlane pojedyncze wiersze danych.
+
+
Przykład drzewa z dwoma kolumnami
+

Źródła Podgląd

+
<tree flex="1">
+
+  <treecols>
+    <treecol id="nameColumn" label="Nazwa" flex="1"/>
+    <treecol id="addressColumn" label="Adres" flex="2"/>
+  </treecols>
+
+  <treechildren/>
+
+</tree>
+
+

Cała tabela otoczona elementem tree. To deklaruje element, który jest użyty jako tabela lub drzewo. Podobnie jak z tabelami HTML, dane w drzewie są zorganizowane w wierszach. Kolumny są określone przy pomocy znacznika treecols.

+

W drzewie możesz umieścić tyle kolumn ile sobie życzysz. Tak jak w przypadku listy pól, wiersz nagłówka pojawia się wraz z etykietami kolumn na samej górze. Rozwijane menu ukazuje się w prawym górnym rogu drzewa. Użytkownik może go używać do ukrywania i wyświetlania wybranych kolumn. Każda kolumna jest utworzona przy pomocy elementu treecol. Możesz ustawić etykietę używając jej atrybutu label. Możesz stworzyć elastyczne kolumny, jeśli drzewo będzie elastyczne, to pozwoli ono zmieniać szerokości kolumn. W tym przykładzie druga kolumna jest dwa razy szersza do pierwszej. Wszystkie kolumny powinny być umieszczone wewnątrz elementu treecols.

+

W tym przypadku nie określiliśmy widoku w celu dostarczeniu danych drzewa, więc zobaczymy tylko nagłówki kolumn i puste ciało drzewa. Można zmieniać rozmiar okna dopóki nie ma tam żadnych danych do wyświetlenia. Dopóki drzewo było oznaczone jako elastyczne, ciało rozciągało się na całej dostępnej powierzchni. Czyniąc drzewo elastycznym, jak to się zwykle robi, pokazywane są tylko najbardziej istotne dane, więc drzewo jest tak rozciągane, żeby je dopasować. Jednak można wyszczególnić pewną liczbę wierszy (rows) do pokazania w drzewie (tree) przez umieszczenie rzędów w atrybucie elementu. Atrybut ten określa jak wiele wierszy jest wyświetlanych w interfejsie użytkownika, a nie ile wierszy tam się znajduje. Całkowita liczba rows jest dostarczana przez widok drzewa. Jeżeli w drzewie znajduje się więcej wierszy, przejrzenie pozostałych umożliwia pasek przewijania. Jeżeli nie nadasz atrybutowi rows wartości 0, znaczy to, że żaden z wierszy się nie pojawi. W tym przypadku można by zrobić drzewo elastyczne, jeżeli tak uczyniłeś to nie będzie potrzebny atrybut rows, ponieważ urośnie on do maksymalnej dostępnej powierzchni.

+

Treść widoku drzewa

+

Mówiliśmy, że dane, by być pokazanymi w drzewie, pochodzą z widoku, a nie ze znaczników XUL, zdarza się, że wbudowany widok drzewa otrzymuje dane właśnie ze znaczników XUL. To może być nieco mylące, ale zasadniczo jeden z wbudowanych widoków drzewa używa zestawu znaczników, które mogą być zastosowane do określenia informacji na temat danych w drzewie. Następujące znaczniki są używane:

+
treeitem
Zawiera pojedynczy górny poziom wiersza i jego pochodne. Element ten służy także jako element, który może być wybrany przez użytkownika. Znacznik treeitem powinien być umieszczony dookoła wiersza, tak, że może być wybrany jako całość.
+
+
treerow
Pojedynczy rząd drzewa, który powinien być umieszczony wewnątrz znacznika treeitem.
+
+
treecell
Pojedyncza komórka drzewa. Winien być umieszczony wewnątrz elementu treerow.
+
+

Znaczniki te powinny być umieszczone bezpośrednio wewnątrz znacznika treechildren, zagnieżdżone powyżej. Znaczniki definiują dane do umieszczenia w ciele drzewa. W tym przypadku drzewo używa wbudowanego widoku drzewa, zwanego treścią widoku drzewa, który używa etykiet i wartości określonych w tych elementach jako dane dla drzewa. Kiedy drzewo wymaga wyświetlenia wiersza, drzewo zażąda etykietę komórki, od okna widoku używając widoku funkcji getCellText, która otrzymuje dane od etykiety odpowiedniego elementu treecell.

+

Jednak są tam trzy wylistowane elementy, które nie są bezpośrednio pokazywane. Są używane jako źródło danych widoku. Są garścią atrybutów dodawanych do elementu treeitem i powiązanych elementów. Na przykład, nie możesz zmienić wyglądu pojawiających się wierszy drzewa stosując atrybuty style, albo z innymi własnościami CSS i odpowiednio powiązanymi cechami, takimi jak elastyczność i orientacja.

+

Faktycznie, oprócz kilku specyficznych atrybutów drzewa, tylko atrybuty, które będą przynosiły jakikolwiek efekt, będą atrybutem tekstu etykiety ustawianym przez label dla komórki i src w celu umieszczeniu i obrazu. Są jednak specjalne sposoby tytułowania drzewa i umieszczania innych cech, które zobaczymy w kolejnych artykułach.

+

Zdarzenia nie są wysyłane do elementu treeitem i ich dzieci, zamiast tego są wysyłane do elementu treechildren.

+

Jako że pozycje drzewa są niepodobne do elementów XUL, są one źródłem wspólnych nieporozumień dla programistów XUL. Widok drzewa treści widoku jest widoczny tam, gdzie dane dla komórek są dostarczone do znaczników umieszczonych wewnątrz drzewa. Naturalnie, jeżeli używasz widoku innego rodzaju, dane będą dostarczone z innego źródła i nie będzie tam żadnych elementów treeitem.

+

Zobaczmy, jak utworzyć proste drzewo z wieloma kolumnami używając treści widoku drzewa. Można tego użyć do stworzenia listy wiadomości e-mail. Może się tam znaleźć wiele kolumn, takich jak nadawca i temat.

+

Przykład drzewa z treechildren

+

Źródła Podgląd

+
grafika:trees1.png
+
<tree flex="1">
+
+  <treecols>
+    <treecol id="sender" label="Nadawca" flex="1"/>
+    <treecol id="subject" label="Temat" flex="2"/>
+  </treecols>
+
+  <treechildren>
+    <treeitem>
+      <treerow>
+        <treecell label="joe@somewhere.com"/>
+        <treecell label="Ściśle tajne plany"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="mel@whereever.com"/>
+        <treecell label="Zróbmy obiad"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+
+</tree>
+
+

Jak widać na obrazku, drzewo zostało utworzone z dwoma wierszami danych.

+

Drzewo to ma dwie kolumny, z których druga zajmie więcej miejsca niż ta pierwsza. Zazwyczaj będziemy tworzyć elastyczne kolumny. Możemy także dostarczyć informację o szerokościach za pomocą atrybutu width. Powinno się zawrzeć taką samą liczbę elementów treecol, ile jest kolumn w drzewie. W przeciwnym przypadku może to powodować powstawanie dziwnych, nieoczekiwanych sytuacji.

+

Wiersz nagłówka jest tworzony automatycznie. Przycisk w prawym górnym rogu może być użyty w celu ukrycia i pokazania kolumn. Można umieścić atrybut hidecolumnpicker w drzewie i ustawić go jako true w celu ukrycia tego przycisku. Jeżeli przycisk zostanie tak ukryty, użytkownik nie będzie miał możliwości chowania kolumn.

+

Można być pewnym, że ustawiony atrybut id przy każdej kolumnie, albo ukrywanie i pokazywanie kolumn nie będzie pracować z wszystkimi wersjami przeglądarki Mozilla.

+

Element treechildren otacza wszystkie wiersze. Wewnątrz ciała są wiersze, które mogą z kolei zawierać kolejne wiersze. Dla prostszego drzewa każdy wiersz jest tworzony przez treeitem i treerow. Element treerow otacza wszystkie komórki w pojedynczym wierszu, podczas gdy element treeitem otaczałby wiersz i wszystkie jego dzieci. Drzewa z zagnieżdżonymi wierszami są opisane w następnym artykule.

+

Wewnątrz wierszy możemy umieścić pojedyncze komórki drzewa. Te są tworzone przy użyciu elementu treecell. Można umieścić tekst komórki używając atrybutu label. Pierwszy treecell w wierszu określa zawartość, która ukaże się w pierwszej kolumnie, drugi treecell określa zawartość drugiej kolumny itd.

+

Użytkownik może wybrać pozycje drzewa klikając na nie myszką lub podświetlając je przy życiu klawiatury. Można wybierać wiele pozycji na raz, przytrzymując klawisz SHIFT lub CTRL, a następnie klikając w kolejny wiersz, jaki chcemy zaznaczyć. W celu uniemożliwienia wielokrotnego zaznaczenia (wyboru), należy umieścić atrybut seltype w drzewie i ustawić jego wartość na single. Dzięki temu użytkownik może dokonać zaznaczenia (wyboru) tylko jednej pozycji w danym momencie.

+
+

Dodajemy drzewo do przykładu Znajdź pliki

+

Dodajemy drzewo do okna wyszukiwania plików, gdzie są wyświetlane wyniki. Drzewo użyje treści widoku drzewa. Następujący kod powinien zająć miejsce iframe.

+
<tree flex="1">   <treecols>     <treecol id="name" label="Nazwa pliku" flex="1"/>     <treecol id="location" label="Lokalizacja" flex="2"/>     <treecol id="size" label="Rozmiar" flex="1"/>   </treecols>    <treechildren>    <treeitem>      <treerow>        <treecell label="mozilla"/>        <treecell label="/usr/local"/>        <treecell label="2520 bajtów"/>      </treerow>    </treeitem>   </treechildren> </tree>
+
+<splitter collapse="before" resizeafter="grow"/>
+
+

Dodaliśmy drzewo z trzema kolumnami dla nazwy pliku, lokalizacji i rozmiaru. Druga kolumna będzie dwa razy szersza z powodu większej elastyczności. Pojedynczy wiersz został dodany, by zobrazować, jak wygląda tabela z wierszem. W rzeczywistości, wiersze byłby dodane przez skrypt zależnie od wyników wyszukiwania lub byłby stworzony własny widok do przetrzymania danych.

+

Przykład Znajdź pliki: Źródła Podgląd

+
+

Następnie nauczymy się, jak stworzyć bardziej zaawansowane drzewa.

+

+

« PoprzedniNastępny »

+

+

Tłumaczenie: PHP.pl

+

 

+ +

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/drzewa_i_szablony/index.html b/files/pl/mozilla/tech/xul/kurs_xul/drzewa_i_szablony/index.html new file mode 100644 index 0000000000..628cdad2da --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/drzewa_i_szablony/index.html @@ -0,0 +1,138 @@ +--- +title: Drzewa i szablony +slug: Mozilla/Tech/XUL/Kurs_XUL/Drzewa_i_szablony +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Trees_and_Templates +--- +

+

« PoprzedniNastępny »

+
 

+ +

Zawartość artykułu opisuje jak używać szablonów wraz z drzewami.

+ +

Dodajemy źródło danych do drzewa

+ +

Kiedy używamy drzewa, często korzystamy z szablonu, aby zbudować jego zawartość, kierując dużą ilością hierarchicznych danych. Używając szablonu z drzewem stosujemy bardzo często podobną składnię z innymi elementami. Aby dodać datasources i atrybut ref do elementu tree, który określa źródło danych i węzeł podstawy wyświetla.

+ +

Następujący przykład odwołuje się do historii kodu źródłowego:

+ +
<tree datasources="rdf:history" ref="NC:HistoryByDate"
+          flags="dont-build-content">
+
+ +

Jak opisano w poprzednim temacie, drzewa mogą używać programów do budowy drzew dla generatora szablonów zamiast normalnej zawartości programów do budowy. Oznacza to, że elementy te nie będą utworzone dla każdego wiersza w drzewie, robiąc go bardziej efektywnym. Atrybuty flags ustawią wartość dont-build-content,jak w przykładzie powyżej, sygnalizując użycie generatora drzew. Jeśli opuszczasz ten atrybut, generator zawartości zostanie użyty. Możesz zobaczyć różnice używając Inspektora Mozilla DOM w drzewie z lub bez flagi.

+ +

Jeśli używasz do budowy zamiast budowniczego zawartości, notatki że ta zawartość nie będzie generalnie pobierana do budowy aż do momentu kiedy nie będziesz tego potrzebował. W hierarchicznych drzewach, potomek-dziecko nie będzie brał generowanego tekstu aż węzeł rodzic nie zostanie otwarty przez użytkownika.

+ +

W szablonie, jest po jednej treecell dla każdej kolumny w drzewie. Komórki powinny mieć atrybut label do ustawiania etykiety komórek. Jest to normalne ustawienie własności w RDF, tak więc etykieta jest pobierana z kodu źródłowego.

+ +

Template-built Tree Example

+ +

Następujący przykład demonstruje zbudowany szablon drzewa, w tym przypadku dla pliku systemowego:

+ +

Przykład 1 : Źródła

+ +
<tree id="my-tree" flex="1"
+       datasources="rdf:files" ref="file:///" flags="dont-build-content">
+  <treecols>
+    <treecol id="Name" label="Name" primary="true" flex="1"/>
+    <splitter/>
+    <treecol id="Date" label="Date" flex="1"/>
+  </treecols>
+
+    <template>
+      <rule>
+        <treechildren>
+          <treeitem uri="rdf:*">
+            <treerow>
+              <treecell label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+              <treecell label="rdf:http://home.netscape.com/WEB-rdf#LastModifiedDate"/>
+            </treerow>
+          </treeitem>
+        </treechildren>
+      </rule>
+    </template>
+</tree>
+
+ +

W ty miejscu, drzewo zostało utworzone z dwoma kolumnami, dla nazwy i daty pliku. Drzewo powinno zostać wyświetlone jako lista plików w katalogu głównym. Użyto tylko jednej zasady, ale ty możesz dodać inne, jeśli tego potrzebujesz. Tak samo z innymi szablonami, atrybut uri na elemencie wskazuje gdzie ma zacząć generować zawartość. Dwie komórki dostają nazwę i datę z kodu źródłowego i umieszcza ich wartość w etykiecie komórki.

+ +

Przykład pokazuje dlaczego atrybut uri staje się użyteczny. Zauważ jak to było na pozycji drzewa w przykładzie, nawet chociaż to nie jest prosty potomek elementu reguły. Potrzebujemy położyć ten atrybut na tych elementach, na których potrzebujemy uzyskać powtórzony kod. Ponieważ nie chcemy wielokrotnego elementu treechildren, nie chcemy to tam położyć. Skutecznie, elementy zewnętrzne (lub powyższe) elementu z atrybutem uri nie są duplikowane podczas gdy elementy z atrybutem uri i elementy wewnątrz są duplikowane dla każdego źródła.

+ +

Zaznaczony w obrazku element to potomek - dziecko, który jest umieszczony poniżej elementu z poziomu górnego, który został dodany automatycznie. XUL wie jak dodać element dziecka kiedy szablon lub zasady stanowią wartość elementu drzewa lub elementu menu. Generując elementy drzewa jako zagnieżdżone i konieczne oparte na dostępnych danych RDF.

+ +
Image:rdfoutl1.jpg
+ +

Interesującą partię danych z kodem źródłowym RDF jest w wartości tych zasobów, i edytujesz tylko zasoby decydując kiedy dane są potrzebne. Wyznacza to wartość na jaką głębokość w zasobach hierarchii są nie możliwe do utworzenia aż do nawigacji zasobami poprzez węzeł w drzewie. Stało się to użytecznym dla pewnego kodu źródłowego gdzie dane są dynamicznie możliwie.

+ +

Sortowanie kolumn

+ +

Jeśli wypróbujesz poprzedzający przykład, moglibyśmy zaznaczyć to w co lista nie jest posortowana. Drzewa które generują dane z kodu źródłowego posiada nieobowiązkową zdolność posortować ich dane. Możemy posortować każdy podnoszący się i obniżający na jakiejkolwiek kolumnie. Użytkownik może zmienić posortowane kolumny i kierunek poprzez kliknięcie nagłówka kolumny. Właściwości sortowania nie są dostępne dla wartości drzew statycznych, chociaż możemy pisać skrypty zawierające dane.

+ +

Sortując angażuje trzy atrybuty, które powinny być umieszczone w kolumnach. Pierwszy atrybut, sort powinien być ustawiony na własności klucza sortowania używanego w RDF. Często, może to być użyta taka sama nazwa etykiety w komórce kolumny. Jeśli ustawisz sortowanie na kolumnę, to wtedy będą sortowane w niej dane. Użytkownik może zmienić kierunek sortowania klikając w nagłówek kolumny. Jeśli nie ustawisz atrybutu sort w kolumnie, dane nie mogą być sortowane w tej kolumnie.

+ +

Atrybut sortDirection jest używany do ustawienia kierunku w którym kolumny będą sortować domyślnie. Poszczególne możliwe cechy:

+ + + +

Atrybut finalny, sortActive powinien być ustawiony na true dla jednej kolumny, jeden którego wybraliśmy będzie sortowany domyślnie.

+ +

Chociaż sortowanie działa bez zarzutów i prawidłowo tylko z tamtymi narzędziami, możesz także użyć klasę stylu sortDirectionIndicator w kolumnie, w której będzie ona sortowana. Będzie powodować mały trójkąt pojawiający się nagłówek, który wskazuje kierunek sortowania. Jeśli nie chcesz tego robić, możesz dalej sobie sortować kolumny ale nie uzyska wskazówek dotyczących kierunku aktualnego sortowania.

+ +

Poniższy przykład pokazuje zmiany kolumn we wcześniejszym przykładzie poprzez dołączenie extra własności:

+ +
<treecols>
+  <treecol id="Name" label="Name" flex="1" primary="true"
+            class="sortDirectionIndicator" sortActive="true"
+            sortDirection="ascending"
+            sort="rdf:http://home.netscape.com/NC-rdf#Name"/>
+  <splitter/>
+  <treecol id="Date" label="Date" flex="1" class="sortDirectionIndicator"
+           sort="rdf:http://home.netscape.com/WEB-rdf#LastModifiedDate"/>
+</treecols>
+
+ +

Stały rozmiar kolumn

+ +

Jedna dodatkowa rzeczą możesz chcieć zrobić wytrzymałe kolumny, które są aktualnie sortowane, więc to jest zapamiętywane pomiędzy sesjami. Aby zrobić to, użyjmy atrybutu persist na każdym treecol elemencie. Znajduje się tam pięć atrybutów kolumn, które będą upierały się, aby zapisać width (długość) kolumn, kolumna rozkazu, czy kolumna jest jawna, która kolumna jest aktualnie posortowana i sortuje instrukcje. Poniższy przykład pokazuje przykładowe kolumny:

+ +
<treecol id="Date" label="Date" flex="1"
+             class="sortDirectionIndicator"
+             persist="width ordinal hidden sortActive sortDirection"
+             sort="rdf:http://home.netscape.com/WEB-rdf#LastModifiedDate"/>
+
+ +

More details about the persist attribute will be described in the later section.

+ +

Additional Rule Attributes

+ +

Dodawanie atrybutów zasad

+ +

Tutaj mamy dwa dodatkowe atrybuty, które mogą zostać dodane jako elementy zasad, które pozwolą na określenie pewnych specjalnych okoliczności. Oba atrybuty są typu boolean.

+ +
+
iscontainer
+
jeśli ten atrybut jest ustawiony na wartość true, następnie zasady dopasują kod źródłowy, który posiada potomka-dziecko. Na przykład, możemy używać zasad aby dopasować foldery zakładek. Jest to wygodny jako kod źródłowy RDF nie potrzebującego wszelkich specjalnych atrybutów wskazujących na to.
+
+ +
+
isempty
+
jeśli ten atrybut jest ustawiony na wartość true, następnie zasady dopasują kod źródłowy tak aby nie posiadać potomka - dziecka.
+
+ +

Dwa powyższe atrybuty są naprawdę swoimi przeciwieństwami. Zasoby mogą być w zbiornikach i będą puste jako dobre(?). Kiedykolwiek, różnice pochodzą z kodu, to nie będzie zbiornikiem. Na przykład, folder zakładek jest pojemnikiem ale to siła nie może mieć potomka. Kiedykolwiek, pojedyncza zakładka lub separator nie są żadnym pojemnikiem.

+ +

Możesz połączyć te dwa elementy z innymi aplikacjami, atrybutami dla określonych zasad.

+ +

Następnie, zobaczymy trochę kodu źródłowego dostarczonego przez Mozillę.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_atrybutu_xbl/index.html b/files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_atrybutu_xbl/index.html new file mode 100644 index 0000000000..88a446e682 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_atrybutu_xbl/index.html @@ -0,0 +1,115 @@ +--- +title: Dziedziczenie atrybutu XBL +slug: Mozilla/Tech/XUL/Kurs_XUL/Dziedziczenie_atrybutu_XBL +tags: + - Kurs_XUL + - Przewodniki + - XBL + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/XBL_Attribute_Inheritance +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule zobaczymy jak atrybuty mogą być dziedziczone.

+ +

Dziedziczenie atrybutów

+ +

XBL pozwala nam na zbudowanie połączonych widgetów podczas ukrywania ich rzeczywistej implementacji. Jednakże z właściwościami wzmiankowanymi dotychczas, anonimowa zawartość jest zawsze tworzona w ten sam sposób. Byłoby to użyteczne do dodawania atrybutów do elementów granicznych które modyfikują wewnętrzne elementy. Na przykład:

+ +
XUL:
+
+<searchbox/>
+
+XBL:
+
+<binding id="searchBinding">
+  <content>
+    <xul:textbox/>
+    <xul:button label="Search"/>
+  </content>
+</binding>
+
+ +

W tym przykładzie, atrybut label umieszczono bezpośrednio w elemencie button. Problem z tym jest taki, że etykieta powinna być taka sama za każdym razem, kiedy stosujemy dowiązanie. W tym przypadku byłoby to bardziej pożądane gdyby atrybut mógł być określony w polu wyszukiwania. XBL dostarcza atrybutu inherits, który może być użyty do dziedziczenia atrybutów z elementu granicznego. Powinien być umieszczony w elemencie, który powinien dziedziczyć atrybut z zewnętrznego elementu, w tym przypadku przycisku. Ta wartość powinna być ustawiona jako lista oddzielona przecinkami atrybutów nazwy, których są dziedziczone.

+ +
<xul:textbox xbl:inherits="flex"/>
+<xul:button xbl:inherits="label"/>
+
+ +

Kiedy zawartość jest generowana, textbox korzysta z atrybutu flex pola wyszukiwania a button korzysta z atrybutu label pola wyszukiwania. Pozwala to elastyczności pola tekstowego i etykiety przycisku być różnymi dla każdego zastosowania dowiązania. Dodatkowo, zmieniając wartość tego atrybutu w polu wyszukiwania skryptem zaktualizujemy również pole tekstowe i przycisk. Możesz dodać atrybut inherits do tylu elementów ile sobie życzysz, dziedzicząc kilka atrybutów.

+ +

Zauważ, że atrybut inherits jest umieszczony w przestrzeni nazw XBL, poprzez poprzedzenie go 'xbl:'. Przestrzeń nazw powinna być zadeklarowana gdzieś wcześniej, zazwyczaj w elemencie bindings. Demonstruje to kolejny przykład:

+ +
<bindings xmlns:xbl="http://www.mozilla.org/xbl"
+          xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<xbl:binding id="buttonBinding">
+  <xbl:content>
+    <xul:button label="OK" xbl:inherits="label"/>
+  </xbl:content>
+</xbl:binding>
+
+ +

W tym przykładzie, przycisk dziedziczy atrybut label, ale ten atrybut jest również podaną wartością bezpośrednio w XBL. Ta technika jest używana do ustawienia domyślnej wartości jeśli atrybuty nie jest obecny przycisk ten odziedziczy atrybut label z elementu zewnętrznego jednak, jeśli nie ma label, będzie podana domyślna wartość OK.

+ +

Może być to stosowane tam gdzie dwa wygenerowane elementy muszą dziedziczyć z atrybutu który ma taką samą nazwę. Na przykład, tworząc etykietowane pole tekstowe (pole tekstowe z tekstem opisującym obok niego) z elementami label i textbox, etykieta będzie musiała dziedziczyć tekst z atrybutu value a pole tekstowe również będzie dziedziczyło domyślną wartość z atrybutu value. Do rozwiązania tego będziemy musieli użyć innego atrybutu odwzorować go do tego samego. Poniżej to demonstruje:

+ +
XUL:
+
+<box class="labeledtextbox" title="Enter some text:" value="OK"/>
+
+CSS:
+
+box.labeledtextbox {
+    -moz-binding: url('chrome://example/skin/example.xml#labeledtextbox');
+}
+
+XBL:
+
+<binding id="labeledtextbox">
+  <content>
+    <xul:label xbl:inherits="value=title"/>
+    <xul:textbox xbl:inherits="value"/>
+  </content>
+</binding>
+
+ +

textbox dziedziczy atrybut value bezpośrednio. Aby ustawić atrybut value w etykiecie, musimy użyć innej nazwy atrybutu i od wzorować go do tej wartości. Atrybut inherits w etykiecie wykorzystuje atrybut title z etykietowanego pola tekstowego i odwzorowuje go do atrybutu value elementu label. Składnia <inner attribute>=<outer attribute> jest używana do odwzorowania jednego atrybutu do innego. Tu mamy inny przykład:

+ +
XUL:
+
+<box class="okcancel" oktitle="OK" canceltitle="Cancel" image="happy.png"/>
+
+CSS:
+
+box.okcancel {
+    -moz-binding: url('chrome://example/skin/example.xml#okcancel');
+}
+
+XBL:
+
+<binding id="okcancel">
+  <content>
+    <xul:button xbl:inherits="label=oktitle,image"/>
+    <xul:button xbl:inherits="label=canceltitle"/>
+  </content>
+</binding>
+
+ +

Wartość atrybutu oktitle jest odwzorowana do atrybutu label pierwszego przycisku. Atrybut canceltitle jest odwzorowany do atrybutu label drugiego przycisku. Pierwszy przycisk również dziedziczy atrybut image a wynik jest następujący:

+ +
<box class="okcancel" oktitle="OK" canceltitle="Cancel" image="happy.png">
+  <button label="OK" image="happy.png"/>
+  <button label="Cancel"/>
+</box>
+
+ +

Zauważ, że atrybuty są powielone z wewnętrznej (anonimowej) zawartości. Zmieniając atrybuty w polu z klasy okcancel będzie automatycznie zmieniana wartość w przycisku. Możesz również do notować, że możemy wymyślić swoje własne nazwy atrybutów. Jest to poprawne w XUL.

+ +

W następnym artykule, zobaczymy w jaki sposób dodamy do wiązania własności, metody i zdarzenia.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_xbl/index.html b/files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_xbl/index.html new file mode 100644 index 0000000000..4b6b2f55d1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/dziedziczenie_xbl/index.html @@ -0,0 +1,56 @@ +--- +title: Dziedziczenie XBL +slug: Mozilla/Tech/XUL/Kurs_XUL/Dziedziczenie_XBL +tags: + - Kurs_XUL + - Przewodniki + - XBL + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/XBL_Inheritance +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule, zobaczymy jak rozszerzyć istniejące definicje języka XBL.

+ +

Dziedziczenie

+ +

Czasami możesz chcieć utworzyć widget XBL, który jest podobny do już istniejącego. Na przykład, powiedzmy, że chcemy utworzyć przycisk w wyskakującym okienku. Jednym sposobem jest utworzenie duplikatu już istniejącego kodu XBL dla naszego przycisku. Jednakże, byłoby lepiej rozszerzyć już istniejący kod przycisku.

+ +

Jakiekolwiek wiązanie może być powiększone o następne. Wiązanie - dziecko może dodać właściwości, metody i zdarzenia uchwytów. Wiązanie - potomne będzie miało wszystkie cechy, jakie zdefiniowane są podczas dodawania cech do wiązania, które otrzymuje w wyniku dziedziczenia (i jakieś wiązanie dziedziczy z wyższych wartości drzewa).

+ +

Do rozszerzenia istniejącego wiązania, dodaj atrybut rozszerzenia (extends) do tagu binding. Na przykład, następnie rozszerzenie wiązania tworzy pole tekstowe, które dodaje tekst http://www do początku wpisanej wartości, dzieje się tak, kiedy naciśniemy klawisz F4.

+ +

Przykład 1 : Źródła

+ +
<binding id="textboxwithhttp"
+         extends="chrome://global/content/bindings/textbox.xml#textbox">
+  <handlers>
+    <handler event="keypress" keycode="VK_F4">
+      this.value="http://www"+value;
+    </handler>
+  </handlers>
+</binding>
+
+ +

Tutaj XBL powiększa element textbox z języka XUL. URL daje nam atrybut extends powyżej jest powiązany adresem URL z wiązaniem pola tekstowego. To znaczy, że dziedziczy wszystkie wartości i zachowania dostarczone przez wiązanie pola tekstowego. W dodatku, dodajemy uchwyt, który odpowiada na zdarzenie klawisza (keypress).

+ +

Automatyczne uzupełnianie pól tekstowych

+ +

poniżej treść już jest ok Przykład powyżej jest podobny do sposobu jak cechy automatycznego uzupełnia pracują w Mozilli. Pola tekstowe, które obsługują automatyczne uzupełnianie jest tylko z jednym wiązaniem XBL, które rozszerza podstawowe pole tekstowych.

+ +

Automatyczne uzupełnianie pól tekstowych dodaje dodatkowy uchwyt zdarzenia, tak, że kiedy adres URL jest wpisywany, to menu będzie się pokazywać prawdopodobnie automatycznie do końca. Możemy też użyć własnych aplikacji. Wystarczy, że utworzymy pole tekstowe wraz z dwoma dodatkowymi atrybutami.

+ +
<textbox type="autocomplete" searchSessions="history"/>
+
+ +

Ustaw type na autocomplete, aby dodać możliwość automatycznego uzupełniania do istniejącego pola tekstowego. Ustaw searchSessions, aby zasygnalizować jaki typ danych szukamy. W tym przypadku, została użyta wartość history, który szuka adresów URL w historii (możemy także użyć wartości addrbook, aby poszukać adresów w książce adresów).

+ +
Firefox używa innego mechanizmu automatycznego uzupełniania, niż Mozilla Suite, zobacz XUL:textbox (Firefox - automatyczne uzupełnianie)
+ +

W następnym artykule, zobaczymy przykład widgetu zdefiniowanego przy pomocy języka XBL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/index.html b/files/pl/mozilla/tech/xul/kurs_xul/index.html new file mode 100644 index 0000000000..1b540fb974 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/index.html @@ -0,0 +1,170 @@ +--- +title: Kurs XUL +slug: Mozilla/Tech/XUL/Kurs_XUL +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial +--- +

Niniejszy kurs opisuje XUL, XML-owy język opisu interfejsu użytkownika . Język ten został stworzony dla aplikacji Mozilli i jest stosowany do definiowania interfejsu użytkownika.

+ +
Niniejsze tłumaczenie nie jest skończone. Trzeba je w całości przejrzeć i poprawić.  Jest ktoś chętny, aby je dopracować? Ogólnie panuje lekki ... no zastój - na razie zalecamy korzystanie z wersji angielskiej tego kursu, niebawem będzie on już w całości po polsku.
+ +

Wprowadzenie

+ + + +

Podstawowe elementy

+ + + +

Model pudełkowy

+ + + +

Dodatkowe elementy rozmieszczenia

+ + + +

Paski narzędzi i menu

+ + + +

Zdarzenia i skrypty

+ + + +

Obiektowy Model Dokumentu (DOM)

+ + + +

Drzewa

+ + + +

RDF i szablony

+ + + +

Motywy i tłumaczenia

+ + + +

Wiązania

+ + + +

Specjalne typy okien

+ + + +

Instalatory

+ + + +
+

Oryginalny (w j.ang.) Kurs XUL pierwotnie został napisany przez Neila Deakina. Pozwolił on nam używać swojego kursu jako części serwisu MDC.

+
+ +
+
Informacje o oryginale
+ + +
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/interfejsy_xpcom/index.html b/files/pl/mozilla/tech/xul/kurs_xul/interfejsy_xpcom/index.html new file mode 100644 index 0000000000..462e7936f4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/interfejsy_xpcom/index.html @@ -0,0 +1,175 @@ +--- +title: Interfejsy XPCOM +slug: Mozilla/Tech/XUL/Kurs_XUL/Interfejsy_XPCOM +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/XPCOM_Interfaces +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule krótko przyjrzymy się XPCOM (Wieloplatformowy Model Obiektów Składowych), który jest systemem Object, jakiego używa Mozilla.

+ +

Wywoływanie obiektów wewnętrznych

+ +

Przez zastosowanie XUL możemy zbudować złożony interfejs użytkownika. Możemy dołączyć skrypty, które modyfikują interfejs i wykonują zadania. Jednakże, jest kilka rzeczy, których nie można wykonać bezpośrednio w JavaScript. Na przykład, jeśli chcielibyśmy stworzyć aplikację pocztową musielibyśmy napisać skrypt, dzięki któremu połączymy się z serwerem pocztowym dla wyszukania i wysłania mail. JavaScript nie ma możliwości wykonania takich rzeczy.

+ +

Jedynym sposób wykonania tego byłoby napisanie kodu wewnętrznego, który pobrałby pocztę. Musimy również posiadać sposób, aby w łatwy sposób nasze skrypty wywoływały kod wewnętrzny Mozilla dostarcza takiej metody wymagającej zastosowania XPCOM(Wieloplaformowego modelu obiektów składowych)

+ +

O XPCOM

+ +

Mozilla jest złożona ze zbioru komponentów, każdy wykonujący pewne zadanie. Na przykład jest komponent dla każdego menu, przycisku i elementu. Komponenty są złożone z kilku definicji nazywanych interfejsami Interfejs w Mozilli jest definicją zbioru funkcjonalności, które mogą być zaimplementowane przez komponenty.

+ +

Komponenty są tym, co implementuje kod, w Mozilli dla wykonania różnych rzeczy. Każdy komponent implementuje funkcjonalność opisaną przez interfejsy. Pojedynczy komponent może zaimplementować wiele interfejsów. A wiele komponentów może zaimplementować ten sam interfejs.

+ +

Weźmy za przykład komponent plik. Interfejs potrzebowałby opisu właściwości i funkcji, jakie mogą być wykonywane na plikach. Plik potrzebuje właściwości dla swojej nazwy, daty modyfikacji i swojego rozmiaru. Funkcje pliku mogą obejmować jego przenoszenie, kopiowanie i usuwanie.

+ +

Interfejs Plik opisuje tylko cechy charakterystyczne pliku, nie implementuje go Implementację interfejsu Plik pozostawiono komponentowi. Komponent będzie miał kod, który może odnaleźć nazwę pliku, datę i rozmiar. Dodatkowo, będzie miał kod, który kopiuje i zmienia jego nazwę.

+ +

Nie musimy się martwić jak komponent go implementuje tak długo jak implementuje interfejs poprawnie. Oczywiście, będziemy mieli różne implementacje, po jednej dla każdej platformy Wersje komponentu plik dla Windows i Macintosh byłyby znacząco różne. Jednak obie implementują ten sam interfejs. A zatem możemy użyć komponentu przez udostępnienie korzystania z funkcji, jakie znamy z interfejsu.

+ +

W Mozilli interfejsy są poprzedzone, ‘nsI’ aby były łatwo rozpoznawalne jako interfejsy. Na przykład nsIAddressBook jest to interfejs dla interaktywności z książka adresową, nsISound jest używany do odgrywania plików a nsILocalFile jest używany do plików.

+ +

Komponenty XPCOM są zazwyczaj zaimplementowane wewnętrznie, co oznacza, że generalnie wykonują rzeczy, których nie może zrobić sam JavaScript. Jednak sposób, w jaki można je wywołać zobaczymy wkrótce. Możemy wywołać dowolną funkcję dostarczoną przez komponent, opisaną przez interfejsy go implementujące. Na przykład jeśli mamy komponent, możemy sprawdzić czy jest zaimplementowany jako nsISOund,a jeśli tak, możemy odegrać przez niego dźwięk.

+ +

Proces wywoływania XPCOM ze skryptów jest nazywany XPConnect, który jest warstwą tłumaczącą obiekty skryptowe na obiekty wewnętrzne.

+ +

Tworzenie obiektów XPCOM

+ +

Mamy trzy kroki dla wywołania komponentu XPCOM

+ +
    +
  1. Pobranie komponentu.
  2. +
  3. Pobranie części komponentu, która implementuje interfejs, jaki chcemy użyć.
  4. +
  5. Wywołanie potrzebnej nam funkcji.
  6. +
+ +

Kiedy wykonasz pierwsze dwa kroki, możesz powtarzać ostatni krok tak często jak to konieczne. Powiedzmy, że chcesz zmienić nazwę pliku. Możemy użyć interfejsu nsILocalFile. Pierwszym krokiem jest pobranie komponentu plik. Drugim jest wykonanie zapytania do komponentu plik i pobranie jego części ,która implementuje interfejs nsILocalFile. W końcu wywołujemy funkcje dostarczone przez ten interfejs. Interfejs ten jest użyty do przedstawienia pojedynczego pliku.

+ +

Widzieliśmy ,że interfejsy są zawsze nazywane zaczynając od 'nsI' Komponenty ,jednak, odwołują się do stosowania składni URI. Mozilla przechowuje listę wszystkich komponentów, które są dostępne w swoim własnym rejestrze. Poszczególni użytkownicy mogą instalować nowe komponenty jeśli ich potrzebują. Działają one jako plug-iny.

+ +

Mozilla dostarcza komponentu plik, to znaczy komponent implementujący nsILocalFile. Do tego komponentu można odnieść się używając URI '@mozilla.org/file/local;1' Komponent: Schemat URI jest używany do określenia komponentu, Do pozostałych komponentów odnosimy się w podobny sposób.

+ +

URI komponentu może być użyte dla pobrania komponentu. Możesz pobrać komponent używając kodu JavaScript podobnego do poniższego:

+ +
var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance();
+
+ +

Komponent plik jest wyszukiwany i przechowywany w zmiennej aFile. Components w tym powyższym przykładzie odnosi się do obiektu ogólnego, który dostarcza pewnego komponentu pokrewnego funkcjom. Tutaj pobraliśmy klasę komponentu z właściwości classes. Własność classes jest to tablica wszystkich dostępnych komponentów. Aby uzyskać inny komponent, zastąp URI wewnątrz nawiasów kwadratowych na URI komponentu jakiego chcesz użyć. Na końcu jest egzemplarz funkcja createInstance

+ +

Powinieneś sprawdzić wartość zwracaną z createInstanceaby upewnić się ,że nie jest to wartość zerowa, która wskazywała by, że komponent nie istnieje.

+ +

Jednakże, w tym miejscu, mamy tylko referencję do samego komponentu plik. Żeby wywołać z niego funkcje potrzebujemy pobrać jeden z jego interfejsów, w tym przypadku nsILocalFile. Druga linia jaką potrzeba dodać jest następująca:

+ +
var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance();
+if (aFile) aFile.QueryInterface(Components.interfaces.nsILocalFile);
+
+ +


+ Funkcja QueryInterface jest funkcją dostarczaną przez wszystkie komponenty, które mogą użyte do pobrania określonego interfejsu tego komponentu. Funkcja ta pobiera jedne parametr, interfejs jaki chcesz uzyskać. Właściwość interfaces obiektu Components zawiera listę wszystkich tych interfejsów, które są dostępne. Tu używamy interfejsu nsiLocalFile i przekazujemy go jako parametr do QueryInterface. Wynik jest taki ,że aFile będzie się odnosił do tej części komponentu, który implementuje interfejs nsiLocalFile.

+ +

Te dwie powyższe linie JavaScript mogą być użyte do pobrania dowolnego interfejsu dowolnego komponentu. Wystarczy zastąpić nazwę komponentu nazwą tego komponentu jakiego chcemy użyć i zmienić nazwę interfejsu. Możesz oczywiście również użyć dowolnej nazwy zmiennej. Na przykład aby pobrać interfejs sound, możesz zrobić coś takiego:

+ +
var sound = Components.classes["@mozilla.org/sound;1"].createInstance();
+if (sound) sound.QueryInterface(Components.interfaces.nsISound);
+
+ +

Interfejsy XPCOM mogą dziedziczyć z innych interfejsów. Interfejsy które dziedziczą z innych mają swoje własne funkcje i funkcje wszystkich tych interfejsów z których dziedziczą. Wszystkie interfejsy dziedziczą z interfejsu najwyższego poziomu nazwanego nsISupport. Ma on jedną funkcję dostosowaną do JavaScript, QueryInterface, którą już widzieliśmy. Ponieważ interfejs nsISupport zaimplementowały wszystkie komponenty, funkcja QueryInterface jest dostępna w każdym komponencie.

+ +

Kilka komponentów może zaimplementować ten sam interfejs. Zazwyczaj, mogą być podklasami oryginału ale nie koniecznie. Dowolny komponent może zaimplementować funkcjonalność nsILocalFile. Dodatkowo komponent może zaimplementować kilka interfejsów. Jest tak z powodu tego, że dwa kroki są wymagane w celu uzyskania interfejsu wywołującego funkcje.

+ +

Jednakże jest skrót jakiego możemy użyć ponieważ często będziemy stosować te linie razem:

+ +
var aLocalFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
+
+ +

Wykonuje to tą samą rzecz jak dwie linie ale w jednej linii kodu. Eliminuje to potrzebę tworzenia egzemplarza a potem zapytania go o interfejs w dwóch oddzielnych krokach.

+ +

Jeśli wywołujesz QueryInterface w obiekcie a żądany interfejs nie jest obsługiwany przez ten obiekt, pojawi się wyjątek. Jeśli nie jesteś pewny czy interfejs jest obsługiwany przez komponent możesz użyć do sprawdzenia tego operatora instanceof:

+ +
var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance();
+if (aFile instanceof Components.interfaces.nsILocalFile){
+  // do something
+}
+
+ +

Operator instanceof zwraca prawdę jeśli aFile implementuje interfejs nsILocalFile. Wywoływanie QueryInterface ma również efekt uboczny, w ten sposób aFile będzie potem ważnym nsiLocalFile.

+ +

Wywoływanie funkcji z interfejsu

+ +

Teraz kiedy mamy obiekt, który odnosi się do komponentu z interfejsem nsiLocalFile, możemy wywołać przez niego wywołać funkcje nsiLocalFile. Poniższa tabela pokazuje kilka z właściwości i metod interfejsu nsiLocalFile.

+ +
+
initWithPath 
+
Ta metoda jest używana do zainicjalizowania ścieżki dostępu i nazwy pliku dla nsiLocalFile. Pierwszy parametr powinien być ścieżką do pliku np: '/usr/local/mozilla'.
+
leafName 
+
Nazwa pliku bez części z katalogiem.
+
fileSize 
+
Nazwa pliku bez części z katalogiem.
+
isDirectory() 
+
Zwraca prawdę jeśli nsiLocalFile przedstawia katalog.
+
remove(recursive) 
+
Usuwa plik. Jeśli parametr recursive to prawda, katalog i wszystkie jego pliki i podkatalogi również będą usunięte.
+
copyTo(directory,newname) 
+
Kopiuje plik do innego katalogu, opcjonalnie zmieniając nazwę pliku. Ten katalog powinien być nsILOcalFile mieszczącym katalog dla kopiowanego pliku.
+
moveTo(directory,newname) 
+
Przenosi plik do innego katalogu, lub zmienia nazwę pliku. Katalog powinien być nsILocalFile mieszczącym katalog dla przenoszonego pliku.
+
+ +

Aby usunąć plik najpierw musimy przypisać plik do nsiLOcalFile. Możemy wywołać metodę initWithPath wskazującą, jaki plik mamy na myśli. Potem przypisujemy ścieżkę pliku do tej właściwości. Następnie wywołujemy funkcję remove. Pobiera ona jeden parametr który wskazuje czy usuwanie jest rekurencyjne. Poniższy kod demonstruje te dwa kroki:

+ +
var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance();
+if (aFile instanceof Components.interfaces.nsILocalFile){
+  aFile.initWithPath("/mozilla/testfile.txt");
+  aFile.remove(false);
+}
+
+ +

Ten kod pobiera plik /mozilla/testfile.txt i usuwa go. Wypróbuj ten przykład przez dodanie tego kodu do programu obsługi zdarzeń. Powinieneś zmienić nazwę istniejącego pliku jaki chciał być usunąć.

+ +

W powyższej tablicy funkcji, zobaczysz dwie funkcje copyTo i moveTo. Te dwie funkcje mogą być użyte, odpowiednio, do skopiowania plików i przeniesienia plików. Zauważ ,że nie pobierają one parametru ciągu dla katalogu do którego kopiujemy lub usuwamy, ale zamiast tego pobierają nsILocalFile. Oznacza to ,że musisz pobrać dwa komponenty plik. Poniższy przykład pokazuje jak skopiowac plik.

+ +
function copyFile(sourcefile,destdir)
+{
+  // get a component for the file to copy
+  var aFile = Components.classes["@mozilla.org/file/local;1"]
+    .createInstance(Components.interfaces.nsILocalFile);
+  if (!aFile) return false;
+
+  // get a component for the directory to copy to
+  var aDir = Components.classes["@mozilla.org/file/local;1"]
+    .createInstance(Components.interfaces.nsILocalFile);
+  if (!aDir) return false;
+
+  // next, assign URLs to the file components
+  aFile.initWithPath(sourcefile);
+  aDir.initWithPath(destdir);
+
+  // finally, copy the file, without renaming it
+  aFile.copyTo(aDir,null);
+}
+
+copyFile("/mozilla/testfile.txt","/etc");
+
+ +

Usługi XPCOM

+ +

Niektóre komponenty XPCOM są specjalnymi komponentami nazwanymi usługami. Nie stworzysz ich egzemplarzy ponieważ istnieje tylko jeden. Usługi dostarczają funkcji ogólnych, które albo pobierają albo ustawiają dane globalne lub wykonują działania na innych obiektach. Zamiast wywołania createInstance, wywołujesz getService dla pobrania referencji do komponentu usługi. Usługi nie różnią się bardzo od innych komponentów.

+ +

Jedną z takich dostarczonych usług z Mozillą jest usługa zakładek. Pozwala ona dodawać zakładki do bieżącej listy zakładek użytkownika. Przykład jest pokazany poniżej:

+ +
var bmarks = Components.classes["@mozilla.org/browser/bookmarks-service;1"].getService();
+bmarks.QueryInterface(Components.interfaces.nsIBookmarksService);
+bmarks.addBookmarkImmediately("http://www.mozilla.org","Mozilla",0,null);
+
+ +

Najpierw jest wyszukiwany komponent"@mozilla.org/browser/bookmarks-service;1" a jego usługa jest umieszczona w zmiennej bmarks. Użyjemy QueryInterface dla pobrania interfejsu nsIBookmarksService. Funkcja addBookmarkImmediately dostarczana przez ten interfejs może być używana dla dodawania zakładek .Pierwsze dwa parametry tej funkcji są URL'ami zakładek i ich tytułami. Trzeci parametr jest typem zakładki, którym zazwyczaj będzie 0,a ostatni parametr jest typem kodowania znaków dokumentu będącego dodawanym do zakładek, który może być zerem.

+ +

Następnie zobaczymy niektóre z interfejsów dostarczanych z Mozillą, jakie możemy zastosować.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/kontrola_zaznaczenia_i_aktywacji_element\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/kontrola_zaznaczenia_i_aktywacji_element\303\263w/index.html" new file mode 100644 index 0000000000..c53e06d0af --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/kontrola_zaznaczenia_i_aktywacji_element\303\263w/index.html" @@ -0,0 +1,166 @@ +--- +title: Kontrola zaznaczenia i aktywacji elementów +slug: Mozilla/Tech/XUL/Kurs_XUL/Kontrola_zaznaczenia_i_aktywacji_elementów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Focus_and_Selection +--- +

+

« PoprzedniNastępny »

+

+ +

Ten artykuł opisuje, jak obsługiwać kontrolę zaznaczenia i aktywacji elementów.

+ +

Elementy aktywne

+ +

Elementy skupione odnoszą się do elementów, które aktualnie otrzymują zdarzenia wejścia (input events). Jeśli istnieją trzy textboxy w jednym oknie, skupionym nazywamy tego, w którym użytkownik jest aktualnie w stanie wpisać text. Tylko jeden element może być w tej samej chwili skupiony dla danego okna.

+ +

Użytkownik może zmienić skupienie poprzez kliknięcie na elemencie przy pomocy myszy lub wciśnięcie klawisza tabulacji TAB. W chwili przyciśnięcia klawisza TAB kolejne elementy okna przejmują skupienie. W celu powrotu do poprzedniego elementu należy użyć kombinacji klawiszy Shifh i Tab.

+ +

Rearranging the tab order

+ +

Możemy także zmienić porządek w którym zmieniać się będzie skupienie elementów danego okna poprzez dodanie atrybutu tabindex dla konkretnego elementu. Ten atrybut powinien być ustawiony jako wartość liczbowa. W chwili przyciśnięcia klawisza TAB, skupienie zostanie przeniesione na element o następnym wyższym indeksie tabulacji. Zazwyczaj jednak nie ma potrzeby ustalania atrybutu tabindex. Jeśli tego nie zrobimy, wciśnięcie TAB ustawi skupienie na kolejnym wyświetlanym elemencie. Poniżej przykład:

+ +

Example 1 : Źródła Podgląd

+ +
<button label="Button 1" tabindex="2"/>
+<button label="Button 2" tabindex="1"/>
+<button label="Button 3" tabindex="3"/>
+
+ +

The focus event

+ +

Zdarzenie skupienia jest wywoływane w odpowiedzi na ustawienie skupienia dla danego elementu. Zdarzenie rozmycia używane jest natomiast kiedy skupienie zostaje usunięte z danego elementu. Jesteśmy w stanie odpowiedzieć a zmianę skupienie poprzez wykorzystanie atrybutów onfocus i onblur dla konkretnego elementu. Działają one zupełnie jak ich HTML-owi krewni. Wykorzystuje się je najczęściej w celu podświetlania elementów lub wyświetlania tekstu pomocniczego w pasku statusu. Poniższy przykład obrazuje obsługę zdarzenia skupienia.

+ +

Example 2 : Źródła Podgląd

+ +
<script>
+
+function displayFocus(){
+  var elem=document.getElementById('sbar');
+  elem.setAttribute('value','Enter your phone number.');
+}
+
+</script>
+
+<textbox id="tbox1"/>
+<textbox id="tbox2" onfocus="displayFocus();"/>
+<description id="sbar" value=""/>
+
+ +

Kiedy pojawia się zdarzenie skupienia, zostaje wywołana funkcja displayFocus. Ta funkcja będzie zmieniać wartość pola tekstowego. Można również rozszerzyć ten przykład o usunięcie tekstu w chwili zajścia zdarzenia rozmycia. Typowo, będziemy ustalać zdarzenia skupienia i rozmycia, w celu uaktualniania części interfejsu, w chwili w której użytkownik wybiera elementy. Przykładowo, jesteśmy w stanie uaktualniać pewne pola, w chwili w której wypełniamy inne. Możemy także posłużyć się wspomnianymi zdarzeniami w celu walidacji pewnych wprowadzanych wartości. Nie wyświetlaj alertu w trakcie zdarzeń skupienia bądź rozmycia, ponieważ będzie to odwracało uwagę użytkownika oraz nie spełnia to podstawowych założeń projektowania interfejsu.

+ +

Możemy także dynamicznie dodać obsługę zdarzenia, przy użyciu funkcji DOM, a mianowicie addEventListener. Możemy jej użyć dla dowolnego elementu i typu zdarzenia. Pobiera ona trzy parametry: typ zdarzenia, funkcję która będzie wykonywana w chwili zajścia zdarzenia oraz wartość boolean określającą czy przejąć zdarzenie czy nie.

+ +

Getting the currently focused element

+ +

Element, który aktualnie posiada skupienie jest przetrzymywany w obiekcie zwanym command dispatcher, który istnieje tylko jeden dla danego okna. Command dispatcher jest odpowiedzialny za utrzymywanie skupienia na elemencie, w chwili w której użytkownik korzysta z interfejsu. Command dispatcher posiada także inne zadania, które będą omawiane w poźniejszych sekcjach. Teraz poznamy natomiast cechy command dispatchera powiązane ze skupieniem.

+ +

Możemy odzyskiwać command dispatchera z okna, przy użyciu własności dokumentu o nazwie commandDispatcher. Mamy również dostęp do elementu skupienia za pomocą własności dispatchera o nazwie focusedElement. Przykład poniżej.

+ +

Example 3 : Źródła Podgląd

+ +
<window id="focus-example" title="Focus Example"
+        onload="init();"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<script>
+function init(){
+  addEventListener("focus",setFocusedElement,true);
+}
+
+function setFocusedElement(){
+  var focused = document.commandDispatcher.focusedElement;
+  document.getElementById("focused").value = focused.tagName;
+}
+</script>
+
+<hbox>
+  <label control="username" value="User Name:"/>
+  <textbox id="username"/>
+</hbox>
+
+<button label="Hello"/>
+<checkbox label="Remember This Decision"/>
+
+<label id="focused" value="-No focus-"/>
+
+</window>
+
+ +

W tym przykładzie, obsługa zdarzenia skupienia dodana jest do okna. Chcemy użyć obsługi zdarzenia przejęcia, więc będzie nam potrzebna metoda addEventListener. Rejestruje ona obsługę zdarzenia przejęcia dla okna, która to wywoła metodę setFocusedElement. Ta metoda pobiera element skupienia z command dispatchera i ustala etykietę zgodną z nazwą jego znacznika. Kiedy element skupienia się zmienia, etykieta pokaże nazwę znacznika elementu. Warto wspomnieć tu o paru rzeczach. Po pierwsze, kiedy skupienie jest na polu tekstowym nazwa znacznika to "html:input", nie textbox jak można by się spodziewać. Dzieje się tak ponieważ textboxy w języku XUL są zaimplementowane przy pomoc widgetów wejścia HTML. Po drugie, kliknięcie na etykiecie textbox'u zmienia skupienie okna i ustala je na ten właśnie element. Wynika to z faktu, że etykieta posiada atrybut control wskazujący na id textboxu. W końcu, inne etykiety wyświetlające nazwę znacznika nie posiadają atrybutu control, więc klikanie na nie, nie spowoduje żadnego efektu.

+ +

Making a label focusable

+ +

Jeśli chcielibyśmy utworzyć szczególne elementy, możemy potrzebować możliwości zmian dotyczących skupienia danego elementu. W tym celu, możemy wykorzystać specjalną własność stylu -moz-user-focus. Ta własność kontroluje możliwość skupienia dla elementu. Przykładowo, można utworzyć etykietę posiadającą możliwość skupienia:

+ +

Example 4 : Źródła Podgląd

+ +
<label id="focused" style="-moz-user-focus: normal;"
+          onkeypress="alert('Label Focused');" value="Focus Me"/>
+
+ +

Własność stylu jest ustalona na wartość normal. Możemy także ustawić ją tak, aby ignorować skupienie lub wyłączyć możliwość skupienia dla danego elementu. Nie powinna być jednak używana dla dezaktywacji elementu. W tym celu używamy wspomnianych już atrybutu lub własności disabled, ponieważ te opcje projektowane były właśnie z myślą o możliwości dezaktywacji elementu. Wracając do przykładu, kiedy nasza etykieta otrzyma nareszcie skupienie, jest w stanie odpowiadać na wciskanie klawiszy. Naturalnie, nie daje ona oznak skupienia, ponieważ tego typu elementy rzadko są przewidziane do tej właśnie czynności.

+ +

Changing the focus

+ +

Istnieje kilka sposobów na zmianę skupienia dla danych elementów. Najprostszą jest wywołanie metody focus dla elementu XUL, na którym mamy ustawić wspomniane skupienie. Natomiast, metoda blur może być wykorzystana dla usunięcia skupienia dla danego elementu. Poniżej przykład:

+ +

Example 5 : Źródła Podgląd

+ +
<textbox id="addr"/>
+
+<button label="Focus" oncommand="document.getElementById('addr').focus()"/>
+
+ +

Możemy również użyć metody advanceFocus oraz rewindFocus na command dispatcherze. Metody te przesuwają skupienie na następny lub poprzedni element w pewnej sekwencji. Właśnie z tych metod korzystamy w chwili w której zostaje wciśnięty TAB lub Shift+Tab.

+ +

Dla textboxów, natomiast, istnieje specjalny atrybut focused, który jest dodany zawsze kiedy element posiada skupienie. Można również sprawdzić czy w danej chwili wspomniany atrybut jest obecny. Możemy to zrobić dzięki skryptom, bądź arkuszom stylów. Atrybut ten będzie posiadał wartość true, jeśli textbox posiada skupienie, w przeciwnym przypadku atrybut będzie zwyczajnie nieobecny.

+ +

Suppose you wanted to move the focus from where it currently is, to the next place the browser thinks it should be. A user typically does this by hitting the "Tab" key. You can do this anywhere you have a XUL browser document by simply:

+ +
      document.commandDispatcher.advanceFocus();
+
+ +

In fact, the commandDispatcher simply implements the nsIDOMXULCommandDispatcher interface. There are other functions that may be of interested to you when dealing with focus.

+ +

Obsługa zmiany tekstu

+ +

Istnieją dwa zdarzenia, które mogą być użyte kiedy użytkownik zmienia wartość znajdującą się w polu tekstowym. Naturalnie, zdarzenia te będą wysyłane tylko do tego textboxa, który aktualnie posiada skupienie. Zdarzenia wejścia (input) są uruchamiane zawsze kiedy tekst jest modyfikowany. Nowe wartości będą różniły się od starych. Możemy także chcieć skorzystać z tych wydarzeń, zastępując nimi zdarzenia związane z klawiszami (key), ponieważ niektóre z klawiszy (np: Shift) nie zmieniają wartości. Także zdarzenie wejścia (input) nie zostanie uruchomione w przypadku, kiedy wciśnięty zostanie klawisz danego znaku oraz kiedy istnieje już maksymalna liczba znaków mieszczących się w polu tekstowym.

+ +

Natomiast zdarzenie zmiany (change event) działa podobnie. I ono jest uruchamiane tylko wtedy kiedy zachodzą jakieś zmiany dla danego pola. Jednak rozpoczyna swoją pracę tylko raz kiedy pole tekstowe traci skupienie. Jedno uruchomienie dla zestawu zmian.

+ +

Zaznaczanie tekstu

+ +

Podczas pracy z textboxem, możemy chcieć odzyskać część zawartości pola, tą którą zaznaczył użytkownik. Możemy również chcieć zmienić obecne zaznaczenie.

+ +

Textboxy XUL, wspierają sposób na odzyskiwanie i modyfikację zaznaczenia. Najprostszym jest zaznaczenie całości tekstu w polu tekstowym. Robimy to dzięki metodzie select wywoływanej dla textboxa.

+ +
tbox.select();
+
+ +

Jednak, możemy sobie zażyczyć wyboru tylko części tekstu. W tym celu korzystamy z funkcji setSelectionRange. Pobiera ona dwa parametry, pierwszy to znak rozpoczynający, a drugi to znak, który następuje po ostatnim znajdującym się w zaznaczeniu. Wartości porządkowe zaczynają się od zera, tak więc pierwszy znak ma wartość 0, drugi 1 itd.

+ +
tbox.setSelectionRange(4,8);
+
+ +

Ten przykład zaznaczy piąty wyświetlany znak, oraz 6, 7 oraz 8. Jeśli było tylko 6 znaków wprowadzonych do pola, tylko 5 oraz 6 znak będą zaznaczone. Nie wystąpi natomiast żaden błąd.

+ +

Jeśli ustalisz tą samą wartość dla obu parametrów, start i koniec zaznaczenia, zmieniają pozycję na tą samą zgodną z powyższą wartością. W rezultacie daje nam to zmiany pozycji kursora wewnątrz textboxu. Przykładowo, poniższa linijka kodu przenosi kursor na początek tekstu.

+ +
tbox.setSelectionRange(0,0);
+
+ +

Jesteśmy w stanie odzyskać obecne zaznaczenie poprzez użycie własności selectionStart i selectionEnd. Te własności są ustawione na pozycje początkową i końcową zaznaczenie. W przypadku jeśli obie ustawione są na tą samą wartość, nie istnieje zaznaczenie, ale za to otrzymujemy informację na temat obecnej pozycji kursora. Kiedy mamy dostęp do pozycji startowej i końcowej, jesteśmy w stanie pobrać substring z całego tekstu.

+ +

Zawartość pola tekstowego możemy odzyskiwać oraz modyfikować poprzez wykorzystanie własności value.

+ +

Jedną z dodatkowych i przydatnych własności pola tekstowego jest textLength, która przetrzymuje całkowitą liczbę znaków znajdujących się w polu.

+ +

Następnie, dowiemy się jak stosować polecenia.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_list/index.html b/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_list/index.html new file mode 100644 index 0000000000..7bea2c7538 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_list/index.html @@ -0,0 +1,140 @@ +--- +title: Kontrolki list +slug: Mozilla/Tech/XUL/Kurs_XUL/Kontrolki_list +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/List_Controls +--- +

+

+

« PoprzedniNastępny »

+
+

XUL posiada kilka typów elementów do tworzenia pól list. +

+

Pola listy

+

Pola listy stosuje się do wyświetlania kilku pozycji w liście. Użytkownik ma możliwość wybierania dowolnych pozycji z takiej listy. +

XUL udostępnia dwa typy elementów do tworzenia list, element listbox do tworzenia list wielowierszowych oraz element menulist do list rozwijanych. Działają w podobny sposób do elementu select znanego z HTML-a, który wykonuje obie funkcje, ale elementy XUL posiadają więcej dodatkowych cech.

Najprostsze pole listy stosuje element listbox dla określenia swojego pola oraz element listitem dla każdej pozycji. Na przykład: pole listy będzie zawierało cztery wiersze, jeden dla każdej pozycji. +

Przykład 1 : Źródła Podgląd +

+
grafika:lists1.png
+
<listbox>
+  <listitem label="Butter Pecan"/>
+  <listitem label="Chocolate Chip"/>
+  <listitem label="Raspberry Ripple"/>
+  <listitem label="Squash Swirl"/>
+</listbox>
+
+

Podobnie jak w przypadku elementu option z HTML-a możliwe jest powiązanie wartości każdej pozycji poprzez użycie atrybutu value. Następnie możemy stosować wartości w skryptach. Pole listy domyślnie przyjmuje odpowiedni rozmiar, ale możemy go kontrolować atrybutem rows. Ustaw go na odpowiednią liczbę wierszy (rows), aby wyświetlić je w polu listy. Pasek przewijania użytkownik zastosuje, jeśli będą do wyświetlenia dodatkowe wiersze.

Poniższy przykład prezentuje te dodatkowe cechy:

Przykład 2 : Źródła Podgląd +

+
grafika:lists2-ex.png
+
<listbox rows="3">
+  <listitem label="Butter Pecan" value="bpecan"/>
+  <listitem label="Chocolate Chip" value="chocchip"/>
+  <listitem label="Raspberry Ripple" value="raspripple"/>
+  <listitem label="Squash Swirl" value="squash"/>
+</listbox>
+
+

Przykład został przystosowany do wyświetlania tylko trzech wierszy na raz. Do każdej pozycji listy zostały też dodane wartości. Pola list posiadają kilka dodatkowych cech, które opiszemy później. +

+

Wielokolumnowe pola listy

+

Pole listy obsługuje również wiele kolumn. Każda komórka może posiadać dowolną zawartość, chociaż najczęściej jest stosowany tekst. Kiedy użytkownik wybiera pozycję na liście, zaznaczany zostaje cały wiersz. Nie ma możliwości wybrania pojedynczej komórki. +

Dwa znaczniki służą do określania kolumn w polu listy. Element listcols przechowuje informację o kolumnach, z których każda określona jest przy pomocy elementu listcol. Dla każdej kolumny należy stosować jeden element listcol. +

Dla każdej komórki w wierszu możemy stosować element listcell. Jeśli chcesz mieć trzy kolumny, będziesz musiał dodać trzy elementy listcell wewnątrz każdego listitem. Do określenia tekstu zawartego w komórce umieść atrybut label w listcell. W prostym przypadku, gdy jest tylko jedna kolumna, atrybut label możemy kierować bezpośrednio do elementu listitem i w ogóle nie korzystać z elementu listcell, jak to widzieliśmy we wcześniejszym przykładzie. +

Następujący przykład jest polem listy z dwoma kolumnami i trzema wierszami: +

Example 3 : Źródła Podgląd +

+
grafika:morelists0.png
+
<listbox>
+  <listcols>
+    <listcol/>
+    <listcol/>
+  </listcols>
+  <listitem>
+    <listcell label="Grzegorz"/>
+    <listcell label="Malarz"/>
+  </listitem>
+  <listitem>
+    <listcell label="Maria"/>
+    <listcell label="Producent świeczek"/>
+  </listitem>
+  <listitem>
+    <listcell label="Robert"/>
+    <listcell label="Spawacz"/>
+  </listitem>
+</listbox>
+
+

Wiersz nagłówka

+

Pola listy pozwalają również na zastosowanie specjalnego wiersza nagłówka. Pod wieloma względami jest zwyczajnym wierszem z tym wyjątkiem, że wyświetla się go w odmienny sposób. Zastosujemy go do utworzenia nagłówka kolumn. Zastosujemy dwa nowe składniki.

Element listhead stosuje się w wierszach nagłówka, tak samo jak element listitem w tradycyjnych wierszach. Jednakże nagłówek wiersza nie jest kiedykolwiek normalnym wierszem, więc stosujemy skrypt, aby pobrać pierwszy wiersz w polu listy, będzie pomijał wiersz nagłówka.

Element listheader stosujemy dla każdej komórki wiersza nagłówka. Stosując atrybut label do ustawienia etykiety dla wszystkich komórek nagłówka. +

Oto wcześniejszy przykład z wierszem nagłówka: +

Przykład 4 : Źródła Podgląd +

+
grafika:Morelists1.png
+
<listbox>
+
+  <listhead>
+    <listheader label="Imię"/>
+    <listheader label="Zawód"/>
+  </listhead>
+
+  <listcols>
+    <listcol/>
+    <listcol flex="1"/>
+  </listcols>
+
+  <listitem>
+    <listcell label="Grzegorz"/>
+    <listcell label="Malarz"/>
+  </listitem>
+  <listitem>
+    <listcell label="Maria"/>
+    <listcell label="Producent świeczek"/>
+  </listitem>
+  <listitem>
+    <listcell label="Robert"/>
+    <listcell label="Spawacz"/>
+  </listitem>
+
+</listbox>
+
+

W tym przykładzie atrybut flex zastosowano do utworzenia elastycznej kolumny. Atrybut ten będzie opisany w dalszych artykułach, lecz w tym artykule pozwala kolumnie zająć całą dostępną wolną przestrzeń w poziomie. Możemy zmieniać rozmiar okna, aby zobaczyć, że obszary kolumny rozciągają się razem z oknem. Jeśli zmniejszymy okno w poziomie, etykieta znajdująca się w komórce zostanie automatycznie skrócona i zakończona wielokropkiem. Możemy także zastosować atrybut crop do komórek lub pozycji ustawiając je na wartość none, aby wyłączyć użycie wielokropka. +

+

Listy rozwijane

+

W HTML-u listy rozwijane tworzymy za pomocą elementu select. Użytkownik widzi pojedyncze pole tekstowe wyboru i może kliknąć strzałkę lub podobny przycisk obok tego pola tekstowego, aby zaznaczyć inną pozycję. Pozostałe możliwości będą dostępne w wyskakującym oknie. XUL posiada element menulist, który ma tą własność. Utworzony jest on z pola tekstowego z przyciskiem obok. Taka nazwa została wybrana, ponieważ okienka wyskakują z menu listy rozwijanej, dającej możliwość wyboru. +

Do zdefiniowania listy rozwijanej potrzebne są trzy elementy. Pierwszym jest element menulist, który tworzy pole tekstowe z przyciskiem przy nim. Drugi element menupopup tworzy okienko pojawiające się po kliknięciu przycisku. Trzecim jest element menuitem tworzący poszczególne pozycje.

Składna poniżej najlepiej przedstawia przykład listy rozwijanej:

Przykład 5 : Źródła Podgląd +

+
grafika:inputs2.png
+
<menulist label="Autobus">
+  <menupopup>
+    <menuitem label="Auto"/>
+    <menuitem label="Taxi"/>
+    <menuitem label="Autobus" selected="true"/>
+    <menuitem label="Pociąg"/>
+  </menupopup>
+</menulist>
+
+

W tym przypadku lista rozwijana składa się z czterech pozycji do wyboru, jeden dla każdego elementu menuitem. Aby wyświetlić pozycje listy, kliknij w przycisk strzałki na liście. Kiedy jedna pozycja jest zaznaczona, to pojawiająca się pozycja jest wybrana z listy. Atrybut selected stosuje się do wskazania wartości, która jest zaznaczona domyślnie. +

+

Lista menu do edycji

+

Domyślnie możemy tylko zaznaczyć pozycję do wybrania z listy. Nie możemy wprowadzić własnego tekstu. Wariant pozwalający na edycję tekstu w polach listy rozwijanej. Na przykład, pole adresu URL w przeglądarce posiada rozwijaną listę do wybierania wcześniej wpisywanych adresów URL, ale pozwala także na wpisywanie własnych. +

Aby utworzyć edytowaną listę rozwijaną, dodaj atrybut editable w sposób pokazany poniżej: +

Przykład 6 : Źródła Podgląd +

+
<menulist editable="true">
+  <menupopup>
+    <menuitem label="www.mozilla.org"/>
+    <menuitem label="www.xulplanet.com"/>
+    <menuitem label="www.dmoz.org"/>
+  </menupopup>
+</menulist>
+
+

Utworzone pole adresu URL w powyższym przykładzie posiada trzy predefiniowane pola wyboru, które użytkownik może zaznaczyć lub może wpisać w jedną pozycję własną zawartość pola. Tekst wpisywany przez użytkownika nie zostanie dodany jako nowe pole wyboru listy. Ponieważ atrybut label nie został zastosowany w przykładzie, jego domyślna wartość pozostanie pusta. +

W następnym artykule dowiemy się jak tworzyć paski postępu. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_numeryczne/index.html b/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_numeryczne/index.html new file mode 100644 index 0000000000..4ddbb95b9c --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_numeryczne/index.html @@ -0,0 +1,92 @@ +--- +title: Kontrolki numeryczne +slug: Mozilla/Tech/XUL/Kurs_XUL/Kontrolki_numeryczne +tags: + - Firefox 3 + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Numeric_Controls +--- +

+

« PoprzedniNastępny »

+
XUL posiada dwa elementy stosowane do wprowadzenia wartości lub zakresów numerycznych oraz jako dwa elementy dla wprowadzenia dat i czasu. Te elementy są dostępne tylko w Firefoksie 3 lub wersjach późniejszych.

+ +

Pola numeryczne

+ +

Pola tekstowe mogą być stosowane do wprowadzenia liczb poprzez ustawienie wartości atrybutu type na wartość number. Ten typ pola tekstowego może być stosowany tylko do wprowadzenia liczb. Inne znaki nie są dozwolone i są ignorowane podczas ich wpisywania. Dodatkowo, przyciski strzałek pojawiają się obok pola tekstowego, co pozwala użytkownikowi przechodzić pomiędzy wartościami.

+ +
Image:Controlguide-textbox-number.gif
+ +

Tak jak z innymi polami tekstowymi, domyślna wartość może być określona atrybutem value. Naturalnie, wartość ta powinna być liczbą. Jednakże wartość minimalną i maksymalną można także określić przy zastosowaniu atrybutów min i max. Jeśli są one ustawione, można kontrolować zakres wartości, na które może być ustawione pole tekstowe. Jeśli użytkownik wprowadzi wartość mniejszą lub większą niż ta wartość, zostanie ona ponownie nastawiona na minimalną lub maksymalną wartości, o ile to konieczne. Dla przykładu, następujące numeryczne pole tekstowe posiada zakres pomiędzy 1 a 20.

+ +
<textbox type="number" min="1" max="20"/>
+
+ +

Jako że domyślna wartość nie jest określona, to domyślną wartością będzie minimalna wartość czyli 1. Atrybut min jest ustawiony na 1, aby wskazać minimalną możliwą wartość, jaką jest 1 i atrybut max jest ustawiony na 20, aby wskazać maksymalną możliwą wartość, jaką jest 20. Jeśli minimalna wartość nie jest określona, to domyślną wartością jest 0. Maksymalną domyślną wartością jest specjalna wartość Infinity, która oznacza brak limitu.

+ +

Inne numeryczne atrybuty pola tekstowego

+ +

Atrybut increment może zostać użyty do określenia, o jaką wartość ma się zmienić wartość pola, kiedy strzałki obok pola zostaną naciśnięte. Domyślną wartością jest 1, lecz określenie innej wartości pozwala dokonać zmiany o większą liczbę. Dla przykładu następujący przykład wielokrotnie wzrasta o 10.

+ +
<textbox type="number" increment="10" max="100"/>
+
+ +

To pole tekstowe przechodzi poprzez wielokrotności liczby 10 od 0 do 100. Do czasu, kiedy to atrybut min nie został określony, to domyślnie wynosi on 0. Note that the user can still enter other values if they are typed in. Atrybut increment oddziałuje tylko na przyciski strzałek. Użytkownik może także zwiększyć lub zmniejszyć wartość stosując ten 'przyrost' poprzez użycie klawiszy kursora 'do góry' i 'w dół', podczas gdy pole tekstowe jest zaznaczone i aktywne.

+ +

Atrybut decimalplaces wskazuje, ile miejsc po przecinku wyświetlić. Domyślną wartością jest 0, które oznacza, że mają zostać wyświetlone tylko liczby całkowite. Jednakże różne wartości mogą być zastosowane do wyświetlenia wartości dziesiętnych.

+ +
<textbox type="number" decimalplaces="2"/>
+
+ +

W tym przykładzie liczba zostanie pokazana do dwóch cyfr po prawej stronie przecinka. Wartości z dodatkowymi liczbami ułamkowymi są zaokrąglane do dwóch miejsc po przecinku.

+ +

Skale

+ +

Element scale może być także stosowany do wyboru wartości z zakresu. Zamiast pola tekstowego stosujemy przesuwaną skalę. Użytkownik może przeciągnąć uchwyt na skali, aby dostosować jej wartość.

+ +
Image:Controlguide-scale.gif
+ +

Wiele takich samych atrybutów może być używanych wraz ze skalą jako pole numeryczne: atrybuty value, min, max i increment mogą być stosowane w podobnym stylu. Aktualnie skala nie wyświetla wartości liczbowych, lecz może być stosowane w skrypcie. A scale will fire a change event whenever the scales's value is modified. Skala uruchomi zdarzenie <code>change</code>, zawsze gdy jej wartość zostanie zmodyfikowana

+ +
<scale value="40" min="1" max="50"/>
+
+ +

Ta skala domyślnie ustawiona jest na wartość 40 i posiada swój zakres pomiędzy 1 a 50.

+ +

Numeryczne pole tekstowe normalnie jest stosowane, kiedy dla użytkownika jest ważna wartość tego pola, na przykład; pole do wprowadzania numerów dni lub gdy podajemy maksymalny rozmiar pliku. Skala będzie używana wówczas, gdy bieżąca wartość nie jest ważna, lecz która przesuwa po skali zmniejszając lub zwiększając swój stan. Dla przykładu, suwak do regulacji dźwięku lub do zmiany poziomów powiększenia.

+ +

Domyślne ułożenie skali jest poziome wraz z mniejszymi wartościami z lewej strony i większymi wartościami po prawej stronie. Jednakże istnieje możliwość zmiany orientacji za pomocą atrybutów orient i dir.

+ +
<scale orient="vertical" dir="reverse"/>
+
+ +

Ta skala będzie wyświetlona pionowo z mniejszymi wartościami u dołu i większymi wartościami u góry.

+ +

Pola do wprowadzania daty i czasu

+ +

Elementy datepicker i timepicker mogą być stosowane do wprowadzania dat i czasu przez użytkownika. Kiedy używamy ich, wyświetlone zostaną ustawione numeryczne pola tekstowe do wprowadzenia każdego ze składników daty i czasu.

+ +
<datepicker value="2004/3/24"/>
+<timepicker value="15:30:00"/>
+
+ +
Grafika:Controlguide-timepicker.gif
+ +

Atrybut value jest stosowany do ustawienia domyślnej wartości; jeśli atrybut ten zostanie pominięty, pole początkowo będzie ustawione na bieżącą datę i czas. Format atrybutu jest dokładnie jak w przykładzie powyżej, dla daty przybiera formę YYYY/MM/DD i dla czasu formę HH:MM:SS (pomimo że sekundy i towarzyszący im dwukropek mogą być pominięte).

+ +

These two elements ensure that the user enters a value date or time. This way, you do not have to check for valid dates, ensure that the day isn't greater than the number of days in the month, handle leap years, and so forth.

+ +

While the timepicker only comes is one style, the datepicker has three different variations. The default style shows three fields for entering the year, month and date. The type attribute may be used to select the other two. Using a value of grid uses a calendar grid, as shown in the image below.

+ +

Grafika:Controlsguide-datepicker-grid.png

+ +

Można również wykorzystać wartość popup, która tworzy kombinację dwóch typów. Ten typ posiada trzy pola do wprowadzenia roku, miesiąca i daty, as well as a dropdown button for displaying a popup calendar grid for selecting a day.

+ +
<datepicker type="popup"/>
+
+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_wej\305\233cia/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_wej\305\233cia/index.html" new file mode 100644 index 0000000000..374df45d77 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/kontrolki_wej\305\233cia/index.html" @@ -0,0 +1,131 @@ +--- +title: Kontrolki wejścia +slug: Mozilla/Tech/XUL/Kurs_XUL/Kontrolki_wejścia +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Input_Controls +--- +

 

+ +

+

« PoprzedniNastępny »

+

+ +

XUL posiada elementy, które są podobne do kontrolek formularza HTML.

+ +

Pola tekstowe

+ +

HTML zawiera element input, który może zostać użyty do wprowadzania tekstu. XUL posiada podobny element, textbox, używany do pól tekstowych. Bez żadnych argumentów textbox tworzy pole, w którym użytkownik może wprowadzać tekst. Pola tekstowe akceptują wiele parametrów takich samych, jakie w języku HTML posiadają kontrolki wejścia. Niektóre z nich:

+ +
+
id
+
Unikatowy identyfikator, przez który możesz się odwoływać do pola tekstowego.
+
class 
+
Klasa stylu pola tekstowego.
+
value 
+
Jeśli chcesz, aby pole tekstowe posiadało domyślny tekst, podaj go jako wartość tego atrybutu.
+
disabled 
+
Ustaw na true, aby wyłączyć możliwość wprowadzania tekstu.
+
type 
+
Możesz ustawić wartość tego atrybutu na specjalną wartość password, tak aby pole tekstowe nie pokazywało wpisywanego tekstu. Często używa się tej wartości w przypadku pól do podawania hasła.
+
maxlength 
+
Maksymalna liczba znaków, jaka może zostać wprowadzona do pola.
+
+ +

Podczas, gdy w HTML-u z elementu inpu mogą być tworzone różne rodzaje pól (nie tylko tekstowych), w XUL-u dla każdego typu są oddzielne elementy. Następujący przykład ilustruje użycie pól tekstowych:

+ +

Element textbox

+ +

Źródła Podgląd

+ +
<label control="some-text" value="Wpisz jakiś tekst"/>
+<textbox id="some-text"/>
+<label control="some-password" value="Wpisz hasło"/>
+<textbox id="some-password" type="password" maxlength="8"/>
+
+ +

W przykładzie textbox tworzone są pola, do których można wprowadzić tylko jeden wiersz tekstu. HTML posiada również element textarea, który jest używany do tworzenia większych obszarów do wprowadzania tekstu. W XUL-u w tym celu możesz z powodzeniem użyć elementu textbox -- osobny element nie jest potrzebny. Jeśli ustawisz atrybut multiline na true, wówczas pole tekstowe wyświetlone zostanie z wieloma wierszami. Dla przykładu:

+ +
Wieloliniowy textbox
+ +

Źródła Podgląd

+ +
<textbox multiline="true"
+           value="To jest tekst, który powinien zostać zawinięty do kilku linii."/>
+
+ +

Tak jak w języku HTML dla textarea, możesz użyć atrybutów rows i cols do ustawienia rozmiaru pola. Powinna być ustawiona liczba wierszy i kolumn znaków potrzebnych do wyświetlenia.

+ +
+

Przykład: Znajdź pliki

+ +

Dodajemy teraz pole szukania do okna dialogowego Znajdź pliki. W tym celu użyjemy elementu textbox.

+ +
<label value="Szukaj dla:" control="find-text"/>
+<textbox id="find-text"/>
+
+<button id="find-button" label="Znajdź"/>
+
+ +
grafika:inputs1.png
+ +

Wstaw powyższy kod przed miejscem, w którym utworzyliśmy przyciski w poprzednim rozdziale. Jeśli otworzysz to okno, powinieneś zobaczyć okno podobne do obrazka znajdującego się obok.

+ +

Etykieta i pole wejściowe pojawiły się w oknie. Pole tekstowe jest w pełni funkcjonalne i możesz w nim pisać i zaznaczać tekst. Ponadto został użyty atrybut control, więc po kliknięciu label aktywne staje się pole tekstowe.

+
+ +

Pola wyboru i przyciski opcji

+ +

Dwa dodatkowe elementy stosowane są do tworzenia pól wyboru i przycisków opcji. Są one po prostu wariantami przycisków. Pola wyboru stosuje się do opcji, które mogą być włączone lub wyłączone. Przyciski opcji mogą być wykorzystane w podobnym celu, gdzie ze zbioru opcji może być zaznaczona tylko jedna pozycja.

+ +

Więcej podobnych atrybutów przycisków możemy stosować razem z polami wyboru i przyciskami opcji. Przykład poniżej pokazuje proste pole wyboru oraz przyciski opcji.

+ +
<checkbox id="case-sensitive" checked="true" label="Rozróżniaj wielkość liter"/>
+<radio id="orange" label="Pomarańczowy"/>
+<radio id="violet" selected="true" label="Fioletowy"/>
+<radio id="yellow" label="Żółty"/>
+
+ +

Pierwsza instrukcja tworzy proste pole wyboru (checkbox). Kiedy użytkownik kliknie w pole wyboru, to pole będzie przełączone pomiędzy polem zaznaczonym i niezaznaczonym. Atrybut checked można zastosować do wskazania stanu domyślnego. Powinieneś ustawić wspomniany atrybut na true lub false. Do dołączenia etykiety obok pola wyboru zastosuj atrybut label. W przypadku przycisków radio powinieneś stosować atrybut selected zamiast atrybutu checked. Ustaw jego wartość na true, tak aby przycisk opcji był domyślnie zaznaczony lub pozostaw go bez zmian dla pozostałych przycisków opcji.

+ +

Element radiogroup

+ +

Aby połączyć kilka przycisków opcji w grupę, będziesz potrzebował użyć elementu radiogroup. Tylko jedna opcja z grupy może być w danej chwili zaznaczona. Zaznaczenie jednej pozycji będzie wyłączało wszystkie pozostałe opcje w tej samej grupie. Poniższy przykład demonstruje poruszane zagadnienie.

+ +

Przykład 3 : Źródła Podgląd

+ +
<radiogroup>
+  <radio id="orange" label="Pomarańczowy"/>
+  <radio id="violet" selected="true" label="Fioletowy"/>
+  <radio id="yellow" label="Żółty"/>
+</radiogroup>
+
+ +

Atrybuty

+ +

Podobnie jak przyciski, pola wyboru i przyciski opcji są zrobione z etykiety i obrazka, gdzie obrazek przełącza się pomiędzy zaznaczonym i niezaznaczonym, w momencie jego naciśnięcia. Pola wyboru posiadają wiele atrybutów takich samych jak przyciski:

+ +
+
label
+
Etykieta pola wyboru lub przycisku opcji.
+
disabled
+
Wyłącza lub włącza składnik, przy ustawieniu odpowiednio na true lub false.
+
accesskey 
+
Klawisz skrótu, który może być stosowany do zaznaczenia elementu. Użyta litera w etykiecie jest zwykle wyświetlona z podkreśleniem.
+
+ +
+

Przykład Znajdź pliki: Źródła Podgląd

+
+ +

W następnym artykule poznamy elementy do tworzenia kontrolek numerycznych.

+ +

+

« PoprzedniNastępny »

+

+ +
 
+ +

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/lokalizacja/index.html b/files/pl/mozilla/tech/xul/kurs_xul/lokalizacja/index.html new file mode 100644 index 0000000000..f94a45e141 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/lokalizacja/index.html @@ -0,0 +1,310 @@ +--- +title: Lokalizacja +slug: Mozilla/Tech/XUL/Kurs_XUL/Lokalizacja +tags: + - Kurs_XUL + - Lokalizacja + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Localization +--- +

+

« PoprzedniNastępny »

+

+ +

XUL i XML dostarczają encje, które są wygodnym sposobem stosowanym w plikach lokalizacji.

+ +

Encje

+ +

Wiele aplikacji jest budowana w sposób określony i umożliwiający łatwe przetłumaczenie interfejsu aplikacji na inny język. Zazwyczaj, tabele wraz ze stringami są tworzone dla każdego języka. Zamiast trudnego tekstu kodu, w każdej części tekstu aplikacji, jest referencja do tabeli typu string. XML dostarcza encje, które możemy zastosować dla wspomnianego celu.

+ +

Powinieneś już dobrze znać encje, jeśli piszesz w HTML. Kody &lt; i &gt; są przykładami encji, które możemy użyć w miejsce znaku mniejszości (<) lub większości (>), zamiast jego formy w postaci tekstowej. Składnia języka XML, pozwala nam na deklaracje własnych encji. Możemy ich użyć, w taki sposób, że encja jest zamieniana z tą wartością, która jest prostym tekstem. Encje możemy używać zawsze, kiedy są tekstem, który zawiera wartość atrybutów. Przykład poniżej demonstruje użycie encji w przycisku.

+ +
<button label="&findLabel;"/>
+
+ +

Tekst, który pojawi się jako etykieta (label), będzie wyświetlała wartość, jaka jest zawarta w encji &findLabel. Plik jest tworzony z powstrzymanej encji zadeklarowanej dla każdego obsługiwanego języka. W języku angielskim zadeklarowanej encji &findLabel będzie przydzielony tekst Znajdź.

+ +

Pliki DTD

+ +

Encje są zadeklarowane w plikach DTD ( + Document Type Declaration + ). Zazwyczaj tego typu pliki są używane do deklaracji składni i semantyki poszczególnych plików XML, lecz także umożliwiają deklarację encji. W Mozilli w systemie chrome, możesz zmaleźć pliki DTD są umieszczone w podkatalogu <tt>locales</tt>. Normalnie będzie tam jeden plik DTD (z rozszerzeniem <tt>.dtd</tt>) na jeden plik XUL.

+ +

Jeśli widzisz katalog chrome, powinieneś się przyjrzeć archiwum w Twoim języku (en-US.jar jest domyślnym językiem dla angielskiego). Mamy pliki lokalizacji w kilku językach (jak w przykładzie) m.in. w angielskim (en-US) i francuskim (fr). Wewnątrz tych archiwów, będą się znajdowały pliki, które trzymają zlokalizowany tekst dla każdego okna. Struktura archiwów jest bardzo podobna do struktury katalogów dla motywu.

+ +

Wewnątrz archiwów, połóż swój plik DTD, w którym zadeklarujesz encje. Zazwyczaj tworzymy jeden plik DTD dla każdego pliku XUL. Posiadają one taką samą nazwę pliku, jedynie rozszerzenie pliku jest inne (.dtd), czyli w naszym przykładowym oknie Znajdź pliki, będzie potrzebny plik o nazwie findfile.dtd.

+ +

Dla plików nieinstalowanych w chrome, możemy tylko umieścić plik DTD do tego samego katalogu co plik XUL.

+ +

Raz możesz utworzyć plik DTD dla twojego XUL, będziesz potrzebował dodać do plik XUL, który sygnalizuje, co chcesz do użycia pliku DTD. W przeciwnym razie błędy będą się zdarzać jako, że nie można znaleźć encji. Zrób to, dodaj linię pochodzącą z najbliższego miejsca pliku XUL:

+ +
<!DOCTYPE window SYSTEM "chrome://findfile/locale/findfile.dtd">
+
+ +

Linia określa, co mamy zasygnalizować w użyciu DTD dla pliku. W tym przypadku, deklarujemy co chcemy użyć w pliku DTD findfile.dtd. Linię tą umieszczamy zawsze za elementem window.

+ +

Deklaracja encji

+ +

Encję możemy zadeklarować przy użyciu prostej składni, przykład znajduje się poniżej:

+ +
<!ENTITY findLabel "Znajdź">
+
+ +

Przykład tworzy encję o nazwie findLabel i wartości Znajdź. Oznacza to, że gdziekolwiek zawarty zostanie tekst &findLabel w pliku XUL, to będzie on zastąpiony tekstem Znajdź. W pliku DTD dla innych wersji językowych, możemy określić wpis w naszym języku, co pozwoli na użycie go zamiast tu zdefiniowanego. Uwaga, jest to deklaracja encji, w której nie ma kończącego znaku slash.

+ +

Na przykład, następny tekst:

+ +
<description value="&findLabel;"/>
+
+ +

Jest tłumaczony jako:

+ +
<description value="Znajdź"/>
+
+ +

Możesz zadeklarować encje dla każdej etykiety (label) lub łańcucha znakowego, które zostaną zadeklarowane w Twoim interfejsie. Powinieneś nie mieć bezpośrednio wyświetlonego tekstu w pliku XUL dla wszystkich.

+ +

Nadając encji użycie tekstu etykiety, powinieneś użyć dla niej wartość, która byłaby inna w innym języku. Przykład kluczy dostępu i skrótów klawiaturowych.

+ +
 XUL
+ <menuitem label="&undo.label;" accesskey="&undo.key;"/>
+ DTD
+ <!ENTITY undo.label "Undo">
+ <!ENTITY undo.key "u">
+
+ +

W przykładzie powyżej użyto dwóch encji, jednej dla etykiety 'Undo' dla pozycji znajdującej się w menu i drugiej dla klucza dostępu.

+ +
+

Zmieniamy przykład "Znajdź pliki"

+ +

Zastanówmy się w jaki sposób możemy wszystko ułożyć w oknie dialogowym Znajdź pliki, tak aby został zastosowany plik DTD dla wszystkich łańcuchów znakowych. Encje w pliku XUL są pokazane poniżej w kolorze czerwonym.

+ +
<?xml version="1.0"?>
+
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<?xml-stylesheet href="findfile.css" type="text/css"?>
+
+<!DOCTYPE window SYSTEM "chrome://findfile/locale/findfile.dtd">
+
+<window
+  id="findfile-window"
+  title="&findWindow.title;"
+  persist="screenX screenY width height"
+  orient="horizontal"
+  onload="initSearchList()"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<script src="findfile.js"/>
+
+<popupset>
+   <menupopup id="editpopup">
+     <menuitem label="&cutCmd.label;" accesskey="&cutCmd.accesskey;"/>
+     <menuitem label="&copyCmd.label;" accesskey="&copyCmd.accesskey;"/>
+     <menuitem label="&pasteCmd.label;" accesskey="&pasteCmd.accesskey;" disabled="true"/>
+   </menupopup>
+</popupset>
+
+<keyset>
+   <key id="cut_cmd" modifiers="accel" key="&cutCmd.commandkey;"/>
+   <key id="copy_cmd" modifiers="accel" key="&copyCmd.commandkey;"/>
+   <key id="paste_cmd" modifiers="accel" key="&pasteCmd.commandkey;"/>
+   <key id="close_cmd" keycode="VK_ESCAPE" oncommand="window.close();"/>
+</keyset>
+
+<vbox flex="1">
+
+ <toolbox>
+
+  <menubar id="findfiles-menubar">
+    <menu id="file-menu" label="&fileMenu.label;"
+        accesskey="&fileMenu.accesskey;">
+      <menupopup id="file-popup">
+        <menuitem label="&openCmd.label;"
+                  accesskey="&openCmd.accesskey;"/>
+        <menuitem label="&saveCmd.label;"
+                  accesskey="&saveCmd.accesskey;"/>
+        <menuseparator/>
+        <menuitem label="&closeCmd.label;"
+                  accesskey="&closeCmd.accesskey;" key="close_cmd" oncommand="window.close();"/>
+      </menupopup>
+    </menu>
+    <menu id="edit-menu" label="&editMenu.label;"
+          accesskey="&editMenu.accesskey;">
+      <menupopup id="edit-popup">
+        <menuitem label="&cutCmd.label;"
+                  accesskey="&cutCmd.accesskey;" key="cut_cmd"/>
+        <menuitem label="&copyCmd.label;"
+                  accesskey="&copyCmd.accesskey;" key="copy_cmd"/>
+        <menuitem label="&pasteCmd.label;"
+                  accesskey="&pasteCmd.accesskey;" key="paste_cmd" disabled="true"/>
+      </menupopup>
+    </menu>
+  </menubar>
+
+  <toolbar id="findfiles-toolbar">
+    <toolbarbutton id="opensearch" label="&openCmdToolbar.label;"/>
+    <toolbarbutton id="savesearch" label="&saveCmdToolbar.label;"/>
+  </toolbar>
+ </toolbox>
+
+ <tabbox>
+  <tabs>
+    <tab label="&searchTab;" selected="true"/>
+    <tab label="&optionsTab;"/>
+  </tabs>
+
+  <tabpanels>
+
+   <tabpanel id="searchpanel" orient="vertical" context="editpopup">
+
+   <description>
+     &findDescription;
+   </description>
+
+   <spacer class="titlespace"/>
+
+   <groupbox orient="horizontal">
+     <caption label="&findCriteria;"/>
+
+     <menulist id="searchtype">
+       <menupopup>
+         <menuitem label="&type.name;"/>
+         <menuitem label="&type.size;"/>
+         <menuitem label="&type.date;"/>
+       </menupopup>
+     </menulist>
+   <spacer class="springspace"/>
+     <menulist id="searchmode">
+       <menupopup>
+         <menuitem label="&mode.is;"/>
+         <menuitem label="&mode.isnot;"/>
+       </menupopup>
+     </menulist>
+   <spacer class="springspace"/>
+
+   <menulist id="find-text" flex="1"
+             editable="true"
+             datasources="file:///mozilla/recents.rdf"
+             ref="http://www.xulplanet.com/rdf/recent/all">
+     <template>
+       <menupopup>
+         <menuitem label="rdf:http://www.xulplanet.com/rdf/recent#Label" uri="rdf:*"/>
+       </menupopup>
+     </template>
+   </menulist>
+
+   </groupbox>
+
+  </tabpanel>
+
+  <tabpanel id="optionspanel" orient="vertical">
+     <checkbox id="casecheck" label="&casesensitive;"/>
+     <checkbox id="wordscheck" label="&matchfilename;"/>
+    </tabpanel>
+
+  </tabpanels>
+ </tabbox>
+
+ <tree id="results" style="display: none;" flex="1">
+   <treecols>
+     <treecol id="name" label="&results.filename;" flex="1"/>
+     <treecol id="location" label="&results.location;" flex="2"/>
+     <treecol id="size" label="&results.size;" flex="1"/>
+   </treecols>
+
+   <treechildren>
+     <treeitem>
+       <treerow>
+         <treecell label="mozilla"/>
+         <treecell label="/usr/local"/>
+         <treecell label="&bytes.before;2520&bytes.after;"/>
+       </treerow>
+     </treeitem>
+   </treechildren>
+ </tree>
+
+ <splitter id="splitbar" resizeafter="grow" style="display: none;"/>
+
+ <spacer class="titlespace"/>
+
+ <hbox>
+   <progressmeter id="progmeter" value="50%" style="display: none;"/>
+   <spacer flex="1"/>
+   <button id="find-button" label="&button.find;"
+           oncommand="doFind()"/>
+   <button id="cancel-button" label="&button.cancel;"
+           oncommand="window.close();"/>
+ </hbox>
+</vbox>
+
+</window>
+
+ +

Każdy łańcuch tekstowy został zastąpiony poprzez odwołanie się do odpowiedniej encji. Plik DTD został umieszczony zaraz na początku pliku XUL. Każdą encję, którą dodamy, powinniśmy zadeklarować w pliku DTD. Okno nie powinno zostać wyświetlone, jeśli encja będzie umieszczona w pliku XUL, a nie została zadeklarowana.

+ +

Uwaga: nazwa encji nie jest ważna. W przykładzie powyżej, słowa w encjach zostały oddzielone kropką. Nie musimy tego robić. Nazwy encji tutaj, są podobne do przyjętej konwencji kodu jakiej używa Mozilla.

+ +

Zwróć uwagę, że tekst o rozmiarze '2520 bajtów' zastąpiliśmy poprzez dwie encje. Dzieje się tak, ponieważ struktura wyrażenia może być inna w następnym miejscu. Na przykład, numer może potrzebować stać się równoważnym ilości bajtów, przed zamiast po. Oczywiście może to być bardziej skomplikowane do zrealizowania, aby wyświetlać rozmiar w KB lub potrzebne bardziej będą już Ci MB.

+ +

Klucze dostępu, jak i skróty klawiaturowe także będziemy tłumaczyli jako encje, ponieważ będą one prawdopodobnie inne oraz w innych miejscach będą się znajdowały.

+ +

Następnie, plik DTD (findfile.dtd):

+ +
<!ENTITY findWindow.title "Find Files">
+<!ENTITY fileMenu.label "File">
+<!ENTITY editMenu.label "Edit">
+<!ENTITY fileMenu.accesskey "f">
+<!ENTITY editMenu.accesskey "e">
+<!ENTITY openCmd.label "Open Search...">
+<!ENTITY saveCmd.label "Save Search...">
+<!ENTITY closeCmd.label "Close">
+<!ENTITY openCmd.accesskey "o">
+<!ENTITY saveCmd.accesskey "s">
+<!ENTITY closeCmd.accesskey "c">
+<!ENTITY cutCmd.label "Cut">
+<!ENTITY copyCmd.label "Copy">
+<!ENTITY pasteCmd.label "Paste">
+<!ENTITY cutCmd.accesskey "t">
+<!ENTITY copyCmd.accesskey "c">
+<!ENTITY pasteCmd.accesskey "p">
+<!ENTITY cutCmd.commandkey "X">
+<!ENTITY copyCmd.commandkey "C">
+<!ENTITY pasteCmd.commandkey "V">
+<!ENTITY openCmdToolbar.label "Open">
+<!ENTITY saveCmdToolbar.label "Save">
+<!ENTITY searchTab "Search">
+<!ENTITY optionsTab "Options">
+<!ENTITY findDescription "Enter your search criteria below and select the Find button to begin the search.">
+<!ENTITY findCriteria "Search Criteria">
+<!ENTITY type.name "Name">
+<!ENTITY type.size "Size">
+<!ENTITY type.date "Date Modified">
+<!ENTITY mode.is "Is">
+<!ENTITY mode.isnot "Is Not">
+<!ENTITY casesensitive "Case Sensitive Search">
+<!ENTITY matchfilename "Match Entire Filename">
+<!ENTITY results.filename "Filename">
+<!ENTITY results.location "Location">
+<!ENTITY results.size "Size">
+<!ENTITY bytes.before "">
+<!ENTITY bytes.after "bytes">
+<!ENTITY button.find "Find">
+<!ENTITY button.cancel "Cancel">
+
+ +

Wszystko czego potrzeba do zmiany wersji językowej, to utworzenie następnego pliku DTD. Używając systemu chrome dodaj plik DTD dla innych lokalizacji, ten sam plik możemy zastosować w każdym języku.

+ +

Przykład Znajdź pliki: Źródła

+
+ +

W następnym artykule, zobaczymy jak wyglądają pliki własności.

+ +

+

« PoprzedniNastępny »

+

+ +
 
+ +

 

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/manipulowanie_listami/index.html b/files/pl/mozilla/tech/xul/kurs_xul/manipulowanie_listami/index.html new file mode 100644 index 0000000000..65fbdf5b5d --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/manipulowanie_listami/index.html @@ -0,0 +1,146 @@ +--- +title: Manipulowanie listami +slug: Mozilla/Tech/XUL/Kurs_XUL/Manipulowanie_listami +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Manipulating_Lists +--- +

+

+

« PoprzedniNastępny »

+
+

Pudełko listy XUL posiada kilka specjalnych metod. +

+

Manipulowanie listami

+

Element listbox dostarcza licznych metod do wyszukiwania i manipulowania swoimi pozycjami. Chociaż pudełka listy mogą być manipulowane przy zastosowaniu standardowych funkcji DOM, zalecane jest, żeby stosować specjalne funkcje pudełka list, gdy to jest możliwe. Funkcje te są trochę prostsze i będą poprawnie wykonywały swoje zadanie.

Funkcja appendItem() jest stosowana do dołączania nowej pozycji na końcu listy. Podobna jest do funkcji DOM appendChild() z wyjątkiem tego, że pobiera etykietę w postaci łańcucha znaków, a Ty nie musisz się martwić o to, gdzie ją dodać w strukturze listy. Poniżej mamy przykład: +

Przykład 1 : Źródła Podgląd +

+
<script>
+function addItem(){
+  document.getElementById('thelist').appendItem("Czwartek", "czw");
+}
+</script>
+
+<listbox id="thelist"/>
+
+<button label="Dodaj" oncommand="addItem();"/>
+
+

Metoda appendItem() pobiera dwa argumenty; argument label, w tym przypadku 'Czwartek' oraz argument value 'czw'. Te dwa argumenty są przesyłane do atrybutu label i atrybutu value dla elementu w listitem. Ta wartość jest używana tylko jako dodatkowa opcjonalna wartość powiązana z pozycją, którą można by było zastosować w skrypcie.

Podobnie jest również z funkcją insertItemAt() i removeItemAt(), które odpowiednio wstawiają nową pozycję i usuwają poszczególne istniejące pozycje. Składnia jest następująca: +

+
list.insertItemAt(3, "Czwartek", "czw");
+list.removeItemAt(3);
+
+

Funkcja insertItemAt() pobiera dodatkowy argument, pozycję do wstawienia nowej pozycji. Nowa pozycja jest włożona do tego indeksu, więc w przykładzie nowa pozycja będzie dodana na pozycji 3, podczas gdy wcześniejsza pozycja z tego miejsca będzie teraz pod numerem 4. Pamiętaj, że pierwszą pozycją jest 0. Funkcja removeItemAt() będzie usuwała pozycję o określonym indeksie. +

Te trzy metody są również dostępne dla kilku innych elementów XUL i działają w ten sam sposób. Faktycznie, te metody są częścią interfejsu nsIDOMXULSelectControlElement, więc dowolny element XUL, który implementuje ten interfejs, posiada te metody. Obejmuje to elementy menulist, radiogroup i tabs. Na przykład, dodając nową pozycję do menulist, możemy zastosować ta samą składnię jak dla listbox. Poprawny rodzaj elementu będzie mógł zostać dołączony w każdej sytuacji. +

+

Zaznaczenie listy

+

Interfejs nsIDOMXULSelectControlElement posiada dwie dodatkowe własności: selectedIndex i selectedItem. Pierwsza zwraca index zaznaczonej pozycji, podczas gdy druga zwraca zaznaczony element. Dla przykładu selectedItem listy menu będzie to pozycja menuitem, która jest zaznaczona. Jeśli nie zostanie zaznaczona żadna pozycja, własność selectedIndex zwróci -1, podczas gdy własność selectedItem zwróci null. +

+

Pobieranie zaznaczonej pozycji

+

Te dwie własności są powszechnie sprawdzane podczas zdarzenia wyboru, jak pokazano w poniższym przykładzie: +

Przykład 2 : Źródła Podgląd +

+
<listbox id="thelist" onselect="alert(this.selectedItem.label);">
+  <listitem label="Niski"/>
+  <listitem label="Średni"/>
+  <listitem label="Wysoki"/>
+</listbox>
+
+

Zdarzenie zaznaczenia jest odpalane dla elementu listbox, kiedy pozycja w liście jest zaznaczona. Obsługa wyboru wyświetla alarm zawierający etykietkę wybranej pozycji z listy. Jeśli wyzwolono zdarzenie wyboru, możemy założyć, że pozycja została wybrana. W innych przypadkach możesz życzyć sobie sprawdzenia, aby upewnić się przed kontynuowaniem, że selectedItem nie jest null. +

Zdarzenie zaznaczenia jest także odpalane, kiedy jest zaznaczony przycisk opcji w radiogroup i kiedy jest zaznaczona karta w elemencie tabs. Jednak menulists nie odpala zdarzenia zaznaczenia, zamiast tego można nasłuchiwać zdarzenia polecenia do obsługi, kiedy pozycja jest zaznaczona. +

Dla elementu tabs często bardziej dogodnymi do użycia funkcjami elementu są funkcje elementu tabbox. Posiada on również funkcję selectedIndex, która będzie zwracała index zaznaczonej karty. Jednakże do pobrania zaznaczonej pozycji użyj zamiast tego własności elementu tabbox selectedTab lub użyj własności selectedPanel do pobrania zaznaczonego panelu, to znaczy, że zwraca zawartość powiązanego z nim elementu tab. +

+

Zmienianie zaznaczenia

+

Wszystkim podobnym własnościom zaznaczenia, które zostały opisane powyżej, mogą również być przydzielone nowe wartości do zmiany zaznaczenia. W następnym przykładzie właściwość selectedIndex elementu radiogroup jest zmieniana w oparciu o wartość wprowadzoną w polu tekstowym. Kod ten nie jest niestety niezawodny; na przykład nie sprawdza się, jeśli wprowadzona wartość jest poza zakresem. Będziemy chcieli mieć pewność, że dodany zostanie właściwy sposób sprawdzenia tego błędu. +

Przykład 3 : Źródła Podgląd +

+
<script>
+function doSelect(){
+  var val = document.getElementById('number').value;
+  val = Number(val);
+  if (val != null)
+    document.getElementById('level').selectedIndex = val - 1;
+}
+</script>
+
+<hbox align="center">
+  <label value="Wprowadź liczbę od 1 do 3:"/>
+  <textbox id="number"/>
+  <button label="Zaznacz" oncommand="doSelect();"/>
+</hbox>
+
+<radiogroup id="level">
+  <radio label="Wyśmienite"/>
+  <radio label="Dobre"/>
+  <radio label="Słabe"/>
+</radiogroup>
+
+

Pudełko listy również obsługuje wielokrotne zaznaczenie oraz funkcje interfejsu nsIDOMXULMultiSelectControlElement. Interfejs ten posiada kilka sprecyzowanych funkcji obsługujących wielokrotne zaznaczenie. Na przykład własność selectedItems przechowuje listę pozycji, które są zaznaczone, podczas gdy własność selectedCount przechowuje liczbę zaznaczonych pozycji. Zazwyczaj te własności będą używane do iteracji przez tą listę i wykonywania jakiś operacji dla każdej pozycji. Bądźmy ostrożni, kiedy iterujemy przez zaznaczone pozycje; jeśli modyfikujemy pozycje w liście podczas trwania iteracji, lista będzie zmieniana i własność zaznaczenia może zwrócić różne wartości. Jest to jeden z powodów dla których jest to użyteczny sposób manipulowania listą poprzez pozycje raczej niż poprzez index. +

+

Usuwanie zaznaczonych pozycji

+

Poniższy przykład pokazuje metodę właściwego usuwania zaznaczonej pozycji: +

Przykład 4 : Źródła Podgląd +

+
<script>
+function deleteSelection(){
+  var list = document.getElementById('thelist');
+  var count = list.selectedCount;
+  while (count--){
+    var item = list.selectedItems[0];
+    list.removeItemAt(list.getIndexOfItem(item));
+  }
+}
+</script>
+
+<button label="Delete" oncommand="deleteSelection();"/>
+
+<listbox id="thelist" seltype="multiple">
+  <listitem label="Cheddar"/>
+  <listitem label="Cheshire"/>
+  <listitem label="Edam"/>
+  <listitem label="Gouda"/>
+  <listitem label="Havartie"/>
+</listbox>
+
+

Wewnątrz pętli while możemy: +

+ +

Interfejs nsIDOMXULMultiSelectControlElement posiada również metody do modyfikacji zaznaczonych pozycji. Dla przykładu funkcja addItemToSelection() dodaje nową pozycję do zbioru zaznaczonych pozycji, bez czyszczenia istniejącego zaznaczenia. Funkcja removeItemFromSelection() usuwa pojedynczą pozycję z zaznaczonych pozycji. +

+

Przewijanie listy

+

Jeśli jest więcej wierszy w elemencie listbox, niż może być wyświetlonych, pojawi się pasek przewijania pozwalający użytkownikowi przewinąć listę. Pozycja przewijania może być modyfikowana przy użyciu paru metod pola listy. +

Metoda scrollToIndex() przewija do danego wiersza. To pole listy będzie przewijane tak, że wiersz, do którego chcemy przewinąć listę, będzie widocznym górnym wierszem, chyba że wiersz jest wierszem tuż przed końcem listy pozycji. Metoda ensureIndexIsVisible() jest podobna w tym, że również przewija pokazując wiersz, ale metoda ta nie przewija, jeśli ta pozycja jest aktualnie widoczna. Zatem pierwsza funkcja jest używana do przewijania do określonego wiersza podczas, gdy druga jest używana tylko do upewnienia się, że wiersz jest widoczny. Jest również metoda ensureIndexIsVisible(), która pobiera pozycje jako argument zamiast jako index. Rezultat porównania obu funkcji przy różnych pozycjach przewinięcia jest w tym przykładzie: +

Przykład 5 : Źródła Podgląd +

+
<button label="scrollToIndex"
+           oncommand="document.getElementById('thelist').scrollToIndex(4);"/>
+<button label="ensureIndexIsVisible"
+           oncommand="document.getElementById('thelist').ensureIndexIsVisible(4);"/>
+
+<listbox id="thelist" rows="5">
+  <listitem label="1"/>
+  <listitem label="2"/>
+  <listitem label="3"/>
+  <listitem label="4"/>
+  <listitem label="5"/>
+  <listitem label="6"/>
+  <listitem label="7"/>
+  <listitem label="8"/>
+  <listitem label="9"/>
+  <listitem label="10"/>
+  <listitem label="11"/>
+  <listitem label="12"/>
+</listbox>
+
+

W następnym artykule przeczytamy o obiektach pudełka XUL. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/model_pude\305\202kowy/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/model_pude\305\202kowy/index.html" new file mode 100644 index 0000000000..85ea419d2b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/model_pude\305\202kowy/index.html" @@ -0,0 +1,126 @@ +--- +title: Model pudełkowy +slug: Mozilla/Tech/XUL/Kurs_XUL/Model_pudełkowy +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/The_Box_Model +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule zobaczymy, jak XUL radzi sobie z zarządzaniem układem strony. +

+

Wprowadzenie

+

Główna forma do zarządzania układem strony w XUL jest nazywana 'Modelem pudełkowym'. Model ten pozwala podzielić okno na kilka pudełek. Elementy wewnątrz pudełka będą zorientowane (orient) względem siebie poziomo lub pionowo. Łącząc szereg pudełek, pustych przestrzeni i elementów z atrybutami flex, pozwala użytkownikowi zarządzać układem okna. +

Mimo że pudełko jest zasadniczą częścią elementu układu zarządzania w XUL, to kieruje się kilkoma bardzo prostymi regułami. Pudełko możemy ułożyć poza swoimi potomkami w jednej lub dwóch orientacjach, albo poziomej albo pionowej. Linie poziome pudełka ustawiają elementy horyzontalnie oraz pionowe pudełka ustawiają swoje elementy pionowo. Możemy myśleć o pudełku jako o jednym wierszu oraz jednej kolumnie z tabeli w HTML. Rozmaite atrybuty umieszczone jako elementy potomne w dodatku własności stylów CSS kontrolują pozycję i rozmiar elementu potomnego. +

Prosta składnia pudełka pokazana jest poniżej: +

+
<hbox>
+  <!-- elementy poziome -->
+</hbox>
+
+<vbox>
+  <!-- Elementy pionowe -->
+</vbox>
+
+

Element hbox jest stosowany do tworzenia pudełka zorientowanego poziomo. Każdy element umieszczony w hbox będzie umieszczony poziomo w wierszu. Element vbox jest stosowany do tworzenia pudełka zorientowanego pionowo. Dodane elementy będą umieszczone pod każdym innym w kolumnie. +

Jest także ogólny element box, który domyślnie posiada orientację poziomą, co oznacza, że jest on odpowiednikiem hbox. Jednak możemy zastosować atrybut orient, aby zmienić orientację pudełka. Możemy ustawić ten atrybut na wartość horizontal, aby utworzyć poziome pudełko, a jeśli ustawimy wartość na vertical, to utworzymy pionowe pudełko.

Tak więc poniższe dwie linie oznaczają to samo: +

+
<vbox></vbox>
+
+<box orient="vertical"></box>
+
+

Przykład: Umieszczenie przycisków w pionie

+

Przykład 1 : Źródła Podgląd +

+
Grafika:boxes-ex1.png
+
<vbox>
+  <button id="yes" label="Tak"/>
+  <button id="no" label="Nie"/>
+  <button id="maybe" label="Może"/>
+</vbox>
+
+

Trzy przyciski są zorientowane pionowo, tak jak zasygnalizowaliśmy w pudełku. Chcąc zmienić przyciski tak, aby były zorientowane poziomo, będzie potrzebna zmiana elementu vbox na element hbox. +

Możemy dodać do pudełka tyle elementów, ile tylko będziemy chcieli, włączając w to inne pudełka. W przypadku pudełka poziomego każdy dodatkowy element będzie umieszczony po prawej stronie wcześniejszego elementu. Elementy nie będą zawijane do nowej linii, więc dodanie większej ilości elementów rozszerzy okno. Podobnie każdy element dodany do pionowego pudełka będzie umieszczony pod wcześniejszym elementem. Przykład poniżej pokazuje proste okno logowania: +

+

Przykład: Okienko logowania

+

Przykład 2 : Źródła Podgląd +

+
Grafika:boxes-ex2.png
+
<vbox>
+  <hbox>
+    <label control="login" value="Login:"/>
+    <textbox id="login"/>
+  </hbox>
+  <hbox>
+    <label control="pass" value="Hasło:"/>
+    <textbox id="pass"/>
+  </hbox>
+  <button id="ok" label="OK"/>
+  <button id="cancel" label="Anuluj"/>
+</vbox>
+
+


+Tutaj cztery elementy są zorientowane pionowo - dwa wewnętrzne znaczniki hbox i dwa elementy button - OK i Anuluj. Zwróć uwagę, że tylko elementy potomne są skierowane do pudełka zorientowanego pionowo. Etykiety i pola tekstowe są wewnątrz elementów hbox, więc są zorientowane odpowiednio do tych pudełek, które są poziome. Możemy zobaczyć na obrazku, że każda etykieta i pole tekstowe jest zorientowane poziomo. +

Jeśli przyjrzysz się uważnie naszemu obrazkowi, zobaczysz, że dwa pola tekstowe nie są wyrównane poziomo, gdzie każdy jest w innym szeregu. Prawdopodobnie byłoby lepiej, jeśli byłyby. W zasadzie potrzebujemy dodać dodatkowe pudełka. +

+

Przykład: Bardziej zaawansowane okienko logowania

+

Przykład 3 : Źródła Podgląd +

+
Grafika:boxes-ex3.png
+
<vbox>
+  <hbox>
+    <vbox>
+      <label control="login" value="Login:"/>
+      <label control="pass" value="Hasło:"/>
+    </vbox>
+    <vbox>
+      <textbox id="login"/>
+      <textbox id="pass"/>
+    </vbox>
+  </hbox>
+  <button id="ok" label="OK"/>
+  <button id="cancel" label="Anuluj"/>
+</vbox>
+
+

Zwróć uwagę, jak teraz jest wyrównane każde z pól tekstowych. Aby tak zrobić, potrzebujemy dodać pudełko do wewnątrz głównego pudełka. Dwie etykiety i dwa pola tekstowe są umieszczone wewnątrz poziomego pudełka. Następnie, etykiety są umieszczone wewnątrz kolejnego pudełka, tym razem pionowo, tak jak są pola tekstowe. To jest wewnętrzne pudełko, co tworzy elementy zorientowane pionowo. Poziome pudełko jest potrzebne, jeśli chcemy etykiety vbox i kontrolki vbox umieścić poziomo z każdą inną. Jeśli to pudełko zostałoby usunięte, oba pola tekstowe wyświetlane byłyby poniżej obiema etykietami. +

Problemem jest teraz etykieta 'Hasło', która jest za wysoko. Powinniśmy tutaj, tak naprawdę zastosować element grid, aby naprawić ten problem, o którym przeczytasz w następnych rozdziałach. +

+
+
Nasz przykład: Okienko dialogowe <tt>Znajdź pliki</tt>
+

Dodajmy pudełko do okna dialogowego <tt>Znajdź pliki</tt>. Pudełko pionowe będzie dodane wokół wszystkich elementów, a pudełko poziome będzie dodane wokół pola tekstowego i przycisków. Rezultat widoczny jest na poniższym obrazku. Przyciski wyświetlone zostaną poniżej pola tekstowego.

+
<vbox flex="1">
+
+  <description>
+    Wpisz poniżej swoje kryteria szukania i naciśnij przycisk Znajdź, aby rozpocząć
+    szukanie.
+  </description>
+
+  <hbox>
+    <label value="Szukaj dla:" control="find-text"/>
+    <textbox id="find-text"/>
+  </hbox>
+
+  <hbox>
+    <spacer flex="1"/>
+
+    <button id="find-button" label="Znajdź"/>
+    <button id="cancel-button" label="Anuluj"/>
+  </hbox>
+</vbox>
+
+
Grafika:boxes1.png
+

Pionowe pudełko sprawi, że główny tekst, pudełko z polem tekstowym i pudełko z przyciskami są zorientowane pionowo. Wewnętrzne pudełka są zorientowane poziomo. Jak widać na obrazku obok, etykiety i kontrolki input są umieszczone jedna przy drugiej. Przestrzeń i dwa przyciski są umieszczone poziomo w swoim pudełku. Zwróć uwagę, jak spacer spowoduje, aby przyciski zostały wyświetlone po prawej stronie, ponieważ są elastyczne. +

Przykład: Źródła Podgląd +

+
+

W następnym artykule zobaczymy jak ustawiać stałe wymiary dla elementów oraz jak te wymiary zablokować. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/modyfikacja_domy\305\233lnego_motywu/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/modyfikacja_domy\305\233lnego_motywu/index.html" new file mode 100644 index 0000000000..ecba9cabdf --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/modyfikacja_domy\305\233lnego_motywu/index.html" @@ -0,0 +1,69 @@ +--- +title: Modyfikacja domyślnego motywu +slug: Mozilla/Tech/XUL/Kurs_XUL/Modyfikacja_domyślnego_motywu +tags: + - Kurs_XUL + - Projekt_MDC + - Przewodniki + - Strony_do_aktualizacji + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Modifying_the_Default_Skin +--- +

+

« PoprzedniNastępny »

+

+ +

Artykuł ten opisuje w jaki sposób zmodyfikować motyw okna.

+ +

Motyw podstawowy

+ +

Motyw jest ustawiona jako styl kaskadowy, obrazek i zachowanie, który jest stosowany w pliku XUL. Stosujemy różne motywy, jeśli chcemy zmienić widok okna bez zmiany funkcjonalności Mozilla dostarcza dwa podstawowe motywy, Klasyczny i Nowoczesny, inne motywy należy pobrać. XUL dla obu motywów jest taki sam, tak jak jednakże, używamy arkuszy stylów i obrazków to dla każdego z osobna.

+ +

Dla prostej personalizacji okna wyglądu Mozilla, wykonaj prostą zmianę arkusza stylów łącząc je. Większa zmiana potrafi wykonać w całości nowy motyw. Okno właściwości Mozilli posiada panel do zmiany motywu.

+ +

Motyw opisujemy używając CSS, pozwalając na definiowanie kolorów, obramowania i obrazków użytych do stworzenia elementów. Plik classic.jar i modern.jar stanowią i definiują motywy. Katalog globalny zawierający wewnątrz archiwa głównego stylu definiującego jak wyświetlić urozmaicony element XUL. Zmieniając te pliki, możesz zmienić wygląd aplikacji XUL.

+ +

Dostosujmy userChrome.css

+ +

Jeśli położysz plik nazywający się 'userChrome.css' w katalogu o nazwie 'chrome' będący wewnątrz katalogu profilu użytkownika, możesz nadużywać ustawień bez zmieniany własnych archiwum. Katalog powinien zostać utworzony w momencie tworzenia przez Ciebie profilu i umieszczeniu w nim przykładu. Plik 'userContent.css' został dostosowany do stron internetowych, podczas gdy 'userChrome.css' zostanie dostosowany do pliku chrome.

+ +

Na przykład, dodawanie pozwolenia na końcu pliku, możesz zmienić wszystkie elementy menubar posiadające czerwone tło.

+ +
menubar {
+  background-color: red;
+}
+
+ +

Jeśli otworzysz jakieś okno Mozilli po modyfikacji, to menu bars będzie czerwone. Ponieważ te zmiany zrobione zostały dla użytkownika arkusza stylów, to afekty dla wszystkich okien. Znaczy to tyle, że pasek narzędzi przeglądarki, pasek narzędzi zakładek i nawet pasek menu Znajdź pliki będzie czerwony.

+ +

Mając zmienione afekty tylko jednego okna, zmień arkusz stylów łacząc z plikiem XUL. Na przykład, dodanie czerwonego obramowania box wokół komend oknie adresu, dodając następny plik addressbook.css do archiwów modern.jar lub classic.jar.

+ +
menuitem {
+  border: 1px solid red;
+}
+
+ +

Jeśli spojrzymy w jeden motyw w archiwum, zwróć uwagę, że każda posiada numer arkusza stylu i numer obrazka. Arkusze stylów odnoszą się do obrazków. Powinieneś unikać położenia odnośników do obrazków bezpośrednio w plikach XUL, jeśli chcesz aby twoja zawartość miała zdolności motywu. Jest tak, ponieważ szczególne projekty motywów mogą nie używać obrazków i będą potrzebowały więcej na kompleksowy projekt. Kierując do obrazków z pliku CSS, są one w prosty sposób usuwane. Także usuwane są uzależnienia ze specyficznych nazw plików obrazka.

+ +

If you look in one of the skin archives, you will notice that each contain a number of style sheets and a number of images. The style sheets refer to the images. You should avoid putting references to images directly in XUL files if you want your content to be skinnable. This is because a particular skin's design might not use images and it may need some more complex design. By referring to the images with CSS, they are easy to remove. It also removes the reliance on specific image filenames.

+ +

Możesz przydzielać obrazki do przycisków, pól wyboru i innych elementów używając własności list-style-image jak następujące:

+ +
checkbox {
+  list-style-image: url("chrome://findfile/skin/images/check-off.jpg");
+}
+
+checkbox[checked="true"] {
+  list-style-image: url("chrome://findfile/skin/images/check-on.jpg");
+}
+
+ +

Kod ten zmienia obrazki łącząc je z polami wyboru. Pierwszy styl ustawia obrazki dla normalnych pól wyboru, a drugi arkusz stylów ustawia obrazek na zaznaczone pole wyboru. Modyfikator 'checked=true' tworzy styl mający zastosowanie tylko do elementów, które mają ustawiony swój atrybut checked na true.

+ +

Zobacz także : Tworzenie skórek dla Firefoksa i CSS getting started

+ +

W następnym artykule, zobaczymy jak stworzyć nowy motywy.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/modyfikowanie_interfejsu_xul/index.html b/files/pl/mozilla/tech/xul/kurs_xul/modyfikowanie_interfejsu_xul/index.html new file mode 100644 index 0000000000..de4b72ee27 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/modyfikowanie_interfejsu_xul/index.html @@ -0,0 +1,170 @@ +--- +title: Modyfikowanie interfejsu XUL +slug: Mozilla/Tech/XUL/Kurs_XUL/Modyfikowanie_interfejsu_XUL +tags: + - DOM + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Modifying_a_XUL_Interface +--- +

+

« PoprzedniNastępny »

+

+ +

DOM dostarcza wielu funkcji umożliwiających modyfikowanie dokumentu.

+ +

Tworzenie nowych elementów

+ +

Nowy element można utworzyć funkcją dokumentu createElement(). Pobiera ona jeden argument - nazwę nowego znacznika. Następnie przy pomocy funkcji setAttribute() można ustawić atrybuty elementu, a funkcją appendChild() dołączyć go do dokumentu XUL. Poniższy kod doda przycisk do okna XUL:

+ +

Przykład 1 : Źródła Podgląd

+ +
<script>
+function addButton(){
+  var aBox = document.getElementById("aBox");
+  var button = document.createElement("button");
+  button.setAttribute("label","Nowy przycisk");
+  aBox.appendChild(button);
+}
+</script>
+
+<box id="aBox" width="200">
+  <button label="Dodaj" oncommand="addButton();"/>
+</box>
+
+ + + +

Funkcja createElement() tworzy domyślny typ elementu dla dokumentu. W przypadku dokumentów XUL znaczy to, że będą tworzone elementy języka XUL. Dla dokumentów HTML - tworzone będą elementy HTML, więc będą miały cechy i funkcje elementów HTML. Funkcja createElementNS() może zostać zastosowana by tworzyć elementy w innej przestrzeni nazw.

+ +

Funkcja appendChild() jest stosowana by dodać element potomny kolejnego elementu. Trzema podobnymi funkcjami są funkcje insertBefore(), replaceChild() i removeChild. Składnia tych funkcji jest następująca:

+ +
parent.appendChild(child);
+parent.insertBefore(child, referenceChild);
+parent.replaceChild(newChild, oldChild);
+parent.removeChild(child);
+
+ +

Poniższe funkcje pozwalają na operacje na węzłach potomnych: * appendChild(child) - dodaje element ''child'' jako węzeł potomny do innego elementu. * insertBefore(child, referenceChild) - wstawia element ''child'' przed elementem ''referenceChild''. * replaceChild(newChild, oldChild) - na miejsce elementu ''oldChild'' wstawia element ''newChild''. * removeChild(child) - usuwa element ''child''.

+ +

Powinno to być dość proste bo z nazw funkcji wiadomo co one robią.

+ + + +

* Funkcja <code>insertBefore()</code> wstawia nowy element potomny przed element ''referenceChild''; w celu dodania elementu pod koniec zestawu należy użyć funkcji <code>appendChild()</code>. * Funkcja <code>replaceChild()</code> usuwa istniejący element ''oldChild'', a następnie na jego miejsce wstawia nowy ''newChild''. * Funkcja <code>removeChild()</code> usuwa element. Dla powyższych funkcji element, do którego się odwołujemy powinien istnieć, w przeciwnym wypadku powstanie błąd. Note that for all these functions, the reference child or child to remove must already exist or an error occurs.

+ +

Częstym przypadkiem jest potrzeba usunięcia elementu, a następnie dodania go w innym miejscu. W tym przypadku wystarczy dodać element bez jego usuwania. Ponieważ węzeł może być tylko w jednym miejscu, użycie funkcji wstawiającej zawsze najpierw usunie węzeł z poprzedniej pozycji, dlatego jest to wygodny sposób na przemieszczanie węzłów w dokumencie.

+ +

Kopiowanie węzłów

+ +

Aby kopiować węzły, możemy wywołać funkcję cloneNode(). Funkcja ta zrobi kopię istniejącego węzła, tak więc można go dodać gdziekolwiek indziej. Oryginalny węzeł zostanie w miejscu gdzie się znajduje. Pobiera jeden argument logiczny, który sygnalizuje czy skopiowane mają być wszystkie dzieci węzła/węzłów czy nie. Jeśli argument jest fałszywy to tylko węzeł jest kopiowany, tak że kopia nie zawiera jakichkolwiek dzieci. Jeśli argument jest prawdziwy, to wszystkie dzieci zostaną skopiowane. Dzieje się to rekurencyjnie, więc dla struktury dużego drzewa upewnij się wcześniej, czy na pewno chcemy zaznaczyć atrybut true dla funkcji cloneNode(). Przykład znajduje się poniżej:

+ +

Przykład 2 : Źródła Podgląd

+ +
<hbox height="400">
+  <button label="Kopiuj"
+          oncommand="this.parentNode.appendChild(this.nextSibling.cloneNode(true));"/>
+
+  <vbox>
+    <button label="Pierwszy"/>
+    <button label="Drugi"/>
+  </vbox>
+</hbox>
+
+ +

Po naciśnięciu przycisku <tt>Kopiuj</tt>, pobierany zostaje następny węzeł rodzeństwa (w naszym przykładzie jest to element ''vbox''). Funkcją cloneNode tworzona jest kopia tego elementu, która następnie dodana zostaje do rodzica.

+ +

Kiedy przycisk Kopiuj jest naciśnięty...

+ + + +

Zauważyć można, że niektóre elementy, takie jak listbox i menulist posiadają specjalne funkcje modyfikujące, których powinno się użyć w miarę możliwości. Są one opisane w następnym artykule.

+ +

Manipulowanie podstawowymi elementami

+ +

Podstawowe elementy XUL, takie jak przyciski, pola wyboru czy przyciski opcji mogą być modyfikowane przy pomocy skryptowych własności. Ponieważ elementy posiadają różne własności, należy sprawdzić w dokumentacji elementów każdy z nich. Wspólne własności to label, value, checked i disabled. Jeśli zachodzi taka potrzeba, ustawiają one lub czyszczą odpowiadające im atrybuty.

+ +

Główne elementy XUL takie jak przyciski, pola wyboru i przyciski opcji mogą być modyfikowane przy pomocy skryptowych własności. be manipulated using a number of script properties. The properties available are listed in the dokumentacji elementów as those available are different for each element. Common properties that you will manipulate include the <code>label</code>, <code>value</code>, <code>checked</code> and <code>disabled</code> properties. They set or clear the corresponding attribute as necessary.

+ +

Przykłady własności etykiety i wartości

+ +

Poniżej znajduje się prosty przykład zmieniający etykietę przycisku:

+ +

Przykład 3 : Źródła Podgląd

+ +
<button label="Hello" oncommand="this.label = 'Goodbye';"/>
+
+ +

Po naciśnięciu przycisku, element label zostaje zmieniony. Ten sam efekt można uzyskać dla różnych elementów posiadających etykietę. Polu tekstowemu można zmienić value:

+ +

Przykład 4 : Źródła Podgląd

+ +
<button label="Add" oncommand="this.nextSibling.value += '1';"/>
+<textbox/>
+
+ +

Ten przykład dodaje '1' do pola tekstowego za każdym razem, kiedy przycisk zostanie naciśnięty. Właściwość nextSibling przemieszcza się z aktualnego elementu (przycisku) na następny (pole tekstowe). Operator += dodaje znaki do zawartości pola tekstowego, w naszym wypadku jest to zawsze '1'. Oczywiście użytkownik może również edytować pole tekstowe. Istnieje również możliwość pobrania etykiety lub wartości elementu, jak w następującym przykładzie:

+ +

Przykład 5 : Źródła Podgląd

+ +
<button label="Hello" oncommand="alert(this.label);"/>
+
+ +

Przerzutnik przycisku wyboru

+ +

Element typu checkbox ma własność checked, przy pomocy, której można zaznaczać lub odznaczać dany element. W poniższym przykładzie stan pola wyboru jest zmieniany po każdym użyciu przycisku. Zauważ, że własność label i value, są typu string (łańcuch znaków), podczas gdy własność checked to typ booleanowski, który może być ustawiony jako true lub false:

+ +

Przykład 6 : Źródła Podgląd

+ +
<button label="Zmień" oncommand="this.nextSibling.checked = !this.nextSibling.checked;"/>
+<checkbox label="Check for messages"/>
+
+ +

'''Radio buttons may be selected as well using properties, however since only one in a group may be selected at a time, the others must all be unchecked when one is checked. You don't have to do this manually of course. The radiogroup's <code>selectedIndex</code> property may be used to do this. The <code>selectedIndex</code> property may be used to retrieve the ''index'' of the selected radio button in the group and well as change it.'''

+ +

Przyciski opcji mogą zostać zaznaczone przy pomocy własności, ale ponieważ nie może być zaznaczony więcej niż jeden z grupy, pozostałe w tym czasie muszą być odznaczone. Oczywiście nie trzeba tego robić ręcznie, można w tym celu użyć własności selectedIndex elementu przycisku opcji. Ta sama własność może również pobrać numer aktualnie zaznaczonego elementu przycisku opcji.

+ +

Changing a element disabled or enabled

+ +

Często elementy, które nie powinny być dostępne dla użytkownika w danej chwili, są blokowane. Na przykład w oknie dialogowym użytkownik może mieć do wyboru kilka możliwości, a jedna z nich wprowadza dodatkowe opcje. Poniżej przykład:

+ +

Przykład 7 : Źródła Podgląd

+ +
<script>
+function updateState(){
+  var name = document.getElementById("name");
+  var sindex = document.getElementById("group").selectedIndex;
+  name.disabled = sindex == 0;
+}
+</script>
+
+<radiogroup id="group" onselect="updateState();">
+  <radio label="Random name" selected="true"/>
+  <hbox>
+    <radio label="Specify a name:"/>
+    <textbox id="name" value="Jim" disabled="true"/>
+  </hbox>
+</radiogroup>
+
+ +

W tym przykładzie funkcja updateState() jest wywołana, kiedy zdarzenie select zostanie uruchomione w grupie elementów radio. Ma to miejsce kiedy przycisk opcji zostanie zaznaczony. Funkcja ta, przy pomocy własności selectedIndex, pobiera indeks aktualnie zaznaczonego elementu. Zauważ, iż mimo że jeden z elementów radio jest wewnątrz pola hbox, dalej stanowi część grupy radiogroup. Jeśli pierwszy element jest zaznaczony (indeks równy 0), pole tekstowe zostaje zablokowane. Jeśli drugi element - można edytować pole tekstowe.

+ +

Następny artykuł dostarczy nam więcej szczegółowych informacji o manipulacji grupami przycisków opcji tak samo jak manipulacji listami.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/mo\305\274liwo\305\233ci_okna/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/mo\305\274liwo\305\233ci_okna/index.html" new file mode 100644 index 0000000000..19fff23e21 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/mo\305\274liwo\305\233ci_okna/index.html" @@ -0,0 +1,74 @@ +--- +title: Możliwości okna +slug: Mozilla/Tech/XUL/Kurs_XUL/Możliwości_okna +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Features_of_a_Window +--- +

+

« PoprzedniNastępny »

+

+ +

Do tej pory zobaczyliśmy niektóre możliwości okien. W tym artykule przyjrzymy się jeszcze innym.

+ +

Tworzenie kolejnego okna

+ +

Możesz stworzyć drugie okno swojej aplikacji w ten sam sposób, w jaki tworzyłeś pierwsze. Po prostu stwórz drugi plik XUL z kodem okna. Tak jak w języku HTML możesz użyć funkcji window.open() do otwarcia drugiego okna. Ta funkcja zwróci odnośnik do nowo otwartego okna. Możesz używać tego odnośnika, aby wywoływać funkcje w drugim oknie.

+ +

Funkcja otwarcia wymaga trzech argumentów. Pierwszy to adres URL pliku, który chcesz otworzyć. Kolejny to wewnętrzna nazwa okna. Ostatni to lista wyświetlanych flag. Flaga "chrome" jest ważna, gdy chcemy otworzyć okno jako plik chrome. Jeśli nie dodasz flagi chrome, to plik otworzy się jako zawartość okna przeglądarki.

+ +

Przykład:

+ +
var myWin = window.open("chrome://findfile/content/findfile.xul","findfile","chrome");
+
+ +

Określenie szerokości i wysokości

+ +

Powinieneś zauważyć, że kiedy tylko elementy zostały dodane do okna, to jego szerokość zmienia się tak, żeby zmieścić wszystkie elementy. Okno to naprawdę pudełko o ruchomych ściankach i nastawione domyślnie na orientację pionową. Możesz także podać dokładne wymiary bezpośrednio w znaczniku window. To oczywiście sprawi, że okno zostanie wyświetlone w tym właśnie rozmiarze. Jeśli jednak nie zdefiniujesz rozmiarów, wielkość okna będzie zdeterminowana przez jego wewnętrzne elementy.

+ +
<window
+  id="findfile-window"
+  title="Znajdź pliki"
+  width="400"
+  height="450"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+ +

W tym przykładzie okno będzie miało 400 pikseli szerokości i 450 pikseli wysokości. Nawet, jeśli nie ma w nim wystarczająco dużo elementów, żeby wypełnić całą przestrzeń, okno nadal będzie miało takie wymiary i puste pole będzie widniało tam, gdzie brakuje elementów. Jeśli byłoby zbyt dużo elementów, okno będzie za małe, żeby pomieścić wszystkie elementy. Użytkownik będzie musiał zmienić rozmiar okna. Trzeba być uważnym, gdy definiuje się szerokość i wysokość, tak żeby okno nie było za małe albo za duże.

+ +

Zauważ, że musisz podać zarówno szerokość i wysokość. Jeśli zdefiniujesz tylko jeden wymiar, drugi będzie automatycznie ustawiony na zerową wartość. Aby okno samo się dopasowywało do elementów, pozostaw obydwa wymiary niezdefiniowane.

+ +

Wysokość i szerokość określają tylko początkową wielkość okna. Użytkownik może nadal zmieniać jego wymiary, jeśli oczywiście mu na to pozwolimy.

+ +

Inne możliwości okna

+ +

Poniższe flagi mogą być wpisywane w miejsce trzeciego argumentu funkcji window.open. Twój system operacyjny nie musi jednak wszystkich obsługiwać. Możesz także używać jakiejkolwiek z wcześniej zdefiniowanych flag, które można znaleźć w odnośnikach JavaScript. Możesz wyłączyć cechę przez przestawienie ją na "no", np. 'dialog=no'.

+ +
+
alwaysLowered 
+
Okno będzie zawsze pojawiało się za pozostałymi otwartymi oknami.
+
alwaysRaised 
+
Okno będzie zawsze pojawiało się ponad pozostałymi otwartymi oknami.
+
centerscreen 
+
Okno będzie zawsze pojawiało się w centrum ekranu.
+
dependent 
+
Okno będzie zawsze połączone z oknem, z którego zostało otwarte. Jeśli ruszymy oknem pierwotnym, to nowo otwarte też się odpowiednio przesunie.
+
dialog 
+
Okno dialogowe.
+
modal 
+
Okno dialogowe jest modalne. Okno, z którego zostało otwarte okno modalne (dialogowe), nie może odpowiadać dopóki nie zostanie zamknięte pochodne okno dialogowe.
+
resizable 
+
Użytkownik może zmieniać wymiary okna.
+
+ +

Zobacz także dokumentację DOM window.open()

+ +

'''"Odrobaczanie" (debugging) okna''' Kolejną przydatną cechą jest umożliwienie trybu debug dla danego okna. Aby tego dokonać dodaj atrybut ''debug'' do okna i ustaw go na <code>true</code>. To sprawi, że okno będzie wyświetlało obramowania i puste pola, więc będziesz wiedział co się dzieje. Poniższy przykład ilustruje sposób użycia tej metody: <window id="findfile-window" title="Znajdź pliki" debug="true" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gat...re.is.only.xul"> Poniższy rysunek przedstawia efekt takiej komendy na przykładzie prostego okna: Grafika: XUL_rys_1.jpg *Niebieskie ramki oznaczają poziome okienka. *Czerwone ramki oznaczają pionowe okienka. Można zobaczyć, że całe okno jest również pionowym oknem. *Zygzaki pokazują elementy dopasowujące się. W tym przypadku pole puste jest rozciągliwe, więc nad nim widoczny jest zygzak. *Linie pokazują miejsca, gdzie znajdują się elementy nierozciągliwe. Na tym przykładowym rysunku są to: tekst, pole do wypełniania i przyciski. *Białe kwadraty oznaczają krawędzie elementu. Na obrazku można zauważyć kilka dodatkowych pól. Dzieje się tak, ponieważ każdy element XUL sam składa się z kilku pól, zdefiniowanych przez XBL. Zwyczajowo można je pominąć. Można zdefiniować atrybut ''debug'' dla każdego pola, a nie tylko okna.

+ +

W następnym artykule zajmiemy się otwieraniem podrzędnych okien dialogowych.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/nadawanie_stylu_drzewa/index.html b/files/pl/mozilla/tech/xul/kurs_xul/nadawanie_stylu_drzewa/index.html new file mode 100644 index 0000000000..81ce9a8d06 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/nadawanie_stylu_drzewa/index.html @@ -0,0 +1,156 @@ +--- +title: Nadawanie stylu drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Nadawanie_stylu_drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Styling_a_Tree +--- +

+

« PoprzedniNastępny »

+
Opis jak stosujemy style w drzewach.

+ +

Nadawanie stylu drzewa

+ +

Możesz nadać style obramowaniu drzewa i nagłówkom kolumn, robiąc to w identyczny sposób jako osobne elementy. Dodanie stylu do elementu tree będzie zastosowany w encji drzewa. Dodanie stylu do elementu treecol nie spowoduje, że styl znajdzie zastosowanie do kolumny, a tylko do nagłówka.

+ +

Ciało drzewa musi być stylowane trochę w inny sposób, jak inne elementy. Zewnętrzny treechildren jest tylko prawdziwym elementem w ciele drzewa. Wewnętrzny elementy są tylko do rezerwacji miejsca.

+ +

Ustawianie własności

+ +

Zamiast tego, musisz użyć properties atrybutu wierszy i komórek, aby ustawić jedną lub więcej nazw właściwości. Możemy tego używać z drzewami z wartościami statycznymi, RDF buduje zawartość w podany sposób wraz z widokiem. Powiedzmy, że chcemy uzyskać szczególny pasek(wiersz(?)) o niebieskim kolorze tła. Zostało to zaimplementowane we właściwościach etykiety Mozilla Mail's. Będziemy używać własności nazwanej 'makeItBlue'. Możesz jej użyć zawsze, gdy potrzebujesz nazwy. Możesz ustawić wielokrotne własności oddzielając je za pomocą spacji.

+ +

Ustaw własność wiersza lub komórki tabeli, jak jest to pokazane w poniższym przykładzie:

+ +
<treerow properties="makeItBlue">
+
+ +

Selektory CSS dla drzewa

+ +

Arkusze stylów potrafią pobierać tą własność i używać do zmiany wyglądu wiersza dla nieczytelnej wiadomości e-mail lub etykiety. Wymyśl właściwości jako funkcjonujące bardziej, niż klasa stylu, chociaż odpowiada ona czemuś więcej, kompleksowa składnia do użycia w pliku arkusza stylów. Jest tak ponieważ możesz wyszczególnić style dla pewnych części lub indywidualnych komórek. Nie możesz używać stylów dla tekstu, jeśli są one komórkami, ale złożone z wcięciem. Następujący przykład jest składnia, która musi być użyta:

+ +
treechildren::-moz-tree-row(makeItBlue)
+{
+  background-color: blue;
+}
+
+ +

Ten dodatkowy pseudostyl jest użyty do stylowania kolorem tła dla wiersza, który ma własność 'makeItBlue'. Ta specjalna składnia jest potrzebna ponieważ komórki nie potrafią rozdzielić elementów. Cała zawartość wewnątrz ciała drzewa, jest interpretowane przez element treechildren (uwaga treechildren się staje sformatowany stylami w zasadzie poniżej.) Pseudostyl ustawia zasady stylów dla określonych części, co ma zostać wyświetlone. Ta zasada stylów znaczy, że wewnątrz element treechildren, ustawia kolor tła na niebieski dla wszystkich wierszy drzewa mających własność 'makeItBlue'.

+ +

Tekst '::-moz-tree-row' określa zawartość obszaru jaki jest potrzebny, który w tym przypadku jest wierszem. Możesz także użyć następujących wartości:

+ + + +

Sprawdź użycie kilku własności oddzielając je przecinkiem. Przykład poniżej ustawia kolor tła na szary dla wierszy, które posiadają określoną właściwość 'readonly' i 'unread'. Dla własności, które są 'readonly' (tylko do odczytu), zostanie dodana czerwona linia obramowania wokoło wiersza. Ważna jest, kolejność określania zasad i ich zapisanie jako jakiś wiersz, który posiada atrybut 'readonly' ustawiony bez względu na to czy są inne własności takie jak 'unread'.

+ +
treechildren::-moz-tree-row(readonly)
+{
+  border: 1px solid red;
+}
+
+treechildren::-moz-tree-row(readonly, unread)
+{
+  background-color: rgb(80%, 80%, 80%);
+}
+
+ +

Domyślne własności

+ +

Lista właściwości dla elementów stanowiących drzewo jest domyślnie bardzo mała dla domyślnych ustawień, które można także użyć jako arkusze stylów. Możemy używać tych dodatkowych właściwości do ustawienia appearance of containers or selected rows. The following properties are automatically set as needed:

+ +
+
focus
+
ta własność jest ustawiona jeśli the tree currently has the focus.
+
selected
+
ta własność jest ustawiona dla wierszy i komórek, które są aktualnie zaznaczone.
+
current
+
ta własność jest ustawiona jeśli tkursor jest w wierszu. Tylko jeden wiersz będzie miał ustawioną własność na czas.
+
container
+
ta własność jest ustawiona dla wierszy i komórek posiadających, który element dziedziczył z wiersza tabeli.
+
leaf
+
ta własność jest ustawiona dla wierszy i komórek których nie ma potomek wiersza.
+
open
+
ta własność jest ustawiona dla wierszy i komórek które są expanded.
+
closed
+
ta własność jest ustawiona dla wierszy i komórek które są zawinięte.
+
primary
+
ta własność jest ustawiona dla komórek w primary column.
+
sorted
+
ta własność jest ustawiona dla komórek w the current sorted column.
+
even
+
ta własność jest ustawiona dla even numbered rows.
+
odd
+
ta własność jest ustawiona dla odd numbered rows. This property, along with the even property allow you to set, dla przykładu, alternating colors for each row.
+
dragSession
+
ta własność jest ustawiona jeśli coś something is currently being dragged.
+
dropOn
+
if a drag is occuring over the tree, ta własność jest ustawiona dla the row currently being dragged over, as long as the mouse pointer is hovering over the row.
+
dropBefore
+
ta własność jest ustawiona jeśli kursor myszki ...
+
dropAfter
+
ta własność jest ustawiona jeśli kursor myszki jest nad lub pod jest kursor myszki jest przed obecną męką.
+
progressNormal
+
ta własność jest ustawiona dla progress meter cells.
+
progressUndetermined
+
ta własność jest ustawiona dla undeterminate progress meter cells.
+
progressNone
+
ta własność jest ustawiona dla non-progress meter cells.
+
+ +

The properties are set for rows or cells in rows with the necessary state. For columns and cells, one additional property, the id of the column or column the cell is in will be set.

+ +

Ustawienie własności dla kompilacji drzew RDF

+ +

Dla zbudowania drzewa RDF, możemy użyć tej samej składni. Jednakże, często będziesz musiał ustawiać właściwości opartych na wartościach znajdujących się w kodzie źródłowym.

+ +

Ustawienie własności dla Własnego widoku drzewa

+ +

For trees with a custom view script, you can set properties by supplying the functions 'getRowProperties', getColumnProperties() and getCellProperties() in the view. These return information about an individual row, column and cell. Arguments to these functions indicate which row and/or column. The last argument to each of these functions is a properties list which the view is expected to fill with a list of properties. The function getColumnProperties() also supplies the corresponding treecol element for the column.

+ +
getRowProperties : function(row,prop){}
+getColumnProperties : function(column,columnElement,prop){}
+getCellProperties : function(row,column,prop){}
+
+ +

Let's look at an example of changing a specific cell. Let's make every fourth row have blue text, using the example from a previous section. We'll need to add code to the getCellProperties() function, to add a property 'makeItBlue' for cells in every fourth row. (We don't use getRowProperties as the text color will not be inherited into each cell.)

+ +

The properties object that is passed as the last argument to the getCellProperties is an XPCOM object that implements nsISupportsArray. It is really just an XPCOM version of an array. It contains a function AppendElement which can be used to add an element to the array. We can use the interface nsIAtomService to constuct string atoms for the properties.

+ +
getCellProperties: function(row,col,props){
+  if ((row %4) == 0){
+    var aserv=Components.classes["@mozilla.org/atom-service;1"].
+              getService(Components.interfaces.nsIAtomService);
+    props.AppendElement(aserv.getAtom("makeItBlue"));
+  }
+}
+
+ +

This function would be defined as part of a view object. It first checks to see which row is being requested and sets a property for cells in every fourth row. The properties list requires an array of atom objects, which can be thought of as constant strings. We create them using the XPCOM interface nsIAtomService and add them to the array using the AppendElement function. Here, we create an atom 'makeItBlue'. You can call AppendElement again to add additional properties.

+ +

Przykład arkusza stylów

+ +
treechildren::-moz-tree-row(selected)            { background-color: #FFFFAA; }
+treechildren::-moz-tree-row(odd)                 { background-color: #EEEEEE; }
+treechildren::-moz-tree-row(odd, selected)       { background-color: #FFFFAA; }
+treechildren::-moz-tree-cell-text(selected)      { color: #000000; }
+treechildren::-moz-tree-cell-text(odd, selected) { color: #000000; }
+
+ +

Na następnej stronie zobaczymy w jaki sposób zmodyfikować domyślny motyw.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/nak\305\202adki_dla_wielu_pakiet\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/nak\305\202adki_dla_wielu_pakiet\303\263w/index.html" new file mode 100644 index 0000000000..c006eef58e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/nak\305\202adki_dla_wielu_pakiet\303\263w/index.html" @@ -0,0 +1,89 @@ +--- +title: Nakładki dla wielu pakietów +slug: Mozilla/Tech/XUL/Kurs_XUL/Nakładki_dla_wielu_pakietów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Cross_Package_Overlays +--- +

+

« PoprzedniNastępny »

+
Ten artykuł opisuje, jak zastosować nakładki do plików, które ich nie importują.

+ +

Zastosowanie nakładek do innych pakietów

+ +
Note: This section talks about contents.rdf which has been replaced in Gecko 1.8 by pliki manifestu.
+ +

Nakładki mają inną użyteczna cechę. W przykładach z poprzedniej sekcji, nakładki były importowane przez okno. Możesz również podejść do tego z innej strony i posiadać wyszczególnione nakładki które stosują okna. Wyszczególnisz je przez zmodyfikowanie pliku content.rdf twojego pakietu. Jest to użyteczne ponieważ nakładka może modyfikować interfejs użytkownika lub inny pakiet bez zmiany innego pakietu. Na przykład możesz dodać pozycję menu lub pasek narzędziowy do okna przeglądarki Mozilla.

+ +

Użyjemy tej cechy do dodania paska zadań do okna przeglądarki Mozilli Aplikacja Mozilla Mail używa nakładek dla dodawania zawartości do okna przeglądarki. Na przykład, jeśli Mail nie jest zainstalowany, nie będzie polecenia Nowa Wiadomość. Jednak jeśli Mail jest zainstalowany, nakładka będzie zastosowana w menu dla dodania polecenia Nowa Wiadomość. Poniżej dodamy pasek narzędziowy znajdowania plików do przeglądarki. Ta cecha nie będzie prawdopodobnie zbyt użyteczna, ale zróbmy to.

+ +

Mozilla pozwala ci dodać listę nakładek do pliku content.rdf, którego używasz do listy chromowych (pokazowe funkcje, które przyciągają uwagę użytkowników, ale niewiele wnoszą do możliwości systemu)pakietów, skórek i narodowości. Kiedyś tworząc nakładkę musiałeś dodać ją do pliku content.rdf. Potem dodać pozycję, jedną dla każdego okna w jakim chciałeś zastosować nakładkę.

+ +
+

Our find files example

+ +

Najpierw stwórzmy prostą nakładkę. Będzie ona miała kilka pól dla wprowadzenia nazwy pliku i katalogu dla wyszukania. Wywołaj plik foverlay.xul i dodać go katalogu findfile wraz z findfile.xul

+ +

Our foverlay.xul example

+ +

Źródła

+ +
<?xml version="1.0"?>
+
+<overlay
+    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<toolbox id="navigator-toolbox">
+  <toolbar id="findfile_toolbar">
+    <label control="findfile_filename" value="Search for files named:"/>
+    <textbox id="findfile_filename"/>
+    <label control="findfile_dir" value="Directory:"/>
+    <textbox id="findfile_dir"/>
+    <button label="Browse..."/>
+  </toolbar>
+</toolbox>
+
+</overlay>
+
+ +

Możesz zobaczyć to przez zmianę nakładki na okno. Jedyną rzeczą, jaka jest tu specjalna jest zastosowanie id used on the toolbox. Wartość ta (navigator-toolbox) jest taka sama jak identyfikator okna narzędziowego w oknie przeglądarki (navigator.xul) Oznacza to ,że nakładka będzie zastosowana do okna narzędziowego w oknie przeglądarki a zawartość będzie dodana jako dodatkowy pasek narzędzi.

+ +

Aby dodać tą nakładkę do pliku - wykazu, musisz dodać dwa zasoby. Najpierw dodajemy jedną dla każdego okna, w którym stosujemy nakładkę. Poniższy kod powinien być dodany do pliku content.rdf zanim zamkniemy znacznik RDF.

+ +
<RDF:Seq about="urn:mozilla:overlays">
+  <RDF:li resource="chrome://navigator/content/navigator.xul"/>
+</RDF:Seq>
+
+ +

Deklaruje on, że dodajemy nakładkę okna, potomka źródłowego węzła nakładki (urn:mozilla:overlays) Możesz dodać dodatkowe węzły dla dowolnego okna, w którym chcesz zastosować nakładki poprzez dodanie dodatkowych węzłów li.

+ +

Następnie dodajemy węzeł dla każdej nakładki stosowanej w oknie. W tym przypadku, mamy tylko jedną, ale możemy zastosować również pozostałe. Dodaj te linie po poprzednich liniach

+ +
<RDF:Seq about="chrome://navigator/content/navigator.xul">
+  <RDF:li>chrome://findfile/content/foverlay.xul</RDF:li>
+</RDF:Seq>
+
+
+ +
Image:crosspov1.jpg
+ +

Mozilla odczytuje te informacje i buduje listę nakładek, które są stosowane z innymi oknami. Przechowuje tą informację w katalogu chrome/overlayinfo. Nie musisz ręcznie modyfikować tych plików w tym katalogu. Jest automatycznie generowany i modyfikowany, kiedy Mozilla jest pierwszy raz uruchamiana lub kiedy nowe pakiety są zainstalowane. Jednakże możesz wymusić daną będącą przebudowana przez usunięcie tego katalogu i pliku chrome.rdf.

+ +

Możemy stosować podobne techniki do zastosowania dodatkowych arkuszy stylów. Pokazuje to poniższy przykład:

+ +
<RDF:Seq about="urn:mozilla:stylesheets">
+  <RDF:li resource="chrome://messenger/content/messenger.xul"/>
+</RDF:Seq>
+
+<RDF:Seq about="chrome://messenger/content/messenger.xul">
+  <RDF:li>chrome://blueswayedshoes/skin/myskinfile.css</RDF:li>
+</RDF:Seq>
+
+ +

Następnie zobaczymy jak stworzyć instalator dla aplikacji XUL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/obiektowy_model_dokumentu/index.html b/files/pl/mozilla/tech/xul/kurs_xul/obiektowy_model_dokumentu/index.html new file mode 100644 index 0000000000..afc317c45c --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/obiektowy_model_dokumentu/index.html @@ -0,0 +1,244 @@ +--- +title: Obiektowy model dokumentu +slug: Mozilla/Tech/XUL/Kurs_XUL/Obiektowy_model_dokumentu +tags: + - DOM + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Document_Object_Model +--- +

+

« PoprzedniNastępny »

+

+ +

Obiektowy model dokumentu (DOM - Document Object Model) może zostać użyty z elementami XUL, umożliwiając pobieranie o nich informacji oraz ich modyfikację.

+ +

Wprowadzenie do DOM

+ +

DOM jest używany do przechowywania drzewa węzłów XUL. Podczas wczytywania pliku XUL znaczniki są parsowane i przekształcane w hierarchiczną strukturę węzłów dokumentu (jeden węzeł to znaczników lub blok tekstu). Strukturę DOM można odczytywać oraz modyfikować używając odpowiednich metod; również niektóre elementy XUL dostarczają dodatkowych funkcji.

+ +

Każdy plik XUL po wczytaniu posiada własny dokument wyświetlony w oknie lub w ramce. Pomimo tego, że istnieje tylko jeden dokument powiązany z oknem, można dodawać dodatkowe dokumenty przy pomocy odpowiednich metod.

+ +

W Mozilli, dostęp i modyfikacja DOM jest możliwa poprzez JavaScript. Różne obiekty DOM posiadają funkcje, do których dostęp jest możliwy z poziomu skryptu. Należy jednak zauważyć, że DOM to API (Application Programming Interface - interfejs programowania aplikacji), które może być użyte przez JavaScript, ponieważ Mozilla dostarcza odpowiednich obiektów.

+ +

W JavaScript zawsze istnieje jeden globalny obiekt, który jest zawsze dostępny. Można odwoływać się do własności i metod tego obiektu bez jego bezpośredniego wskazywania. Na przykład, jeśli ten obiekt posiada własność 'name', można ją zmodyfikować poprzez napisanie name = 7, bez odwoływania się do samego obiektu. W przypadku przeglądarki takim globalnym obiektem jest obiekt + + window + (okno), podobnie jest w języku XUL. Oczywiście każde okno oraz ramka posiada swój własny, odrębny obiekt.

+ +

Do okna można się odnieść poprzez własność window, chociaż nie jest to konieczne. Czasami jest ten sposób użyty, aby zasięg metody, której używamy, był bardziej czytelny. Na przykład poniższe dwie linijki spowodują ten sam efekt (otwarcie nowego okna):

+ +
window.open("test.xul","_new");
+open("test.xul","_new");
+
+ +

Kiedy zadeklarujesz funkcję lub zmienną na zewnątrz innych funkcji, tak naprawdę deklarujesz własność globalnego obiektu. W języku XUL każda funkcja, którą zadeklarujesz będzie ustawiona jako własność obiektu 'window'. Na przykład, poniższy kod dwukrotnie wyświetli alert - okienko wyskakujące z tekstem 'Wiadomość'.

+ +
function getText(){
+  return "Wiadomość";
+}
+
+alert(getText());
+alert(window.getText());
+
+ +

Jeśli chcesz uzyskać dostęp do zmiennej lub wywołać funkcję zadeklarowaną w skrypcie używanym przez inne okno, wystarczy po prostu użyć obiektu window tego okna. Na przykład po połączeniu dwóch ostatnich przykładów w jeden plik, można wywołać funkcję getText() z wnętrza innego okna (np. okna test.xul) w ten sposób:

+ +
alert(window.opener.getText());
+
+ +

Każde okno posiada własność opener, która przechowuje obiekt 'window' wskazujące na okno, które otwarło aktualne okno. W naszym przykładzie pobieramy okno otwierające i wywołujemy funkcję getText() w nim zadeklarowaną. Zauważ, że użyty został identyfikator 'window' tylko po to, aby kod był czytelniejszy.

+ +

Metoda okna open() także zwraca referencję do nowego okna, więc możliwe jest wywoływanie funkcji nowego okna z okna z opener. Warto jednak zauważyć, że metoda open() zwraca wartość zanim nowe okno jest w pełni wczytane, tak więc funkcje te nie są zazwyczaj od razu dostępne.

+ +

Obiekt typu 'window' nie jest zdefiniowane w żadnej specyfikacji, ale w Mozilli czasami uznaje się to za część DOM Poziomu 0 (DOM Level 0). Jest to nazwa używana przez niektórych programistów w odniesieniu do funkcji własności dla DOM, które istniały przed dołączeniem ich do specyfikacji. Dokument, który jest wyświetlany w oknie może zostać pobrany poprzez własność okna document. Ponieważ document jest jedną z najczęściej używanych własności okna, to zazwyczaj jest ona wywoływana bez identyfikatora 'window.'.

+ +

Mozilla dostarcza kilku różnych obiektów typu 'document', w zależności od rodzaju dokumentu używanego w tym czasie. Trzy podstawowe to HTMLDocument, XMLDocument i XULDocument, odpowiednio dla języków HTML, XML i XUL. Są one do siebie bardzo podobne, ponieważ na poziomie podstawowym są tak samo zrealizowane. Różnią się kilkoma funkcjami, które działają odpowiednio dla typu dokumentu.

+ +

Odzyskiwanie elementów

+ +

Najpopularniejszym sposobem pobrania elementu w dokumencie jest nadanie elementowi atrybutu id, a następnie użycie metody getElementById(). W okienku dialogowym <tt>Znajdź pliki</tt> dodaliśmy atrybut id wielu elementom. Na przykład możemy pobrać stan pola wyboru stosując poniższy kod:

+ +
var state = document.getElementById('casecheck').checked;
+
+ +

Wartość casecheck odpowiada identyfikatorowi id z elementu checkbox, który określa, czy wyszukiwanie powinno uwzględnić wielkość liter. Wiedząc, czy jest on zaznaczony, czy nie, może zostać wykonane wyszukiwanie. Podobnie można postąpić z innym polami wyboru lub jakimkolwiek elementem posiadającym id.

+ +
+

Nasz przykład <tt>Znajdź pliki</tt>

+ +

Nie ma sensu wyświetlać paska postępu oraz pustego drzewa danych podczas pierwszego wyświetlania okna dialogowego <tt>Znajdź pliki</tt>. Zostały one dodane, aby były dla nas widoczne. Kod zostanie zmieniony tak, aby początkowo były one ukryte. Zostanie użyty atrybut hidden, który określa, czy element jest widoczny, czy nie.

+ +

Wskaźnik postępu będzie początkowo ukryty. Dodany zostanie również atrybut id, aby móc się do niego odwoływać w skrypcie aby go ukryć lub wyświetlić. Rozdzielacz oraz drzewo z wynikami zostaną również początkowo ukryte, wyświetlone zostaną dopiero po wyszukiwaniu:

+ +
<tree id="results" hidden="true" flex="1">
+  .
+  .
+  .
+<splitter id="splitbar" resizeafter="grow" hidden="true"/>
+
+<hbox>
+
+  <progressmeter id="progmeter" value="50%"
+    style="margin: 4px;" hidden="true"/>
+
+ +

Dodano atrybut hidden z wartością ustawioną na true. Spowoduje to ukrycie elementu w pierwszych wyświetleniach.

+ +

Następnie dodana zostanie funkcja wywoływana po naciśnięciu przycisku <tt>Znajdź</tt>. Skrypt zostanie zapisany w osobnym pliku findfiles.js. W ostatnim rozdziale dodano element script do pliku XUL. Jeśli jeszcze tego nie zrobiłeś, zrób to teraz w sposób pokazany poniżej. Uchwyt oncommand zostanie również dodany do przycisku <tt>Znajdź</tt>.

+ +
<script src="findfile.js"/>
+  .
+  .
+  .
+<button id="find-button" label="Znajdź"
+   oncommand="doFind();"/>
+
+ +

Następnie, w tym samym katalogu co plik findfiles.xul, utwórz plik findfiles.js. Funkcja doFind() zostanie dodana do tego pliku. Znacznik script pozwala bezpośrednio w sobie zawierać kod, ale zazwyczaj (między innymi z powodu wydajności) skrypty umieszcza się w osobnym pliku. Wyjątkiem może być krótki fragment kodu umieszczony bezpośrednio w uchwycie zdarzenia.

+ +
function doFind(){
+  var meter = document.getElementById('progmeter');
+  meter.hidden = false;
+}
+
+ +

Powyższa funkcja najpierw pobiera referencję paska postępu, poprzez użycie jego id progmeter. Druga linia kodu funkcji zmienia status hidden, czyli element stanie się ponownie widoczny.

+ +

Na koniec, dodajmy jeszcze wyskakujące okienko ostrzeżenia, które wyświetli informację czego szukamy. W ostatecznej wersji skryptu tego fragmentu nie będzie, ale na razie dzięki temu będziemy wiedzieli, że coś się dzieje.

+ +
function doFind(){
+  var meter=document.getElementById('progmeter');
+  meter.hidden = false;
+  var searchtext=document.getElementById('find-text').value;
+  alert("Szukanie dla \"" + searchtext + "\"");
+}
+
+ +

Teraz, wraz z pudełkiem ostrzeżenia będzie wiadomo, co się wydarzy po naciśnięciu przycisku <tt>Znajdź</tt>. Możemy również dodać dodatkowy kod pobierający zaznaczenie z rozwijanych pudełek.

+
+ +

Elementy XUL w DOM

+ +

Każdy element XUL posiada przypisane atrybuty, przypisane własności oraz przypisane dziecko elementu.

+ + + +

Jest możliwe, aby manipulować atrybutami, własnościami oraz dziećmi elementu stosując dynamicznie metody DOM.

+ +

Warto zauważyć, że atrybuty i własności to nie to samo. Istnienie atrybutu o danej nazwie nie znaczy, że istnieje odpowiadająca własność o takiej samej nazwie. Z drugiej strony, często tak się dzieje. Na przykład, aby pobrać atrybut flex, można użyć własności flex. W tym przypadku kod za to odpowiedzialny zwraca wartość atrybutu. Jednakże dla innych własności, XUL wykona bardziej złożone operacje.

+ +

Można manipulować atrybutami elementu poprzez zastosowanie którejś z następujących metod:

+ +
+
getAttribute ( name )
+
Zwraca wartość atrybutu o nazwie 'name'.
+
hasAttribute ( name )
+
Zwraca + true + , jeśli atrybut o nazwie 'name' posiada wartość.
+
setAttribute ( name , value )
+
Ustawia wartość atrybutu o nazwie 'name' na daną wartość 'value'.
+
removeAttribute ( name )
+
Usuwa atrybut o nazwie 'name'.
+
+ +

Powyższe funkcje umożliwiają pobieranie i zmianę wartości atrybutu w dowolnym momencie. Na przykład, następujący kod pobiera wartość atrybutu flex oraz przypisuje mu inną wartość:

+ +
 var box = document.getElementById('somebox');
+ var flex = box.getAttribute("flex");
+
+ var box2 = document.getElementById('anotherbox');
+ box2.setAttribute("flex", "2");
+
+ +

Atrybut flex posiada odpowiednią własność w skrypcie, która może zostać zamiennie użyta. Nie jest to bardziej wydajny sposób, za to wymaga trochę mniej pisania. Poniższy kod zadziała w ten sam sposób, jak w poprzednim przykładzie, lecz stosując własność flex.

+ +
 var box = document.getElementById('somebox');
+ var flex = box.flex;
+
+ var box2 = document.getElementById('anotherbox');
+ box2.flex = 2;
+
+ +

Mając już jedną referencję do elementu, można wywołać własność tego elementu. Na przykład, można pobrać własność hidden elementu poprzez użycie składni + element + .hidden, gdzie; + element + to referencja do elementu. Zauważ, że większość własności wypisanych w dokumentacji ma swoje odpowiedniki wśród atrybutów elementów. Oczywiście istnieją różnice, na przykład getAttribute("hidden") zwróci łańcuch znaków 'true' dla ukrytych elementów, podczas gdy własność hidden zwróci typ boolean o wartości true. W tym wypadku zachodzi konwersja typów, tak więc własność jest wygodniejsza w użyciu.

+ +

Jak z każdym dokumentem, istnieje osobny obiekt typu elementu dla elementów XUL, tak jak odpowiednio istnieją elementy HTML i XML. Każdy element XUL implementuje interfejs XULElement]. Elementu XUL to każdy element zadeklarowany w przestrzeni nazw XUL. Tak więc elementy XUL posiadają ten interfejs nawet, jeśli są dodane do innych dokumentów XML. Z drugiej strony elementy inne niż elementy XUL nie posiadają tego interfejsu. Interfejs XULElement posiada wiele własności oraz metody określonych dla elementów XUL, wiele dziedziczy z ogólnego interfejsu DOM Element.

+ +

Przestrzeń nazw to adres URI określający rodzaj elementu. Poniżej kilka przykładów:

+ +
<button xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"/>
+<button xmlns="http://www.w3.org/1999/xhtml"/>
+<html:button xmlns:html="http://www.w3.org/1999/xhtml"/>
+<html:button xmlns:html="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"/>
+
+ +

Przestrzenie nazw są określane przy użyciu atrybutu xmlns.

+ + + +

Tak naprawdę nazwa użyta w przedrostku nie ma znaczenia, jeśli chodzi o określenie, jakiego typu jest element.

+ +

DOM dostarcza wiele funkcji pomocnych przy posługiwaniu się przestrzeniami nazw, które są podobne do tych niezwiązanych z nimi. Istnieje na przykład funkcja getAttributeNS() przypominająca funkcję getAttribute() poza dodatkowym argumentem, który może być stosowany do określenia atrybutu w konkretnej przestrzeni nazw.

+ +

Wiele elementów XUL posiada swoje własne unikatowe własności. Aby poznać wszystkie atrybuty i własności dostępne dla elementu, zajrzyj do dokumentacji.

+ +

Poruszanie się po DOM

+ +

DOM jest strukturą drzewa z pojedynczym węzłem głównym ( + ang. root node + ) oraz jego węzłami potomnymi. Aby pobrać odniesienie do węzła głównego, należy użyć własności dokumentu documentElement. Węzeł główny jest zawsze elementem, ale nie zawsze są nimi inne węzły drzewa. W drzewie dokumentu element odpowiada znacznikowi w źródle XUL, ale można również znaleźć węzły tekstowe, węzły komentarzy oraz kilka innymi typów. W przypadku XUL, elementem głównym będzie znacznik window w dokumencie XUL. Każdy węzeł w drzewie może mieć dzieci, które mogą posiadać własne węzły potomne. Ponieważ DOM jest strukturą drzewa, można poruszać się poprzez drzewo stosując różnorodne własności. Niektóre własności są wypisane poniżej:

+ +
+
firstChild 
+
Odnosi się do pierwszego węzła potomnego elementu.
+
lastChild 
+
Odnosi się do ostatniego węzła potomnego elementu.
+
childNodes 
+
Podtrzymuje listę dzieci elementu.
+
parentNode 
+
Odnosi się do rodzica węzła.
+
nextSibling 
+
Odnosi się do następnej sekwencji rodzeństwa.
+
previousSibling 
+
Odnosi się do wcześniejszej sekwencji rodzeństwa.
+
+ +

Powyższe własności pozwalają na poruszanie się po dokumencie na różne sposoby. Na przykład, można pobrać pierwszego potomka elementu przy pomocy własności firstChild i następnie poruszać się poprzez dzieci używając własności nextSibling. Ten sam efekt można uzyskać poprzez odwoływanie się do obiektów listy pobranej przez childNodes. W Mozilli kolejna metoda jest bardziej wydajna.

+ +

Następny przykład pokaże, jak przejść po potomkach węzła głównego:

+ +
var childNodes = document.documentElement.childNodes;
+for (var i = 0; i < childNodes.length; i++) {
+  var child = childNodes[i];
+  // zrób coś z potomkiem
+}
+
+ +

Zmienna childNodes przechowuje dzieci głównego elementu dokumentu. Następnie, przy pomocy pętli for, uzyskujemy dostęp do każdego dziecka, tak jak w przypadku tablic.

+ +
Przykład <tt>Znajdź pliki</tt>: Źródła Podgląd
+ +

Zobacz także: JavaScript:Na początek i Dokumentacja języka JavaScript 1.5

+ +

W następnym artykule nauczymy się modyfikacji DOM..

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202ka/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202ka/index.html" new file mode 100644 index 0000000000..e929b9b138 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202ka/index.html" @@ -0,0 +1,164 @@ +--- +title: Obiekty pudełka +slug: Mozilla/Tech/XUL/Kurs_XUL/Obiekty_pudełka +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Box_Objects +--- +

+

« PoprzedniNastępny »

+

+ +

Artykuł ten opisuje obiekty pola, które mieszczą w sobie powiązane informacje o wyświetlaniu i rozmieszczaniu pola XUL jak również pewne szczegóły o rozmieszczeniu XUL.

+ +

O układzie graficznym Mozilli

+ +

Mozilla dzieli rzeczy na dwa zbiory drzew, drzewo content (zawartości) i drzewo layout (rozmieszczenia). Drzewo content (zawartości) przechowuje węzły jakie znajdują się w kodzie źródłowym. Drzewo layout (rozmieszczenia) przechowuje inne drzewo content (węzłów) dla każdego pojedynczego komponentu jaki może być wyświetlony. Drzewo layout (rozmieszczenia) mieści w sobie strukturę taką jak nodes (węzły) oczekiwane przy wyświetlaniu. Nie jest konieczny związek jeden do jednego pomiędzy nodes (węzłami) content (zawartości) a layout (rozmieszczenia).Pewne nodes (węzły) content (zawartości) mogą mieć klika obiektów layout (rozmieszczenia), na przykład każda linia paragrafu ma oddzielny obiekt layout (rozmieszczenia). Odwrotnie, pewne nodes content (węzły zawartości) nie mają wcale obiektów layout (rozmieszczenia). Na przykład element key nie ma żadnego obiektu layout (rozmieszczenia) ponieważ nie jest wyświetlany w żaden sposób. Podobnie, dowolny element, który był wykrywany również nie będzie miał obiektu layout (rozmieszczenia).

+ +

Mozilla divides things into two sets of trees, the content tree and the layout tree. The content tree stores the nodes as they are found in the source code. The layout tree holds a different tree of nodes for each individual component that can be displayed. The layout tree holds the structure as the nodes are expected to be displayed There is not necessarily a one to one relationship between content and layout nodes. Some content nodes may have several layout objects, for example, each line of a paragraph has a separate layout object. Conversely, some content nodes have no layout objects at all. For instance, the <code>key</code> element doesn't have any layout objects since it isn't displayed in any way. Similarly, any element that has been hidden will not have a layout object either.

+ +

DOM jest generalnie używany tylko do pobrania i modyfikacji informacji odnoszącej się do zawartości lub struktury dokumentu. Jest względnie proste do określenia jaki rodzaj węzła drzewa zawartości będzie stworzony dla danego elementu. Element XUL, na przykład, będzie miał typ XUL Element węzła zawartości.

+ +

The DOM is generally used only to get and modify information pertaining to the content or structure of the document. It's relatively simple to determine what kind of content tree node will be created for a given element. A XUL element, for example, will have a XULElement type of content node.

+ +

Obiekty layout (rozmieszczenia) które będą stworzone są określane w bardziej złożone. Są używane różne fragmenty informacji takie jak nazwa znacznika, atrybuty elementu, różne właściwości CSS, elementy obiektów LAYOUT (rozmieszczenia) i XBL powiązany z elementem (XBL został opisany w dalszej części kursu). O ile nie zmienisz stylu dla elementu, większość elementów XUL zazwyczaj będą jako obiekty pola layout (rozmieszczenia) lub jednego z jego podtypów. Przypomnij sobie, że elementy XUL są typu pola, to znaczy, pole jest podstawą dla wyświetlania wszystkich elementów XUL. Jednakże jest kilka podtypów, około 25 lub więcej, dla określonych elementów XUL.

+ +

The layout objects that will be created are determined in a more complex manner. Various pieces of information are used such as the tag name, the attributes on an element, various CSS properties, the elements and layout objects around the element, and the XBL associated with an element (XBL is described in a later section). Unless you change the style for an element, most XUL elements will usually use the box layout object or one of its subtypes. Recall that all XUL elements are types of boxes, that is the box is the base of all displayed XUL elements. However, there are a number of subtypes, about 25 or so, for specific XUL elements. Some of these subtypes, such as the stack or listbox are needed for more complex layouts than the basic box, while others such as the button are used only to add extra mouse and key event handling.

+ +

Niektóre z tych podtypów, takie jak stack or listbox są bardziej potrzebne dla złożonych layouts niż podstawowe pole, podczas gdy pozostałe takie jak przycisk są używane tylko do dodania dodatkowego programu obsługi zdarzeń myszy i klawisza.

+ +

Obiekt layout (rozmieszczenia) powiązany z elementem może zostać usunięty a całkowicie inny typ obiektu stworzony przez zmianę właściwości display CSS, pośród innych. Na przykład zmiana właściwości wyświetlania elementu przycisku na block spowoduje, że obiekt layout (rozmieszczenia) przycisku będzie usunięty a zamiast tego stworzony zostanie obiekt block. Naturalnie, zmieni to wygląd i funkcję elementu

+ +

Nie jest koniecznym znać szczegóły tego jak obiekty layout (rozmieszczenia) są skonstruowane ale jest całkiem użytecznym posiadać przynajmniej trochę wiedzy na temat tego co jest napisane o XUL dla projektantów XUL bardziej zaawansowanych.

+ +

The layout object associated with an element can be removed and a completely different type of object created just by changing the CSS <code>display</code> property, among others. For example changing the display property of a button element to <code>block</code> will cause the button layout object to be deleted and a block object to be created instead. Naturally, this will change the appearance and function of the element. It isn't necessary to know the details of how the layout objects are constructed but it is quite useful to at least have at least the knowledge of what is described above of XUL layout for more advanced XUL development.

+ +

Obiekty pudełka

+ +

Obiekty layout nie są dostępne do manipulowania przez projektantów. Są one wewnętrznymi komponentami layout XUL. Jednakże, XUL dostarcza pewnych pomocnych obiektów, nazywanych obiektami pola, które mogą dostarczać pewnych powiązanych informacji layout. jak implikuje nazwa, są one dostępne dla wszystkich elementów opartych o pola.

+ +

Jest kilka podtypów obiektu pola, chociaż generalnie jest używanych tylko parę z nich. Pozostałe mają funkcje które są łatwiej dostępne poprzez metody odwzorowane bezpośrednio do elementu, ponieważ te typy są generalnie używane tylko z określonym elementem. Podstawowy obiekt pola, lub interfejs BoxObject, ma jednak kilka właściwości które są użyteczne dla projektantów XUL.

+ +

Podstawowy obiekt pola ma dwie pożyteczne cechy. Po pierwsze możesz wyszukać pozycję i rozmiar elementu XUL jaki wyświetlasz a po drugie możesz określić porządek elementów w polu jakie wyświetlasz, zamiast porządku w jakim są przechowywane w DOM.

+ +

Retrieving Position and Size

+ +

Obiekt pola dostarcza czterech właściwości, x, y, width, height, dla określenia pozycji i rozmiaru elementu. Współrzędne x i y są związane z lewym górnym rogiem dokumentu w oknie (wyłączając brzeg okna i pasek tytułowy) i są mierzone w pikselach. Własność width i height również są mierzone w pikselach a zawracają one szerokość i wysokość elementu obejmując wypełnianie i brzeg.

+ +

Te wartości są zawsze pozycją i rozmiarem aktualnego wyświetlania, więc te wartości będą się różniły jeśli element jest przesuwany lun zmieniany jest jego rozmiar. Na przykład, elastyczny element będzie zmieniał swój rozmiar, a obiekt pola będzie aktualizował odpowiednio swoje wymiary. Pokazuje to poniższy przykład

+ +

Przykład 1 : Źródła Podgląd

+ +
<button label="Click Me"
+        oncommand="alert('The width is ' + this.boxObject.width);"/>
+
+ +

Możesz użyć atrybutów width i height do określenia, odpowiednio, szerokości i wysokości elementu. Normalnie, atrybuty te nie będą używane więc ten element określałby odpowiedni rozmiar do odpowiedniej jego zawartości. A zatem, atrybuty te zastępują domyślny rozmiar i stosują określony rozmiar. Odpowiednie własności width i height, mogą być używane do modyfikacji wymiarów elementu w dowolnym czasie, jeśli życzysz sobie wyświetlać element o określonym rozmiarze. Pobranie wartości tych właściwości zwróci rozmiar jeśli został wyraźnie określony. Zauważ że te właściwości będą zwracać pusty łańcuch jeśli atrybuty szerokości i wysokości lub właściwości nie zostały już ustawione. To znaczy, nie możesz pobrać aktualnego rozmiaru z tych właściwości; zamiast tego musisz użyć właściwości obiektu pola.

+ +

Może to być trochę mylące, ale KEY pamięta, że własności width i height elementu zwracają rozmiar, jaki został ustawiony w XUL podczas gdy własności width i height obiektu pola zawracają bieżący rozmiar.

+ +

Hidden or Collapsed Element

+ +

Atrybut hidden ukryje element tak ,że nie będzie wyświetlany. Ponieważ nie jest wyświetlany, wszystkie cztery właściwości pozycji i rozmiaru obiektu pola będą miały wartość 0. Kiedy element jest ukryty, jest usuwany z ekranu a obiekty layout (rozmieszczania) są również z niego usuwane. A zatem, ponieważ nie jest nigdzie wyświetlany, nie będzie miał ani pozycji ani rozmiaru.

+ +

Atrybut collapsed będzie miał taki sam wpływ na wizualizację elementu użytkownika, z wyjątkiem tego, że pozostawi element na ekranie i pozostawia obiekty layout (rozmieszczenia) nietknięte, ale zmienia rozmiar elementu na 0. Oznacza to ,że zarówno elementy hidden i collapsed mają zerową szerokość i wysokość, elementy ukryte mają pozycję x i y również 0, podczas gdy elementy zwinięte zachowają swoją pozycję w oknie.

+ +

Dla wyszukania lub modyfikacji stanu ukrycia lub zwinięcia użyj odpowiednich własności jak w poniższym przykładzie.

+ +

Przykład 2 : Źródła Podgląd

+ +
<script>
+function showPositionAndSize()
+{
+  var labelbox = document.getElementById('thelabel').boxObject;
+
+  alert("Position is (" + labelbox.x + "," + labelbox.y +
+        ") and size is (" + labelbox.width + "," +
+        labelbox.height + ")");
+}
+</script>
+
+<button label="Hide"
+        oncommand="document.getElementById('thelabel').hidden = true;"/>
+<button label="Show"
+        oncommand="document.getElementById('thelabel').hidden = false;"/>
+<button label="Collapse"
+        oncommand="document.getElementById('thelabel').collapsed = true;"/>
+<button label="Uncollapse"
+        oncommand="document.getElementById('thelabel').collapsed = false;"/>
+<button label="Show Position/Size"
+        oncommand="showPositionAndSize();"/>
+<label id="thelabel" value="I am a label"/>
+
+ +

Zauważ, że jeśli ukryjesz lub zwiniesz etykietę, będzie ona traktowana jako ukryta. Będziesz musiał potem odkryć i rozwinąć etykietę aby mogła pojawić się ponownie.

+ +

Porządkowane elementów XUL

+ +

Obiekt pola może być również użyty dla określania wyświetlania porządku elementów, który może nie być taki sam jak w źródle. Przypomnij sobie ,że właściwości DOM takie, jak childNodes, firstChild, and nextSibling mogą być użyte do nawigowania po drzewie dokumentu. Obiekt pola pozwala również nawigować w podobny sposób ale wyszukuje elementy w kolejności wyświetlania.

+ +

Obiekt pola dostarcza kilku własności firstChild, lastChild, nextSibling, previousSibling i parentBox. Funkcje te powinny być samo wyjaśniające przez swoje nazwy. Właściwości te zwracają elementy, na przykład, własność firstChild zwraca pierwszy wyświetlany element potomny. Nie ma odpowiedniej właściwości childNodes dla pola nawigacyjnego; zamiast tego musisz nawigować przez siostrzane właściwości nextSibling lub previousSibling.

+ +

W odróżnieniu od nawigowania przez drzewo DOM, elementy ukryte nie są obejmowane kiedy nawigujemy przez obiekty pola. Oznacza to, że dla pola z sześcioma elementami potomnymi gdzie pierwsze dwa są ukryte, właściwość firstChild zwróci trzeci element. Jednak elementy zwinięte są objęte ponieważ są jeszcze wyświetlane ale nie maja rozmiaru. Na przykład kolejnym siostrzanym polem przycisku 1, w kolejnym przykładzie, będzie przycisk 3 ponieważ przycisk 2 jest ukryty. Ale kolejnym siostrzanym polem dla przycisku 3 będzie przycisk 4 ponieważ jest on tylko zwinięty.

+ +

Przykład 3 : Źródła Podgląd

+ +
<hbox>
+  <button label="Button 1"
+          oncommand="alert('Next is: ' + this.boxObject.nextSibling.label);"/>
+  <button label="Button 2" hidden="true"/>
+  <button label="Button 3"
+          oncommand="alert('Next is: ' + this.boxObject.nextSibling.label);"/>
+  <button label="Button 4" collapsed="true"/>
+</hbox>
+
+ +

Box Ordering Attributes

+ +

Kiedy pole XUL jest wystawione w oknie, elementy są uporządkowane według kilku własności, na przykład orientacji, ich grupy porządkowej i ich kierunku.

+ +
Atrybut orient
+ +

Orientacja jest zwykle modyfikowana przez atrybuty orient. jest również odpowiednia właściwość CSS -moz-box-orient, która może być używa w zastępstwie, w zależności od sytuacji. Atrybut ten był wyjaśniany wcześniej w tym rozdziale o polach.

+ +
Atrybut ordinal
+ +

Atrybut ordinal elementu może być zastosowany do określenia grupy porządkowej tego elementu, lub możesz użyć właściwości CSS -moz-box-ordinal-group.

+ +

Elementy z niższymi wartościami porządkowymi są umieszczone w polu przed elementami z wyższymi wartościami porządkowymi. Na przykład jeśli jedne element ma liczbę porządkową 2, będzie umieszczony przed elementem z liczbą porządkową 3 lub wyższą ale po elemencie z liczbą porządkową 1. Wartością domyślną, jeśli nie został określony porządek, jest 1. Oznacza to ze jeśli chcesz zmienić porządek wyświetlania elementów, często będziesz potrzebował modyfikacji liczb porządkowych kilku elementów.

+ +

Modyfikacja liczby porządkowej nie jest wykonywana powszechnie ponieważ zazwyczaj elementy są umieszczone w różnym porządku w źródle. Może być użyta do przestawienia później pozycji bez modyfikowania DOM. Demonstruje to poniższy przykład.

+ +

Przykład 4 : Źródła Podgląd

+ +
<hbox>
+  <button label="One" oncommand="this.ordinal++;"/>
+  <button label="Two" oncommand="this.ordinal++;"/>
+  <button label="Three" oncommand="this.ordinal++;"/>
+</hbox>
+
+ +

Jeśli naciśniesz pierwszy przycisk, jego liczb porządkowa zwiększy się o jeden, z 1 do 2. Pojawi się na końcu wiersza ponieważ inne przyciski maja liczbę porządkową 1. Jeśli naciśniesz drugi przycisk, jego liczba porządkowa zwiększy się o jeden i będzie przeniesiony na koniec wiersza. Pozycje z tą samą wartością porządkową pojawią się w tym samym porządku jak w źródle. Jeśli potem naciśniesz ponowie przycisk oznaczony One, jego liczba porządkową zwiększy się do 3 i zostanie przeniesiony na koniec. W końcu, naciśnięcie przycisku oznaczonego Three zwiększy jego liczbę porządkową na 2 i pojawi się pomiędzy pozostałymi dwoma przyciskami.

+ +
Atrybut dir
+ +

Końcowym atrybutem porządkowym pola jest atrybut dir, lub właściwość -moz-box-direction CSS. Jeśli jest ustawiony na reverse, wszystkie elementy potomne w polu lub wyświetlane, są w odwróconym porządku. W polu poziomym, elementy będą wyświetlane od prawej do lewej a w polu pionowym, elementy będą wyświetlane od dołu do góry. Tu mamy przykład:

+ +

Przykład 5 : Źródła Podgląd

+ +
<hbox dir="reverse">
+  <button label="Left"/>
+  <button label="Center"/>
+  <button label="Right"/>
+</hbox>
+
+ +

Nawigowanie przez nodes (węzły) używając porządkowania obiektu pola zwróci elementy w kolejności w jakiej są wyświetlane stanowiąc o porządku tworzenia regulacji. Zatem, jeśli zmienisz liczbę porządkową elementu, będzie on miał inną pozycję w porządku pola. Odwrócenie kierunku jednak nie zmienia porządku pola.

+ +

Następnie dowiemy się jak stosujemy obiekty XPCOM z XUL i skryptami.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202kowe_drzewa/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202kowe_drzewa/index.html" new file mode 100644 index 0000000000..38c5f9ebdf --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/obiekty_pude\305\202kowe_drzewa/index.html" @@ -0,0 +1,189 @@ +--- +title: Obiekty pudełkowe drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Obiekty_pudełkowe_drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Tree_Box_Objects +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule opisane będą elementy okna drzewa, odpowiedzialne za to jak drzewo wygląda.

+ +

O obiektach

+ +

Obiekty okna były opisane we wcześniejszym artykule. Obiekty okna drzewa, specjalnym rodzajem przeznaczony dla drzew. Okno drzewa wdrąża interfejs TreeBoxObject.

+ +

Przerysowywanie drzewa

+ +

Poznaliśmy już rowCountChanged(), funkcję okna drzewa. Jest używana, żeby wykazać, że jeden lub więcej wierszy było dodanych lub usuniętych. Drzewo przerysuje dany obszar. Nie musisz wywoływać tej funkcji, gdy wiersz został nieznacznie zmieniony, tzn. zmieniona została etykieta komórki. A takim przypadku lepiej wywołać prostszą funkcję invalidateRow() w celu przerysowania pojedynczego wiersza. Drzewo wywoła widok, by dodać uaktualnienie a następnie zaktualizuje zawartość ekranu.

+ +

Inne przerysowujące funkcje to:

+ + + +

Zauważ, że przerysowanie nie nastąpi do momentu, aż Mozilla nie przerysuje tego w tle.

+ +

Przewijanie drzewa

+ +

Możesz przewijać drzewo używając różnych metod, podobnych do tych z pól listy. Funkcja scrollToRow może być użyta do przewinięcia konkretnego rzędu. Oto prosty przykład:

+ +

Przykład 1 : Źródła Podgląd

+ +
<script>
+function doScroll(){
+  var value = document.getElementById("tbox").value;
+  var tree = document.getElementById("thetree");
+
+  var boxobject = tree.boxObject;
+  boxobject.QueryInterface(Components.interfaces.nsITreeBoxObject);
+  boxobject.scrollToRow(value);
+}
+</script>
+
+<tree id="thetree" rows="4">
+  <treecols>
+    <treecol id="row" label="Row" primary="true" flex="1"/>
+  </treecols>
+  <treechildren>
+    <treeitem label="Row 0"/>
+    <treeitem label="Row 1"/>
+    <treeitem label="Row 2"/>
+    <treeitem label="Row 3"/>
+    <treeitem label="Row 4"/>
+    <treeitem label="Row 5"/>
+    <treeitem label="Row 6"/>
+    <treeitem label="Row 7"/>
+    <treeitem label="Row 8"/>
+    <treeitem label="Row 9"/>
+  </treechildren>
+</tree>
+
+<hbox align="center">
+  <label value="Scroll to row:"/>
+  <textbox id="tbox"/>
+  <button label="Scroll" oncommand="doScroll();"/>
+</hbox>
+
+ +

Zauważ, że używamy atrybutów wierszy tree żeby wyszczególnić, że tylko cztery wiersze są pokazane jednocześnie. To czyni przykład prostszym, w dostrzeżeniu jak pracuje. Zauważ też, że pierwszym wierszem jest 0.

+ +

Funkcja doScroll() pobiera obiekt okna i wywołuje funkcję scrollToRow() z argumentem ustawionym na wartość textbox. Zauważ, że obiekt okna drzewa może być odzyskany tą samą drogą jak obiekty okna używające własności boxObject, jednak musimy wywołać QueryInterface(), by przenieść obiekt okna do bardziej wyspecjalizowanego obiektu okna drzewa. Ogólne funkcje obiektów okien są także dostępne dla drzew.

+ +

Dodatkowe metody przewijania dają funkcje scrollByLines(), scrollByPages() i ensureRowIsVisible(). scrollByLines() przewija w dół lub w górę o pewna liczbę wierszy. Użyj dodatnich liczb by przewinąć w dół, a ujemnych w górę. Funkcja scrollByPages() przewija o pewna liczbę stron i jest automatycznie wywoływana, gdy użytkownik wciska klawisze PAGE UP i PAGE DOWN, gdy drzewo jest wybrane. Strona jest równoważna liczbie widzianych wierszy. Liczbę wierszy nie jest trudno obliczyć, funkcja getPageLength() zwraca liczbę wierszy na stronie. W przykładzie zwróciła być cztery.

+ +
+

Zauważ, ze w Firefox 1.0 i Mozilla 1.7 i wcześniejszych, funkcja getPageLength() jest wywoływana zamiast getPageCount(). Nazwa została zmieniona, ponieważ była mylnie interpretowana, że zwraca liczbę stron, a nie rozmiar. Można określić także liczbę stron, dzieląc liczbę wierszy, przez liczbę wierszy na stronę.

+
+ +

Funkcja ensureRowIsVisible() przewinie do rzędu tak, jak scrollToRow(), ale nie w przypadku, gdy wiersz jest już widoczny.

+ +

Współrzędne komórki

+ +

Kilka z najbardziej interesujących funkcji obiektów okna drzewa, mogą być użyte w celu otrzymania niektórych elementów drzewa.

+ + + +
tree.boxObject.getRowAt( 50, 100 );
+
+ +

Ten przykład zwróci indeks wiersza, z poziomą pozycją 50, a pionową 100. Jedną ważna rzeczą jest to, że współrzędne mierzone jest od górnego, lewego rogu dokumentu, a nie krawędzi drzewa.

+ +
One important thing to note is that the coordinates are measured from the upper left corner of the containing document, not the edge of the tree itself.
+ +

To czyni łatwiejszym przekazanie współrzędnych do funkcji, jak jest przedstawione na przykładzie funkcji getCellAt().

+ +

Przykład 2 : Źródła Podgląd

+ +
<script>
+function updateFields(event){
+  var row = {}, column = {}, part = {};
+  var tree = document.getElementById("thetree");
+
+  var boxobject = tree.boxObject;
+  boxobject.QueryInterface(Components.interfaces.nsITreeBoxObject);
+  boxobject.getCellAt(event.clientX, event.clientY, row, column, part);
+
+  if (column.value && typeof column.value != "string")
+    column.value = column.value.id;
+
+  document.getElementById("row").value = row.value;
+  document.getElementById("column").value = column.value;
+  document.getElementById("part").value = part.value;
+}
+</script>
+
+<tree id="thetree" flex="1" onmousemove="updateFields(event);">
+  <treecols>
+    <treecol id="utensil" label="Utensil" primary="true" flex="1"/>
+    <treecol id="count" label="Count" flex="1"/>
+  </treecols>
+  <treechildren>
+    <treeitem>
+      <treerow>
+        <treecell label="Fork"/>
+        <treecell label="5"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="Knife"/>
+        <treecell label="2"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="Spoon"/>
+        <treecell label="8"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+</tree>
+
+<label value="Row:"/>
+<label id="row"/>
+<label value="Column:"/>
+<label id="column"/>
+<label value="Child Type:"/>
+<label id="part"/>
+
+ +

Funkcja getCellAt() pobiera pięć argumentów, współrzędne i trzy inne argumenty. Pozostałe parametry są użyte dla funkcji żeby zwrócić więcej niż jedna wartość. Zobaczysz pewną liczbę interfejsów, które używają pozostałych parametrów w odniesieniu do obiektu XUL-a. Są one wskazane przez słowo ‘out’ przed argumentem. Dla nich, będziesz potrzebować dostarczyć pusty obiekt i funkcja zapełni własność ‘value’ konieczną wartością.

+ +

Trzy parametry będą zapełnione wierszem, kolumną i typem pochodnej pozycji. Wiersz jest indeksem wiersza pod kursorem myszy, ponieważ nazywamy ją współrzędnymi znaczenia mousemove. Jeżeli współrzędna nie jest ponad wierszem, wartość wiersza będzie ustawiona na -1. Kolumna jest obiektem kolumny Mozilla 1.8 i późniejszej. We wcześniejszych wersjach kolumny są identyfikowane przez id kolumny. W późniejszych wersjach istnieje oddzielny obiekt kolumny, który może być zapytany o dane kolumny.

+ +

Następująca linia jest użyta tak, że przykład zadziała na wszystkich wersjach.

+ +
if (column.value && typeof column.value != "string")
+  column.value = column.value.id;
+
+ +

Jeżeli kolumna jest ciągiem znaków, używamy Mozilla 1.7 lub wcześniejszej, ale dla wersji późniejszych uzyskujemy id kolumny z obiektu kolumny. Jeżeli tworzysz kod dla wielorakich wersji, powinieneś sprawdzić ten powyżej.

+ +

Ostatni argument dla getCellAt() pochodna pozycji wypisze, które pole jest zapełnione ciągiem znaków zależnym od tego, przy której części komórki jest współrzędna. Jeżeli poruszasz myszą dookoła powyższego przykładu, możesz zauważyć, że etykieta zmienia się pomiędzy ‘text’ i ‘cell’. Wartość ‘text’ wskazuje miejsce gdzie tekst mógłby być umieszczony, a cell wskazuje obszar dookoła tekstu. Ostateczną wartością może być ‘image’, jeżeli obraz znajduje się w komórce drzewa, a współrzędna jest odpowiednia dla miejsca gdzie znajduje się obraz.

+ +

W celu odwrócenia tego, czyli uzyskania komórki dla danej współrzędnej, użyj funkcji getCoordsForCellItem(). Pobiera ona siedem argumentów jak opisane poniżej.

+ +
var x = {}, y = {}, width = {}, height = {};
+if (typeof tree.columns != "undefined") column = tree.columns[column];
+tree.boxObject.getCoordsForCellItem( row, column, part, x, y, width, height );
+
+ +

Wiersz, kolumna, I cześć argumentów, podobnych do tych zwróconych z funkcji getCellAt(). Znowu kolumna powinna być ciągiem znaków lub obiektem kolumny, zależnie od tego, której wersji używasz. Typ części komórki może być użyty do otrzymania współrzędnych tekstu, całej komórki, krętki lub obrazu w komórce. Te same wartości jak używa funkcja getCellAt(). Funkcja getCoordsForCellItem() zwraca współrzędne x i y, jako parametry wyjściowe.

+ +

Następnie, zobaczymy RDF, który może zostać użyty do automatycznego rozmieszczenia drzew i innych elementów.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/okna_otwierania_i_zapisywania_plik\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/okna_otwierania_i_zapisywania_plik\303\263w/index.html" new file mode 100644 index 0000000000..4135880c83 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/okna_otwierania_i_zapisywania_plik\303\263w/index.html" @@ -0,0 +1,95 @@ +--- +title: Okna otwierania i zapisywania plików +slug: Mozilla/Tech/XUL/Kurs_XUL/Okna_otwierania_i_zapisywania_plików +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Open_and_Save_Dialogs +--- +

+

« PoprzedniNastępny »

+

+ +

Często spotykanym typem okien są takie, z których użytkownik ma możliwość otwierania lub zapisywana plików.

+ +

Wybór pliku

+ +

Okno wyboru pliku jest najczęściej używane przy komendach z menu 'Otwórz' i 'Zapisz', ale można też go użyć w innym miejscu, kiedykolwiek użytkownik potrzebuje wybrać plik. Interfejs XPCOM nslFilePicker jest używany w celu zaimplementowania okna wyboru pliku.

+ +
Note that the file picker only works from chrome URLs.
+ +

Można użyć tego okna w trzech trybach:

+ + + +

Wygląd okna jest inny dla każdego z powyższych typów i dodatkowo różni się w zależności od platformy. Kiedy użytkownik wybierze plik lub folder, wtedy można z niego czytać lub do niego zapisywać.

+ +

Interfejs okna wyboru pliku nslFilePicker jest odpowiedzialny za wyświetlanie okna w jednym z trzech modów. Można ustawić kilka cech tego okna za pomocą wspomnianego interfejsu. Kiedy okno zostanie zamknięte, można użyć funkcji interfejsu, aby pobrać wybrany plik.

+ +

Tworzenie okna do wyboru pliku

+ +

Na początek należy stworzyć komponent okna do wyboru pliku i zainicjować go.

+ +
var nsIFilePicker = Components.interfaces.nsIFilePicker;
+var fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(nsIFilePicker);
+fp.init(window, "Select a File", nsIFilePicker.modeOpen);
+
+ +

Najpierw, tworzymy nowy obiekt "wybieracza pliku", który jest przechowywany w zmiennej "fp". Funkcja "init" jest używana w celu inicjalizacji "wybieracza". Funkcja ta ma 3 argumenty: okno macierzyste, które otwiera okno wyboru, tytuł okna wyboru i jego mod. W przykładzie powyżej mod to "modeOpen", którego używamy dla okna wyboru otwieranego pliku. Można też użyć modu modeGetFolder i modeSave. Te tryby to stałe interfejsu nsIFilePicker.

+ +

Default directory and filters

+ +

Istnieją dwie cechy okna wyboru, które można ustawić przed jego wyświetleniem.

+ + + +

Domyślny folder można zmienić przez ustawianie własności displayDirectory obiektu na wybrany folder. Folder ten powinien być obiektem nsILocalFile. Jeśli nie ustalisz domyślnego katalogu, będzie on wybrany automatycznie. Aby dodać filtry, wywołaj funkcję appendFilters(), aby ustalić typy plików do wyświetlania.

+ +
fp.appendFilters(nsIFilePicker.filterHTML | nsIFilePicker.filterImages);
+fp.appendFilters(nsIFilePicker.filterText | nsIFilePicker.filterAll);
+
+ + + +

Można również użyć filterXML lub filterXUL, odpowiednio dla plików XML i XUL. Jeśli chcesz filtrować inne typy plików, możesz użyć funkcji appendFilter():

+ +
fp.appendFilter("Audio Files","*.wav; *.mp3");
+
+ +

W przykładzie powyżej dodano filtr dla plików wave i mp3. Pierwszy argument to tytuł typu pliku, a drugi do lista masek plików rozdzielona średnikami. Można dodać tyle masek ile się chce. Można wywoływać appendFilter() tak często, jak tylko jest potrzebne dodawanie filtrów. Kolejność, w jakiej je podajesz, determinuje ich ważność. Typowo pierwszy w kolejności typ wybierany jest jako domyślny.

+ +

Wybranie i pobranie pliku

+ +

Wreszcie można otworzyć okno wywołując funkcję show(). Nie potrzebuje ona argumentów, ale zwraca kod statusu, który oznacza co wybrał użytkownik. Zauważmy, że funkcja nie zwróci nic dopóki użytkownik nie wybierze pliku. Zwraca ona jedną z następujących trzech stałych:

+ + + +

Powinieneś sprawdzić zwracaną wartość i następnie pobrać obiekt pliku z okna wyboru pliku stosując własność file.

+ +
var res = fp.show();
+if (res == nsIFilePicker.returnOK){
+  var thefile = fp.file;
+  // --- do something with the file here ---
+}
+
+ +

Następnie, zobaczymy jak utworzyć kreator.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/panele_tre\305\233ci/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/panele_tre\305\233ci/index.html" new file mode 100644 index 0000000000..dcf3f20fdf --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/panele_tre\305\233ci/index.html" @@ -0,0 +1,83 @@ +--- +title: Panele treści +slug: Mozilla/Tech/XUL/Kurs_XUL/Panele_treści +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Content_Panels +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule, zobaczymy jak dodawać panele potrafiące wyświetlić stronę HTML lub inne pliki XUL.

+ +

Dodawanie paneli potomnych

+ +

Może kiedyś będziesz potrzebować załadować część dokumentu z innego źródła lub zmienić część okna. Dobrym przykładem jest kreator krok-po-kroku, który będzie zawierał pewną liczbę ekranów, z różnymi układami pytań. Kiedy użytkownik kliknie przycisk Dalej, wyświetlany będzie następny ekran.

+ +

Możesz utworzyć interfejs kreatora otwierając nowe okno dla każdego ekranu. Są jednak trzy problemy z tym związane. Po pierwsze, kolejne okna mogą otwierać się w różnych miejscach (to jeszcze da się pominąć). Po drugie, elementy takie jak przyciski Dalej i Wstecz są takie same w całym kreatorze. Lepiej po prostu zmieniać zawartość kreatora. Po trzecie, koordynowanie skryptów uruchamianych w oddzielnych oknach jest trudne.

+ +

XUL posiada element wizard (kreator), który może być zastosowany do tworzenia kreatorów. Jest on opisany dalszej części kursu.

+ +

Innym sposobem jest użycie elementu iframe, który działa tak samo jak jego HTML-owy odpowiednik. Otwiera on inny dokument w tym samym oknie (ramce). Jego dużym plusem jest to, że może być umieszczony gdziekolwiek w oknie i może ładować swą zawartość z oddzielnego pliku. URL pliku, który ma być wyświetlony w ramce ustawia się za pomocą atrybutu src. Ten adres URL może wskazywać na jakikolwiek plik, najczęściej wskazuje on na plik HTML lub XUL. Możesz użyć skryptu aby zmienić zawartość ramki (iframe) bez wpływu na główne okno.

+ +

W przeglądarce Mozilla, obszar w którym wyświetlana strona WWW jest stworzony właśnie jako iframe. Kiedy użytkownik klika na odnośnik w dokumencie lub wpisuje adres URL, źródło ramki jest zmieniane.

+ +
Przykład iframe
+ +

Przykład 1 : Źródła Podgląd

+ +
<toolbox>
+  <toolbar id="nav-toolbar">
+    <toolbarbutton label="Wstecz"/>
+    <toolbarbutton label="Dalej"/>
+    <textbox id="urlfield"/>
+  </toolbar>
+</toolbox>
+
+<iframe id="content-body" src="http://www.mozilla.org/index.html" flex="1"/>
+
+ +

Powyższy przykład stworzył bardzo prosty interfejs przeglądarki web. Okno zawiera 2 elementy: toolbox i iframe. Przyciski (button) <tt>Dalej</tt> i <tt>Wstecz</tt> oraz pole do wpisywania adresu URL zostały po prostu dodane do paska narzędzi. Strony otwierają się wewnątrz iframe. W tym przypadku domyślnie otworzy się witryna Mozilli.

+ +

Ten przykład nie działa w pełni. Następnie możesz dodać skrypt, który zmienia atrybut src w odpowiednim momencie, np. kiedy użytkownik wciśnie klawisz <tt>Enter</tt>.

+ +

Przeglądarki

+ +

Oto drugi typ panelu treści, stosując tag browser. Możesz to użyć kiedy chcesz stworzyć ramkę wyświetlającą zawartość jak przeglądarka. Właściwie ramka iframe też to potrafi zrobić, ale przeglądarka posiada więcej rozmaitych cech. Na przykład przeglądarka zapamiętuje historię odwiedzanych stron dla użytku z przyciskami <tt>wstecz</tt> i <tt>Dalej</tt>. browser potrafi również załadować strony z flagą "referer" lub inną. Najważniejsze jest jednak to, że tag browser powinien być użyty, kiedy chcesz stworzyć interfejs podobny do przeglądarki, a iframe może stworzyć tylko prosty panel.

+ +

Podobny element tabbrowser, posiada funkcjonalność browser, lecz posiada również pasek z zakładkami do otwierania wielu stron naraz. Jest to używane w Mozilli dla jej "zakładkowego" interfejsu. Element tabbrowser jest w rzeczywistości zbudowany z elementu tabbox, na którym są umieszczone elementy przeglądarki. Te same typy przeglądarek oferują podobną kontrolę stron, jakie są w nich wyświetlane.

+ +
Przykład browser
+ +

Przykład 2 : Źródła Podgląd

+ +
<browser src="http://www.mozilla.org" flex="1"/>
+
+ +

Tak samo jak w iframe, możesz wyszczególnić URL w przeglądarce stosując atrybut src. Dla elementu tabbrowser, nie możesz ustawić URL tak jak tutaj, ponieważ to nie wyświetla jednego URL. Musisz użyć skryptu i wywołać funkcję loadURI.

+ +

Są trzy klasy przeglądarki, właściwe do typu zawartości, jaki zamierzasz wyświetlić. Typ może być ustawiony za pomocą atrybutu type.

+ +

Pierwszy typ, domyślny (default) jest używany kiedy nie wybierzesz typu. W tym wypadku zawartość załadowana do przeglądarki jest traktowana jakby była częścią tej samej aplikacji i ma dostęp do zewnętrznego okna. To znaczy, że jeśli skrypt załadowany do takiej przeglądarki chce dostać całe okno, zostanie otwarty w nowym oknie.

+ +

To może być odpowiednie dla panelu-dziecka który jest częścią twojej aplikacji, lecz niezbyt, gdy chcesz przeglądarkę wczytującą stronę web. Natomiast chcesz pozwolić stronie na dostęp tylko do jej samej. Powinieneś zauważyć, że paski narzędzi, pasek statusu i parę innych rzeczy okna Mozilli jest stworzone z elementu tabbrowser kształtującego obszar główny. Ten wewnętrzny obszar wyświetla stronę web i strona ta nie może uzyskać dostępu do reszty okna. Dzieje się tak dzięki drugiemu typowi przeglądarki, użytym dzięki atrybutowi type ustawionego na wartość content. Oto przykład:

+ +
+
<browser src="http://www.mozilla.org" type="content" flex="1"/>
+
+
+ +
Ważne: Musimy ustawić atrybut type poprawnie, jeśli chcemy wyświetlić strony internetowe wewnątrz elementu browser.
+ +

Jest to ważne, żeby ustawić atrybut type poprawnie, jeśli chcesz wyświetlać strony wewnątrz elementu browser. Element tabbrowser ustawia wartość content automatycznie we wszystkich swoich wewnętrznych przeglądarkach. Tak więc nie musisz ustawiać go, jeśli używasz elementu tabbrowser.

+ +

Trzeci typ jest używany by wskazywać główną zawartość do środka okna. tabbrowser ustawia to automatycznie dla tej przeglądarki, która jest aktualnie używana. Lecz możesz ustawić to zmieniając atrybut type elementu browser, jeśli masz ich (przeglądarek) więcej w jednym oknie, np. jeśli masz sidebara wyświetlającego jakąś zawartość cały czas. Ustaw atrybut type na wartość content-primary. To działa jak wartość content, lecz daje to możliwość odwołania się do tego obiektu bez miany fokusu. To ułatwia napisanie skryptu mającego dostęp do głównej przeglądarki. Ta własność jest stworzona specjalnie dla elementu tabbrowser, gdyż obiekt ją posiadający jest ciągle widoczny i jest możliwy do niego dostęp bez przerwy.

+ +

Następnie, zobaczymy jak zrobić rozdzielacz.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/paski_narz\304\231dzi/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/paski_narz\304\231dzi/index.html" new file mode 100644 index 0000000000..952b09f3b6 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/paski_narz\304\231dzi/index.html" @@ -0,0 +1,85 @@ +--- +title: Paski narzędzi +slug: Mozilla/Tech/XUL/Kurs_XUL/Paski_narzędzi +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Toolbars +--- +

 

+

+

« PoprzedniNastępny »

+

+

Pasek narzędzi zazwyczaj jest umieszczony wzdłuż góry okna i zawiera parę przycisków, które pełnią przypisane im funkcje. XUL posiada metodę do tworzenia przycisków.

+

Dodawanie paska narzędzi

+

Tak jak wiele elementów w XUL, paski narzędzi są typem pudełka. Zazwyczaj w pasku narzędzi umieszczone są przyciski, ale może się w nim znajdować dowolny element. Na przykład okno przeglądarki Mozilla posiada w pasku narzędzi pole tekstowe, które wyświetla adres URL.

+

Paski narzędzi mogą być umieszczone na jakimkolwiek boku okna, albo poziomo albo pionowo. Oczywiście zwykle nie położyłbyś pola tekstowego w pionowym pasku narzędzi. W rzeczywistości, ponieważ paski narzędzi są tylko pudełkami, mogą zostać umieszczone gdziekolwiek chcemy, również pośrodku okna. Zwykle jednakże ustawiamy pasek narzędzi tak, aby pojawił się wzdłuż góry okna. Kiedy więcej niż jeden pasek narzędzi jest położony obok drugiego, to zwykle są one pogrupowane w 'toolbox'.

+

Po lewej stronie paska narzędzi znajduje się wcięcie, które, jeśli klikniesz, to zwinie pasek narzędzi i będzie tylko widoczne owe wcięcie. Wcięcie to nazywamy + + grippy + . Kiedy kilka pasków narzędzi umieścimy w tym samym pudełku, uchwyty zostaną zwinięte do pojedynczego rzędu, dzięki czemu mniej miejsca zostanie zajęte. Pionowe paski narzędzi mają uchwyty nad sobą. Zazwyczaj są one zwijane, jeśli użytkownik potrzebuje w oknie więcej przestrzeni dla głównego okna.

+
Prosty toolbar wewnątrz toolbox
+

Źródła Podgląd

+
+ grafika:toolbar1.png
+
<toolbox>
+  <toolbar id="nav-toolbar">
+    <toolbarbutton label="Wstecz"/>
+    <toolbarbutton label="Dalej"/>
+  </toolbar>
+</toolbox>
+
+

Został utworzony pasek narzędzi zawierający dwa przyciski; przycisk Wstecz oraz przycisk Dalej. Pasek został umieszczony wewnątrz elementu toolbox. Zastosowane zostały cztery nowe znaczniki, które są omówione poniżej:

+
+
+ toolbox 
+
+ Pudełko zawierające paski narzędzi.
+
+ toolbar 
+
+ Pojedynczy pasek narzędzi zawierający elementy, takie jak przyciski. Pasek narzędzi może być zwinięty przy pomocy chwytaka, pojawiającego się po lewej stronie lub powyżej paska.
+
+ toolbarbutton 
+
+ Przycisk na pasku narzędzi, który posiada takie same właściwości jak zwykły przycisk, od którego różni się zazwyczaj sposobem wyświetlania.
+
+ toolbargrippy 
+
+ Element tworzący chwytak, stosowany do zwijania oraz rozwijania paska narzędzi. Nie musimy go dodawać, jako że zostanie dodany automatycznie.
+
+

toolbar jest głównym elementem, który utworzy rzeczywisty pasek narzędzi. Wewnątrz niego są umieszczone oddzielne pozycje paska narzędzi, są to zazwyczaj przyciski, ale mogą to być również elementy innego typu. Pasek narzędzi powinien posiadać atrybut id, w przeciwnym wypadku grippy nie będzie mógł zwinąć lub rozwinąć paska narzędzi w prawidłowy sposób.

+

W przykładzie powyżej został stworzony tylko jeden pasek narzędzi. Wiele pasków może zostać utworzonych poprzez dodanie elementów toolbar po pierwszym elemencie.

+

Element typu toolbox jest kontenerem dla pasków narzędzi. W niektórych programach znajduje się kilka pasków wzdłuż góry okna. Wszystkie one mogą zostać umieszczone wewnątrz elementu toolbox.

+

Nie musisz umieszczać elementów toolbar wewnątrz toolbox.

+

Grippy jest tworzony poprzez element toolbargrippy. Zastosowanie tego elementu poza paskiem narzędzi mija się z celem, ponieważ nie będzie miał czego zwinąć. Można jednak zmienić jego wygląd. Żeby schować grippy, należy do elementu toolbar dodać atrybut grippyhidden ustawiony na wartość true.

+
+ Te same paski, dwa z nich zwinięte
+

grafika:toolbar3.jpg

+
+

Poniżej przykład elementu toolbox zawierający wewnątrz trzy paski narzędzi
+ grafika:toolbar2.jpg

+
+

Nasz przykład: Znajdź pliki

+

W celach demonstracyjnych dodajmy pasek narzędzi do okna dialogowego Znajdź pliki. Będzie on zawierał dwa przyciski, Otwórz oraz Zapisz, które pozwolą na zapisanie wyników wyszukiwania oraz ich późniejsze otwarcie.

+

 

+
<vbox flex="1">
+  <toolbox>
+    <toolbar id="findfiles-toolbar">
+      <toolbarbutton id="opensearch" label="Otwórz"/>
+      <toolbarbutton id="savesearch" label="Zapisz"/>
+    </toolbar>
+  </toolbox>
+  <tabbox>
+
+

 

+
+ grafika:toolbar5.png
+

Został dodany pasek narzędzi z dwoma przyciskami. Na obrazku można zobaczyć, że zostały umieszczone poziomo na górze okna. Grippy także został wyświetlony po lewej stronie paska narzędzi. Zauważ, że pasek narzędzi został umieszczony wewnątrz pionowego pola powyżej pudełka kart. Jest to spowodowane koniecznością pionowego ułożenia, tak aby pasek narzędzi mógł się pojawić ponad pozostałymi elementami.

+

Nasz przykład: Znajdź pliki: Źródła Podgląd

+
+

W następnym artykule dowiemy się jak dodać do okna pasek menu.

+

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/paski_post\304\231pu/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/paski_post\304\231pu/index.html" new file mode 100644 index 0000000000..5be89be3bd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/paski_post\304\231pu/index.html" @@ -0,0 +1,59 @@ +--- +title: Paski postępu +slug: Mozilla/Tech/XUL/Kurs_XUL/Paski_postępu +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Progress_Meters +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule przyjrzymy się bliżej sposobom tworzenia pasków postępu. +

+

Dodanie paska postępu

+

Pasek postępu jest paskiem, który wyświetla, jaka cześć zadania jest już wykonana. Najczęściej spotykamy się z paskiem postępu podczas pobierania plików lub podczas trwania długotrwałych operacji. XUL posiada zdefiniowany element progressmeter, który stosuje się do tworzenia nowego paska. Rozróżniamy dwa typy pasków postępu: określony i nieokreślony. +

Określone paski postępu są stosowane, gdy znamy długość czasu, jaki będzie potrzebny do wykonania danej operacji. Pasek postępu będzie się wypełniał, gdy będzie już pełny, operacja powinna zostać zakończona. Najczęściej wykorzystywanymi okienkami, które stosują ten typ paska, to okienka dialogowe pobierania pliku, oczywiście, jeśli znany jest rozmiar pliku. +

Nieokreślone paski postępu stosujemy, gdy nie znamy długości czasu, jaki będzie potrzebny do wykonania danej operacji. Pasek postępu będzie posiadał animację wypełniających się słupków lub wypełniającego się paska, zależy to od wykorzystywanej platformy systemowej oraz ustawionego motywu przeglądarki. +

Określony pasek postępu: +Grafika:prog-det.png +

Nieokreślony pasek postępu: +Grafika:prog-udet.png +

Pasek postępu posiada następującą składnię:

+
<progressmeter
+    id="identifier"
+    mode="determined"
+    value="50%"/>
+
+

Atrybutami są:

+
id 
Unikalny identyfikator paska postępu, +
mode 
Typ paska postępu. Jeśli jest ustawiony na wartość determined, pasek postępu jest określonym paskiem postępu, wypełniającym się do momentu ukończenia wykonywanego zadania. Jeśli jest ustawiony na wartość undetermined, pasek postępu jest nieokreślony, przy którym nieznany jest czas trwania operacji. Jeśli typ paska nie zostanie ustawiony, to przyjęta zostanie wartość domyślna - determined. +
value 
Bieżąca wartość paska postępu. Stosujemy dla określonych pasków postępu. Wartość wyrażona w procentach powinna zawierać się w przedziale od 0% do 100%. Wartość byłaby zmieniana przez skrypt, kiedy zadanie zakończy się. +
+
+
Przykład okna: Znajdź pliki
+

Dodajmy pasek postępu do naszego okna dialogowego Znajdź pliki. Normalnie powinno się stosować nieokreślony pasek postępu, ponieważ nie wiemy jak wiele plików będziemy szukać lub jak długo będzie trwało szukanie. Jednakże, możemy dodać jeden normalny pasek jako animowany pasek postępu, który może być nieokreślony podczas programowania. Pasek postępu będzie wyświetlany normalnie tylko podczas szukania. W kolejnych artykułach dodamy skrypty do uruchomienia paska postępu. +

+
<hbox>
+
+  <progressmeter value="50%" style="margin: 4px;"/>
+
+  <spacer flex="1"/>
+</hbox>
+
+


+Wartość ustawiona jest na 50%, aby widoczny był pasek postępu w oknie. Margines został ustawiony na 4 piksele tak, aby pasek był o tyle oddalony od brzegu okna. Jak wcześniej wspomniano, chcemy, aby pasek postępu był wyświetlany jedynie podczas szukania plików. Skrypt będzie go wyświetlał oraz ukrywał, zależnie od konieczności. +


+Przykład: Źródła Podgląd +

Grafika:progress1.png +

+
+

W kolejnym artykule dowiemy się, w jaki sposób dodać elementy do okna, stosując język HTML. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/paski_przewijania/index.html b/files/pl/mozilla/tech/xul/kurs_xul/paski_przewijania/index.html new file mode 100644 index 0000000000..19cbb05912 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/paski_przewijania/index.html @@ -0,0 +1,57 @@ +--- +title: Paski przewijania +slug: Mozilla/Tech/XUL/Kurs_XUL/Paski_przewijania +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Scroll_Bars +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule dowiemy się, jak dodać paski przewijania do okna. +

+

Dodawanie pasków przewijania do okna

+

Pasek przewijania jest zazwyczaj stosowany do poruszania się po większych dokumentach. Możemy go także stosować, aby wskazywać wartości, które zmieniają się w określonym zakresie. Paski przewijania można tworzyć na wiele sposobów. W języku XUL można go uzyskać za pomocą znacznika scrollbar. Niektóre elementy jak pola tekstowe, również będą zawierać paski przewijania, kiedy ich zawartość wewnątrz pudełka będzie za duża. +

W tym artykule omówimy stworzenie pojedynczego paska przewijania. Użytkownik będzie mógł ustawić wartości paska przewijania, aby go dostosować. Prawdopodobnie nie będziesz musiał stosować tego zbyt często. Pasek przewijania jest stworzony z kilku części: suwaka, który jest jego główną częścią wraz z dopasowanym pudełkiem jego ruchu, i dwóch przycisków wraz ze strzałkami na jego końcach. Pasek przewijania tworzy wszystkie te elementy automatycznie. +

grafika:scroll1.png +

Składnia polecenia tworzącego pasek przewijania jest następująca:

+
<scrollbar
+    id="identyfikator"
+    orient="horizontal"
+    curpos="20"
+    maxpos="100"
+    increment="1"
+    pageincrement="10"/>
+
+

Atrybuty są następujące:

+
id +
Unikalny identyfikator paska przewijania. +
+
orient +
Określa kierunek paska przewijania. Domyślna wartością jest horizontal, która tworzy pasek przewijania, który możemy przesuwać od lewej do prawej. Możemy także określić vertical, który tworzy pasek przewijania, który przesuwamy od góry do dołu.
+
curpos +
Sygnalizuje aktualną pozycję bieżącą paska przewijania. Przyjmuje wartości z zakresu od 0 do wartości maxpos. Nie potrzebuje wartości jednostek. Domyślnie jest ustawiony na 0. +
+
maxpos +
Sygnalizuje maksymalną pozycje paska przewijania. Przyjmuje tylko wartości liczbowe i nie posiada jednostek. Domyślną wartością jest 100. +
+
increment +
Wynosi tyle, co wartość atrybutu curpos zmienionego, gdy strzałka na pasku przewijania jest naciśnięta. Domyślnie posiada wartość równą 1. +
+
pageincrement +
Wynosi tyle, co wartość atrybutu curpos zmienionego, gdy powierzchnia paska przewijania jest kliknięta. Powierzchnia jest obszarem, w którym przytrzymany kursorem pasek przewijania jest przesuwany. Domyślną wartością jest 10. +
+

Przykład kodu przedstawiony powyżej stworzy nam pasek przewijania, który może przesuwać się w zakresie od 0 do 100. Wartość 100 może być liczbą linii listy, ale może być także czymkolwiek sobie życzymy. W przykładzie wartość początkowa wynosi 20. Kiedy klikniemy w strzałkę na pasku przewijania, wartość będzie się zmieniała o 1 w dół lub w górę. Poprzez stronicowanie pasek przewijania będzie zmieniał wartość o 10. +

Kiedy użytkownik kliknie na strzałki, suwak przesunie się równoważnie do określonej wartości increment. Zwiększająca się wartość tego atrybutu będzie przypadkiem paska przewijania przesuwanego dalej wraz z każdym kliknięciem. Znajdujący się bliżej lewej lub górnej pozycji pasek przewijania posiada wartość 0, a mający pozycję znajdującą się bliżej prawej lub dolnej pozycji paska przewijania określi nam atrybut maxpos. +

Możesz dopasować wszystkie wartości, tak żeby suwak znajdował się i przesuwał, jak tylko chcesz. +

Następnie dowiemy się, jak utworzyć paski narzędzi. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/plik_w\305\202asno\305\233ci/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/plik_w\305\202asno\305\233ci/index.html" new file mode 100644 index 0000000000..ebae58ec36 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/plik_w\305\202asno\305\233ci/index.html" @@ -0,0 +1,85 @@ +--- +title: Plik własności +slug: Mozilla/Tech/XUL/Kurs_XUL/Plik_własności +tags: + - Kurs_XUL + - Lokalizacja + - Przewodniki + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Property_Files +--- +

+

« PoprzedniNastępny »

+
W skryptach nie można używać encji. Zamiast nich stosuje się pliki własności.

+ +

Własności

+ +

Z plików DTD korzysta się przy tekstach wyświetlanych z pliku XUL. Skrypty nie są jednak parsowane pod względem encji. Dodatkowo, może zajść potrzeba wyświetlenia wiadomości wygenerowanej ze skryptu, jeśli np. nie znamy dokładnego tekstu, jaki ma zostać wyświetlony. W tym celu stosuje się właśnie pliki własności.

+ +

Plik własności zawiera zestaw ciągów znaków. Pliki własności znajdują się obok plików DTD, mają rozszerzenie .properties. Własności w plikach deklaruje się za pomocą składni nazwa=wartość. Przykład przedstawiono poniżej.

+ +
notFoundAlert=Nie znaleziono plików wg wskazanych kryteriów.
+deleteAlert=Kliknij OK, aby usunąć wszystkie pliki.
+resultMessage=%2$S plików znaleziono w katalogu %1$S.
+
+ +

Powyższy przykładowy plik zawiera dwie własności. Skrypt może je odczytać i wyświetlić użytkownikowi.

+ +

Paczki łańcuchów znaków

+ +

Kod do odczytania własności można napisać samodzielnie albo skorzystać z dostarczonego przez XUL elementu stringbundle. Element ten zawiera szereg funkcji, które można wykorzystać do wydobycia ciągów znaków z pliku własności oraz do pobrania innych informacji lokalizacyjnych. Element ten czyta zawartość pliku własności i tworzy listę własności. Dostęp do tych własności możliwy jest po ich nazwie.

+ +
<stringbundleset id="strbundles">
+<stringbundle id="strings" src="strings.properties"/>
+</stringbundleset>
+
+ +

Dołączenie tego elementu spowoduje odczytanie własności z pliku 'strings.properties' znajdującego się w tym samym katalogu, co plik XUL. Do odczytu plików zlokalizowanych należy korzystać z adresów URLchrome.

+ +

Pobieranie łańcucha znaków z paczki

+ +

Element stringbundle posiada szereg metod. Jedną z nich jest getString, której można użyć do odczytania z poziomu skryptu ciągu znaków z zestawu.

+ +
var strbundle=document.getElementById("strings");
+var nofilesfound=strbundle.getString("notFoundAlert");
+
+alert(nofilesfound);
+
+ + + +

Formatowanie tekstu

+ +

Kolejną metodą jest getFormattedString(). Ta metoda także pobiera łańcuch znaków nazwy danego klucza z paczki. Dodatkowo każde wystąpienie formatowania code (np. %S) jest zastępowane przez następny element z paczki.

+ +
var dir = "/usr/local/document";
+var count = 10;
+
+var strbundle = document.getElementById("strings");
+var result = strbundle.getFormattedString("resultMessage", [ dir, count ]);
+
+alert(result);
+
+ +

Ten przykład wyświetli następującą wiadomość w okienku ostrzeżenia.

+ +
10 files found in the /usr/local/document directory.
+
+ +

You will notice the formatting codes %1$S and %2$S is used, and replaced different order in the array. Formatting code %n$S is specify the position of corresponding parameter directly. Although the word order is not the same in all the languages, by using getFormattedString() the specification of the order can be put out the property files.

+ +

Znaki ucieczki non-ASCII

+ +

Although many languages need non-ASCII characters, property files should be written using only ASCII characters. However, property files support other characters using escape sequences of the form: \uXXXX where XXXX is a character code. Therefore, if your property files contain non-ASCII characters, you should convert these to 'escaped-unicode' format. To do this, you can use native2ascii command line utility bundled with Sun's Java Development Kit (JDK).

+ +

W następnym artykule przyjrzymy się językowi XBL, którego możemy użyć do zdefiniowania zachowania elementu.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/pliki_manifestu/index.html b/files/pl/mozilla/tech/xul/kurs_xul/pliki_manifestu/index.html new file mode 100644 index 0000000000..c10c475b8e --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/pliki_manifestu/index.html @@ -0,0 +1,176 @@ +--- +title: Pliki manifestu +slug: Mozilla/Tech/XUL/Kurs_XUL/Pliki_manifestu +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Manifest_Files +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule zobaczymy jak umieścić chrome i pliki XUL w paczce oraz stworzyć dla niej pliki manifestu.

+ +

Paczki

+ +

Paczka to zbiór plików XUL oraz skryptów, które definiują funkcjonalność interfejsu użytkownika. Paczki mogą być zainstalowane w przeglądarce Mozilla i odnosić się poprzez adres URL chrome. Paczka zawiera różnego rodzaju pliki i może być podzielona na podkatalogi dla różnych części paczki. Paczka jest przechowywana jako katalog lub jako archiwum JAR.

+ +

Pliki manifestu

+ +

Plik manifestu opisuje paczkę i mapę lokalizacji na dysku do adresu URL chrome. Pliki manifestu w katalogu chrome będą wykonywane, kiedy aplikacja Mozilli zostanie uruchomiona, aby zobaczyć jakie paczki zostały zainstalowane. To znaczy, że wszystko potrzebne do wykonania instalacji nowej paczki jest dodany nowy plik manifestu albo do katalogu aplikacji chrome albo użytkownik wskaże określony katalog chrome. Z dwóch katalogów chrome jest normalnie używany jeden od katalogu aplikacji mogącego nie mieć dostatecznych uprawnień do zapisanego w nim.

+ +

Jeśli tylko chcesz wypróbować uprzywilejowany kod XUL w przeglądarce Firefox, możesz to zrobić w prosty sposób poprzez użycie manifestu z zawartą w sobie jedną linią:

+ +
    +
  1. Gdziekolwiek utwórz nowy katalog. Na przykład, używając Windows możesz skorzystać C:\testfiles
  2. +
  3. Utwórz nowy plik ASCII1 i nazwij go test.manifest w katalogu chrome. W tym momencie nie jest w ogóle ważne jak się on nazywa, ważne żeby miał rozszerzenie .manifest. ( 1. nie działa z UTF-8 z BOM)
  4. +
  5. Dodaj następującą linie do niego:
  6. +
+ +
 content tests file:///C:/testfiles/
+
+ +

Ścieżka pliku w tej linii powinna wskazywać na katalog utworzony powyżej. Jeśli nie jesteś pewien(a), co jest ścieżką pliku, otwórz ten katalog i skopiuj adres URL z paska adresu.

+ +

To jest to! Teraz, wszystko co jeszcze musisz zrobić to jest dodanie jakiegoś pliku XUL do tego nowego folderu i będziesz mógł go wczytać wpisując adres URL w formie chrome://tests/content/<filename>. Oczywiście musisz uruchomić ponownie przeglądarkę, żeby zmiany dały efekt. Jeśli plik się nie wczytał, sprawdź czy wpisałeś poprawną ścieżkę.

+ +

Prosta składnia linii kodu w pliku manifestu dla zawartości paczki jest:

+ +

'content <packagename> <filepath>'

+ +

Pierwsze pole 'content' sygnalizuje zawartość paczki. Dla motywów, 'skin' is used while 'locale' is used for locales. The packagename is the example above is 'tests', which means that the first field in the chrome URL is 'tests' as in chrome://tests/content/sample.xul. If the package name was 'browser', the chrome URL would be chrome://browser/content/. The final field is the path where the files are located. This can be either a local file path using a file URL or a JAR archive using a jar URL, which will be described in a moment. You can specify multiple packages by including another line in the manifest file.

+ +

Plik browser.manifest użyty przez Firefoksa wygląda tak jak ten:

+ +
content branding jar:browser.jar!/content/branding/ xpcnativewrappers=yes
+content browser jar:browser.jar!/content/browser/ xpcnativewrappers=yes
+overlay chrome://global/content/viewSource.xul chrome://browser/content/viewSourceOverlay.xul
+overlay chrome://global/content/viewPartialSource.xul chrome://browser/content/viewSourceOverlay.xul
+overlay chrome://browser/content/pageInfo.xul chrome://pippki/content/PageInfoOverlay.xul
+
+ +

Two packages are listed here, 'branding' and 'browser'. Three overlays are also specified, which allow content from different packages to combine together. Extensions will make the most use of overlays, since they merge their UI with the browser UI.

+ +

The file paths for the branding and browser packages use jar URLs as the content is packaged up into an archive. A JAR archive can be created with a ZIP utility. For a JAR file located in the chrome directory, the syntax is fairly simple:

+ +

jar:<filename.jar>!/<path_in_archive>

+ +

For the browser package, the archive is browser.jar, located alongside the manifest file in the chrome directory. The path 'content/browser' specifies the path inside the archive where the XUL files are located. You won't need to specify a path if you don't have any directories in the archive. In this case, there is, since the files for the branding package are stored in a different path in the same archive.

+ +

For the 'tests' package created above, the files are not packaged into an archive, so a direct file path is used instead. This is good for development since you don't have to package up all the files every time you change them. However, when distributing an application or extension, you will want to package them into an archive to avoid having to install lots of smaller files.

+ +

The xpcnativewrappers=yes part at the end of the manifest line is a flag that may optionally be used. In JavaScript, it is possible for a web page to override built-in functions with their own code. If the xpcnativewrappers flag is specified, it indicates that scripts running in a privileged context don't call these overriden versions, but the original built-in versions instead. Otherwise, if an extension attempted to call the modified versions, it would likely not work properly, or worse, create a security hole. This flag was added to prevent this problem and should always be used for newer extensions, but is left out for older extensions that might not be compatible with the change.

+ +

Motywy i pliki lokalizacji

+ +

The themes and locales, the syntax is similar as for content packages, but you also need to specify the content package you are providing a theme or locale for. For example:

+ +
skin browser classic/1.0 jar:classic.jar!/skin/classic/browser/
+locale browser en-US jar:en-US.jar!/locale/browser/
+
+ +

For these, the extra field has been added to indicate that the skin and locale applies to the browser. The skin name is 'classic/1.0'. In this case, a version number is being used as part of the theme name, but that is optional if you are making your own theme. Mozilla doesn't handle the version number in a special way; the version number is just part of the theme name. The locale is 'en-US'. The chrome URLs that these would map to would be chrome://browser/skin and chrome://browser/locale. If you were creating your own theme or locale for the browser, all you need to do is create a manifest file with one of these two lines in it, modified to suit your theme or locale.

+ +

Aby dowiedzieć się więcej nt. motywów, zobacz Motywy. Aby dowiedzieć się więcej nt. lokalizacji, zobacz Lokalizacja.

+ +
+

Przykład okienka dialogowego Znajdź pliki

+ +

Utwórzmy plik manifestu dla okienka dialogowego Znajdź pliki. You can combine all of the three types into a single file if you wish. This may be done when creating an extension such that all of the parts are in one file. We will do this for the find files dialog. Create a file findfile.manifest in the chrome directory. Add the following to the file:

+ +
content findfile file:///findfile/content/
+skin findfile classic/1.0 file:///findfile/skin/
+locale findfile en-US file:///findfile/locale/
+
+ +

Create the new directories listed above. It doesn't matter where the directories are created, but the file paths in the manifest file should point to the directories. Naturally, you will want to use directory paths suitable for your system. If we were distributing the package, we would want to package them up into a JAR file, and modify the paths. In this case, we are just creating to demonstrate a manifest file and to prepare directories for examples which will see in the later sections.

+ +

Note how the second field of the skin and locale lines specifies 'findfile'. This means that the skin and locale modify the findfile package, which was specified on the first line.The three paths above specify subdirectories for each part. You will want to create these subdirectories to keep each part's files separate.

+ +

 

+
+ +

== Pliki <code>Contents.rdf</code> == Plik contents.rdf opisuje zawartość paczki. Może być także użyty do opisania skina lub locale-u. Pliki te mogą być naprawdę prosto tworzone jeśli raz dowiesz się jak. Poniższy schemat może być wykorzystany jako punkt startu. <pre> <?xml version="1.0"?> <RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <RDF:Seq about="urn:mozilla:package:root"> <RDF:li resource="urn:mozilla:package:myapplication"/> </RDF:Seq> <RDF:Description about="urn:mozilla:package:myapplication" chrome:displayName="My Application" chrome:author="name" chrome:name="myapplication"> </RDF:Description> </RDF:RDF> </pre> Możesz użyć tego szablonu oraz wprowadzić kilka drobnych zmian do twojej paczki. Podzielmy go na części aby zrozumieć za co dana część jest odpowiedzialna. <pre> <?xml version="1.0"?> <RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> </pre> Te trzy linie powinny być umieszczone na samej górze pliku contents.rdf. Ponieważ RDF jest formatem XML-a, standardowo zawiera linię którą pliki XML zazwyczaj mają. Następnie deklarujemy przestrzenie nazw (namespaces) które będą użyte, jeden dla RDF-a i drugi dla systemu chrome. Jeśli nie rozumiesz co to znaczy, nie przejmuj się. Po prostu dodaj te trzy linijki na początku pliku. <pre> <RDF:Seq about="urn:mozilla:package:root"> <RDF:li resource="urn:mozilla:package:myapplication"/> </RDF:Seq> </pre> Te linijki są używane aby zadeklarować jakie paczki, skóry oraz locale są opisane w pliku. W tym przypadku opisywana jest zawartość paczki (jako wskazanej przez słowo 'package' w tekście). Jeśli tworzysz skórkę, powinieneś użyć słowa 'skin' zamiast 'package', natomiast jeśli tworzysz locale-a, użyjesz 'locale'. Nazwą paczki będzie 'myapplication' ('mojaaplikacja'). Oczywiście możesz ją zamienić na nazwę paczki którą tworzysz. Na przykład, aplikacja mailowa Mozilli ma nazwę 'messenger'. Nazwa powinna być krótka i wyrazista. Będzie ona używana w URLu chrome dla tej paczki. Tag <font color="#FF0000">RDF:li</font> wykorzystany powyżej jest raczej jak tag <font color="#FF0000">li</font> w HTML, czyli deklaruje element listy. A zatem możesz zadeklarować wieloskładnikowe paczki używając tagów <font color="#FF0000">RDF:li</font>. Dla motywów, zamień oba występujące w kodzie słowa 'package' na 'skin'; dla plików językowych (locale), zamień słowa 'package' na 'locale'. Poniższy przykład definiuje motyw: <pre> <RDF:Seq about="urn:mozilla:skin:root"> <RDF:li resource="urn:mozilla:skin:blueswayedshoes"/> </RDF:Seq> </pre> Następnie część opisowa, która określa nazwę oraz autora aplikacji: <pre> <RDF:Description about="urn:mozilla:package:myapplication" chrome:displayName="My Application" chrome:author="name" chrome:name="myapplication"> </RDF:Description> </pre> Ten blok jest używany, aby wprowadzić więcej detali opisujących paczkę, motyw czy plik językowy (locale). Będziesz potrzebował opisu dla każdego <font color="#FF0000">li</font>, którego masz. Wartość atrybutu <font color="#00FF00">about</font> powinna być taka sama jak atrybutu <font color="#00FF00">resource</font> w tagu <font color="#ff0000">li</font>. Trzy dodatkowe atrybuty przedstawiają dodatkowe informacje o paczce: * <code>displayName</code><br>Tytuł paczki jaki będzie wyświetlany użytkownikowi. Na przykład 'Messenger'. * <code>author</code><br>Imię autora paczki. * <code>name</code><br>Nazwa paczki, skina lub locale-a. Powinna być taka sama jak ta na końcu 'urn:mozilla:package:' które zostało określone wcześniej. Ta nazwa jest wykorzystywana jaki pierwsza część URLa chrome. Równie dobrze możesz używać wielu innych wartości. Gdy Mozilla zarejestruje twoją paczkę, te wartości będą dodane do rejestru chrome. <div class="highlight"> Stwórzmy plik contents.rdf dla opcji wyszukiwania plików, którą stworzymy. Trzeba będzie opisać paczkę. Ponieważ wewnątrz nie będzie żadnych dodatkowych paczek, skór ani locali, opis będzie bardzo podobny do przykładu powyżej. <pre> <?xml version="1.0"?> <RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:chrome="http://www.mozilla.org/rdf/chrome#"> <RDF:Seq about="urn:mozilla:package:root"> <RDF:li resource="urn:mozilla:package:findfile"/> </RDF:Seq> <RDF:Description about="urn:mozilla:package:findfile" chrome:displayName="Find Files" chrome:author="Whoever" chrome:name="findfile"> </RDF:Description> </RDF:RDF> </pre> Tutaj nazwą komponentu jest 'findfile', która oznacza, że będziemy mogli się odwołać do tego komponentu korzystając z następującego URLa chrome: <pre> chrome://findfile/content/findfile.xul </pre> </div>

+ +

Instalowanie paczki

+ +

For an application to be installed, you will need to create an installer for it, or include it as part of another application. The method used depends on what kind of application you are creating. For extensions, you will need to create an install file install.rdf which describes what will be installed, the author of the extension and which versions of the browser or other applications it is compatible with. A specific directory structure is needed as well since extensions are limited in where the files may be installed to. An extension is packaged up into an XPI file. XPI is short for XPInstall and is used by Mozilla to install components. Like a JAR file, an XPI file is just a ZIP file with a different extension, so you can create and view XPI files with a ZIP utility.

+ +

Firefox's extension manager handles installing extensions packaged into XPI files automatically. It is recommended to upload extensions to the Mozilla Add-ons site, where users can locate them for installation. While they may be installed from any site, other sites are not configured to allow installations by default.

+ +

It is also possible to use a install script written in JavaScript to install files. This allows you to copy files to any location and perform other file management tasks. However, applications installed with a script will not be listed in the extension manager and there is no automated method to uninstall them. For this reason, the install scripts are not used often.

+ +

For standalone applications, they can be packaged up using XULRunner. This allows a separate executable file, and the application may be distributed independently of a browser.

+ +

For more information about creating extensions, see rozszerzenia. For more information about XULRunner, see XULRunner.

+ +

Lista zainstalowanych paczek przechowywana jest w katalogu chrome, w pliku chrome.rdf. Nie powiniejeś edytować go bezpośrednio. Plik ten zostanie automatycznie zmieniony, gdy zainstalujesz nową paczkę. Plik ten, tak samo jak contents.rdf jest formatu RDF. Na pierwszy rzut oka wygląda całkiem inaczej niż pliki <code>contents.rdf</code>, ale jeśli jesteś zaznajomiony z RDF-em, powinieneś szybko zauważyć podobieństwa. Gdy Mozilla uruchamia się, sprawdza najpierw katalog chrome i szuka pliku nazwanego 'installed-chrome.txt'. Plik ten zawiera listę, w bardzo prostym formacie, na której są wszystkie zainstalowane paczki, skórki i locale. Gdy plik ten jest modyfikowany, Mozilla skanuje wszystkie wpisy z listy i rejestruje lub aktualizuje te, które trzeba, by mogły być używane. Aby zarejestrować nową paczkę, wszystko co musisz zrobić, to dodać wpis do 'installed-chrome.txt' i zrestartować Mozillę. Nowa paczka zostanie zarejestrowana, a plik chrome.rdf zostanie zmodyfikowany jeśli trzeba, aby zawierał informacje o nowo zainstalowanych paczkach. Mozilla posiada także system instalacyjny nazwany XPInstall, który pozwala instalować skrypty za pomocą JavaScript, bez modyfikowania pliku ręcznie. XPInstall zostanie opisany na końcu tego tutoriala. Niemniej jednak podczas tworzenia aplikacji możemy modyfikować installed-chrome.txt bezpośrednio. Plik 'installed-chrome.txt' jest w katalogu chrome. Plik ten zawiera listę wpisów do instalacji, jeden element w jednej linijce. Na przykład: <pre> content,install,url,resource:/chrome/findfile/content/ skin,install,url,resource:/chrome/findfile/skin/ </pre> Powyższe wpisy będą wykorzystane aby zainstalować paczkę findfiles oraz skórkę dla niej. Format każdej linijki jest niezwykle prosty. Zawiera cztery wartości oddzielone przecinkami:  ; Type (typ) : Ustawiony na 'content' dla zawartości paczki, 'skin' dla skórek oraz 'locale' dla locale-ów. ; Install (instalacja) : Wpisz tekst 'install' aby zainstalowac element. Dla skórki i locale-ów możesz także ustawić go jako 'profile' aby zainstalować te elementy w katalogu z profilem użytkownika. Oznacza to że element będzie zainstalowany tylko dla pojedynczego użytkownika. ; URL Type (typ adresu URL) : Wpisz tekst 'url' aby określić adres URL, gdzie nowe paczki, skórki lub locale mają być przechowywane. Jeśli wpiszesz 'path', możesz jako miejsce podać katalog (który powinien być zgodny z zapisem katalogów w twoim systemie operacyjnym). ;URL (adres URL) :Ustaw adres URL lub katalog paczki. Powinno być to miejsce w którym znajduje się bezpośrednio plik contents.rdf lub ścieżka i nazwa pliku JAR. Ponieważ wpis ten odnosi się do katalogu, upewnij się, że kończy się on slashem. W innym wypadku paczka nie zostanie odnaleziona. Zauważmy, że użyte URLe są w typie "resource:/". Możesz użyć również typu pliku. Resource URL jest podobny do file URL z wyjątkiem tego, że zaczyna się od "resource:" a nie "file:" oraz jego głównym katalogiem jest katalog, gdzie zainstalowana jest Mozilla, a nie główny katalog systemu. Oznacza to, że można tego używać, aby odnosić się do plików w katalogu Mozilli albo jej podkatalogów, niezależnie od tego gdzie została ona zainstalowana. Resource URL powinien mieć jeden slash po dwukropku, ponieważ jest to zawsze ścieżka względna. Dodana linia powinna wskazywać na katalog, zawierający contents.rdf. Jeśli posiadasz wiele pakietów, dodaj po jednej linii dla każdego. Pomimo, że Mozilla przestrzega reguł nazywania katalogów, możesz umieścić pliki, gdzie tylko chcesz. Na przykład następujące linijki zainstalują nowy pakiet, który jest usytuowany w katalogu <code>/main/calculator/</code>. <pre> content,install,url,file:///main/calculator/ </pre> Powinieneś zauważyć, że istniejące linie w installed-chrome.txt mają jeszcze jeden typ URL, typ "jar:". Jeśli pakujesz swoje pliki do pliku JAR, możesz użyć JAR URL do odniesienia się do niego. Ma on dwie części oddzielone wykrzyknikiem (!). Część przed wykrzyknikiem to URL pliku JAR, a część po wykrzykniku to katalog albo plik wewnątrz archiwum. Poniższy przykład może odnosić się do znajdywania plików dialogu: <pre> jar:resource:/chrome/findfile.jar!/content/findfile/ </pre> Jednak przeważnie nie musisz się martwić JAR URL-ami, gdy tworzysz swoje własne archiwa. Zamiast tego powinieneś trzymać pakiety rozpakowane i odnosić się do nich używając typu URL file albo resource.

+ +

Starsze aplikacje

+ +

If you are creating applications for older versions of Mozilla software, that is, before Firefox 1.5 or Mozilla 1.8, the process is a bit more involved. The following describes how to set up a package for earlier versions. This section may be skipped if you are writing new extensions or XUL applications.

+ +
Note: This older process does also apply to the new SeaMonkey 1.0 though. The codebase there has not yet adopted the "Manifest" format.
+ +
<?xml version="1.0"?>
+
+<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+         xmlns:chrome="http://www.mozilla.org/rdf/chrome#">
+
+  <RDF:Seq about="urn:mozilla:package:root">
+    <RDF:li resource="urn:mozilla:package:myapplication"/>
+  </RDF:Seq>
+
+  <RDF:Description about="urn:mozilla:package:myapplication"
+          chrome:displayName="Application Title"
+          chrome:author="Author Name"
+          chrome:name="myapplication"
+          chrome:extension="true"/>
+
+</RDF:RDF>
+
+ +
content,install,url,file:///main/app/
+
+ +
    +
  1. Create a directory somewhere on your disk. Many people put this as a subdirectory inside Mozilla's chrome directory, but this isn't necessary. The directory could be anywhere and on any disk. Put your XUL files in this directory.
  2. +
  3. Create a file called contents.rdf and place it in this directory. Copy the text in the box below into the new contents.rdf file. This file is used to identify the application id, its name, author, version and so on.
  4. +
  5. Change the highlighted parts of the file above to your own information. The red text 'myapplication' should be the ID of your application. You make this up, but typically, the ID is similar to your application's name. Replace the blue highlighted text above with your application's title and author.
  6. +
  7. If the 'chrome:extension' field is true, the application is a Mozilla Firefox Extension and it will show up in the Extensions window of the browser. If false, it will not appear.
  8. +
  9. Save the contents.rdf and make sure it is in the directory you created in step 1.
  10. +
  11. Open the file <mozilla-directory>/chrome/installed-chrome.txt, where <mozilla-directory> is the directory where Mozilla is installed. Exit Mozilla before you do this.
  12. +
  13. Next, you are going to register the new application with Mozilla so it will know where to find it. Add a line at the end of installed-chrome.txt pointing to the new directory you created in step 1. Change the highlighted text to the file URL below of the directory. Make sure that it URL ends with a slash and that you press enter at the end of the line. If you aren't sure what the URL is, open the directory created in step 1 into a Mozilla browser and copy the URL from the location field. Note that the reference should always be a directory, not a file.
  14. +
  15. Delete the file <mozilla-directory>/chrome/chrome.rdf.
  16. +
  17. Start Mozilla. You should be able to view any XUL files you put into the directory using a URL of the form: chrome://applicationid/content/file.xul where file.xul is the filename. Your main XUL file should be applicationid.xul which you can load using the shortcut URL chrome://applicationid/content/.
  18. +
+ +

If you are creating skin and/or locale portions, repeat the steps above, except that the format of the contents.rdf file is slightly different. Look at the contents.rdf files in other applications for details.

+ +

== Na skróty == Powyższa informacja może być trochę myląca. Oto szybki przewodnik tworzenia prostych pakietów. Możesz po prostu robić krok po kroku to co jest tu napisane i spróbować zrozumieć detale przebiegu instalacji pakietów, gdy już będziesz bardziej rozumiał XUL. <ol> <li>Stwórz katalog gdzieś na swoim dysku. Wielu ludzi umieszcza go jako podkatalog w katalogu Mozilla chrome, ale nie jest to konieczne. Katalog może być gdziekolwiek na jakimkolwiek dysku. Umieść tam pliki XUL.</li> <li>Stwórz plik o nazwie contents.rdf i umieść go w tym katalogu. Skopiuj tekst z poniższej ramki do nowo utworzonego pliku. Będzie on używany do zidentyfikowania aplikacji, jej nazwy, autora, wersji itp.</li> <?xml version="1.0"?> <RDF:RDF xmlns:RDF="<nowiki>http://www.w3.org/1999/02/22-rdf-syntax-ns#</nowiki>" xmlns:chrome="<nowiki>http://www.mozilla.org/rdf/chrome#</nowiki>"> <RDF:Seq about="urn:mozilla:package:root"> <RDF:li resource="urn:mozilla:package:<span class="highlightred">myapplication</span>"/> </RDF:Seq> <RDF:Description about="urn:mozilla:package:<span class="highlightred">myapplication</span>" chrome:displayName="<span class="highlightblue">Application Title</span>" chrome:author="<span class="highlightblue">Author Name</span>" chrome:name="<span class="highlightred">myapplication</span>" chrome:extension="true"/> </RDF:RDF> <li>Zmień podświetlone fragmenty pliku na swoje własne informacje. Czerwony tekst "myapplication" powinien zawierać ID aplikacji. Możesz go zmyślić, ale typowo ID jest bardzo podobne do nazwy aplikacji. Zamień tekst podświetlony na niebiesko z tytułem i autorem aplikacji.</li> <li>Jeśli pole "chrome:extension" zawiera "true", aplikacja to jedna z Rozszrzeń Mozilli Firefox (''Mozilla Firefox Extension'') i będzie wyświetlana w oknie Rozszerzeń (''Extension'') przeglądarki. Jeśli pole to zawiera "false", aplikacja nie pojawi się w tym oknie.</li> <li>Zachowaj plik contents.rdf i upewnij się, że jest on w katalogu, który stworzyłeś w kroku pierwszym.</li> <li>Otwórz plik <mozilla-directory>/chrome/installed-chrome.txt, gdzie <mozilla-directory> to katalog zainstalowania Mozilli. Przedtem zamknij Mozillę.</li> <li>Następnie będziesz rejestrował nową aplikację w Mozilli, żeby program ten wiedział gdzie go może znaleźć. Dodaj linię na końcu pliku installed-chrome.txt, wskazując na nowy katalog, stworzony w kroku 1. Zmień poniższy podświetlony tekst na file URL (link do pliku). Upewnij się, że URL kończy się slash'em i że nacisnąłeś enter na końcu tej linii. Jeśli nie wiesz jaki jest URL, otwórz katalog, stworzony w kroku 1 w przeglądarce Mozilli i skopiuj URL z paska adresu. Zauważ, że odnośnik powinien być zawsze katalogiem, nie plikiem.</li> content,install,url,<span class="highlightred">file:///main/app/</span> <li>Skasuj plik <mozilla-directory>/chrome/chrome.rdf.</li> <li>Odpal Mozillę. Powinieneś być w stanie wyświetlić każdy z plików XUL, umieszczonych w katalogu przy użyciu URLa w formie: '''chrome://<span class="highlightred">applicationid</span>/content/file.xul''', gdzie file.xul to nazwa pliku. Głównym plikiem XUL powinien być applicationid.xul, możesz go załadować używając skrótu URL '''chrome://<span class="highlightred">applicationid</span>/content/'''.</li> </ol> Jeśli tworzysz skórki i/lub różnych użytkowników, powtórz wszystkie kroki, z tym że format pliku contents.rdf będzie trochę inny. Spójrz na pliki contents.rdf w innych aplikacjach, aby zobaczyć szczegóły.

+ +

Usuwanie nieprawidłowości

+ +

Tworzenie pakietu chrome może być często skomplikowane i jest trudne do zdiagnozowania w przypadku jakichkolwiek problemów. Znajduje się tu kilka porad w przypadku, gdybyśmy nie mogli sobie poradzić.

+ + + +

* Make sure the contents.rdf file is in the right directory and is well-formed. Open the contents.rdf file in Mozilla to see if it parses as well-formed XML. If not, you will see an error on a yellow background. * If you are using a debug build of Mozilla, some info will be printed to the terminal when starting up indicating what chrome applications are being checked. Check if your application is listed.

+ +

Aby dowiedzieć się więcej, przeczytaj artykuł o rejestracji Chrome.

+ +

W następnym artykule rozpoczniemy już naukę języka XUL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/pola_grup/index.html b/files/pl/mozilla/tech/xul/kurs_xul/pola_grup/index.html new file mode 100644 index 0000000000..b843d20be4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/pola_grup/index.html @@ -0,0 +1,78 @@ +--- +title: Pola grup +slug: Mozilla/Tech/XUL/Kurs_XUL/Pola_grup +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Groupboxes +--- +

+

+

« PoprzedniNastępny »

+
+

Artykuł ten opisuje sposób zawierania elementów w grupach. +

+

Pola grup

+

Język HTML dostarcza elementu fieldset, który może być zastosowany do grupowania elementów razem. Granicą jest zazwyczaj obrys wokół elementów, aby pokazać, że są one powiązane. Przykład będzie pole grupowe zawierające pola wyboru. XUL dostarcza odpowiedni element groupbox, który może być zastosowany w podobnym celu.

Jak wskazuje nazwa, groupbox jest typem pola, oznacza to, że elementy wewnątrz niego ustawione są według reguł pól. Istnieją dwie różnice pomiędzy polami grup a polami regularnymi: +

+ +

Ponieważ pola grup są typami grup, możesz użyć takich samych atrybutów jak orient i flex. Możesz wstawić jakiekolwiek elementy, jakie chcesz wewnątrz pola, chociaż zazwyczaj będą one powiązane w ten sam sposób.

Etykieta u góry pola grupy może zostać utworzona przy zastosowaniu elementu caption. Działa on podobnie jak element legend z języka HTML. Pojedynczy element caption umieszczony jako pierwsze dziecko będzie wystarczające. +

+

Przykład: Proste pole grupy

+

Poniższy przykład pokazuje proste pole grupy: +

Przykład 1 : Źródła Podgląd +

+
grafika:titledbox1.png
+
<groupbox>
+  <caption label="Odpowiedź"/>
+  <description value="Banany"/>
+  <description value="Tangerine"/>
+  <description value="Budka telefoniczna"/>
+  <description value="Kiwi"/>
+</groupbox>
+
+

Spowoduje to, że będą wyświetlone cztery fragmenty tekstu otoczone przez pole z etykietą Odpowiedź. Zwróć uwagę, że pole grupy posiada domyślnie orientacje pionową, która jest konieczna, aby mieć stos elementów tekstu w pojedynczej kolumnie. +

+

Bardziej złożony element caption

+

Możesz również dodać elementy potomne wewnątrz elementu caption, aby stworzyć bardziej złożony caption. Na przykład; panel preferencji Mozilla Font używa menu rozwijanego jako podpisu. Chociaż może być użyta dowolna zawartość, zazwyczaj będziemy używać pola wyboru lub menu rozwijanego. +

Przykład 2 : Źródła Podgląd +

+
grafika:groupbox2.png
+
<groupbox flex="1">
+  <caption>
+    <checkbox label="Włącz kopie zapasową"/>
+  </caption>
+  <hbox>
+    <label control="dir" value="Folder:"/>
+    <textbox id="dir" flex="1"/>
+  </hbox>
+  <checkbox label="Kompresuj archiwalne pliki"/>
+</groupbox>
+
+

W tym przykładzie, pole wyboru zostały zastosowane jako podpis (caption). Możemy użyć skryptu do włączenia lub wyłączenia zawartości pola grup, kiedy checkbox jest zaznaczony lub odznaczony. Pole grupy zawiera poziome pudełko (box) z etykietą (label) i polem tekstowym (textbox). Zarówno pole tekstowe jak i pole grupy mogą być elementami elastycznymi, więc pole tekstowe rozszerza się, kiedy rozszerzamy okno. Poniżej pola tekstowego pojawia się dodatkowe pole wyboru, z powodu pionowej orientacji pola grupy. W kolejnym podpunkcie dodamy pole grupy do okna dialogowego Znajdź pliki. +

+

Grupa radio

+

Możemy stosować element radiogroup do zgrupowania razem przycisków opcji. Element radiogroup jest typem pola. Możemy wstawić dowolny element, do wewnątrz niego, z wyjątkiem specjalnej obsługi przycisku radio, które działa podobnie jak inne pudełka. +

Dowolny przycisk opcji umieszczony wewnątrz grupy przycisków opcji, aby zgrupować je wszystkie razem, nawet, jeśli są one wewnątrz zagnieżdżonych pudełek. Może to być stosowane do dodania dodatkowych elementów wewnątrz struktury, tak jak w tym przykładzie: +

Przykład 3 : Źródła Podgląd +

+
<radiogroup>
+  <radio id="no" value="no" label="No Number"/>
+  <radio id="random" value="random" label="Random Number"/>
+  <hbox>
+    <radio id="specify" value="specify" label="Specify Number:"/>
+    <textbox id="specificnumber"/>
+  </hbox>
+</radiogroup>
+
+

Zauważ, że element radiogroup nie jest otoczony żadnym obramowaniem wokół siebie. Powinniśmy umieścić element groupbox wokół niego, jeśli obramowanie i podpis (caption) są wymagane. +

Następnie będziemy stosować to, czego nauczyliśmy się dotychczas i dodamy dodatkowe elementy do okna dialogowego Znajdź pliki. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/polecenia/index.html b/files/pl/mozilla/tech/xul/kurs_xul/polecenia/index.html new file mode 100644 index 0000000000..34d9e2c057 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/polecenia/index.html @@ -0,0 +1,170 @@ +--- +title: Polecenia +slug: Mozilla/Tech/XUL/Kurs_XUL/Polecenia +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Commands +--- +

+

« PoprzedniNastępny »

+

+ +

Polecenia to rodzaj operacji, która może być przywoływana.

+ +

Elementy polecenia

+ +

Element command jest stosowany w celu stworzenia poleceń, które będą służyły przeprowadzaniu operacji. Nie potrzebujemy używać poleceń, od kiedy można je zastąpić wywołaniem skryptu obsługującego pewne zdarzenia. Jednak, polecenia posiadają pewną przewagę. Mowa tu o ich zdolności do automatycznej dezaktywacji, kiedy zajdzie taka potrzeba oraz mogą być wywoływane zewnętrznie bez znajomości szczegółów implementacji samego polecenia. Zapewniają one możliwość stworzenia pewnego abstraktu oddzielającego operacje od samego kodu. Polecenia są przydatne szczególnie w większych aplikacjach. Przykładem jest implementacja poleceń menu związanych ze schowkiem, takich jak; <tt>wytnij</tt>, <tt>kopiuj</tt>, <tt>wklej</tt>. Jeśli nie korzystaliśmy z poleceń, będziemy potrzebowali określić, które pola posiadają skupienie, a następnie upewnić się, że operacja jest odpowiednia dla danego elementu. Dodatkowo, polecenia menu, potrzebują opcji aktywacji oraz dezaktywacji w zależności od tego czy element posiadający skupienie, zawiera zaznaczony teksy, czy też nie. Również do operacji wklejenia, w zależności, czy w schowku znajduje się odpowiednia do wklejenia zawartość. Jak można zauważyć, zaczyna się to komplikować. Wykorzystanie poleceń oszczędza w tym przypadku wiele pracy.

+ +

Można używać poleceń dla każdej operacji. Mozilla wykorzystuje je do niemal każdego polecenia menu. Dodatkowo, pola tekstowe oraz inne elementy posiadają pewną liczbę wspierających je i gotowych do wywołania poleceń. Powinno się je używać w przypadku operacji zależnych od tego, na którym elemencie występuje skupienie.

+ +

Polecenie jest identyfikowane poprzez jej atrybut id. Mozilla używa konwencji, w której jej id rozpoczyna się przedrostkiem '<tt>cmd_</tt>'. W celu zapobiegnięcia konfliktom w nazwach poleceń, można umieszczać nazwę aplikacji w wewnątrz id polecenia. Przykład poniżej:

+ +

Przykład: Proste polecenie command

+ +

Przykład 1 : Źródła Podgląd

+ +
<command id="cmd_openhelp" oncommand="alert('Pomoc!');"/>
+<button label="Pomoc" command="cmd_openhelp"/>
+
+ +

W tym przykładzie, zamiast umieszczania atrybutu oncommand w elemencie button, wstawiamy element command. Są one połączone za pomocą atrybutu command, który posiada wartość id polecenia. W rezultacie w chwili wciśnięcia przycisku, polecenie zostaje wywoływane.

+ +

Istnieją dwie zalety używania tego podejścia:

+ + + +

Dodatkowo:

+ + + +

Przykład: Przełączenie wyłączenia command

+ +

Przykład 2 : Źródła Podgląd

+ +
<command id="cmd_openhelp" oncommand="alert('Pomoc');"/>
+<button label="Pomoc" command="cmd_openhelp"/>
+<button label="Więcej pomocy" command="cmd_openhelp"/>
+
+<button label="Wyłącz"
+        oncommand="document.getElementById('cmd_openhelp').setAttribute('disabled','true');"/>
+<button label="Włącz"
+        oncommand="document.getElementById('cmd_openhelp').removeAttribute('disabled');"/>
+
+ +

W tym przykładzie oba przyciski używają tego samego polecenia. Kiedy przycisk "Wyłącz" zostanie naciśnięty, polecenie zostaje dezaktywowane poprzez ustalenie jego atrybutu disabled. W tym przypadku oba przyciski zostaną dezaktywowane.

+ +

Szeroko stosowanym zabiegiem jest grupowanie poleceń w elementy o nazwie commandset. Znajdują się one zazwyczaj na początku pliku XUL. Przykład poniżej:

+ +
<commandset>
+  <command id="cmd_open" oncommand="alert('Otwórz!');"/>
+  <command id="cmd_help" oncommand="alert('Pomoc!');"/>
+</commandset>
+
+ +

Polecenie jest wywoływane, kiedy użytkownik aktywuje (włączy) przycisk lub inny element połączony z tą metodą. Możemy, także wywoływać polecenia poprzez zastosowanie metody doCommand dla samego elementu command lub dla elementu, który jest bezpośrednio połączony z tym poleceniem, takiego jak np. przycisk.

+ +

Dyspozytor poleceń

+ +

Możemy także używać poleceń bez korzystania z elementów command lub przynajmniej, bez dodawania atrybutu oncommand dla danego polecenia. W tym przypadku, polecenie nie będzie wywoływało bezpośrednio skryptu, ale w zamian, będzie wyszukiwało element lub funkcję, która obsłuży polecenie. Funkcja ta może być oddzielona od języka XUL oraz może być obsługiwane wewnętrznie. W celu znalezienia czegoś do obsługi poleceń, XUL używa obiektu o nazwie dyspozytor poleceń ( + + ang. command dispatcher + ). Obiekt ten lokalizuje obsługę dla poleceń. Polecenie obsługiwane jest przez tzw. kontroler ( + + ang. controller + ). Tak więc, kiedy wywoływane jest polecenie, dyspozytor poleceń lokalizuje kontroler, który obsłuży dane polecenie. Możemy wyobrazić sobie element command, jako pewien typ kontrolera dla polecenia.

+ +

Dyspozytor poleceń lokalizuje kontroler, przeszukując element posiadający aktualnie skupienie, pod kątem wspomnianego kontrolera, który jest w stanie obsłużyć zadane polecenie. Elementy XUL posiadają własność controllers, która służy do ich sprawdzania. Możemy wykorzystać własność controllers w celu dodania własnych kontrolerów. Przykładowo, możemy wykorzystać to w celu obsługi odpowiedzi pola list na polecenia <tt>wytnij</tt>, <tt>kopiuj</tt> i <tt>wklej</tt>. W dalszej części artykułu będziemy analizować przykład obrazujący powyższą czynność. Domyślnie, tylko pola tekstowe posiadają robiący to wszystko kontroler. Obsługuje on operacje schowka, selekcji, cofania, przywracania oraz pewne operacje edycji. Warto zauważyć, że element może także posiadać wiele kontrolerów, które będą sprawdzane.

+ +

Jeśli element posiadający aktualnie skupienie nie posiada odpowiedniego kontrolera, okno jest sprawdzane w następnej kolejności. Okno także posiada własność controllers, którą możemy modyfikować wedle uznania. Jeśli skupienie znajduje się wewnątrz ramki, każda z nich prowadzi do okna znajdującego się na wyższym poziomie, które także jest sprawdzane. Oznacza to, że polecenia będą działać nawet, jeśli skupienie znajduje się wewnątrz ramki. Powyższa teza jest również prawdziwa dla przeglądarki, ze względu na mówiący o tym, że polecenia edycji wywoływane z głównego menu, będą działać wewnątrz obszaru z zawartością. Warto zaznaczyć, że HTML także posiada system poleceń i kontrolerów, chociaż nie można go wykorzystywać na nieuprzywilejowanych stronach, ale można użyć dla np. rozszerzeń przeglądarki. Jeśli okno nie zapewnia kontrolera zdolnego do obsługi poleceń, nic się nie stanie.

+ +

Możemy także sprawić, aby dyspozytor poleceń, używał własności dokumentu o nazwie commandDispatcher. Jesteśmy również w stanie go odzyskiwać z listy kontrolerów dla elementu lub okna. Dyspozytor poleceń zawiera metody służące pobieraniu kontrolerów dla poleceń oraz służące pobieraniu oraz modyfikacji skupienia.

+ +

Dodawanie kontrolerów

+ +

Możemy również zaimplementować własne kontrolery odpowiadające na polecenia. Możemy nawet zmienić domyślną obsługę polecenia, poprzez umiejętne umieszczenie kontrolera. Kontroler powinien implementować cztery metody, przedstawione poniżej:

+ +
+
supportsCommand (command) 
+
Ta metoda powinna zwracać wartość true, jeśli kontroler wspiera polecenie. Jeśli natomiast zwraca false, znaczy to, że polecenie nie jest obsługiwane i dyspozytor poleceń będzie szukał innego kontrolera. Pojedynczy kontroler może wspierać wiele poleceń.
+
isCommandEnabled (command) 
+
Ta metoda powinna zwracać wartość true, kiedy polecenie jest aktywne lub false w przeciwnym przypadku. Korespondujące przyciski będą dezaktywowane automatycznie.
+
doCommand (command) 
+
Uruchamia polecenia. W tym miejscu umieszczamy kod obsługujący polecenie.
+
onEvent (event) 
+
Ta metoda obsługuje zdarzenia.
+
+ +

Przykład: Implementacja kontrolera

+ +

Przyjmijmy, że chcemy zaimplementować pole listy, które będzie obsługiwało polecenie <tt>usuń</tt>. Kiedy użytkownik wybierze <tt>usuń</tt> z menu, pole listy skasuje zaznaczony wiersz. W tym przypadku, wystarczy tylko dołączyć kontroler do pola wyboru, który wykona metoda doCommand.

+ +

Spróbujmy otworzyć poniższy przykład (Źródła Podgląd) w oknie przeglądarki i wybrać pewne elementy z listy. Zauważmy, że polecenie Usuń w menu Edycja przeglądarki jest aktywne i jej wybór usunie wiersz.

+ +
<window id="controller-example" title="Przykład kontrolera" onload="init();"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<script>
+function init()
+{
+  var list = document.getElementById("theList");
+
+  var listController = {
+    supportsCommand : function(cmd){ return (cmd == "cmd_delete"); },
+    isCommandEnabled : function(cmd){
+      if (cmd == "cmd_delete") return (list.selectedItem != null);
+      return false;
+    },
+    doCommand : function(cmd){
+      list.removeItemAt(list.selectedIndex);
+    },
+    onEvent : function(evt){ }
+  };
+
+  list.controllers.appendController(listController);
+}
+</script>
+
+<listbox id="theList">
+  <listitem label="Ocean"/>
+  <listitem label="Desert"/>
+  <listitem label="Jungle"/>
+  <listitem label="Swamp"/>
+</listbox>
+
+</window>
+
+ +

Kontroler (listControler) implementuje cztery metody opisane wyżej. Metoda supportsCommand zwraca true dla polecenia cmd_delete, które jest zastosowane w chwili wyboru opcji <tt>Usuń</tt> z menu. Dla innych poleceń, zwracany jest false. Dzieje się tak dlatego, że kontrolery nie obsługują żadnego innego polecenia.

+ +

Metoda isCommandEnabled zwraca wartość true, kiedy polecenie powinno być aktywne. W tym przypadku sprawdzamy czy w polu listy istnieje zaznaczony element i jeśli istnieje zwraca wartość true. W przeciwnym przypadku zwraca false. Jeśli usuniemy wszystkie wiersze, opcja <tt>Usuń</tt> stanie się nieaktywna. W naszym prostym przykładzie może zajść możliwość kliknięcia na polu listy w celu jego uaktualnienia. Metoda doCommand będzie wywoływana, w chwili wyboru opcji <tt>Usuń</tt> z menu. Spowoduje to, że zaznaczony wiersz pola listy zostanie usunięty. Natomiast metoda onEvent nie musi powodować żadnych efektów, więc nie dodajemy do niej żadnego kodu.

+ +

Przesłanianie domyślnego kontrolera

+ +

Dodajmy ten kontroler do pola listy, poprzez wywołanie metody appendController dla controllers pola listy. Obiekt kontrolera posiada pewną liczbę metod, które mogą być używane do manipulowania kontrolerami. Przykładowo, istnieje także metoda insertControllerAt, która "wkłada" kontroler do elementu przed inne kontrolery. Może to być użyteczne w celu utworzenia komendy nadrzędnej. Poniższy przykład wyłącza opcję wklejenia dla danego pola tekstowego.

+ +
var tboxController = {
+  supportsCommand : function(cmd){ return (cmd == "cmd_paste"); },
+  isCommandEnabled : function(cmd){ return false; },
+  doCommand : function(cmd){ },
+  onEvent : function(evt){ }
+};
+
+document.getElementById("tbox").controllers.insertControllerAt(0,tboxController);
+
+ +

W tym przykładzie, wkładamy kontroler ma pozycję o numerze 0, co oznacza, że będzie on się znajdował przed wszystkimi innymi. Nowy kontroler wspiera polecenie 'cmd_paste' i zawsze wskazuje, że polecenie jest wyłączone, dezaktywowane. Domyślny kontroler pola tekstowego, nigdy nie zostanie wywołany ponieważ, dyspozytor poleceń znajdzie w pierwszej kolejności inny kontroler do obsługi, znajdujący się wyżej.

+ +

Następnie, dowiemy się jak aktualizować polecenia.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_element\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_element\303\263w/index.html" new file mode 100644 index 0000000000..30a474661c --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_element\303\263w/index.html" @@ -0,0 +1,266 @@ +--- +title: Pozycjonowanie elementów +slug: Mozilla/Tech/XUL/Kurs_XUL/Pozycjonowanie_elementów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Element_Positioning +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule dowiemy się jak sterować pozycją i rozmiarem elementu.

+ +

Pozycjonowanie elementu pola

+ +

Dowiedzieliśmy się już jak pozycjonować elementy - albo poziomo, albo pionowo - wewnątrz pola. Często jednak będziemy musieli sterować pozycją i rozmiarem elementu wewnątrz pola. Dlatego najpierw musimy przyjrzeć się, jak działa pole.

+ +

Pozycja elementu jest określona przez styl rozmieszczenia jego kontenera. Na przykład, przycisk w polu poziomym będzie umieszczony na prawo od poprzedniego przycisku. Rozmiar elementu jest określony przez dwa czynniki: zawartość elementu i rozmiar, jaki określisz. Rozmiar, jaki posiada element jest określony przez to, co dany element zawiera. Na przykład, szerokość przycisku jest określona przez ilość tekstu wewnątrz przycisku.

+ +

Generalnie element będzie tak duży, jak to konieczne do przechowania jego zawartości i nie większy. Pewne elementy, takie jak pola tekstowe mają rozmiar domyślny, jakiego będziemy używać. Pole będzie wystarczająco duże dla przechowania elementów wewnątrz pola. Pole poziome zawierające trzy przyciski będzie tak szerokie, jak trzy przyciski plus niewielka ilość wypełnienia.

+ +
grafika:boxstyle1n.png
+ +

Na poniższym rysunku pierwsze dwa przyciski mają zadany odpowiedni rozmiar dla przechowania swojego tekstu. Trzeci przycisk jest większy, ponieważ ma więcej zawartości. Szerokość pola zawierającego przyciski jest to całkowita szerokość przycisków plus wypełnienie między nimi. Wysokość przycisków ma odpowiedni rozmiar do przechowywanego tekstu.

+ +

Atrybuty width i height

+ +

Niekiedy konieczna jest większa kontrola nad rozmiarem elementu w oknie. Jest kilka cech, które pozwolą ci sterować rozmiarem elementu. Szybkim sposobem na to jest po prostu nadanie elementowi atrybutów width i height, podobnych do tych, jakie można dodać do znacznika img w HTML-u. Poniżej mamy pokazany przykład:

+ +


+ Przykład 1 : Źródła Podgląd

+ +
<button label="OK" width="100" height="40"/>
+
+ +

Jednakże takie rozwiązanie nie jest zalecane. Nie jest to zbyt przenośne i może nie mieścić się w pewnych motywach. Lepszym sposobem jest zastosowanie właściwości stylu, który działa podobnie do arkuszy stylu w HTML. Można zastosować poniższe własności CSS.

+ +
+
width 
+
Określa szerokość elementu.
+
height 
+
Określa wysokość elementu.
+
+ +

Poprzez ustawienie jednej z tych dwóch własności, element będzie stworzony z taką szerokością lub wysokością. Jeśli określisz tylko jedną właściwość rozmiaru, druga jest wyliczana, jeśli to jest konieczne. Rozmiar tych właściwości stylu powinien być określony jak liczba następująca po module.

+ +

Elastyczne elementy

+ +

Rozmiary są dosyć łatwe do obliczenia dla elementów nieelastycznych. Korzystają one po prostu ze swoich określonych szerokości i wysokości, a jeśli rozmiar nie został określony, domyślny rozmiar elementu jest wystarczająco duży, aby dopasować zawartość. Dla elementów elastycznych obliczenie jest odrobinę oszukańcze.

+ +

Elementy elastyczne są tymi które mają atrybut flex ustawioną na wartość większą niż 0. Przypomnij sobie, że elementy elastyczne rosną i kurczą się wypełniając dostępną przestrzeń. Ich domyślny rozmiar jest jeszcze obliczany tak samo jak elementów nieelastycznych. Demonstruje to poniższy przykład:

+ +

Przykład 2 : Źródła Podgląd

+ +
<window orient="horizontal"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<hbox>
+  <button label="Tak" flex="1"/>
+  <button label="Nie"/>
+  <button label="Nie znam jednego rozwiązania lub jakiegokolwiek innego"/>
+</hbox>
+
+</window>
+
+ +

Początkowo okno pojawi się takie jak to na wcześniejszym obrazku. Pierwsze dwa przyciski będą ułatwione na odpowiedni domyślny rozmiar szerokości a przycisk trzeci będzie większy ponieważ ma dłuższą etykietę. Pierwszy przycisk jest elastyczny a wszystkie trzy elementy umieszczono wewnątrz pola. Szerokość pola będzie ustawiona na początkową całkowitą szerokość wszystkich trzech przycisków (około 430 pikseli na rysunku).

+ +

Jeśli zwiększysz szerokość okna, elementy są sprawdzane pod kątem elastyczności aby wypełnić pustą przestrzeń jaka się pojawi. Przycisk jest jedynym elastycznym elementem, ale nie urośnie szerszy. jest tak ponieważ pole wewnątrz którego mieści się przycisk nie jest elastyczne. Element nieelastyczny nigdy nie zmienia rozmiaru nawet jeśli jest dostępna przestrzeń, więc również i przycisk nie może się zwiększyć. A zatem przycisk się nie poszerzy.

+ +

Rozwiązaniem jest uczynienie również pola elastycznym. Zatem kiedy poszerzasz okno, będzie dostępna dodatkowa przestrzeń, więc pole będzie wzrastało wypełniając tą dodatkową przestrzeń. Ponieważ pole jest duże, będzie stworzone wewnątrz niego więcej dodatkowej przestrzeni, a elastyczny przycisk wewnątrz niego wzrośnie wypełniając dostępną przestrzeń. Ten proces powtarza się, jeśli to konieczne, dla wielu zagnieżdżonych pól.

+ +

Ustawienie minimalnego i maksymalnego rozmiaru

+ +

Możemy pozwolić elementowi, aby był elastyczny ale ograniczyć rozmiar, aby nie mógł być większy niż pewien rozmiar lub możemy ustawić minimalny rozmiar. Możemy to zrobić poprzez zastosowanie czterech atrybutów:

+ +
+
minwidth 
+
Określa minimalną długość jaką może posiadać element.
+
minheight 
+
Określa minimalną wysokość jaką może posiadać element.
+
maxwidth 
+
Określa maksymalną długość jaką może posiadać element.
+
maxheight 
+
Określa maksymalną wysokość jaką może posiadać element.
+
+ +


+ Wartości te są zawsze mierzone w pikselach. Możemy również zastosować odpowiednią własność CSS, min-width, min-height, max-width i max-height.

+ +

Własności te są tylko użyteczne w przypadku elementów elastycznych. Poprzez ustawienie maksymalnej wysokości, na przykład: obszar przycisku będzie rósł tylko do pewnej maksymalnej wysokości. Będziemy mogli jeszcze zmienić rozmiar okna poza ten punkt, ale przycisk przestanie zwiększać swój rozmiar. Pudełko, w którego wnętrzu jest przycisk, również będzie rosło, chyba, że ustawimy mu również wysokość pudełka.

+ +

Jeśli dwa przyciski są również elastyczne, normalnie oba będą dzieliły ilość dodatkowej przestrzeni. Jeśli jeden przycisk ma maksymalną szerokość, drugi będzie jeszcze kontynuował wzrost i zabierał całą pozostałą przestrzeń.

+ +

Jeśli pudełko ma maksymalną szerokość lub wysokość, dzieci nie będą mogły wzrastać bardziej, niż do maksymalnego rozmiaru. Tu mamy kilka przykładów ustawienia szerokości i wysokości:

+ +

Przykłady ustawienia szerokości i wysokości

+ +
<button label="1" style="width: 100px;"/>
+<button label="2" style="width: 100em; height: 10px;"/>
+<button label="3" flex="1" style="min-width: 50px;"/>
+<button label="4" flex="1" style="min-height: 2ex; max-width: 100px"/>
+<textbox flex="1" style="max-width: 10em;"/>
+<description style="max-width: 50px">To jest nudny, lecz w prosty sposób
+zawinięty do nowej linii tekst.</description>
+
+ +
+
Przykład 1 
+
Pierwszy przycisk będzie wyświetlony z szerokością 100 pikseli (px oznacza piksele). Musisz dodać moduł lub szerokość będzie ignorowana.
+
Przykład 2 
+
Drugi przycisk będzie wyświetlony z wysokością 10 pikseli i szerokości 100em (em jest to rozmiar znaku bieżącej czcionki).
+
Przykład 3 
+
Trzeci przycisk jest elastyczny więc będzie rósł w oparciu o rozmiar pola w którym jest przycisk. Jednakże, przycisk nigdy nie będzie dzielony na mniej niż 50 pikseli. Często elastyczne komponenty takie jak ochraniacz zaabsorbują pozostałą przestrzeń, przełamując współczynnik flex.
+
Przykład 4 
+
Czwarty przycisk jest elastyczny i nigdy nie będzie miał wysokości mniejszej niż 2ex (x jest zazwyczaj wysokością litery x w bieżącej czcionce) lub nie będzie szerszy niż 100 pikseli.
+
Przykład 5 
+
Tekst wejściowy jest elastyczny, ale nigdy nie wzrośnie aby być większym niż 100em. Często będziesz chciał stosować em kiedy określasz rozmiary tekstu. Ten moduł jest użyteczny dla pól tekstowych, aby byłyby one zawsze odpowiedniego rozmiaru, nawet jeśli czcionka jest bardzo duża.
+
Przykład 6 
+
Element description jest wymuszony po to aby mieć maksymalną szerokość 50 pikseli. Tekst wewnątrz będzie zawijany do kolejnej linii po pięćdziesiątym pikselu.
+
+ +
+

Nasz przykład: <tt>Znajdź pliki</tt>

+ +

Dodajmy, więc niektóre style do naszego okienka dialogowego <tt>Znajdź pliki</tt>. Tworzymy pole tekstowe o zmiennych wymiarach, tak, aby pasowało do całego okna.

+ +
<textbox id="find-text" flex="1" style="min-width: 15em;"/>
+
+ +
Grafika:boxstyle1.png
+ +

W tym przykładzie tekst wejściowy jest elastyczny. W ten sposób, będzie się zwiększał, jeśli użytkownik zmieni rozmiar okienka dialogowego. Jest to użyteczne, jeśli użytkownik chce wpisać długi ciąg znaków tekst. Także, minimalna szerokość, jaką możemy ustawić to 15 em, więc pole tekstowe będzie musiała zawsze posiadać, co najmniej 15 znaków. Jeśli użytkownik zmieni rozmiar okna dialogowego do bardzo małego, to wprowadzany tekst nie będzie się kurczył poza obszar 15 em. Zostanie narysowany wtedy, gdy rozszerzymy nasz obszar poza brzeg okna. Zwróć uwagę, że na obrazku z boku, wprowadzony tekst zwiększył swój rozmiar, gdy rozszerzymy okno do pełnego rozmiaru.

+
+ +

Pola upakowane

+ +

Powiedzmy, że mamy pole z dwoma elementami potomnymi, żaden nie jest elastyczny, ale pole jest elastyczne. Na przykład:

+ +

Przykład 3 : Źródła Podgląd

+ +
<box flex="1">
+  <button label="Happy"/>
+  <button label="Sad"/>
+</box>
+
+ +

Jeśli zmienisz rozmiar okna, pole wystarczy do dopasowania rozmiaru okna. Przyciski nie są elastyczne więc nie będą zmieniać swojej szerokości. Wynikiem jest dodatkowa przestrzeń, która pojawi się po prawej stronie okna, wewnątrz pola. Możesz sobie jednak życzyć aby dodatkowa przestrzeń pojawiła się po lewej stronie, aby przyciski pozostały poprawnie ustawione w oknie.

+ +

Możesz dokonać tego przez umieszczenie separatora wewnątrz pola, ale może wyglądać to niechlujnie, kiedy musisz to robić wiele razy. Lepszym sposobem jest zastawanie dodatkowego atrybutu pack w polu. Atrybut ten wskazuje jak pack (spakować... ale zobacz czcionkę) elementy potomne wewnątrz pola. Dla orientacji poziomej pól steruje poziomym pozycjonowaniem potomków, zaś dla orientacji pionowej pól steruje pionowym pozycjonowaniem potomków. Możesz zastosować następujące wartości:

+ +

You could accomplish this by placing a spacer inside the box, but that gets messy when you have to do it numerous times. A better way is to use an additional attribute pack on the box. This attribute indicates how to pack the child elements inside the box. For horizontally oriented boxes, it controls the horizonal positioning of the children. For vertically oriented boxes, it controls the vertical positioning of the children. You can use the following values:

+ +
+
start 
+
Pozycjonuje elementy od lewego brzegu dla pól poziomych i od górnego brzegu dla pól pionowych. Jest to wartość domyślna.
+
center 
+
Centruje elementy potomne w polu.
+
end 
+
Pozycjonuje elementy od prawego brzegu dla pól poziomych i od dolnego brzegu dla pól pionowych.
+
+ +

Atrybut pack jest stosowany dla pola zawierającego elementy będące pakowanymi, a nie same elementy.

+ +

Możemy zmienić wcześniejszy przykład do centrowania elementów jak pokazano:

+ +

Przykład 4 : Źródła Podgląd

+ +
<box flex="1" pack="center">
+  <button label="Happy"/>
+  <button label="Sad"/>
+</box>
+
+ +

Teraz, kiedy okno zmieniło rozmiar, przyciski są umieszczone centralnie. Porównaj to zachowanie z tym z poprzedniego przykładu.

+ +

Pole regulowane

+ +

Jeśli zmienisz rozmiar okna poziomo w powyższym przykładzie Happy-Sad, pole zwiększy szerokość. Jeśli zmienisz rozmiar okna pionowo, zauważysz, że przyciski zwiększyły wysokość. Jest tak ponieważ elastyczność jest zakładana domyślnie w tym drugim kierunku.

+ +

Możesz sterować tym zachowaniem atrybutem align. Dla pól poziomych steruje pozycjonowaniem potomków pionowo. Dla pól pionowych steruje pozycjonowaniem poziomym potomków. Możliwie wartości są podobne do tych dla pack.

+ +
+
start 
+
Ustawia elementy wzdłuż górnego brzegu dla pól poziomych i wzdłuż lewego brzegu dla pól pionowych.
+
center 
+
Centruje elementy potomne w polu.
+
end 
+
Ustawia elementy wzdłuż dolnego brzegu dla pól poziomych i wzdłuż prawego brzegu pól pionowych.
+
baseline 
+
Ustawia elementy tak, aby tekst był ustawiony w rzędzie. Jest to użyteczne dla pól poziomych.
+
stretch 
+
Ta wartość, domyślna, powoduje, że elementy rosną do odpowiedniego rozmiaru pola, podobnie do elementów elastycznych, ale w przeciwnym kierunku.
+
+ +

Jak przy atrybucie pack, atrybut align stosuje się dla zawartości pola dla elementów będących ustawianymi, a nie dla samych elementów.

+ +

Na przykład, pierwsze pole poniżej, będzie miało swój obszar potomny, ponieważ jest domyślny. Drugie pole ma atrybut align, więc jego potomkowie będą umieszczeni centralnie.

+ +

Przykład 5 : Źródła Podgląd

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<window id="yesno" title="Pytanie" orient="horizontal"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+  <hbox>
+    <button label="Tak"/>
+    <button label="Nie"/>
+  </hbox>
+  <hbox align="center">
+    <button label="Może"/>
+    <button label="Być może"/>
+  </hbox>
+
+</window>
+
+ +
grafika:boxstyle2-b.png
+ +

Możemy także użyć własności stylów -moz-box-pack i -moz-box-align zamiast określonych atrybutów.

+ +
Możesz odkryć, że Przykład Pola Regulowanego jest użyteczny dla wypróbowania różnicy właściwości pola.
+ +
You may find the Box Alignment Example useful for trying out the various box properties.
+ +

Przycinanie/Skracanie tekstu i przycisków

+ +

Możemy potencjalnie stworzyć element przycisku, który zawiera etykietę, która jest większa niż maksymalna szerokość przycisku. Oczywiście, rozwiązaniem byłoby zwiększenie rozmiaru przycisku. Jednak, przyciski (i inne elementy z etykietami) mają specjalny atrybut nazwany crop, który pozwala ci określić jak tekst może być przycięty jeśli jest zbyt długi

+ +

Jeśli tekst jest przycięty pojawi się wielokropek (...) na przycisku, gdzie tekst został skrócony. Poprawne są cztery możliwie wartości:

+ +
+
left 
+
Tekst przycięty z lewej strony.
+
right 
+
Tekst przycięty z prawej strony.
+
center 
+
Tekst jest przycięty w środku.
+
none 
+
Tekst nie został przycięty. Jest to wartość domyślna.
+
+ +

Ten atrybut jest rzeczywiście użyteczny tylko kiedy okienko dialogowe zostało stworzone aby być użytecznym w danym rozmiarze. Atrybut crop może również być użyty z innymi elementami, które stosują atrybut label dla etykiet. Poniżej pokazano ten atrybut w działaniu.

+ +

Przykład 6 : Źródła Podgląd

+ +
grafika:boxstyle2.png
+ +
<button label="Proszę, Naciśnij mnie!" crop="right" flex="1"/>
+
+ +

Odnotuj jak tekst na przycisku został przycięty z prawej strony po uczynieniu okienka mniejszym.

+ +
+

Przykład Znajdź pliki: Źródła Podgląd

+
+ +

W następnym artykule podsumujemy i opiszemy szczegóły modelu pudełkowego.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_stosu/index.html b/files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_stosu/index.html new file mode 100644 index 0000000000..bddb7c90f4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/pozycjonowanie_stosu/index.html @@ -0,0 +1,36 @@ +--- +title: Pozycjonowanie stosu +slug: Mozilla/Tech/XUL/Kurs_XUL/Pozycjonowanie_stosu +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Stack_Positioning +--- +

+

+

« PoprzedniNastępny »

+
+

Artykuł ten opisuje, w jaki sposób pozycjonować elementy w stosie. +

+

Umieszczenie potomka stosu

+

Normalnie elementy potomne stosu rozciągają i dopasowują się rozmiarem do stack (stosu). Jednakże mamy także możliwość umieszczenia dziecka na określonych współrzędnych. Na przykład, jeśli stos posiada dwa przyciski jako dzieci, jeden może być umieszczony 20 pikseli od lewego brzegu i 50 pikseli od górnego brzegu. Drugi przycisk może zostać umieszczony 100 pikseli od lewego brzegu i 5 pikseli od górnego brzegu. +

Pozycja elementu potomnego może być określona poprzez dodanie dwóch atrybutów do tego elementu. Dla pozycjonowania poziomego zastosuj atrybut left, a dla pozycjonowania pionowego zastosuj atrybut top. Jeśli nie dodasz tych atrybutów do elementów będących dziećmi elementu stack, to potomek dopasuje się sam do rozmiaru stosu. +

Przykład 1 : Źródła Podgląd +

+
grafika:bulletins1.png
+
<stack>
+  <button label="Gobeliny" left="5" top="5"/>
+  <button label="Trole" left="60" top="20"/>
+  <button label="Wampiry" left="10" top="60"/>
+</stack>
+
+

Stos (stack) zawiera trzy elementy, każdy z nich jest pozycjonowany, dzięki rozmieszczeniu atrybutów left oraz top. Tutaj wszystkie dzieci stosu są przyciskami, lecz elementy nie są tego samego typu. Może to być dowolny element zawierający pudełko i inne stosy.

Rozmiar stack jest określony na podstawie pozycji elementów potomnych. Zawsze jest o takich rozmiarach, aby elementy potomne były widoczne. Więc jaki ustawisz atrybut left na 400, stos będzie miał długość 400 pikseli wokół siebie plus długość elementu. Możemy przesłonić ten rozmiar różnymi własnościami stylu, takimi jak width czy max-width. +

Możemy zastosować skrypt do uporządkowania wartości atrybutów left i top i w ten sposób elementy będą poruszały się wokoło. Zaletą stosów jest to, że w momencie, gdy jeden absolutnie pozycjonowany element zmienia swoją pozycję, pozycja innych elementów nie jest zmieniana. Jeśli próbujemy przenieść elementy w prawidłowym pudełku, inne elementy mogą zmieniać swoje pozycje.

Jest także możliwe umieszczenie elementów potomnych, więc są one nakładkami. Kiedy rysujemy elementy potomne, elementy są pokazywane w kolejności, w której pojawiły się w stosie (stack). To jest tak, że pierwszy element potomny jest wyświetlony w stack jako tło (na samym spodzie), następny element potomny wyświetlony zostanie zaraz nad nim i tak dalej. Ostatni element potomny zostanie wyświetlony na samej górze. Możemy zastosować funkcje DOM do przesunięcia kolejności elementów wokoło. +

Odpowiadający jako pierwszy zdarzeniom myszy, będzie to pierwszy element z góry. Znaczenie ma to przy dwóch przyciskach nałożonych na siebie, gdyż przycisk znajdujący się na górze zostanie przydzielony kliknięciu myszy i oddzielony od innych. +

Następny artykuł opisuje element tabbox, który będzie jak pokład, ale dostarcza własną nawigację.

+

« PoprzedniNastępny »

+
+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/proste_paski_menu/index.html b/files/pl/mozilla/tech/xul/kurs_xul/proste_paski_menu/index.html new file mode 100644 index 0000000000..198b5110d8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/proste_paski_menu/index.html @@ -0,0 +1,163 @@ +--- +title: Proste paski menu +slug: Mozilla/Tech/XUL/Kurs_XUL/Proste_paski_menu +tags: + - Kurs_XUL + - Przewodniki + - XUL +--- +

 

+ +

+

« PoprzedniNastępny »

+

+ +

W tym artykule zobaczymy, jak utworzyć prosty pasek menu.

+ +

Tworzenie menu

+ +

W XUL menu można stworzyć na różne sposoby. Najprostszym z nich jest dodanie paska menu wraz z wierszem menu na pasku, w taki sam sposób, jak mają inne programy. Możemy także utworzyć menu wyskakujące. Możliwości wykorzystania menu są zależne od liczby różnych elementów, pozwalających Ci utworzyć prosty pasek menu lub menu wyskakujące. Pozycje w menu możemy dostosować bardzo prosto. Widzieliśmy je w części kursu, pokazującego, jak dodać listy rozwijane stosując element menulist. W artykule tym opierać będziemy się na zdobytej do tej pory wiedzy.

+ +

Paski menu są często tworzone podobnie jak toolbar. Pasek menu może być umieszczony wewnątrz toolbar i po jego lewej stronie pojawi się strzałka, która pozwoli na jego rozwinięcie lub zwinięcie. Takie menu będzie działało, tak jak każdy inny pasek narzędzi. XUL posiada kilka specjalnych elementów menu, które dostarczają typowej funkcjonalności menu.

+ +

Poniżej znajduje się pięć elementów połączonych z paskiem menu i jego menu, które są wykorzystane poniżej, a w dalszej kursu części omówione są ich szczegóły:

+ +
+
menubar 
+
Pojemnik na wiersze menu.
+
+ +
+
menu 
+
Wbrew nazwie jest to tylko tytuł menu na pasku menu. Ten element możemy umieścić na pasku menu lub możemy go umieścić osobno.
+
+ +
+
menupopup 
+
Wyskakujące menu, które pojawia się po naciśnięciu elementumenu. Zawiera w sobie listę z poleceniami menu.
+
+ +
+
menuitem 
+
Pojedyncze polecenie menu. Powinno być umieszczone w menupopup.
+
+ +
+
menuseparator 
+
Pozioma linia oddzielająca elementy paska menu. Powinna być umieszczona w menupopup.
+
+ +
+

Menu można dostosować do swoich potrzeb, umieszczając w nich dowolne elementy. Odnosi się to do wszystkich platform, oprócz Macintosh, który posiada swoje własne specjalne menu na górze ekranu kontrolowane przez system. Podczas tworzenia własnego menu miej na uwadze, że specjalne reguły stylów lub elementów niebędących elementami menu, które są umieszczone w menu, mogą nie zostać zaimplementowane.

+
+ +
Przykład prostego paska menu
+ +

Źródła Podgląd

+ +
grafika:menubar-ex1.png
+ +
<toolbox flex="1">
+  <menubar id="sample-menubar">
+    <menu id="file-menu" label="Plik">
+      <menupopup id="file-popup">
+        <menuitem label="Nowy"/>
+        <menuitem label="Otwórz"/>
+        <menuitem label="Zapisz"/>
+        <menuseparator/>
+        <menuitem label="Zakończ"/>
+      </menupopup>
+    </menu>
+    <menu id="edit-menu" label="Edycja">
+      <menupopup id="edit-popup">
+        <menuitem label="Cofnij"/>
+        <menuitem label="Przywróć"/>
+      </menupopup>
+    </menu>
+  </menubar>
+</toolbox>
+
+ +


+ Jak widzimy, został tu stworzony prosty pasek menu z elementem menubar. Znajdują się w nim dwa elementy menu (Plik i Edycja), ułożone poziomo. Tworzą one dwa tytuły, po naciśnięciu, których pojawi się odpowiednie menu wyskakujące menupopup. Ich rozmiary dostosowują się tak, aby zmieściły się zawarte w nich polecenia. Polecenia te są z kolei tworzone poprzez menuitem.

+ +

W celu oddzielenia grup kilku pozycji w menu stosujemy element menuseparator, będący separatorem.

+ +

Element menubar

+ +

menubar jest polem zawierającym menu. Zwróć uwagę, że został on umieszczony wewnątrz toolbox. Pasek menu nie posiada specjalnych atrybutów, ale jest on typu pudełkowego. Znaczy to, że powinniśmy utworzyć pionowy pasek menu ustawiając atrybut orient na wartość vertical.

+ +
grafika:menubar-ex2.png
+ +

Element menu zazwyczaj jest umieszczany w pasku menu, ale niekoniecznie musi tak być. Jednak jego wygląd będzie się wtedy jeszcze różnił. Obrazek ukazujący aktualny przykład sprawia wrażenie, jakby nie był w pełni paskiem menu (jest jeszcze wczesne stadium projektowania tegoż paska).

+ +

Element menu

+ +

Elementy menu zachowują się podobnie, jak elementy przycisków button. Część atrybutów jest taka sama, a oprócz tego istnieje kilka dodatkowych:

+ +
+
id 
+
Unikatowy identyfikator.
+
+ +
+
label 
+
Etykieta, która powinna pojawić się jako napis na menu, np. Plik lub Edytuj.
+
+ +
+
disabled 
+
Atrybut typu logicznego (boolean), określający element menu jako wyłączony, gdy posiada przypisany true. Może przyjmować wartości typu boolean - true i domyślnie ustawioną false.
+
+ +
+
accesskey 
+
Jest to klawisz, który użytkownik może nacisnąć, aby aktywować pozycję menu. Litera, która zazwyczaj pokazuje znak podkreślenia w tytule menu. Menu w Mozilli wygląda jak atrybut label i następnie dodajemy podkreślenie znaku do używanego w etykiecie znaku. Z tego powodu powinno się używać określanego i istniejącego znaku w jakiejś treści.
+
+ +

Element menupopup

+ +

Element menupopup tworzy wyskakujące menu zawierające komendy. Jest ono typu pudełkowego, domyślnie ustawione pionowo. Można zmienić je na poziome, wtedy menuitem będą wyświetlone w rzędzie. Zazwyczaj menupopup zawiera elementy typu menuitem i menuseparator, ale możesz także wstawić elementy jakiegoś typu (nie będą one jednak wtedy wyświetlane pod Macintoshem).

+ +

Element menuitem

+ +

Element menuitem jest podobny do elementu menu i część jego atrybutów jest identyczna:

+ +
+
id 
+
Unikatowy identyfikator.
+
+ +
+
label 
+
Etykieta, która powinna pojawić się na menu jako napis, np. Otwórz lub Zapisz.
+
+ +
+
disabled 
+
Atrybut typu logicznego (boolean), określający element menu jako wyłączony, gdy posiada przypisany true. Może przyjmować wartości typu boolean - true i domyślną false.
+
+ +
+
accesskey 
+
Jest to klawisz, który użytkownik może nacisnąć, aby aktywować pozycję menu. Litera, która zazwyczaj pokazuje znak podkreślenia w tytule menu. Menu w Mozilli wygląda jak atrybut label i następnie dodajemy podkreślenie znaku do używanego w etykiecie znaku. Z tego powodu powinno się używać określanego i istniejącego znaku w jakiejś treści.
+
+ +
+
acceltext 
+
Określa klawisz skrótu, który widoczny jest obok tekstu komendy menu. Nic nie łączy tych skrótów ze skrótami w menuitem. Zobacz artykuł o skrótach klawiaturowych.
+
+ +

Element menuseparator

+ +

Element menuseparator nie posiada specjalnych atrybutów. Tworzy po prostu poziomą linię pomiędzy poprzednim, a następnym elementem.

+ +

W następnym artykule poznamy dodatkowe możliwości menu.

+ +

+

« PoprzedniNastępny »

+

+ +
 
+ +

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/przewijane_menu/index.html b/files/pl/mozilla/tech/xul/kurs_xul/przewijane_menu/index.html new file mode 100644 index 0000000000..b0eca5280a --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/przewijane_menu/index.html @@ -0,0 +1,50 @@ +--- +title: Przewijane menu +slug: Mozilla/Tech/XUL/Kurs_XUL/Przewijane_menu +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Scrolling_Menus +--- +

+

+

« PoprzedniNastępny »

+
+

Artykuł ten opisuje przewijane menu oraz jak stosować mechanizm przewijania wraz z innymi elementami. +

+

Tworzenie dużego menu

+

Zastanawialiście się, co by się stało, jeśli utworzylibyśmy menu wraz ze zbyt dużą ilością pozycji, które nie chcą się pomieścić w oknie? Mozilla dostarczyła mechanizm przewijania, który pozwala na przewijanie poprzez swoje pozycje w oknie. +

+
grafika:menuscroll1.png
+

Jeśli w menu zabraknie dostępnej wolnej przestrzeni w oknie menu, to automatycznie pojawią się na obu jego końcach strzałeczki. Jeśli najedziesz kursorem myszki na którąkolwiek strzałkę, to menu zostanie przewinięte w dół albo w górę. Jeśli natomiast jest więcej dostępnego miejsca, a menu się mieści w oknie, to strzałki nie zostaną wyświetlone. Zwróć uwagę, że pojawienie się strzałek zależy od aktualnie zastosowanego motywu.

Powyższe zachowanie jest wywoływane automatycznie. Nie musimy nic więcej robić, aby pojawił się on w przewijanym menu. Znajdzie on zastosowanie do menu w pasku narzędzi, w wyskakujących okienkach lub listach menu. Zaimplementowany zostanie poprzez element arrowscrollbox. Ten element może być zastosowany do utworzenia przewijanego pudełka, posiadającego strzałki. +

Element arrowscrollbox możemy zastosować gdziekolwiek w regularnym pudełku. Nie musisz go stosować do menu. Jest on zawsze pionowym pudełkiem i może być wewnątrz niego umieszczony dowolny element. Możemy go zastosować do implementacji listy, kiedy nie chcemy tworzyć listy za pomocą listy rozwijanej. +

Poniższy przykład pokazuje, jak stworzyć przewijaną listę przycisków (aby zobaczyć strzałki przewijania, należy zminimalizować okno z poniższym przykładem): +

+

Przykład - przewijana lista przycisków

+

Źródła Podgląd +

+
<arrowscrollbox orient="vertical" flex="1">
+  <button label="Czerwony"/>
+  <button label="Niebieski"/>
+  <button label="Zielony"/>
+  <button label="Żółty"/>
+  <button label="Pomarańczowy"/>
+  <button label="Srebrny"/>
+  <button label="Lawendowy"/>
+  <button label="Złoty"/>
+  <button label="Turkusowy"/>
+  <button label="Brzoskwiniowy"/>
+  <button label="Bordowy"/>
+  <button label="Czarny"/>
+</arrowscrollbox>
+
+

Chcąc zobaczyć działanie przykładu, najpierw otwórz zmaksymalizowanie okno wraz z powyższym przykładem. Następnie zmniejsz rozmiar okna, co spowoduje pojawienie się strzałek umożliwiających przewijanie listy przycisków. Ponowne zmaksymalizowanie tego samego okna spowoduje, iż strzałki znikną.

Możemy ustawić własność CSS max-height dla elementu arrowscrollbox, aby ograniczyć rozmiar pola przewijania, co spowoduje wyświetlenie się strzałek, które będą dostępne przez cały czas.

Element arrowscrollbox jest użyteczny głównie w menu i czasem w okienkach wyskakujących. +

W następnym artykule pokażemy, jak dodać obsługę zdarzeń do elementów XUL. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/przyk\305\202ady_xpcom/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/przyk\305\202ady_xpcom/index.html" new file mode 100644 index 0000000000..97d9816418 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/przyk\305\202ady_xpcom/index.html" @@ -0,0 +1,155 @@ +--- +title: Przykłady XPCOM +slug: Mozilla/Tech/XUL/Kurs_XUL/Przykłady_XPCOM +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/XPCOM_Examples +--- +

+

« PoprzedniNastępny »

+

+ +

Ten artykuł dostarczy kilku przykładów użycia XPCOM wraz z dodatkowymi interfejsami.

+ +

Zarządzanie oknem

+ +
+

This example contains RDF datasource that will be seen in the later section. You might skip this example for the time being, except when you have already had that knowledge.

+
+ +

Tworzenie menu okna

+ +

Lista aktualnie otwartych okien w przeglądarce Mozilli, może być użyta jako źródło danych RDF. Pozwala ci to stworzyć menu okna razem z listą aktualnie otwartych okien w aplikacji. Źródłem danych do tego jest rdf:window-mediator. Możemy użyć tego jak w poniższym przykładzie:

+ +

Przykład 1 : Źródła

+ +
<toolbox>
+ <menubar id="windowlist-menubar">
+  <menu label="Window">
+   <menupopup id="window-menu" datasources="rdf:window-mediator" ref="NC:WindowMediatorRoot">
+    <template>
+     <rule>
+      <menuitem uri="rdf:*" label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+     </rule>
+    </template>
+   </menupopup>
+  </menu>
+ </menubar>
+</toolbox>
+
+ +

W oknie menu zostanie stworzone z listy wszystkich otwartych okien. Wypróbuj ten przykład przez otwarcie kilku okien przeglądarki a zobaczysz, że są one jako lista w menu.

+ +

Komponent Window mediator

+ +

Jest to dobre dla wyświetlania listy otwartych okien, ale chcielibyśmy poprawić to, aby klikając na pozycję w menu przełączyć się do tego okna. Jest to osiągnięte przez zastosowanie komponentu, window mediator. Implementuje on interfejs nsiWindowDataSource. Poniższy kod pokazuje jak stworzyć komponent, który go implementuje:

+ +
var wmdata = Components.classes["@mozilla.org/rdf/datasource;1?name=window-mediator"].getService();
+wmdata.QueryInterface(Components.interfaces.nsIWindowDataSource);
+
+ +

Kod ten wyszukuje komponent źródła danych window mediator. Komponent używany tu jest taki sam jak ten obsługujący źródło danych bazy RDF window-mediator. Możesz również uzyskać ten komponent przez serwis RDF, który jest kolejnym serwisem, który zarządza źródłami danych RDF.

+ +

Interfejs nsIWindowDataSource ma funkcję getWindowForResource, która może być użyta do pobrania zasobu danego okna. We wcześniejszym przykładzie wygenerowaliśmy listę okien i dodaliśmy ją do menu przez szablon. Szablon generuje atrybut id każdego elementu z pozycji menuitem. Wartość tego atrybutu może być użyta jako zasób. Oznacza to,że aby przełączyć się do aktywnego okna musimy wykonać następujące czynności:

+ +
    +
  1. Określić element, jaki kliknie użytkownik.
  2. +
  3. Uzyskać wartość atrybutu id z tego elementu.
  4. +
  5. Przekazać tą wartość do getWindowForResource() uzyskanego obiektu okna.
  6. +
  7. Przełączyć się na aktywność tego okna.
  8. +
+ +

Przykład poniżej pokazuje jak możemy to zrobić:

+ +
<toolbox>
+ <menubar id="windowlist-menubar">
+  <menu label="Window" oncommand="switchFocus(event.target);">
+   <menupopup id="window-menu" datasources="rdf:window-mediator" ref="NC:WindowMediatorRoot">
+    <template>
+     <rule>
+      <menuitem uri="rdf:*" label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+     </rule>
+    </template>
+   </menupopup>
+  </menu>
+ </menubar>
+</toolbox>
+
+<script>
+function switchFocus(elem)
+{
+  var mediator = Components.classes["@mozilla.org/rdf/datasource;1?name=window-mediator"].getService();
+  mediator.QueryInterface(Components.interfaces.nsIWindowDataSource);
+
+  var resource = elem.getAttribute('id');
+  switchwindow = mediator.getWindowForResource(resource);
+
+  if (switchwindow){
+    switchwindow.focus();
+  }
+}
+</script>
+
+ +

Do elementu menu zostało dodane polecenie obsługi programu, które wywołuje funkcję switchFocus() z parametrem elementu, jaki został wybrany z menu. Funkcja switchFocus():

+ + + +

Ciasteczka

+ +

Następnie pobierzemy listę ciasteczek, zapisanych w przeglądarce. Usługa cookies może być użyta do tego celu. Implementuje interfejs nsICookieManager, który może być używany do wyliczania wszystkich ciasteczek. Tutaj mamy przykład, który zapełnia listę menu nazwami wszystkich ciasteczek zebranych z MozillaZine.

+ +
<script>
+
+function getCookies()
+{
+  var menu = document.getElementById("cookieMenu");
+  menu.removeAllItems();
+
+  var cookieManager = Components.classes["@mozilla.org/cookiemanager;1"]
+                        .getService(Components.interfaces.nsICookieManager);
+
+  var iter = cookieManager.enumerator;
+  while (iter.hasMoreElements()){
+    var cookie = iter.getNext();
+    if (cookie instanceof Components.interfaces.nsICookie){
+      if (cookie.host == "www.mozillazine.org")
+        menu.appendItem(cookie.name,cookie.value);
+    }
+  }
+}
+</script>
+
+<hbox>
+  <menulist id="cookieMenu" onpopupshowing="getCookies();"/>
+</hbox>
+
+ +

Funkcja getCookies() będzie wywoływana, gdy tylko otwarto menu jak wskazuje atrybut onpopupshowing w menulist. Pierwsze dwie linie getCookies() pobierają menulist (listę menu) i usuwają wszystkie istniejące pozycje w menu. Jest to wykonywane, ponieważ getCookies() jest wywoływana za każdym razem, kiedy otwarto menu a nie chcemy pozostawić tam starych pozycji za każdym razem.

+ +

Następnie jest wyszukiwany menadżer ciasteczek. Menadżer cookie ma metodę, enumerator, która zwraca obiekt implementujący nsISimpleEnumerator. Może być to używane do przechodzenia przez wszystkie cookies. Numerator ma metodę hasMoreElements() zwracającą prawdę dopóki nie pobierzemy ostatniego cookie. Metoda getNext() pobiera cookie i przesuwa indeks numeratora na następne cookie. Ponieważ numerator właściwie zwraca obiekt ogólny, musimy go QueryInterface() do nsICookie zanim możemy go zastosujemy. W tym przypadku użyjemy operatora instanceof aby to osiągnąć.

+ +

W końcu, dla ciastek, dodajemy pozycję w menu. Do tego używamy właściwości ciastek – nazwy hosta i wartości. Menu mają funkcję appendItem(), której możemy używać do dodawania pozycji w menu, daną etykietkę i wartość.

+ +

Zobacz także

+ +

Więcej przykładów jest dostępnych:

+ + + +

Następnie, zobaczymy jak utworzyć drzewa.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/pude\305\202ko_kart/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/pude\305\202ko_kart/index.html" new file mode 100644 index 0000000000..5ca8a50616 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/pude\305\202ko_kart/index.html" @@ -0,0 +1,179 @@ +--- +title: Pudełko kart +slug: Mozilla/Tech/XUL/Kurs_XUL/Pudełko_kart +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Tabboxes +--- +

+

« PoprzedniNastępny »

+

+ +

W oknie właściwości często występują strony z kartami. W tym artykule dowiemy się, jak je zrobić.

+ +

Pudełko kart

+ +

Pudełka kart zazwyczaj stosujemy w aplikacjach i w oknach właściwości. Seria kart dostępna jest u góry okna i umieszczona wzdłuż niego. Użytkownik może kliknąć każdą z tych kart i zobaczyć ustawienia różnych opcji. Jest to bardzo użyteczne rozwiązanie w przypadku, gdy mamy więcej opcji niż miejsca w jednym oknie.

+ +

XUL dostarcza metod do utworzenia takiego okna dialogowego. Można przy tym użyć pięć nowych elementów, z których każdy jest omówiony pokrótce poniżej:

+ +
+
tabbox
+
Pudełko zewnętrzne, które zawiera karty przez całą swoją górę i osobne strony kart.
+
+ +
+
tabs
+
Pudełko wewnętrzne, które stanowi pojedynczą kartę. Innymi słowami, jest to wiersz kart.
+
+ +
+
tab
+
Określona karta. Kliknij w kartę, aby pojawiła się ona jako pierwsza strona.
+
+ +
+
tabpanels
+
Kontener dla strony.
+
+ +
+
tabpanel
+
Ciało pierwszej strony. Za pomocą tego elementu możemy umieścić zawartość dla strony karty. Pierwszy tabpanel zostanie przypisany do pierwszej karty, drugi do drugiej i tak dalej z pozostałymi przypisaniami.
+
+ +

tabbox jest zewnętrznym elementem. Składa się z dwóch potomków, elementu tabs, który określa wiersz kart oraz elementu tabpanels, który składa się ze stron karty.

+ +

Poniżej pokazana została ogólna składnia pudełka kart:

+ +
<tabbox id="tablist">
+  <tabs>
+    <!-- elementy tab będą tu -->
+  </tabs>
+  <tabpanels>
+    <!-- elementy tabpanel będą tu -->
+  </tabpanels>
+</tabbox>
+
+ +

Elementy tab są umieszczone wewnątrz elementów tabs, które są bardziej jak regularne pudełka. Element tabs sam został umieszczony w elemencie tabbox. Element tabbox także składa się z elementu tabpanels, który będzie dostępny poniżej karty stosowanej do orientacji poziomej wokół pudełka kart.

+ +

element which will appear below the tabs due to the vertical orientation on the whole tabbox. [hmm troche to dziwne, musze spr. to (ptaszor)]

+ +

Naprawdę to tu nic specjalnego nie ma o elementach karty, które by tworzyły inne elementy poza pudełkami kart. Tak jak pudełka, karty także składają się z jakiś elementów. Różnica jest taka, że karty renderują nieco inaczej swoją treść i tylko jeden panel treści karty/kart jest widoczny w danym momencie, coś jak deck.

+ +

Treść pojedynczej strony karty powinna być wewnątrz każdego elementu tabpanel. Nie powinna zostać umieszczona w elemencie tab, gdyż znajdowałby się tam, gdzie treść karty jest wyświetlana wzdłuż góry.

+ +

Każdy element tabpanels staje się stroną wyświetloną na pudełku karty. Pierwszy panel powiązany jest z pierwszą kartą, drugi z drugą kartą i tak dalej. Jest to związek jeden-na-jeden pomiędzy elementem tab i elementem tabpanel.

+ +

Kiedy decydujemy o rozmiarze tabbox, to zastosowany zostanie największy możliwy rozmiar. Znaczy to tyle, że, jeśli będzie dziesięć pól tekstowych na jednej karcie i tylko jedno na kolejnej, strona będzie dopasowana rozmiarem do jednej z dziesięciu na niej występujących. Obszar wzięty przez obszar nowej karty nie zmieni się, kiedy użytkownik stworzy nową stronę karty.

+ +

Spójrz na poniższy przykład:

+ +

Przykład tabbox

+ +

Źródła Podgląd

+ +
grafika:tabpanel1.png
+ +
<tabbox>
+  <tabs>
+    <tab label="Poczta"/>
+    <tab label="Nowości"/>
+  </tabs>
+  <tabpanels>
+    <tabpanel id="mailtab">
+      <checkbox label="Automatycznie sprawdź pocztę"/>
+    </tabpanel>
+    <tabpanel id="newstab">
+      <button label="Wyczyść bufor nowości"/>
+    </tabpanel>
+  </tabpanels>
+</tabbox>
+
+ +


+ Tutaj zostały dodane dwie karty, pierwsza z etykietą <tt>Poczta</tt> oraz druga z etykietą <tt>Nowości</tt>. Kiedy użytkownik kliknie kartę 'Poczta', to zostanie wyświetlona zawartość pierwszej karty. W tym przypadku strona będzie dostępna z etykietą pola wyboru <tt>Automatycznie sprawdź pocztę</tt>. Kiedy klikniemy w drugą kartę, strona będzie zawierała przycisk z etykietą <tt>Wyczyść bufor nowości</tt>.

+ +

Obecnie zaznaczony element tab posiada dodatkowy atrybut selected, który jest ustawiony na wartość true. Ta przeróbka wyglądu aktualnie zaznaczonej karty tworzy ją jakby była zaznaczona. W jednym momencie tylko jedna karta może posiadać wartość true tego atrybutu.

+ +

Rozmieszczenie kart

+ +

Kończąc, możemy zmienić pozycję kart, więc będzie dostępne na jakiejkolwiek stronie karty. Nie ma jakiejś specjalnej składni do zrobienia tego. Możemy w prosty sposób ustawić atrybuty orient oraz dir jako atrybuty wymagane. Pamiętaj, że elementy kart są bardzo regularnymi polami w obszarze graficznym strony. Oprócz tego element tabbox jest bardzo podobny do regularnych kontenerów pola z domyślną pionową orientacją, gdzie element tabs jest bardzo podobny do kontenerów pola z domyślną orientacją w poziomie.

+ +

Na przykład, umieść karty wzdłuż lewej strony, zmień orientację elementu tabs na pionową, aby utworzyć karty dostępne na poziomym stosie. Następnie uporządkuj tabbox, więc niech posiada orientację poziomą. Utworzona zostanie karta dostępna z lewej strony karty (nie powyżej). Zwróć uwagę, że ta zmiana orientacji elementu tabpanels nie będzie miała żadnego efektu do momentu, aż strony kart są ułożone jedna na drugiej.

+ +

Możemy wstawić karty po prawej lub u dołu strony poprzez przeniesienie elementu tabs za element tabpanels w twoim kodzie. Po kolei możemy ustawiać atrybut dir na atrybut reverse w tabbox. Jednakże powinieneś prawdopodobnie zostawić kartę na górze, w innym przypadku może nie wyglądać za dobrze w określonym motywie.

+ +
+

Dodawanie karty do okna <tt>Znajdź pliki</tt>

+ +

Dodajmy drugą kartę do okna dialogowego <tt>Znajdź pliki</tt>. Utworzymy kartę <tt>Opcje</tt> (oraz zaznaczymy ją jako domyślną do wyświetlenia), która będzie składać się z kilku opcji służących do szukania. Może to nie jest najlepszy interfejs, aby to wykonać, ale użyjemy go, aby zademonstrować karty. Etykieta na górze karty i pudełko kryteriów szukania będzie nam potrzebne do zrobienia pierwszej karty. Dodajmy także kilka opcji do kolejnej karty. Pasek postępu i przyciski zostały w oknie głównym, na zewnątrz kart.

+ +
<vbox flex="1">
+
+<tabbox selectedIndex="1">
+  <tabs>
+    <tab label="Szukaj"/>
+    <tab label="Opcje"/>
+  </tabs>
+
+  <tabpanels>
+   <tabpanel id="searchpanel" orient="vertical">
+
+    <description>
+      Wpisz poniżej swoje kryteria szukania i naciśnij przycisk Znajdź,
+      aby rozpocząć szukanie.
+    </description>
+
+    <spacer style="height: 10px"/>
+
+    <groupbox orient="horizontal">
+      <caption label="Kryteria szukania"/>
+
+      <menulist id="searchtype">
+        <menupopup>
+          <menuitem label="Nazwa"/>
+          <menuitem label="Rozmiar"/>
+          <menuitem label="Data modyfikacji"/>
+        </menupopup>
+      </menulist>
+      <spacer style="width: 10px;"/>
+      <menulist id="searchmode">
+        <menupopup>
+          <menuitem label="Jest"/>
+          <menuitem label="Nie jest"/>
+        </menupopup>
+      </menulist>
+
+      <spacer style="height: 10px"/>
+      <textbox id="find-text" flex="1" style="min-width: 15em;"/>
+
+    </groupbox>
+   </tabpanel>
+
+   <tabpanel id="optionspanel" orient="vertical">
+    <checkbox id="casecheck" label="Wyszukuj szczegółowo"/>
+    <checkbox id="wordscheck" label="Dopasuj całą nazwę"/>
+   </tabpanel>
+
+ </tabpanels>
+</tabbox>
+
+ +
grafika:tabpanel2.png
+ +

Elementy karty są umieszczone wokół głównej treści okna. Możemy zobaczyć dwie karty <tt>Szukaj</tt> oraz <tt>Opcje</tt>. Kliknięcie na którejś wywoła pokazanie się jednej ze stron wspomnianych kart. Pierwsza karta wygląda lepiej niż wyglądała wcześniej, poza kartami wzdłuż góry.

+ +

Przykład: <tt>Znajdź pliki</tt>

+ +

Źródła Podgląd

+
+ +

Następnie, zobaczymy jak się tworzy zawartość siatki.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/rozdzielacze/index.html b/files/pl/mozilla/tech/xul/kurs_xul/rozdzielacze/index.html new file mode 100644 index 0000000000..14f9c6f763 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/rozdzielacze/index.html @@ -0,0 +1,95 @@ +--- +title: Rozdzielacze +slug: Mozilla/Tech/XUL/Kurs_XUL/Rozdzielacze +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Splitters +--- +

+

+

« PoprzedniNastępny »

+
+

W tym artykule dowiemy się, jak dodać rozdzielacze do okna. +

+

Rozdzielanie pudełka

+

Może wystąpić sytuacja, że będziemy chcieli wyświetlić okno podzielone na dwie sekcje, w którym użytkownik będzie mógł zmienić rozmiar. Przykładem jest okno przeglądarki Mozilli, gdzie możemy zmienić rozmiar paska strony, poprzez przeciągnięcie lub zawinięcie wspomnianego paska, który rozdziela dwie ramki. Możemy także ukryć pasek strony klikając go w miejscu "wcięcia".

Rozdzielacz tworzymy poprzez użycie elementu splitter. Ten element tworzy wąski pasek pomiędzy sekcjami, który pozwala na zmianę rozmiarów tych sekcji. Możemy umieścić rozdzielacz gdziekolwiek tylko będzie nam on pasował, a będzie on nam pozwalał nadal na zmianę rozmiaru elementów, które będą przed oraz za w tym samym pudełku. +

Kiedy umieścimy rozdzielacz wewnątrz poziomego pudełka, rozdzielacz będzie pozwalał na zmianę rozmiaru w poziomie. Natomiast, kiedy rozdzielacz będzie umieszczony w pionowym pudełku, to będzie pozwalał na zmianę rozmiaru w pionie. +

Składnia rozdzielacza jest następująca:

+
<splitter
+    id="identifier"
+    state="open"
+    collapse="before"
+    resizebefore="closest"
+    resizeafter="closest">
+
+

Atrybuty są następujące:

+
id +
Unikalny identyfikator rozdzielacza. +
+
state +
Sygnalizuje stan rozdzielacza. Domyślnie ustawiony jest na open, panel jest wtedy widoczny od początku. Może też przyjąć wartość collapsed, panel będzie wtedy schowany, a druga część pola będzie zajmować całą powierzchnię. +
+
collapse +
Sygnalizuje, która strona panelu powinna się zwinąć, kiedy rozdzielacz (grippy) zostanie kliknięty lub jego stan jest ustawiony na stan 'collapsed'. Ustaw before dla elementów przed rozdzielaczem lub after dla elementów po rozdzielaczu. Jeśli ustawisz none, które jest także domyślnie ustawiane, grippy rozdzielacza nie zwinie się, gdy je naciśniemy. +
+
resizebefore +
Kiedy przesuwamy rozdzielaczem, to zmieniają swój rozmiar elementy po lewej lub powyżej. Ten atrybut sygnalizuje, który element powinien zmienić swój rozmiar. Ustaw go na closest, aby element zmienił swój rozmiar natychmiast do lewej strony przed rozdzielaczem. Ustaw go na farthest, aby posiadać element, który jest najdalej położony od rozdzielacza po lewej stronie (jest to pierwszy element w pudełku). Domyślną wartością jest closest. +
+
resizeafter +
Kiedy przesuwamy rozdzielaczem, to zmieniają swój rozmiar elementy po prawej lub poniżej. Ten atrybut sygnalizuje, który element powinien zmienić swój rozmiar. Ustaw go na closest, aby element zmienił swój rozmiar natychmiast do prawej strony za rozdzielaczem. Ustaw go na farthest, aby posiadać element, który jest najdalej położony od rozdzielacza po prawej stronie (jest to ostatni element w pudełku). Ten atrybut także może być ustawiony na grow, w którym elementy po prawej stronie rozdzielacza nie zmieniają rozmiaru, kiedy jest przesuwany, lecz zamiast tego zmieni się rozmiar całego pudełka. Domyślną wartością jest closest. +
+

Jeśli ustawimy atrybut collapse, to powinniśmy także dodać element grippy do wewnątrz splitter, dzięki któremu będzie możliwe zastosowanie zawijania elementu. +

Przykład będzie w tym momencie niezwykle pomocny: +

+

Przykład splitter

+

Źródła Podgląd +

+
<vbox flex="1">
+  <iframe id="content-1" width="60" height="20" src="w1.html"/>
+  <splitter collapse="before" resizeafter="farthest">
+    <grippy/>
+  </splitter>
+  <iframe id="content-2" width="60" height="20" src="w2.html"/>
+  <iframe id="content-3" width="60" height="20" src="w3.html"/>
+  <iframe id="content-4" width="60" height="20" src="w4.html"/>
+</vbox>
+
+
grafika:splitter-ex1.jpg
+

W przykładzie stworzyliśmy cztery ramki i rozdzielacz, który został umieszczony pomiędzy pierwszą oraz druga ramką. Atrybut collapse został ustawiony na wartość before, co oznacza, że jeśli ustawimy grippy rozdzielaczowi i klikniemy go, to pierwsza ramka nie będzie wyświetlona i rozdzielacz zostanie przeniesiony na lewo. Grippy rozdzielacza jest rysowany na środku wewnątrz rozdzielacza. +

Rozdzielacz posiada atrybut resizeafter o wartości farthest. To znaczy, że kiedy rozdzielacz jest przesuwany, najdalszy element poza rozdzielaczem będzie miał zmieniony rozmiar. W tym przypadku ramka 4 będzie miała zmieniony rozmiar.

Wartości nie określono dla resizebefore, więc przyjmie on wartość domyślną closest. W tym przypadku jest tylko jedna ramka przed rozdzielaczem, więc ramka 1 będzie miała zmieniony rozmiar.

Ramka 2 i 3 będą tylko zmieniały rozmiar, jeśli przesuniesz rozdzielacz tak daleko w prawo, że ramka 4 nie będzie się już mogła zmniejszyć. +

Poniżej są cztery panele wraz z rozdzielaczem w stanie, gdy jest on zawinięty: +

grafika:splitter-ex2.jpg +

Na obrazku poniżej widać 4 panele i rozdzielacz przesunięty w prawo. Dwa środkowe panele 2 i 3 nie zmieniły rozmiaru natomiast 1 i 4 zmieniły. Na obrazku widać już tylko część czwartego, gdy przesuniemy rozdzielacz jeszcze dalej w prawo, środkowe panele też zaczną się zmniejszać. +

grafika:splitter-ex3.jpg +

Możemy stosować własności stylów takie jak min-width, max-height w ramkach do określenia minimalnej lub maksymalnej szerokości lub wysokości w pudełku. Stosując to, rozdzielacz wykryje rozmiary i nie pozwoli użytkownikowi na przesunięcie rozdzielacza poza minimalne lub maksymalne rozmiary pudełka. +

Przykładowo, jeśli określimy minimalną szerokość panelu 4 na 30 pikseli, nie zmniejszy się on poniżej tej wartości, ale zrobi to reszta paneli. Dwa pozostałe panele będą się zmniejszyć. Jeśli ustawisz minimalną szerokość panelu 1 na 50 px, będzie można przesunąć rozdzielacz tylko o 10 px w lewo (szerokość początkowa wynosi 60 pikseli). Mimo to można będzie je zawinąć.

Możesz umieścić więcej niż jeden rozdzielacz w pudełku, jeśli tylko będziesz chciał, to można zawijać różne jego części. Podobnie do zawijania nie trzeba stosować do ramek, gdyż każdy element może być zawinięty. +

+

Nasz przykład: Znajdź pliki

+
+

Zobaczmy, jak wygląda okienko dialogowe znajdywania plików z rozdzielaczem wewnątrz. Jedną z możliwości jest dodanie wyniku szukania w okienku dialogowym. Dodamy obszar pomiędzy kryteriami wyszukiwania, a przyciskami wzdłuż dołu. Rozdzielacz pozwoli na rozwinięcie lub zwinięcie okna wyników szukania.

+
</tabbox>
+
+ <iframe src="results.html"/>
+ <splitter resizeafter="grow"/>
+
+ <hbox>
+
+

Powyżej dodaliśmy rozdzielacz i ramkę do okienka dialogowego. Nie potrzebujemy już separatora za tabbox, dlatego go usuwamy. Zawartość ramki jest zawarta w pliku o nazwie 'results.html'. Utwórz taki plik i umieść w nim, co chcesz. Ramka zostanie później zastąpiona przez listę rezultatów, kiedy będziesz już wiedział, jak ją stworzyć. Na razie posłuży do zademonstrowania rozdzielacza. +

Rozdzielacz został ustawiony na collapse o wartości before, znaczy to, że element tylko przed rozdzielaczem zostanie zawinięty. Tutaj jest to ramka. Jak pokazuje obrazek poniżej, dzieje się to w momencie kliknięcia grippy, a ramka zostanie zawinięta i przyciski zostaną przesunięte wyżej.

Atrybut resizeafter ustawiony na wartość grow, dlatego elementy za rozdzielaczem przesuwają się w dół po tym, jak rozdzielacz jest przeciągnięty w dół. To rzutuje na zawartość ramki, która rośnie do jakiegoś rozmiaru. Zaznaczmy, że okno nie zmienia rozmiaru automatycznie sama. Nasz rozdzielacz jest rozdzielaczem poziomym, ponieważ jest umieszczony w pionowym pudełku. +

Stan normalny: +

grafika:splitter1.png +

Stan schowany: +

grafika:splitter2.png +

Przykład Znajdź pliki: Źródła Podgląd +

+
+

Następnie zobaczymy, jak utworzyć pasek przewijania. +

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/rozg\305\202aszacze_oraz_obserwatory/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/rozg\305\202aszacze_oraz_obserwatory/index.html" new file mode 100644 index 0000000000..526ea7850c --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/rozg\305\202aszacze_oraz_obserwatory/index.html" @@ -0,0 +1,127 @@ +--- +title: Rozgłaszacze oraz obserwatory +slug: Mozilla/Tech/XUL/Kurs_XUL/Rozgłaszacze_oraz_obserwatory +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Broadcasters_and_Observers +--- +

+

« PoprzedniNastępny »

+

+ +

Czasem będziesz chciał, żeby kilka elementów odpowiadało na wydarzenia albo zmiany statusu i robiło to z łatwością. Aby tego dokonać można użyć rozgłaszaczy.

+ +

Przekazywanie atrybutu polecenia

+ +

Widzieliśmy już, że elementy takie jak przyciski mogą być podczepione do komend. Dodatkowo, jeśli umieścisz atrybut disabled w elemencie command, jakikolwiek element podczepiony do niej również stanie się nieaktywny. Jest to użyteczny sposób aby jak najbardziej skrócić pisany przez Ciebie kod. Technika ta działa również na inne atrybuty. Na przykład jeśli umieścisz atrybut label w elemencie command, każdy przycisk podczepiony do niej będzie miał taką samą etykietę.

+ +

Przykład 1 : Źródła Podgląd

+ +
<command id="my_command" label="Otwórz"/>
+
+<button command="my_command"/>
+<checkbox label="Open in a new window" command="my_command"/>
+
+ +

W tym przykładzie przycisk nie ma atrybutu label, ale jest podczepiony do komendy, która go ma. Przycisk będzie dzielił nalepkę/podpis z komendą. Pole wyboru ma już etykietę, jednak będzie ona nadpisana przez nalepkę komendy. Rezultat będzie taki, że zarówno przycisk jak i pole wyboru będą miały taką samą etykietę 'Otwórz'.

+ +

Jeśli chciałbyś zmodyfikować atrybut label polecenia, etykieta przycisku i pola wyboru zostaną odpowiednio dostosowane. Widzieliśmy już coś takiego w poprzedniej sekcji, gdzie atrybut disabled był dostosowywany raz i status ten propagował się na inne elementy.

+ +

To przekazywanie atrybutu jest bardzo użyteczne w kilku przypadkach. Na przykład powiedzmy, że chcemy zdezaktywować akcję Wstecz w przeglądarce. Powinniśmy zdezaktywować komendę Wstecz w menu, przycisk Wstecz na pasku zadań, skrót klawiaturowy (np. Alt+Lewo) i wszelkie inne komendy Wstecz na menu popup. Chociaż moglibyśmy napisać skrypt, który by to robił, to jest to trochę uciążliwe. Posiada ponadto tę wadę, że musielibyśmy znać wszystkie miejsca gdzie Wstecz mogłoby się znajdować. Jeśli ktoś dodałby nowy przycisk Wstecz używając linku, nie byłby on obsłużony. Dlatego wygodniej jest po prostu zdezaktywować akcję Wstecz i sprawić, że wszystkie podczepione elementy same się zdezaktywują. Możemy użyć przekazywania atrybutu komend, aby uzyskać taki efekt.

+ +

Rozgłaszacze

+ +

Podobnym elementem jest broadcaster. Rozgłaszacze wspierają przekazywanie atrybutów w taki sam sposób jak komendy. Różnicą jest to, że komend używa się do akcji, a rozgłaszaczy do przekazywania informacji o statusie. Na przykład commandbędzie użyta do akcji takiej jak Wstecz, Wytnij albo Usuń. broadcaster byłby użyty np. do przekazania flagi oznaczającej czy użytkownik jest online czy nie. W pierwszym przypadku elementy menu i przyciski paska zadań musiałyby być zdezaktywowane, gdy nie istniała żadna strona, do której można by wrócić, albo nie było tekstu do wycięcia czy usunięcia. W drugim przypadku wiele elementów UI musi być zaktualizowanych, gdy użytkownik przechodzi z modu offline do online.

+ +

Najprostszy rozgłaszacz jest pokazany poniżej. Powinieneś zawsze używać atrybutu id, żeby inne elementy mogły się do niego odnosić.

+ +
<broadcasterset>
+  <broadcaster id="isOffline" label="Offline"/>
+</broadcasterset>
+
+ +

Każdy element obserwujący rozgłaszacza będzie automatycznie zmodyfikowany, gdy tylko rozgłaszacz zmieni swój atrybut label. Rezultatem będzie posiadanie przez te elementy nowej nalepki. Podobnie jak inne nie wyświetlane elementy, element broadcasterset służy jako przechowalnia dla rozgłaszaczy. Powinieneś zdeklarować wszystkich rozgłaszaczy w elemencie broadcasterset, żeby mogły być przetrzymywane razem.

+ +

Making elements observers

+ +

Elementy, które obserwują rozgłaszacza nazywane są obserwatorami. Aby zrobić z elementu obserwatora, dodaj do niego atrybut observes. Jest to analogiczne do używania atrybutu command, podczas dołączania elementu do command. Na przykład w celu uczynienia przycisku obserwatorem rozgłaszacza z poprzedniego przykładu:

+ +
<button id="offline_button" observes="isOffline"/>
+
+ +

Atrybut observes został nałożony na przycisk i jego wartość została ustawiona na wartość id rozgłaszacza. Tutaj przycisk będzie obserwował rozgłaszacza, który ma id isOffline. Jeśli wartość atrybutu label rozgłaszacza zmieni się, obserwatorzy będą zaktualizowani i ich atrybuty label też się zmienią.

+ +

Moglibyśmy kontynuować z dodatkowymi elementami, ponieważ jeden rozgłaszacz może być obserwowany przez tyle elementów, ile tylko chcesz. Możesz także mieć tylko jednego obserwatora, ale mało na tym zyskasz, ponieważ głównym celem rozgłaszacza jest powiadamianie wielu elementów na raz. Powinieneś używać rozgłaszaczy tylko wtedy, gdy chcesz, aby wiele elementów obserwowało jeden atrybut. Poniżej zdefiniowano kilka dodatkowych obserwatorów:

+ +
<broadcaster id="offline_command" label="Offline" accesskey="f"/>
+
+<keyset>
+  <key id="goonline_key" observes="offline_command" modifiers="accel" key="O"/>
+</keyset>
+<menuitem id="offline_menuitem" observes="offline_command"/>
+<toolbarbutton id="offline_toolbarbutton" observes="offline_command"/>
+
+ +

W tym przykładzie zarówno label jak i accesskey będą przekazane od rozgłaszacza do klucza, elementu menu i przycisku. Klucz nie zrobi użytku z żadnego otrzymanego atrybutu, ale będzie on zdezaktywowany w tej samej chwili co rozgłaszacz.

+ +

Możesz użyć rozgłaszacza do obserwacji jakiegokolwiek atrybutu chcesz. Obserwatorzy wyłapią wszystkie wartości każdego atrybutu rozgłaszacza, jeśli tylko się zmienią. Gdy tylko wartość jakiegokolwiek atrybutu rozgłaszacza się zmieni, obserwatorzy zostaną powiadomieni i sami odpowiednio dostosuję swoje atrybuty. Jednak, jeśli obserwatorzy posiadają atrybuty, których nie ma rozgłaszacz, to nie będą one zmienione. Wyjątek stanowią atrybuty id i persist; one nigdy nie są zmieniane. Możesz też używać swoich własnych atrybutów, jeśli chcesz.

+ +

Rozgłaszacze nie są tak często używani jak komendy, ponieważ te ostatnie mogą dokonać więcej. Jedna rzecz godna odnotowania to fakt, że w rzeczywistości nie ma różnic pomiędzy elementem command a elementem broadcaster. Obydwa wykonują tę samą funkcję. Różnica jest bardziej znaczeniowa. Używaj komend do akcji, a rozgłaszaczy do statusów. W rzeczywistości każdy element może być rozgłaszaczem, póki tylko go obserwujesz za pomocą atrybutu observes.

+ +

Element observes

+ +

Jest również sposób na to, aby dokładniej określić który atrybut rozgłaszacza ma dany element obserwować. Wymaga to elementu observes. Tak jak jego odpowiednik atrybutu, pozwala Ci na zdefiniowanie elementu-obserwatora. Element observes powinien być umieszczony jako potomny elementowi, którego chcemy uczynić obserwatorem. Przykład jest podany poniżej:

+ +

Przykład 2 : Źródła Podgląd

+ +
<broadcasterset>
+  <broadcaster id="isOffline" label="Offline" accesskey="f"/>
+</broadcasterset>
+
+<button id="offline_button">
+  <observes element="isOffline" attribute="label"/>
+</button>
+
+ +

Do elementu observes dodano dwa atrybuty. Pierwszy - element - wyszczególnia id rozgłaszacza do obserwowania. Drugi - attribute - wyszczególnia atrybut do obserwacji. Rezultatem jest to, że przycisk otrzyma swoją nalepkę od rozgłaszacza, a gdy ona się zmieni, nalepka przycisku też odpowiednio się zmieni. Element observes nie zmienia się, ale element, którego jest on częścią się zmienia, jest to w tym przypadku przycisk. Zauważmy, że accesskey nie został przekazany przyciskowi, ponieważ to nie on jest obserwowany. Jeśli chcesz, żeby był, musisz dodać kolejny element observes. Jeśli nie chcesz używać żadnych elementów observes, a zamiast tego użyć atrybutu observes bezpośrednio dla przycisku, to obserwowane będą wszystkie atrybuty.

+ +

Zdarzenia rozgłaszacza

+ +

Jest jeszcze dodatkowy manipulator wydarzeń, którego możemy umieścić w elemencie observes ustawionym na onbroadcast. Wydarzenie jest wywoływane gdy tylko obserwator zauważy zmianę atrybutu rozgłaszacza, któremu się przygląda. Poniżej podany jest przykład:

+ +

Przykład 3 : Źródła Podgląd

+ +
<broadcasterset>
+  <broadcaster id="colorChanger" style="color: black"/>
+</broadcasterset>
+
+<button label="Test">
+  <observes element="colorChanger" attribute="style" onbroadcast="alert('Color changed');"/>
+</button>
+
+<button label="Observer"
+  oncommand="document.getElementById('colorChanger').setAttribute('style','color: red');"
+/>
+
+ +

Zostały stworzone dwa przyciski, jeden oznaczony "Test", a drugi - "Obserwator". Jeśli klikniesz na przycisk "Test", nic specjalnego się nie stanie. Jednakże, jeśli klikniesz na przycisk "Obserwator", wydarzą się dwie rzeczy. Najpierw przycisk zmieni się i pojawi się na nim czerwony tekst, a potem ukaże się okno komunikatu z informacją "Zmienił się kolor" ( + "Color changed" + ).

+ +

To co się dzieje, to wywołanie manipulatora oncommand, gdy użytkownik naciska przycisk. Skrypt dostaje odnośnik do rozgłaszacza i zmienia jego styl, tak aby color był czerwony ( + + red + ). Sam rozgłaszacz nie reaguje na tą zmianę, ponieważ nie jest wyświetlany na ekranie, ale pierwszy przycisk jest obserwatorem i zauważa zmianę stylu. element i attribute w observes wykrywają tą zmianę. Styl zostaje zaaplikowany na przycisk natychmiastowo.

+ +

Następnie, ponieważ pojawiła się informacja do rozgłoszenia, zostaje wywołany manipulator wydarzeń onbroadcast. Rezultatem tego jest pojawiające się okno komunikatu. Zauważmy, że informacja do rozgłoszenia pojawia się tylko wtedy, gdy atrybuty w elemencie broadcaster się zmieniają. Bezpośrednia zmiana stylu przycisków nie spowoduje jej pojawienia się, a więc nie ukaże się też okno komunikatu.

+ +

Jeśli spróbujesz skopiować kod pierwszego button kilka razy, skończy się to tym, że pojawi się seria komunikatów, po jednym dla każdego przycisku. Dzieje się tak, ponieważ każdy z nich jest obserwatorem i będzie powiadamiany, gdy zmieni się styl.

+ +


+ Następnie zajmiemy się używaniem Obiektowego Modelu Dokumentu (Document Object Model, DOM) z elementami XUL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/siatki/index.html b/files/pl/mozilla/tech/xul/kurs_xul/siatki/index.html new file mode 100644 index 0000000000..950a7da3de --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/siatki/index.html @@ -0,0 +1,169 @@ +--- +title: Siatki +slug: Mozilla/Tech/XUL/Kurs_XUL/Siatki +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Grids +--- +

+

+

« PoprzedniNastępny »

+
+

XUL posiada zbiór elementów do tworzenia siatki tabeli. +

+

Tabelaryczny układ graficzny XUL

+

XUL posiada zbiór elementów do wykonania układu graficznego elementów w formie siatki przy zastosowaniu elementu grid. Posiada on kilka podobieństw w stosunku do znacznika table z języka HTML. Siatka nie wyświetla niczego sama; jest stosowana tylko do pozycjonowania elementów w formie tabeli z wierszami oraz kolumnami. +

Siatka zawiera elementy, które są wyrównywane w wierszach podobnie jak tabele. Wewnątrz grid deklarujemy dwie rzeczy; kolumny i wiersze, które są zastosowane. Podobnie jak tabele HTML, wstawiamy zawartość do wnętrza wiersza, taką jak etykiety i przyciski. Jednakże siatka, czy to oparta o wiersze czy kolumny, pozwala na zawarcie treści w wiersze i kolumny. Najpowszechniej stosuje się wiersze, tak jak z tabelami. Jednakże nadal możemy użyć kolumn do określenia rozmiaru i wyglądu kolumn w siatce. Alternatywnie możemy umieścić zawartość wewnątrz kolumn i zastosować wiersze do określenia wyglądu. Zobaczymy przypadek organizacji elementów za pomocą wiersza. +

+

Deklaracja siatki

+

Aby zadeklarować ustawienie wierszy, stosujemy znacznik rows, który powinien być elementem potomnym grid. Wewnątrz powinniśmy dodać elementy row, które są stosowane dla każdego wiersza. Wewnątrz elementu wiersza powinniśmy umieścić zawartość, jaką chcemy mieć wewnątrz tego wiersza. +

Podobnie kolumny są deklarowane poprzez element columns, który powinien być umieszczony jako element potomny grid, wewnątrz którego przechodzimy do pojedynczego elementu column, jednego dla każdej kolumny, jaką chcesz w siatce. +

Stanie się to o wiele łatwiejsze do zrozumienia dzięki przykładowi: +

Przykład 1 : Źródła Podgląd +

+
grafika:grids1.png
+
<grid flex="1">
+
+  <columns>
+    <column flex="2"/>
+    <column flex="1"/>
+  </columns>
+
+  <rows>
+    <row>
+      <button label="Królik"/>
+      <button label="Słoń"/>
+    </row>
+    <row>
+      <button label="Koala"/>
+      <button label="Goryl"/>
+    </row>
+  </rows>
+
+</grid>
+
+


+Do siatki zostały dodane dwa wiersze i dwie kolumny. Każda kolumna jest zadeklarowana znacznikiem column. Każda kolumna posiada dodany atrybut flex. Każdy wiersz zawiera dwa elementy, oba są przyciskami. Pierwszy element w każdym elemencie row jest umieszczony w pierwszej kolumnie siatki, a drugi element każdego wiersza jest umieszczony w drugiej kolumnie. Zauważ, że nie potrzebujemy żadnego elementu do deklaracji komórki -- nie ma odpowiednika elementu td z języka HTML. Zamiast tego wstawiamy zawartość komórki bezpośrednio do elementu row. +

+

Siatka z większą ilością elementów

+

Możemy zastosować dowolny element w miejsce elementu button. Jeśli chcemy część jednej komórki wypełnić wieloma elementami, to stosujemy poprzez zagnieżdżenie element hbox lub inny element pudełkowy. Element hbox jest pojedynczym elementem, ale możemy wstawić w nim wiele, jakie chcielibyśmy w nim umieścić. Na przykład: +

Przykład 2 : Źródła Podgląd +

+
grafika:grids2.png
+
<grid flex="1">
+
+  <columns>
+    <column/>
+    <column flex="1"/>
+  </columns>
+
+  <rows>
+    <row>
+      <label control="doctitle" value="Tytuł dokumentu:"/>
+      <textbox id="doctitle" flex="1"/>
+    </row>
+    <row>
+      <label control="docpath" value="Ścieżka:"/>
+      <hbox flex="1">
+        <textbox id="docpath" flex="1"/>
+        <button label="Przeglądaj..."/>
+      </hbox>
+    </row>
+  </rows>
+</grid>
+
+

Zauważ, tak jak na obrazku, w jaki sposób pierwsza kolumna elementów zawiera tylko etykietę posiadając pojedynczy element w każdym wierszu. Druga kolumna zawiera pudełko w drugim wierszu, w którym zawartość dwóch elementów, textbox oraz button. Możemy dodatkowo dodać +zagnieżdżone pudełka lub użyć kolejnej siatki wewnątrz pojedynczej komórki.

Jeśli zmieniliśmy rozmiar okna z ostatniego przykładu zobaczymy, że zmienił się rozmiar pól tekstowych, ale nie innych elementów. Jest tak, ponieważ atrybuty flex zostały dodane do pól tekstowych i drugiej kolumny. Pierwsza kolumna nie musi być elastyczna jako etykieta i nie potrzebuje zmiany swojego rozmiaru. +

Początkowa szerokość kolumny jest określana przez największy element w kolumnie. Podobnie wysokość wiersza jest określana przez rozmiar elementów w wierszu. Możesz użyć atrybutów minwidth i maxwidth oraz powiązanych atrybutów dla dalszego zdefiniowania rozmiaru. +

+

Przykład siatki z większą ilością kolumn

+

Możemy również umieścić elementy wewnątrz elementów column zamiast wierszy. Jeśli to zrobimy, wiersze będą zadeklarowane tylko do określenia, jak wiele wierszy tam jest. +

Przykład 3 : Źródła Podgląd +

+
<grid>
+  <rows>
+    <row/>
+    <row/>
+    <row/>
+  </rows>
+
+  <columns>
+    <column>
+      <label control="first" value="Pierwsze imię:"/>
+      <label control="middle" value="Drugie imię:"/>
+      <label control="last" value="Nazwisko:"/>
+    </column>
+    <column>
+      <textbox id="first"/>
+      <textbox id="middle"/>
+      <textbox id="last"/>
+    </column>
+  </columns>
+
+</grid>
+
+

Ta siatka posiada trzy wiersze i dwie kolumny. Elementy row są rozmieszczone do określenia, jak wiele ich tam jest. Możemy dodać atrybut flex do wiersza, aby uczynić go elastycznym. Zawartość jest umieszczona wewnątrz każdej kolumny. Pierwszy element wewnątrz każdego elementu column jest umieszczony w pierwszym wierszu, drugi element w drugim wierszu, a trzeci element jest umieszczony w trzecim wierszu. +

Jeśli wstawisz zawartość w obu kolumnach i wierszach, zawartość będzie nachodziła każda inaczej, poprzez wyrównanie ich we własnościach siatki. Tworzy to efekt podobny do siatki elementów stack. +

Porządek elementów w grid określa, co jest wyświetlane na górze, a które są umieszczone poniżej. Jeśli element rows jest umieszczony po elemencie kolumny, zawartość wewnątrz wierszy jest wyświetlana na górze. Jeśli element columns jest umieszczony po elemencie rows, zawartość wewnątrz kolumn jest wyświetlona na górze. Podobnie zdarzenia, takie jak przyciski myszy i naciskanie klawiszy, są wysyłane tylko do zbioru u góry. Jest tak dlatego, że kolumny zadeklarowano po wierszach w powyższym przykładzie. Jeśli kolumny umieszczono jako pierwsze, wiersze wychwycą zdarzenia i nie będziemy mogli nic dopisać do tych pól. +

+

Elastyczność siatki

+

Jedną z zalet, które posiadają siatki nad zagnieżdżonymi pudełkami, jest to, że możemy tworzyć komórki, które są elastyczne zarówno w poziomie, jak w pionie. Możemy to zrobić poprzez wstawienie atrybutu flex zarówno w wierszu, jak i kolumnie. Pokazuje nam to poniższy przykład: +


+Przykład 4 : Źródła Podgląd +

+
<grid flex="1">
+ <columns>
+  <column flex="5"/>
+  <column/>
+  <column/>
+ </columns>
+ <rows>
+  <row flex="10">
+    <button label="Wiśnia"/>
+    <button label="Cytryna"/>
+    <button label="Grejfrut"/>
+  </row>
+  <row flex="1">
+    <button label="Truskawka"/>
+    <button label="Malina"/>
+    <button label="Brzoskwinia"/>
+  </row>
+ </rows>
+</grid>
+
+

Pierwsza kolumna i oba wiersze zrobiono elastycznymi. W wyniku tego każda komórka w pierwszej kolumnie będzie elastyczna poziomo. Dodatkowo, każda komórka będzie elastyczna pionowo, ponieważ oba wiersze są elastyczne, chociaż pierwszy wiersz jest bardziej elastyczny. Komórka w pierwszej kolumnie i pierwszym wierszu (przycisk Wiśnia) będą elastyczne o współczynniku 5 poziomo i elastyczne o współczynniku 10 pionowo. Kolejna komórka (Cytryna) będzie tylko elastyczna pionowo. +

Atrybut flex może również być dodany do elementu grid, aby cała siatka była elastyczna, w przeciwnym razie będzie ona tylko rosła w jednym kierunku. +

+

Łączenie kolumn

+

Nie ma sposobu na połączenie komórki, szczególnie wielu kolumn lub wierszy. Jednak możliwe jest stworzenie wiersza lub kolumny, które obejmują całą szerokość lub wysokość siatki. Robi się to poprzez dodanie elementu do wewnątrz elementu rows, który nie jest wewnątrz elementu row. Możemy zastosować typ pudełka i wstawić inne elementy wewnątrz niego, jeśli chcemy użyć kilku elementów. Tu mamy prosty przykład: +

Przykład 5 : Źródła Podgląd +

+
<grid>
+  <columns>
+    <column flex="1"/>
+    <column flex="1"/>
+  </columns>
+
+  <rows>
+    <row>
+      <label value="północno-zachodni"/>
+      <label value="północno-wschodni"/>
+    </row>
+    <button label="równik"/>
+    <row>
+      <label value="południowo-zachodni"/>
+      <label value="południowo-wschodni"/>
+    </row>
+  </rows>
+</grid>
+
+

Przycisk będzie wystarczający, aby wypełnić całą szerokość siatki, ponieważ nie jest wewnątrz wiersza siatki. Możesz używać podobnej metody, aby dodać element pomiędzy dwoma kolumnami. Będzie to wystarczające, aby wypełnić wysokość siatki. Możemy również zrobić te dwie rzeczy razem, jeśli jest to pożądane. +

Następnie przyjrzymy się dodawaniu paneli zawartości. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/skrypty_instalacyjne/index.html b/files/pl/mozilla/tech/xul/kurs_xul/skrypty_instalacyjne/index.html new file mode 100644 index 0000000000..cb7014183e --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/skrypty_instalacyjne/index.html @@ -0,0 +1,135 @@ +--- +title: Skrypty instalacyjne +slug: Mozilla/Tech/XUL/Kurs_XUL/Skrypty_instalacyjne +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Install_Scripts +--- +

+

« PoprzedniNastępny »

+
W tym artykule zostaną opisane skrypty instalacyjne.

+ +

Tworzenie skryptu instalacji

+ +
UWAGA: For Firefox Extensions, <tt>install.js</tt> are no longer used. You should create a <tt>install.rdf</tt> instead.
+ +

Zwykle będziesz chciał mieć kontrole nad procesem instalacji. Na przykład, będziesz chciał sprawdzić wersje plików, a następne instalować tylko nowsze. Skrypt instalacyjny jest wystarczająco elastyczny by umożliwić deinstalację plików. Z tego powodu, instalator zawierają skrypty instalacyjne do sterowania procesem instalacji.

+ +

Skrypt instalatora musi być nazwany install.js i umieszczony na głównym poziomie archiwum instalatora. Skrypt zawiera kod JavaScript, który wywoła odpowiednią liczbę instrukcji.

+ +

W dokumencie HTML lub XUL, obiekt okna jest głównym obiektem. To znaczy, możesz wywołać metody obiektu okna z kwalifikatorem z przodu, co znaczy window.open() może być prosto napisane open(). W skrypcie instalacyjnym nie ma żadnego przyporządkowanego okna, jednak obiekt globalny zostanie obiektem instalacyjnym, który zawiera pewną liczbę funkcji to przystosowywania procesu instalacji. Kilka funkcji obiektu instalacyjnego jest opisanych poniżej.

+ +

Skrypt instalacyjny powinien podjąć następujące kroki:

+ +
    +
  1. Inicjacja instalacji z wyszczególnieniem, które paczki i wersje są instalowane.
  2. +
  3. Użycie funkcji instalacyjnej do określenia pliki i katalogi są konieczne do instalacji. Możesz także wybrać pliki do przeniesienia lub usunięcia.
  4. +
  5. Rozpoczęcie procesu instalowania koniecznych plików.
  6. +
+ +

Ważne jest to, że podczas drugiego kroku, wskazujesz, które pliki powinny być zainstalowane i jakie inne działania powinny być podjęte. Żaden plik nie będzie skopiowany aż do trzeciego kroku. Dzięki temu możemy wyszczególnić pliki, które mają zostać zainstalowane, rozpoznać różne błędy, czy przerwać proces bez modyfikacji systemu użytkownika.

+ +

Rejestr składników

+ +

Mozilla utrzymuje plik, który jest rejestrem wszystkich komponentów, które są aktualnie zainstalowane. Komponenty zawierają nowe paczki chrome, skóry i wtyczki. Gdy nowy składnik jest instalowany, rejestr jest aktualizowany. Przechowywane są tam także informacje o wersjach zainstalowanych plików. W ten sposób łatwiej jest sprawdzić, którą wersję masz zainstalowaną, a co za tym idzie, które pliki aktualizować.

+ +

Rejestr składników pracuje podobnie do rejestru Windows. Składa się z układu kluczy i ich wartości. Jednak nie musisz tego umieć by tworzyć aplikacje XUL, jeżeli nie tworzysz własnych komponentów XPCOM.

+ +

To, co potrzebujesz wiedzieć dla instalacji, to, że rejestr magazynuje zestaw informacji o twojej aplikacji, jak lista plików i wersji. Wszystko jest przechowywane w kluczu, który dostarczasz w skrypcie instalacyjnym.

+ +

Klucz jest skonstruowany w następujący sposób:

+ +
/Author/Package Name
+
+ +

Zamień słowo Author swoim imieniem I Package Name nazwą paczki, którą instalujesz. Na przykład:

+ +
/Xulplanet/Find Files
+
+/Netscape/Personal Security Manager
+
+ +

Pierwsze, co użyjemy to domyślny katalog, którego użyjemy w dialogu wyszukiwania plików. Drugą rzeczą jest klucz użyty, dla Personal Security Manager.

+ +

Inicjacja instalacji

+ +

Obiekt instalacyjny masz funkcję initInstall, która może zostać użyta do rozpoczęcia instalacji. To powinno być wywołane na początku skryptu instalacyjnego. Składnia tej funkcji wygląda następująco:

+ +
initInstall(packageName ,
+regPackage ,
+version );
+
+Example:
+
+initInstall("Find Files","/Xulplanet/Find Files","0.5.0.0");
+
+ +

Pierwszym argumentem jest nazwa paczki w formie czytelnej dla użytkownika. Drugi argument jest kluczem rejestru do przechowywania informacji o paczce, jak opisano wcześniej. Trzeci argument jest wersją instalowanej paczki. Następnie, musimy ustalić katalog, w którym pliki mają zostać zainstalowane. Są na to dwa sposoby. Prostą metodą jest wyznaczenie katalogu, w którym wszystkie pliki zostaną umieszczone, Drugim sposobem możemy ustalić położenie w wcześniej umieszczonym pliku. Pierwsza metoda opisana jest poniżej.

+ +

Funkcja setPackageFolder przyporządkowuje katalog dla instalacji. W dialogu wyszukiwania pliku, będziemy instalować pliki w katalogu chrome. Dla maksymalnej mobilności, nie możesz ustalić nazwy katalogu. Zamiast tego, wyszczególnisz identyfikator znanego katalogu i otrzymujesz jego podkatalogi. Tak, że jeżeli twoja aplikacja musi zainstalować kilka bibliotek systemowych, nie musisz znać nazw tych katalogów.

+ +

Identyfikatory katalogów, są wypisane w dokumentacji XULPlanet. Dla katalogu chrome, identyfikatorem jest ‘Chrome’. Funkcja getFolder może zostać użyta do uzyskania któregoś z tych specjalnych katalogów. Funkcja ta pobiera dwa argumenty, pierwszy jest identyfikatorem, a drugi podkatalogiem. Na przykład:

+ +
findDir = getFolder("Chrome","findfile");
+setPackageFolder(findDir);
+
+ +

Otrzymujemy folder findfile w folderze Chrome i przenosimy go bezpośrednio do funkcji setPackageFolder. Drugi argument jest podkatalogiem, w którym mamy instalować, nie musi on istnieć. Możesz opuścić en argument, jeżeli nie potrzebujesz go.

+ +

Ustawianie plików instalacyjnych

+ +

Następnie musisz wyszczególnić to, które pliki powinny zostać zainstalowane. To wymusza użycie dwóch funkcji addDirectory() i addFile(). Funkcja addDirectory()mówi instalatorowi, który katalog z archiwum XPI powinien być zainstalowany, w jakiejś szczególnej lokalizacji. Druga funkcja działa tak samo, tyle, że dotyczy pliku.

+ +

Obie funkcje addDirectory() and addFile() mogą przyjmować różne formy. W najprostszej, pobiera tylko jeden argument, katalog od instalatora by zainstalować w wyznaczonym katalogu.

+ +
addDirectory (dir );
+addFile (
+dir );
+
+Przykład:
+
+addDirectory("findfile");
+
+ +

Powyższy przykład wyszczególnia to, że katalog findfile powinien być zainstalowany. Możemy wywoływać te funkcje wiele razy do instalacji innych plików.

+ +

Następnie będziemy chcieli zarejestrować pliki findfiles w systemie chrome, tak, że mogą być stosowane przez adres URL chrome. To może być wykonane przy pomocy funkcji registerChrome(). Potrzebuje dwóch argumentów, pierwszy to typ rejestru chrome. Drugi, katalog zawierający plik contents.rdf. Ponieważ zawarte są trzy pliki, dodatkowo plik skóry i lokalizacji, funkcja będzie wywołana trzy razy.

+ +
registerChrome(Install.CONTENT | Install.DELAYED_CHROME, getFolder(findDir, "content"));
+registerChrome(Install.SKIN | Install.DELAYED_CHROME, getFolder(findDir, "skin"));
+registerChrome(Install.LOCALE | Install.DELAYED_CHROME, getFolder(findDir, "locale"));
+
+ +

Flaga DELAYED_CHROME jest stosowana do sygnalizacji, że chrome powinien być zainstalowany następnym razem po uruchomieniu Mozilli.

+ +

Kompletowanie instalacji

+ +

Funkcje addDirectory() i addFile() nie kopiują żadnych plików. One tylko podają, które pliki powinny zostać zainstalowane. Podobnie registerChrome(). Aby zakończyć proces instalacji i zacząć kopiowanie plików wywołaj funkcję performInstall(). To nie potrzebuje żadnych argumentów.

+ +

Końcowy skrypt do instalacji komponentów Znajdź pliki są pokazane poniżej:

+ +
+

Źródła

+ +
initInstall("Find Files","/Xulplanet/Find Files","0.5.0.0");
+
+findDir = getFolder("Chrome","findfile");
+setPackageFolder(findDir);
+
+addDirectory("findfile");
+
+registerChrome(Install.CONTENT | Install.DELAYED_CHROME, getFolder(findDir, "content"));
+registerChrome(Install.SKIN | Install.DELAYED_CHROME, getFolder(findDir, "skin"));
+registerChrome(Install.LOCALE | Install.DELAYED_CHROME, getFolder(findDir, "locale"));
+
+performInstall();
+
+
+ +

Następnie, zobaczymy dodatkowe funkcje instalacji.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/skr\303\263ty_klawiaturowe/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/skr\303\263ty_klawiaturowe/index.html" new file mode 100644 index 0000000000..62a2f5e206 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/skr\303\263ty_klawiaturowe/index.html" @@ -0,0 +1,378 @@ +--- +title: Skróty klawiaturowe +slug: Mozilla/Tech/XUL/Kurs_XUL/Skróty_klawiaturowe +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Keyboard_Shortcuts +--- +

+

« PoprzedniNastępny »

+

+ +

XUL umożliwia także użycie obsługi zdarzeń związanych z klawiaturą. Jednak byłoby to nudne w odniesieniu do każdego przycisku oraz każdej pozycji znajdującej się w menu.

+ +

Tworzenie skrótu klawiaturowego

+ +

XUL dostarcza metod, za pomocą których jesteśmy w stanie zdefiniować skróty klawiaturowe. Widzieliśmy już w artykule o menu, że jesteśmy w stanie zdefiniować atrybut zwany accesskey, który określa klawisz po wciśnięciu którego aktywowane będzie menu lub też któraś z jego pozycji. W poniższym przykładzie, menu Plik może zostać wybrane poprzez wciśnięcie Alt i F (lub innej kombinacji dla danej platformy). Kiedy otworzy się menu Plik, jesteśmy w stanie wybrać pozycję Zakończ za pomocą wciśnięcia klawisza Z.

+ +

Przykład 1 : Źródła Podgląd

+ +
<menubar id="sample-menubar">
+  <menu id="file-menu" label="Plik" accesskey="p">
+    <menupopup id="file-popup">
+      <menuitem id="close-command" label="Zakończ" accesskey="z"/>
+    </menupopup>
+  </menu>
+</menubar>
+
+ +

Można także zastosować atrybut accesskey dla przycisków. W tym przypadku kiedy klawisz zostanie wciśnięty, przycisk zostanie wybrany.

+ +

Możesz jednak zechcieć ustawić więcej skrótów klawiaturowych. Przykładowo, wciśnięcie Control+C, które spowoduje skopiowanie tekstu do schowka. Chociaż skróty takie jak ten mogą nie zawsze być poprawne, to zazwyczaj działają w dowolnej chwili, w której okno jest otwarte. Skrót klawiaturowy będzie dostępny przez większość czasu, w ciągu którego możemy sprawdzić czy w jakimś sensie wykorzystuje skrypt. Przykładowo, kopiowanie tekstu do schowka powinno działać tylko w chwili, w której tekst jest zaznaczony.

+ +

Element key

+ +

XUL dostarcza element key, który pozwala nam na zdefiniowanie skrótów klawiaturowych dla okna. Posiada atrybuty określające klawisz, który powinien zostać wciśnięty, wraz z którym klawiszem modyfikującym (takie jak - Shifth lub Control). Przykład poniżej:

+ +
<keyset>
+  <key id="sample-key" modifiers="shift" key="R"/>
+</keyset>
+
+ +

Ten przykład definiuje skrót klawiaturowy, który jest aktywowany w chwili, w której użytkownik wciśnie klawisze Shift i R. Atrybut key (warto zaznaczyć, że posiada taką samą nazwę jak sam element) może być użyty w celu wykrycia, który klawisz powinien zostać wciśnięty. W tym przypadku jest to R. Możemy także dla tego atrybutu dodać dowolny znak, który ma być wciśnięty. Klawisze modyfikujące, które należy wcisnąć określa natomiast atrybut modifiers (możesz podać kilka rozdzielając spacją). Poniżej lista klawiszy modyfikujących.

+ +
+
alt 
+
The user must press the Alt key. On the Macintosh, this is the Option key.
+
control 
+
The user must press the Control key.
+
meta 
+
The user must press the Meta key. This is the Command key on the Macintosh.
+
shift 
+
The user must press the Shift key.
+
accel 
+
The user must press the special accelerator key. The key used for keyboard shortcuts on the user's platform. Usually, this would be the value you would use.
+
+ +

Twoja klawiatura niekoniecznie musi posiadać wszystkie klawisze. W tym przypadku będą one dostosowane do klawiszy modyfikujących, które posiadamy.

+ +

Element key musi zostać umieszczony wewnątrz elementu keyset. Ten element został zaprojektowany z myślą o przechowywaniu zestawu elementów key i służy do do grupowania wszystkich definicji klawiszy w jednym miejscu (jednym pliku). Jakiekolwiek elementy key poza elementem keyset nie będą funkcjonować.

+ +

Każda platforma używa innych klawiszy dla skrótów klawiaturowych. Przykładowo Windows używa klawisza Control, natomiast Macintosh używa klawisza Command. Byłoby zapewne niewygodne definiować oddzielnie elementy key da każdej platformy. Na szczęście, istnieje rozwiązanie. Modyfikator accel, odnosi się do specjalnego i specyficznego dla danej platformy klawisza używanego dla skrótów. Działa jak każdy inny modyfikator, ale nie dla każdej platformy tak samo.

+ +

Poniżej kilka dodatkowych przykładów:

+ +
<keyset>
+  <key id="copy-key" modifiers="control" key="C"/>
+  <key id="explore-key" modifiers="control alt" key="E"/>
+  <key id="paste-key" modifiers="accel" key="V"/>
+</keyset>
+
+ +

Atrybut key jest używany w celu określenia klawisza, który powinien zostać wciśnięty. Jednak, istnieją przypadki w których chcemy się odwołać do klawiszy które nie mogą zostać określone za pomocą znaków (np: klawisze funkcyjne lub klawisz Enter). Atrybut key może zostać używa dla znaków dających się wyświetlić. Natomiast dla nie możliwych do wyświetlenia znaków służy nam atrybut keycode.

+ +

Atrybut keycode powinien być ustawiony zgodnie ze specjalnym kodem, który reprezentuje klawisz jaki chcesz wykorzystać. Poniżej przedstawiamy tablicę klawiszy. Nie wszystkie z wymienionych klawiszy są dostępne dla każdej klawiatury.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
VK_CANCELVK_BACKVK_TABVK_CLEAR
VK_RETURNVK_ENTERVK_SHIFTVK_CONTROL
VK_ALTVK_PAUSEVK_CAPS_LOCKVK_ESCAPE
VK_SPACEVK_PAGE_UPVK_PAGE_DOWNVK_END
VK_HOMEVK_LEFTVK_UPVK_RIGHT
VK_DOWNVK_PRINTSCREENVK_INSERTVK_DELETE
VK_0VK_1VK_2VK_3
VK_4VK_5VK_6VK_7
VK_8VK_9VK_SEMICOLONVK_EQUALS
VK_AVK_BVK_CVK_D
VK_EVK_FVK_GVK_H
VK_IVK_JVK_KVK_L
VK_MVK_NVK_OVK_P
VK_QVK_RVK_SVK_T
VK_UVK_VVK_WVK_X
VK_YVK_ZVK_NUMPAD0VK_NUMPAD1
VK_NUMPAD2VK_NUMPAD3VK_NUMPAD4VK_NUMPAD5
VK_NUMPAD6VK_NUMPAD7VK_NUMPAD8VK_NUMPAD9
VK_MULTIPLYVK_ADDVK_SEPARATORVK_SUBTRACT
VK_DECIMALVK_DIVIDEVK_F1VK_F2
VK_F3VK_F4VK_F5VK_F6
VK_F7VK_F8VK_F9VK_F10
VK_F11VK_F12VK_F13VK_F14
VK_F15VK_F16VK_F17VK_F18
VK_F19VK_F20VK_F21VK_F22
VK_F23VK_F24VK_NUM_LOCKVK_SCROLL_LOCK
VK_COMMAVK_PERIODVK_SLASHVK_BACK_QUOTE
VK_OPEN_BRACKETVK_BACK_SLASHVK_CLOSE_BRACKETVK_QUOTE
VK_HELP   
+ +

Na przykład, aby stworzyć skrót, który jest aktywowany w chwili, w której użytkownik naciśnie Alt i F5, należy użyć poniższego kodu:

+ +
<keyset>
+  <key id="test-key" modifiers="alt" keycode="VK_F5"/>
+</keyset>
+
+ +

Poniższy przykład demonstruje więcej skrótów klawiaturowych:

+ +
<keyset>
+  <key id="copy-key" modifiers="accel" key="C"/>
+  <key id="find-key" keycode="VK_F3"/>
+  <key id="switch-key" modifiers="control alt" key="1"/>
+</keyset>
+
+ +

Pierwszy klawisz został wywołany w chwili, w której użytkownik wcisnął określony dla swojej platformy klawisz skrótu i C. Drugi został wywołany poprzez wciśnięcie F3. Trzeci jest wywołany poprzez wciśnięcie klawisza Control, klawisza Alt i 1. Jeśli chcesz oddzielić klawiszze głównej części klawiatury i klawisze numeryczne, zastosuj klawisze VK_NUMPAD (takie jak VK_NUMPAD1).

+ +
+

Po więcej informacji na temat skrótów klawiaturowych zajrzyj do Mozilla Keyboard Planning FAQ and Cross Reference.

+
+ +

Zastosowanie skrótów klawiaturowych

+ +

Kiedy już wiemy jak zdefiniować skróty klawiaturowe, nauczymy się jak ich używać. Istanieją dwa sposoby. Pierwszy, najprostrzy, wymaga skorzystania z obsługi zdarzenia keypress dla elementu key. Kiedy użytkownik wciśnie klawisz, skrypt zostanie wywołany. Przykład poniżej:

+ +
<keyset>
+  <key id="copy-key" modifiers="accel" key="C" oncommand="DoCopy();"/>
+</keyset>
+
+ +

Funkcja DoCopy będzie wywołana w chwili w której użytkownik wciśnie klawisz wyspecyfikowany przez element key. W tym przypadku są to klawisze przewidziane do operacji kopiowania do schowka (takie jak Control i C). Będzie to działać jeśli tylko okno jest otwarte. Funkcja DoCopy powinna sprawdzać czy text jest zaznaczony, a następnie kopiować go do schowka. Zauważmy, że pola tekstowe posiadają wbudowane skróty klawiaturowe, więc nie musimy ich sami implementować.

+ +

Przypisanie skrótu w menu

+ +

Jeśli przypisujemy skróty klawiaturowe, które wykonują komendy, które także znajdują się w menu, jesteśmy w stanie powiązać element key bezpośrednio z menu command. Aby to zrobić, dodajemy atrybut key dla pozycji w menuitem. Przypiszmy jej wartość id klawisza, którego chcemy użyć. Poniżej przykład:

+ +

Przykład 2 : Źródła Podgląd

+ +
grafika:keyshort1.png
+ +
<keyset>
+  <key id="paste-key" modifiers="accel" key="V"
+          oncommand="alert('Paste invoked')"/>
+</keyset>
+
+<menubar id="sample-menubar">
+  <menu id="edit-menu" label="Edit" accesskey="e">
+    <menupopup id="edit-popup">
+      <menuitem id="paste-command"
+         accesskey="p" key="paste-key"
+         label="Paste" oncommand="alert('Paste invoked')"/>
+    </menupopup>
+  </menu>
+</menubar>
+
+ +

Atrybut key przypisany do pozycji w menu, który w tym przypadku jest klawiszem odpowiadającym z opcję wklejenia, jest równy id zdefiniowanego klawisza. Możemy go użyć dla dodatkowych klawiszy, jak i dla zdefiniowania skrótów klawiaturowych dowolnej liczby pozycji znajdujących się w menu.

+ +

Warto także zauważyć na obrazku, że tekst został umieszczony zaraz przy polecanie Paste (znajdującym się w menu), w celu wykrycia czy klawisze Control i V zostały wciśnięte, aby wywołać polecenie menu. Skróty klawiaturowe dodane do menu będą działać nawet jeśli menu nie jest otwarte.

+ +

Kolejną dodaktową cechą definicji klawiszy jest prosta możliwość ich dezaktywacji. Aby to zrobić wystarczy dodać atrybut disabled do elementu key i ustawić jego wartość na true. Wyłącza to skrót klawiaturowy, pozbawiając go możliwości wywołania. Wygodnie jest zmieniać wartość atrybutu disabled poprzez użycie skryptów.

+ +
+
Nasz przykład: Znajdź pliki
+ +

Dodajmy skróty klawiaturowe do naszego przykładu okna dialogowego Znajdź pliki. Dodamy ich cztery, po jednym dla poleceń Wytnij, Kopiuj, Wklej i Zamknij (kiedy użytkownik wciśnie Escape).

+ +
<keyset>
+  <key id="cut_cmd" modifiers="accel" key="X"/>
+  <key id="copy_cmd" modifiers="accel" key="C"/>
+  <key id="paste_cmd" modifiers="accel" key="V"/>
+  <key id="close_cmd" keycode="VK_ESCAPE" oncommand="window.close();"/>
+</keyset>
+
+<vbox flex="1">
+ <toolbox>
+  <menubar id="findfiles-menubar">
+   <menu id="file-menu" label="Plik" accesskey="f">
+     <menupopup id="file-popup">
+       <menuitem label="Otwórz szukanie..." accesskey="o"/>
+       <menuitem label="Zapisz szukanie..." accesskey="s"/>
+       <menuseparator/>
+       <menuitem label="Zakończ" accesskey="c" key="close_cmd"
+         oncommand="window.close();"/>
+     </menupopup>
+   </menu>
+   <menu id="edit-menu" label="Edycja" accesskey="e">
+     <menupopup id="edit-popup">
+       <menuitem label="Wytnij" accesskey="t" key="cut_cmd"/>
+       <menuitem label="Kopiuj" accesskey="c" key="copy_cmd"/>
+       <menuitem label="Wklej" accesskey="p" key="paste_cmd" disabled="true"/>
+     </menupopup>
+   </menu>
+
+ +

Teraz możemy użyć tych skrótów klawiaturowych w celu aktywacji komend. Oczywiście, komendy schowka, nie robią na razie nic, ponieważ nie napisaliśmy na razie żadnych skryptów.

+
+ +

Zdarzenia klawiszy

+ +

Istnieją trzy zdarzenia związane z klawiaturą, które mogą zostać użyte w przypadku, w którym cechy klawiszy opisane wyżej nie są odpowiednie. Tymi zdarzeniami są:

+ +
+
keypress 
+
Wywoływany gdy klawisz został wciśnięty i puszczony na aktywnym elemencie. Można wykorzystać do weryfikacji dozwolonych znaków w polu.
+
keydown 
+
Wywoływany gdy klawisz został wciśnięty na aktywnym elemencie. Zwróć uwagę, że zostanie wywołany jak tylko przycisk zostanie wciśnięty, nawet jeśli nie został puszczony.
+
keyup 
+
Wywoływany gdy klawisz został puszczony na aktywnym elemencie.
+
+ +

Zdarzenia klawiszy będą wysyłane tylko do tych elementów na których skupiona jest uwaga (focus). Typowo, będą to textboxy, przyciski, checkboy itp. Jeśli uwaga nie jest skupiona na żadnym z elementów to zdarzenie klawisza, będzie się odnosiło w stosunku do dokumentu XUL. W tym przypadku, można dodać nasłuch zdarzenia do znacznika window . Jeśli jednak chcesz odpowiadać na działanie klawiszy globalnie, będziesz zmuszony do wykorzystania skrótów klawiaturowych, zgodnie z powyższymi wskazówkami.

+ +

Obiekt zdarzenia klawisza posiada dwie własności, które przechowują klawisz, który został wciśnięty. Własność keyCode przetrzymuje kod klawisza i może posłużyć do porównania z jedną ze stałych wymienionych w tabelce powyżej. Natomiast charCode, jest używana dla możliwych do wyświetlenia znaków i przechowuje kod znaku wciśniętego klawisza.

+ +

Następnie dowiemy się jak podtrzymać zaznaczenie i aktywację elementu.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/stosy_i_pok\305\202ady/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/stosy_i_pok\305\202ady/index.html" new file mode 100644 index 0000000000..477088d803 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/stosy_i_pok\305\202ady/index.html" @@ -0,0 +1,77 @@ +--- +title: Stosy i pokłady +slug: Mozilla/Tech/XUL/Kurs_XUL/Stosy_i_pokłady +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Stacks_and_Decks +--- +

+

+

« PoprzedniNastępny »

+
+

Może wystąpić potrzeba wyświetlenia elementów jako zbioru nakładających się kart. Do tego celu mogą być zastosowane elementy stosu i pokładu. +

+

Kontenery

+

Każde pudełko XUL jest kontenerem mogącym zawierać jakiś inny element. Jest kilka elementów, które są wyspecjalizowanym typem pudełek, takich jak paski narzędzi oraz panele kart. Znacznik box tworzy najprostsze pudełko bez określonych własności. Jednakże wyspecjalizowane typy pudełek pracują jak regularne pudełka w sposób zorientowany (orient) na elementy znajdujące się wewnątrz nich, ale posiadają także dodatkowe cechy. +

Faktycznie wiele komponentów może zawierać inne elementy. Widzieliśmy już, że przyciski mogą zawierać inne rzeczy poza domyślnymi. Pasek przewijania jest właśnie specjalnym typem pudełka, które tworzy swoje własne elementy, jeśli ich nie dostarczymy. Może być przesuwany także za pomocą uchwytu, poprzez złapanie i przesunięcie paska. +

W kolejnych kilku rozdziałach wprowadzimy pewne elementy, które zostały zaprojektowane do przechowywania innych elementów. Są to wszystkie specjalne typy pudełek i pozwalają zastosować wszystkie atrybuty pudełka w sobie. +

+

Stosy

+

Element stack jest prostym pudełkiem. Działa jak inne pudełka, ale posiada specjalną własność, która jest dzieckiem położonym na górze pozostałych elementów. Pierwsze dziecko stosu jest ustawiane na spodzie, drugie dziecko na nim, następnie w taki sam sposób trzecie i tak dalej kolejne. Na stosie może być ułożonych wiele elementów. +

Własność orient ma mniejsze znaczenie na stosie jako potomek, niż jakby były ułożone jeden obok drugiego. Rozmiar stosu jest określony przez +największego potomka, ale możemy zastosować własności CSS width, height, min-width i inne podobne własności zarówno ze stosem, jak i jego potomkami. +

Element stack może być zastosowany dla przypadku, gdzie status wskazuje konieczność dodania ponad istniejący element. Na przykład, pasek postępu może zostać stworzony przy użyciu paska i etykiety umieszczonej na jego górze. +

Jednym dogodnym zastosowaniem elementu stack jednak jest to, że możemy zastosować na nim pewną liczbę własności CSS. Na przykład, możemy stworzyć podobny efekt do własności cieniowania tekstu w bardzo prosty sposób:

+

Przykład stosu

+

Źródła Podgląd +

+
<stack>
+  <description value="Cieniowany" style="padding-left: 1px; padding-top: 1px; font-size: 15pt"/>
+  <description value="Cieniowany" style="color: red; font-size: 15pt;"/>
+</stack>
+
+
grafika:stacks1.png
+

Oba elementy description tworzą tekst o rozmiarze 15 punktów. Pierwszy jednak jest przesunięty w prawo oraz w dół o jeden piksel przez dodanie odstępu z lewej strony i góry. Wynikiem będzie uzyskanie tego samego wyrazu 'Cieniowanie' po raz drugi, lecz już lekko przesuniętego względem poprzedniego elementu. Drugi element description został napisany na czerwono, aby zobaczyć efekt w sposób bardzo wyraźny. +

Metoda ta ma przewagę nad zastosowaniem text-shadow, ponieważ możesz całkowicie dodać styl cienia z wyjątkiem tekstu głównego. Możesz mieć swoje własne czcionki, podkreślenia lub rozmiar (możesz nawet stworzyć cień migający). Jest również użyteczny, ponieważ Mozilla nie może aktualnie obsługiwać cieniowania tekstu CSS. Wadą jest to, że obszar objęty cieniem stwarza większy rozmiar stosu. Cieniowanie jest bardzo użyteczne dla tworzenia nieaktywnego pojawienia się przycisków. +

+

Cieniowanie z przykładem pokładu

+

Źródła Podgląd +

+
<stack style="background-color: #C0C0C0">
+  <description value="Wyłączony" style="color: white; padding-left: 1px; padding-top: 1px;"/>
+  <description value="Wyłączony" style="color: grey;"/>
+</stack>
+
+
grafika:stacks10.png
+

Ten układ tekstu i kolory cienia tworzą nieaktywność na dowolnej platformie. +

Zauważ, że zdarzenia, takie jak kliknięcie myszką i naciskanie klawiszy, są przekazywane do elementu na szczycie stosu, to znaczy, do ostatniego elementu na stosie. Oznacza to, że przyciski będą działały poprawnie tylko jako ostatni element stosu. +

+

Pokłady

+

Element deck również wystawia swoich potomków jeden nad drugim podobnie jak element stack, jednak pokład wyświetla tylko jeden ze swoich potomków w jednym czasie. Byłoby to użyteczne dla interfejsu kreatora, gdzie szereg podobnych paneli jest wyświetlanych w kolejności. Zamiast tworzenia oddzielnych okien i dodania przycisków nawigacyjnych do każdego z nich, stworzysz jedno okno i użyjesz podkładu, gdzie zawrzesz zmiany. +

Podobnie jak stosy, bezpośredni potomek elementu deck formuje strony pokładu. Jeśli jest trzech potomków elementu deck, pokład będzie miał trzech potomków. Wyświetlana strona pokładu może być zmieniona przez ustawienie atrybutu selectedIndex elementu deck. Indeks jest to liczba, która identyfikuje, jaka strona jest wyświetlana. Strony są ponumerowane poczynając od zera. Więc pierwszy potomek pokładu to strona o indeksie 0, druga jest to strona o indeksie 1 i tak dalej. +

Poniżej mamy przykład pokładu: +

+

Przykład pokładu

+

Źródła Podgląd +

+
<deck selectedIndex="2">
+  <description value="To jest pierwsza strona"/>
+  <button label="To jest druga strona"/>
+  <box>
+    <description value="To jest trzecia strona"/>
+    <button label="To jest także trzecia strona"/>
+  </box>
+</deck>
+
+

Tu mamy trzy strony (pokłady), domyślnie będąc trzecią. Trzecia strona jest pudełkiem z dwoma elementami wewnątrz. Zarówno pudełko, jak i jego elementy wewnątrz stanowią stronę. +Pokład będzie tak duży jak największy potomek, którym tu będzie strona trzecia. +

Możesz przełączać strony stosując skrypt do modyfikacji atrybutu selectedIndex. Więcej o tym dowiesz się w rozdziale o zdarzeniach i DOM. +

Następny artykuł opisuje, jak stos może być zastosowany do pozycjonowania elementów dziecka. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/struktura_xul/index.html b/files/pl/mozilla/tech/xul/kurs_xul/struktura_xul/index.html new file mode 100644 index 0000000000..34826b291e --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/struktura_xul/index.html @@ -0,0 +1,194 @@ +--- +title: Struktura XUL +slug: Mozilla/Tech/XUL/Kurs_XUL/Struktura_XUL +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/XUL_Structure +--- +

+

« PoprzedniNastępny »

+

+ +

Rozpoczynamy naukę w jaki sposób XUL jest obsługiwany przez Mozillę.

+ +

Jak jest obsługiwany XUL

+ +

XUL w Mozilli jest obsługiwany na takiej samej zasadzie, jak język HTML lub jakikolwiek inny zawarty w niej język. Kiedy wpisujesz adres URL strony HTML w polu adresu przeglądarki, przeglądarka odnajduje witrynę i pobiera jej zawartość. Silnik interpretacji (renderingu) Mozilli pobiera zawartość strony w formie źródła HTML i przekształca to w drzewo dokumentu à la DOM. Drzewo to jest później przekształcane w zestaw obiektów, które mogą zostać wyświetlone na ekranie. CSS, pliki graficzne i inne technologie są używane, by kontrolować tę prezentację. Funkcje XUL są obsługiwane na takiej samej zasadzie.

+ +

Tak naprawdę, to w Mozilli wszystkie typy dokumentów, czy są to HTML lub XUL, czy nawet SVG, są obsługiwane przez ten sam podstawowy kod programu. Oznacza to, że tymi samymi własnościami CSS można manipulować zarówno w HTML, jak i w XUL. Również dużo innych cech może być podzielone między oba te języki. Jednakże, są pewne cechy, które właściwe są tylko dla HTML, jak formularze i takie, które dotyczą tylko XUL, jak nakładki.

+ +

However, there are some features that are specific to HTML such as forms, and others which are specific to XUL such as overlays. Since XUL and HTML are handled in the same way, you can load both from either your local file system, from a web page, or from an extension or standalone XULRunner application.

+ +

Tak więc XUL i HTML są obsługiwane w ten sam sposób, możesz również oba załadować zarówno z lokalnych zasobów swojego komputera, jak i ze stron w sieci. Mozilla posiada specjalny sposób instalowania i rejestrowania plików (XUL, JS ...) jako części jej systemu chrome. Obejmuje to również tworzenie archiwum plików - paczek, które użytkownik może pobrać i zainstalować. Te zainstalowane paczki maja podwyższone przywileje działania, takie jak: możliwość czytania plików, analizowania ustawień użytkownika i zakładek oraz uzyskiwanie dostępu do innych właściwości systemu. Oczywiście, strony z sieci nie posiadają takich przywilejów, chyba że są podpisane cyfrowym certyfikatem i użytkownik przyzna im na to pozwolenie.

+ +

Content from remote sources <code><nowiki>eg http://localhost/~username/</nowiki></code>, regardless or whether they are HTML or XUL or another document type, are limited in the type of operations they can perform, for security reasons. For this reason, Mozilla provides a method of installing content locally and registering the installed files as part of its '''chrome''' system. This allows a special URL form to be used called a <code>chrome://</code> URL. By accessing a file using a chrome URL, the files receive elevated privileges to access local files, access preferences and bookmarks and perform other privileged operations. Obviously, web pages do not get these privileges, unless they are signed with a digital certificate and the user has granted permission to perform these operations.

+ +

Rejestracja paczki jest sposobem, w jaki rozszerzenia Firefoksa mogą dodawać funkcje do przeglądarki. Rozszerzenia są małymi paczkami plików XUL, JavaScript, stylów CSS i obrazów spakowanych razem do pojedynczego pliku. Paczka może zostać utworzona przy pomocy programu do kompresji ZIP. Kiedy użytkownik pobierze rozszerzenie, zostanie ono zainstalowane na jego komputerze. Rozszerzenie to zagnieździ się w przeglądarce używając specjalnych właściwości XUL nazywanych nakładaniem (overlay), które pozwala kodowi XUL z rozszerzenia i z przeglądarki połączyć się razem w całość. Użytkownikowi może się wydawać, że rozszerzenie zmodyfikowało przeglądarkę, ale w rzeczywistości, kod jest oddzielony i rozszerzenie może zostać łatwo odinstalowane.

+ +

Rejestracja paczki nie jest wymagana, żeby używać nakładek, jednak, jeśli nie jest zarejestrowana, nie będziesz mógł dostać się do niej za pomocą głównego interfejsu przeglądarki. Dostęp do tej paczki jest możliwy poprzez specjalny rodzaj adresu URL, stworzonego specjalnie, by uzyskać dostęp do zainstalowanych paczek. Ten rodzaj URL nazywamy chrome i zaczyna się zawsze od 'chrome://'. Tak jak 'http://' zawsze prowadzi do stron internetowych, a 'file://' do folderów lokalnych, tak 'chrome://' odnosi się do zainstalowanych paczek i rozszerzeń. W składnię URL chrome zagłębimy się w dalszych rozdziałach.

+ +

Należy zaznaczyć, że, gdy wczytujemy zawartość za pomocą URL chrome, uzyskujemy zwiększone przywileje opisane powyżej, których inne rodzaje adresów nie uzyskują. Dla przykładu, adres HTTP nie posiada żadnych specjalnych przywilejów, a kiedy spróbuje takowe uzyskać, spowoduje błąd (np. przy próbie uzyskania dostępu do plików lokalnych), zaś URL chrome będzie mógł czytać pliki bez ograniczeń.

+ +

Ta różnica jest bardzo ważna. Oznacza, że są pewne rzeczy, których zawartość stron www nie może zrobić, takie jak czytanie zakładek użytkownika. Ta różnica nie opiera się na rodzaju wyświetlanej zawartości, tylko na typie użytego adresu. Zarówno HTML, jak i XUL umieszczone na witrynie nie mają żadnych dodatkowych przywilejów. Natomiast HTML i XUL załadowany przez chrome URL posiadają rozszerzone przywileje.

+ +

To, że przeglądarka Mozilla sama w sobie jest tylko zbiorem paczek plików XUL, JavaScript i stylów CSS, jest nic nie warte. Te pliki są dostępne poprzez URL chrome, posiadają podwyższone przywileje i działają tak jak inne paczki. Oczywiście, przeglądarka jest znacznie większa i bardziej zaawansowana niż większość rozszerzeń. Klient poczty Mozilla, kompozytor stron, Firefox i Thunderbird, jak również wiele innych komponentów, są napisane w XUL i są one dostępne poprzez URL chrome.

+ +

Jeśli zamierzasz używać XUL na stronach WWW, wystarczy, że umieścisz plik XUL na stronie tak jak byś umieszczał plik HTML, a następnie wejdziesz na tą stronę za pomocą przeglądarki. Upewnij się, że twój serwer WWW jest skonfigurowany żeby wysłać pliki XUL z typem zawartości application/vnd.mozilla.xul+xml. Za pomocą typu zawartości Mozilla rozróżnia HTML i XUL. Mozilla nie sugeruje się rozszerzeniem plików, chyba, że odczytuje pliki z lokalnego systemu plików, w każdym razie powinieneś używać rozszerzenia .xul dla wszystkich plików w języku XUL. Możesz otwierać pliki XUL ze swojego komputera otwierając je w przeglądarce lub klikając podwójnie w menadżerze plików.

+ +
Pamiętaj, że pliki XUL spoza twojego komputera mają poważne restrykcje odnośnie tego, co mogą zrobić.
+ +

Typy dokumentów: HTML XML XUL CSS

+ +

Trwają prace nad umożliwieniem aplikacjom XUL, żeby funkcjonowały jako samodzielne programy z własnymi instalatorami i plikami wykonywalnymi (XulRunner). Będą one dzielić biblioteki z Mozillą i nie będzie potrzeby mieć zainstalowanej przeglądarki, żeby móc używać XUL. Aktualnie jest to też możliwe, jednak proces ten jest skomplikowany i rzadko używany. Celem jest właśnie usprawnienie tego procesu.

+ +

W Mozilli wiele funkcji jest dzielone pomiędzy HTML i XUL, używa ona jednak różnego rodzaju obiektów dokumentu dla każdego. Są trzy główne typy dokumentu w Mozilli: HTML, XML i XUL. Naturalnie, dokumenty HTML są używane do dokumentów HTML, dokumenty XUL są używane do dokumentów XUL i dokumenty XML, które są używane dla innych typów dokumentów XML. Odkąd XUL jest również XML-em, jest podtypem bardziej ogólnego dokumentu XML. Są subtelne różnice w funkcjonalności tych dokumentów. Na przykład, kontrola formularzy na stronie HTML jest dostępna przez właściwość document.forms, ta właściwość nie jest dostępna dla dokumentów XUL, gdyż XUL nie ma formularzy w takim samym sensie, jak HTML. Z drugiej strony określone cechy XUL, takie jak overlays i szablony, są dostępne tylko w dokumentach XUL.

+ +

Te różnice pomiędzy dokumentami są bardzo ważne. Istnieje możliwość używania wielu cech XUL w HTML albo w dokumentach XML, kiedy nie ma specyfikacji typu dokumentu, jednakże inne cechy wymagają właściwego rodzaju dokumentu. Na przykład, możesz używać typów układu (layout) XUL w innych dokumentach, gdyż, by działać, nie potrzebują one typu XUL dokumentu.

+ +

Podsumujmy wiadomości zdobyte powyżej:

+ + + +

Następne kilka artykułów opisuje podstawy struktury paczek chrome, które mogą zostać zainstalowane w Mozilli. Jeśli już chcesz zacząć tworzyć proste aplikacje XUL, możesz przejść od razu do drugiej sekcji i zostawić sobie tą sekcję na później.

+ +

Organizacja paczki

+ +

Mozilla jest zorganizowana w taki sposób, że możesz zainstalować tyle komponentów ile tylko chcesz. Typowa instalacja zawiera komponenty: nawigator, kuriera poczty i kompozytora stron. Posiada też po jednym komponencie dla każdej zainstalowanej skórki i lokalizacji. Każdy z tych komponentów albo paczek, jest złożony z kompletu plików, które opisują interfejs użytkownika dla nich. Na przykład, komponent kuriera poczty będzie miał opis okna z listą wiadomości, okna kompozycji e-maila i książki adresowej.

+ +

Paczki, które są dostarczone z Mozillą znajdują się w katalogu chrome, który znajduje się w katalogu instalacyjnym Mozilli. W katalogu chrome znajdziesz wszystkie pliki, które opisują interfejs użytkownika użyty przez przeglądarkę Mozilla, kuriera poczty i inne aplikacje. Może być mylące, że katalog nazywa się "chrome" a jest tylko nieznacznie powiązany z URL chrome. Samo kopiowanie pliku do katalogu "chrome" nie daje plikowi żadnych dodatkowych przywilejów, ani nie umożliwia dostępu poprzez URL chrome. Jedyną droga by stworzyć zawartość, która może być dostępna poprzez URL chrome, jest stworzenie paczki jak opisano w następnych kilku sekcjach. Katalog ten został nazywany "chrome" ponieważ ta nazwa wydawała się odpowiednia dla katalogu, gdzie znajdują się paczki chrome, zawarte w Mozilli.

+ +

Istnieją jeszcze dwa inne miejsca, gdzie słowo chrome może się pojawić. Pierwszym jest argument wiersza poleceń '-chrome' a drugim modyfikator chrome w funkcji window.open(). Żadna z tych funkcji nie przyznaje dodatkowych przywilejów; zamiast tego otwierają nowe okno, na wierzchu, bez elementów interfejsu użytkownik (UI) przeglądarki takie jak menu i pasek narzędzi. W bardziej złożonych aplikacjach XUL, będziesz powszechnie używał tych cech, gdy nie będziesz chciał by te elementy UI znajdowały się w twoich okienkach dialogowych.

+ +

Pliki w paczce zwykle są połączone w jeden plik JAR. Plik JAR można utworzyć i przeglądać za pomocą programu do kompresji ZIP. Otwórz teraz kilka plików JAR w katalogu chrome, Mozilli i zobacz jak wygląda struktura takiej paczki. Pomimo, że normą jest łączenie plików w jeden plik JAR, dostęp do paczek można uzyskać w rozwiniętej formie, jako zestaw katalogów. Normalnie nie rozprowadza się paczek w ten sposób, ale jest to wygodne podczas tworzenia rozszerzenia, ponieważ możesz edytować katalog z plikami i po prostu przeładować pliki XUL bez przepakowania i ponownej instalacji.

+ +
pref("nglayout.debug.disable_xul_cache", true);
+
+ +

Zazwyczaj w paczce chrome są trzy różne części, mimo, że wszystkie są opcjonalne. Każda część jest przetrzymywana w innych katalogach. Te trzy zestawy to content (zawartość), skin (skóry) i locale (lokalizacja), opisano je poniżej. Niektóre paczki mogą zawierać jedną albo więcej skór i lokalizacji, użytkownik może też zastąpić je własnymi. W dodatku paczka może zawierać kilka różnych aplikacji, każdą dostępną przez różne URL chrome. System pakowania jest wystarczająco elastyczny, żebyś mógł umieścić w paczce jakąkolwiek część, którą potrzebujesz i pozwolić innym, takim jak tekst dla różnych języków, żeby zostały pobrane oddzielnie.

+ +

Katalogi:

+ + + +

Zawarte są w nim deklaracje okien i elementów interfejsu użytkownika. Są one zapisane w plikach XUL, które mają rozszerzenie xul. Paczka może posiadać wiele plików XUL, ale główne okno powinno mieć taką samą nazwę jak nazwa paczki. Na przykład, paczka edytora (kompozera) będzie miała plik o nazwie editor.xul. Skrypty znajdują się w osobnych plikach o rozszerzeniu js, obok plików XUL.

+ + + +

Style CSS opisują szczegóły wyglądu okna. Są one oddzielone od plików XUL, by ułatwić modyfikowanie skóry aplikacji. Znajdują się tu też użyte obrazki.

+ + + +

Wszystkie teksty, które są wyświetlane w oknie są zgromadzone oddzielnie. Dzięki czemu użytkownik może mieć własny zestaw tekstów we własnym języku.

+ +

Spójrz na katalog chrome w Mozilli, powinieneś widzieć kilka plików JAR, po jednym dla każdej zainstalowanej paczki. Na przykład messenger.jar opisuje interfejs użytkownika dla komponentu kuriera poczty. Plik modern.jar opisuje skórę Modern.

+ +

Zawartość paczek

+ +

Nazwa pliku JAR może opisywać co zawiera ten plik, ale nie możesz być tego pewny dopóki sam nie sprawdzisz. Użyjemy paczki kuriera poczty jako przykładu. Jeśli rozpakujesz plik browser.jar zobaczysz, że struktura jego plików wygląda następująco:

+ +
content
+   browser
+      browser.xul
+      browser.js
+      -- other browser XUL and JS files goes here --
+      bookmarks
+         -- bookmarks files go here --
+      preferences
+         -- preferences files go here --
+.
+.
+.
+
+ +

Łatwo zgadnąć, że paczka zawartości (ang. content) znajduje się w folderze 'content', skóry w 'skin' a lokalizacje w 'locale'. Ten schemat nazywania nie jest wymagany, ale jest powszechnie uznawany, gdyż dzięki niemu paczka jest bardziej uporządkowana. Niektóre paczki zawierają wszystkie 3 części: content, skin i locale. Dla przykładu, Chatzilla ma taką strukturę.

+ +

Katalogi content i messenger zawiera pliki o rozszerzeniem xul i js. Jak łatwo się domyślić pliki XUL mają rozszerzenie xul a skrypty JavaScript, js. w tym przypadku skrypty obsługują funkcje okna kuriera. Wiele plików XUL posiada powiązany ze sobą skrypt a niektóre nawet więcej niż jeden.

+ +

W strukturze przedstawionej powyżej, znajdują się dwa pliki. Oczywiście jest ich więcej ale dla ułatwienia pokazane są tylko dwa. Plik messenger.xul opisuje główne okno kuriera które wyświetla listę wiadomości. Okno to jest dość złożone dlatego składa się z kilku plików powiązanych ze sobą za pomocą overlays. Główne okno powinno mieć taką samą nazwę jak paczka i rozszerzenie xul. W tym przypadku paczka nazywa się 'messenger' dlatego powinniśmy szukać pliku 'messenger.xul'. Niektóre z reszty plików opisują oddzielne okna. Przykładowo plik 'subscribe.xul' opisuje dialog subskrybowania grup newsowych.

+ +

Plik contents.rdf znajduje się w każdej paczce. Jest to bardzo ważny plik ponieważ określa nazwę paczki, jej autora i wersje. Mozilla używa tych informacji do rejestracji paczki i przydzielenia jej adresu URL chrome, żeby plik był dostępny przez ten adres bo bez tego pliku nie można go przydzielić. Plik ten zostanie dokładniej opisany w dalszych częściach.

+ +

Dwa podkatalogi - addressbook i messengercompose, opisują dodatkowe sekcje komponentu obsługi poczty. Są umieszczone w oddzielnych katalogach, żeby je odseparować. Nie potrzebują pliku 'contents.rdf' ponieważ są dostępne przez ten sam adres chrome.

+ +

Motywy i skórki

+ +

Podstawowy kod Mozilli nazywa je motywami a interfejs użytkownika motywami (themes), jednak oba określenia odnoszą się do tej samej rzeczy. Pliki modern.jar i classic.jar znajdują się w katalogu chrome Mozilli i opisują motywy wyglądu Mozilli. Ich struktura jest podobna do paczki content. Przykład z pliku modern.jar:

+ +
skin
+  modern
+     navigator
+        contents.rdf
+        -- pliki skór nawigatora --
+     messenger
+        contents.rdf
+        -- pliki kuriera --
+     editor
+        contents.rdf
+        -- pliki kompozytora stron --
+     communicator
+        contents.rdf
+        -- pliki komunikatora --
+     global
+        contents.rdf
+        -- pliki skór globalnych --
+.
+.
+.
+
+ +

Struktura jest tu bardziej skomplikowana, chodź jest podobna do części content. Zamiast słowa 'content' w folderze na najwyższym poziomie użyto słowa 'skin'. Zapamiętaj, że ta struktura jest czysto umowna, równie dobrze możesz umieści wszystkie pliki w jednym głównym katalogu i nie używać podkatalogów. Jednakże w większych aplikacjach, jak w samej Mozilli, podkatalogi oddzielają różne komponenty. W przykładzie powyżej znajduje się 5 katalogów, po jednym dla każdej paczki dla której przeznaczono skórę. Katalog global zawiera skóry ogólne dla wszystkich paczek. Pliki te odnoszą się do wszystkich komponentów, zazwyczaj będziesz sam ich używał. Katalog global definiuje wygląd wszystkich elementów UI w XUL, podczas gdy inne katalogi definiują wygląd aplikacji którym odpowiadają. Przykładowo katalog editor opisuje skórę dla komponentu kompozytora stron i zwiera między innymi pliki graficzne z ikonami dla przycisków paska narzędzi.

+ +

Zauważyłeś zapewne, że jest 5 plików contents.rdf. Właśnie dzięki nim skóry są stosowane oddzielnie dla każdego komponentu. Teoretycznie możesz mieć skórę inną dla nawigatora, niż dla kuriera, jednak większość wyglądu jest determinowana przez część global, tak więc nie zobaczysz dużej różnicy pomiędzy aplikacjami. Poza tym Mozilla nie umożliwia wyboru oddzielnego motywu dla każdej aplikacji. Skóry również są oddzielnymi plikami, łatwo więc można dodać nowe komponenty a istniejące usunąć. Na przykład możesz stworzyć nową skórę dla kuriera a użytkownicy mogą ściągnąć ją oddzielnie. Dzięki pakowaniu plików oddzielne, użytkownik może wybrać których części chce używać.

+ +

Skóra składa się z plików CSS i plików graficznych, które razem tworzą interfejs. Plik messenger.css jest używany przez messenger.xul i zawiera style które definiują wiele części interfejsu poczty. Zauważ, że znowu plik messenger.css ma taką samą nazwę jak cała paczka. Zmieniając zawartość plików CSS możesz zmieniać wygląd okna, nie zmieniając jego funkcji. Właśnie tak możesz stworzyć swój własny motyw bo skóry zmieniają się niezależnie od części XUL.

+ +

Lokalizacje

+ +

Plik en-US.jar opisuje informacje o języku, w tym przypadku angielskim, dla każdego komponentu. Tak jak skóry, każdy język zawiera pliki które określają tekst używany przez konkretną paczkę. Tak jak poprzednio, w paczce znajdują się pliki contents.rdf które opisują dla których paczek przeznaczono teksty. Podkatalogi zawierają tekst dla każdej paczki. Struktura tej paczki jest bardzo podobna do skin:

+ +
locale
+   navigator
+      contents.rdf
+      -- pliki tekstów w nawigatorze --
+   global
+      contents.rdf
+      -- pliki tekstów globalnych --
+.
+.
+.
+
+ +

Teksty lokalizacji znajdują się w dwóch typach plików: DTD i plików właściwości (properties). Pliki DTD mają rozszerzenie dtd i zawierają opis pojedynczych ciągów tekstu po jednym dla każdego tekstu użytego w oknie. Dla przykładu, plik messenger.dtd zawiera takie opisy dla każdej komendy menu. Dodatkowo, zdefiniowane są skróty klawiaturowe dla każdej komendy, gdyż mogą się różnić w innych językach. Pliki DTD są używane przez pliki XUL, na ogół będzie to po jednym dla każdego pliku XUL. Jak już wspomniałem, znajdują się tu również pliki właściwości, które są podobne ale używają ich skrypty. Plik messenger.properties zawiera kilka ciągów tekstów.

+ +

Taka struktura umożliwia przetłumaczenie Mozilli albo tylko wybranego komponentu na inny język, wystarczy dodać tylko nowy plik locale dla tego języka. Nie ma potrzeby zmieniania części XUL. Dodatkowo, inna osoba może stworzyć oddzielną paczkę która będzie zawierać skórę lub lokalizacje dla stworzonej przez ciebie zawartości (content), nie ma potrzeby zmieniać oryginalnej paczki.

+ +

Inne paczki

+ +

Wiele paczek w Mozilli jest podpaczkami, paczki komunikatora. Dla przykładu okna zakładek, historii i opcji znajdują się poza paczką komunikatora. Znajdują się oddzielnie ponieważ dotyczą większej ilości paczek.

+ +

Istnieje specjalny rodzaj paczki zwany toolkit lub global. Wcześniej widzieliśmy katalog global w paczce skór i lokalizacji. Plik toolkit.jar zawiera odpowiadającą im część content. Zawiera niektóre globalne dialogi i definicje. Określa również domyślny wygląd i funkcje dla elementów interfejsu, jak pola tekstowe i przyciski. Pliki znajdujące się w katalogu global paczki skór, zawierają definicje wyglądu wszystkich elementów XUL interfejsu użytkownika. Większość zmian motywów wyglądu, powoduje użycie różnych wariantów tych plików.

+ +

Dodawanie paczki

+ +

Mozilla umieszcza paczki zawarte w instalacji w katalogu chrome, mimo, że nie ma wymogu żeby znajdowały się one właśnie tam. Paczki mogą być zainstalowane w dowolnym miejscu na dysku. Plik chrome.rdf zawiera listę zainstalowanych paczek, motywów i lokalizacji wraz z ich położeniem. Powszechnie instaluje się nowe paczki w katalogu chrome, ponieważ jest to wygodne ale będą one równie dobrze działać z innego katalogu albo nawet z sieci lokalnej. Nie możesz przetrzymywać ich w zdalnych katalogach, chyba, że są one zamontowane w lokalnym systemie plików.

+ +

Użytkownik może mieć zainstalowane wiele skór i lokalizacji które dotyczą tej samej paczki. Jednocześnie może być aktywna tylko jedna skóra i lokalizacja dla paczki. Plik chrome/chrome.rdf określa które z nich są aktywne, również określa paczkę content. Plik w chrome.rdf w katalogu profilu działa podobnie do tego z głównego katalogu Mozilli ale zawiera informacje dotyczące tylko danego użytkownika podczas gdy jego odpowiednik w katalogu instalacyjnym dotyczy wszystkich użytkowników.

+ +

W następnym artykule skupimy się na tym, jak odwołać się do paczki chrome za pomocą URL chrome.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/szablony/index.html b/files/pl/mozilla/tech/xul/kurs_xul/szablony/index.html new file mode 100644 index 0000000000..a2ed5d6c2c --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/szablony/index.html @@ -0,0 +1,201 @@ +--- +title: Szablony +slug: Mozilla/Tech/XUL/Kurs_XUL/Szablony +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Templates +--- +

+

« PoprzedniNastępny »

+
W tym artykule, przekonamy się jak wypełnić elementy kodem źródłowym.

+ +

Wypełnianie elementami

+ +

XUL dostarcza metody, w których możemy tworzyć elementy za pomocą kodu RDF, albo pochodzące z pliku RDF lub pochodzące z własnych źródeł. Liczne źródła danych są dostarczane z Mozilli także jako podręczniki, historia i wiadomości e-mail. Więcej informacji znajduje się w następnym artykule.

+ +

Często, elementy takie jak elementy drzewa i elementy menu będą wypełnione danymi. Jednakże, będziesz chciał używać jej zdefiniowanej dla specjalnych warunków. Niemniej jednak, rozpoczniemy z tymi innymi elementami, ponieważ drzewa i menu potrzebują więcej kodu.

+ +

Pozwolenie na tworzenie elementów opartych na kodzie źródłowym, potrzebujesz przygotować prosty szablon, który będzie tworzony jako duplikat na każdym elemencie. Istotnie, tworzymy pierwszy element, który pozostanie jako konstrukcja na pozostałych elementach.

+ +

Szablon jest tworzony używając elementu template. Wewnątrz, możesz położyć te elementy, które chcesz użyć do skonstruowania elementu. Elementy template powinny być umieszczone wewnątrz zbioru, który stanowi stworzone elementy. Na przykład jeśli używasz drzewa, powinieneś położyć element template do wewnątrz elementu tree.

+ +

Przykład prostego szablonu

+ +

Lepiej będzie to wytłumaczyć na przykładzie. Weźmy prosty przykład gdzie chcemy utworzyć przycisk dla każdej górnego-poziomu zakładki. Mozilla dostarcza kod źródłowy zakładek tak więc mogą być one użyte do pobrania danych. Ten przykład będzie potrafił tylko pobrać zakładek górnego-poziomu (lub folderów zakładek) jakie będziemy chcieli używać jako przyciski. Dla potomnych zakładek, będziemy potrzebować do użycia elementu do wyświetlenia hierarchii takiej jak drzewo lub menu.

+ +
Ten przykład i jakikolwiek inny, który powołuje się na wewnętrzny kod RDF, będzie działał poprawnie jeśli wgrasz go z adresu URL chrome. Z przyczyn bezpieczeństwa. Mozilla nie pozwala na dostęp z innych źródeł.
+ +

Aby obejrzeć ten przykład, utwórz pakiet chrome i wczytaj z niego pliki. Możesz teraz potwierdzić adres URL chrom wpisując go do przeglądarki URL.

+ +

Przykład 1 : Źródła

+ +
<vbox datasources="rdf:bookmarks" ref="NC:BookmarksRoot" flex="1">
+  <template>
+    <button uri="rdf:*" label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+  </template>
+</vbox>
+
+ +
Image:templates1.jpg
+ +

Powyżej zostało stworzone pionowe pole okna, które stanowi kolumnę przycisków, każda jedna zakładka jest wyrównywana do górnego poziomu. Możesz zobaczyć jak template stanowi pojedynczy button. Używany jest w liczbie mnogiej dla wszystkich potrzebnych przycisków do tworzenia. Możesz obejrzeć grafikę gdyż ustawienia przycisków zostały utworzone, jeden dla każdej zakładki.

+ +

Spróbuj dodać zakładkę do przeglądarki podczas gdy masz otwarte okno przykładu. Zostaniemy natychmiast powiadomieni, że przyciski z przykładu zostały zaktualizowane (możesz skupić się na tej zmianie).

+ +

Kontener i źródła danych

+ +

Szablon samoczynnie umieści się w pionowym polu. Pole posiada dwa specjalne atrybuty używane w szablonach, które są użyte tam skąd pochodzą dane. Pierwszy atrybut pola jest to atrybut datasources. Jest on użyty do deklaracji w co kod źródłowy RDF będzie zaopatrywał tworzony element. W tej sytuacji, są użyte rdf:bookmarks. Możemy prawdopodobnie przypuszczać jakie znaczenie ma użyty kod źródłowy, który został dostarczony przez Mozillę. Aby użyć własnego kodu źródłowego, używamy określonego adresu URL dla pliku RDF zawierającego atrybut datasources, jak pokazuje poniższy przykład:

+ +
<box datasources="chrome://zoo/content/animals.rdf"
+     ref="http://www.some-fictitious-zoo.com/all-animals">
+
+ +

Możesz podać wiele źródeł danych poprzez oddzielnie ich za pomocą spacji w wartości atrybutu. Używa się tego do wyświetlenia danych z wielu źródeł.

+ +

Atrybut ref oznacza, z którego źródła chcesz pobierać dane. W przypadku zakładek wartość NC:BookmarksRoot jest użyta do wskazania podstawy hierarchii zakładek. Inne wartości do użycia zależą od źródła danych. Jeśli używasz jako źródło własnego pliku RDF wartość ta odpowiadała będzie zwykle wartości atrybutu about w RDF-ie Bag, Seq lub elementowi Alt.

+ +

Wewnątrz szablonu

+ +

By adding these two attributes to the box above, it allows the generation of elements using the template. However, the elements inside the template need to be declared differently. You may notice in the example above that the button has a uri attribute and an unusual value for the label attribute.

+ +

An attribute value inside the template that begins with 'rdf:' indicates that the value should be taken from the datasource. In the example earlier, this is the case for the label attribute. The remainder of the value refers to the name property in the datasource. It is constructed by taking the namespace URL used by the datasource and appending the property name. If you don't understand this, try re-reading the last part of the previous section. It explains how resources in RDF can be referred to. Here, we only use the name of the bookmark but numerous other fields are available.

+ +

The label of the buttons is set to this special URI because we want the labels on the buttons to be set to the names of the bookmarks. We could have put a URI in any of the attributes of the button, or any other element. The values of these attributes are replaced with data supplied by the datasource which, in this case, is the bookmarks. So we end up with the labels on the buttons set to the names of the bookmarks.

+ +

The example below shows how we might set other attributes of a button using a datasource. Of course, this assumes that the datasource supplies the appropriate resources. If a particular one is not found, the value of the attribute will be set to an empty string.

+ +
<button class="rdf:http://www.example.com/rdf#class"
+        uri="rdf:*"
+        label="rdf:http://www.example.com/rdf#name"
+        crop="rdf:http://www.example.com/rdf#crop"/>
+
+ +

As you can see, you can dynamically generate lists of elements with the attributes provided by a separate datasource.

+ +

The uri attribute is used to specify the element where content generation will begin. Content earlier will only be generated once whereas content inside will be generated for each resource. We'll see more about this when we get to creating templates for trees.

+ +

Atrybut '''uri''' jest użyty w stosunku do specyficznych elementów gdzie zawartość wygenerowana będzie na początku. Zawartość

+ +

Więcej przykładów

+ +

Poprzez dodawanie tych funkcjonalności do kontenera będącego w szablonie (który w tym przypadku jest prostokątem) i do elementów szablonu, możemy wygenerować różnorodne spisy treści zewnętrznej. Oczywiście, możemy umieścić więcej niż jeden element wewnątrz szablonu i dodać specjalnie referencje RDF do atrybutów elementów. Poniższy przykład demonstruje to.

+ +

Przykład 2 : Źródła

+ +
<vbox datasources="rdf:bookmarks" ref="NC:BookmarksRoot" flex="1">
+  <template>
+    <vbox uri="rdf:*">
+      <button label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+      <label value="rdf:http://home.netscape.com/NC-rdf#URL"/>
+    </vbox>
+  </template>
+</vbox>
+
+ +

Przykład ten utworzy pionowy box z przyciskiem i etykietą dla każdej zakładki. Przycisk posiada nazwę zakładki, a etykieta to jest URL.

+ +

Nowe elementy są utworzone jako funkcjonalne, jedyne, nie inne potrafią wpisać się bezpośrednio w plik XUL. Atrybut id jest dodawany do każdego elementu utworzonego poprzez szablon, który jest ustawiony na wartość, która identyfikuje zasoby kodu. Możesz używać tego do identyfikacji swoich zasobów.

+ +

Możesz także wyszczególnić wielokrotną wartość źródła w tym samym atrybucie poprzez odseparowanie go spacją, jak w przykładzie poniżej. Więcej o składni źródła (XULPlanet).

+ +

Przykład 3 : Źródła

+ +
<vbox datasources="rdf:bookmarks" ref="NC:BookmarksRoot"
+     flex="1">
+  <template>
+    <label uri="rdf:*" value="rdf:http://home.netscape.com/NC-rdf#Name rdf:http://home.netscape.com/NC-rdf#URL"/>
+  </template>
+</vbox>
+
+ +

Jak są budowane szablony

+ +

Kiedy element posiada atrybut datasources, to sygnalizuje, że ten element oczekuje na budowę poprzez formularz szablonu. Note that it isn't the template tag that determines whether content is built, it is the datasources attribute. When this attribute is present, an object called a Builder is added to the element. It is this object that is responsible for building the content from the template. In JavaScript you can access the builder object with the builder property, although usually you would only need to do this to have the builder regenerate the content in situations where it is not done automatically.

+ +

Istnieją dwa rodzaje kreatorów. Pierwszym, najczęściej używanym, jest kreator treści, natomiast drugi to kreator drzewek stosowany jedynie do drzewek.

+ +

Kreator treści

+ +

The content builder takes the content inside the template element and duplicates it for each row. For instance, if the user had ten bookmarks in the example above, ten label elements would be created and added as children of the vbox element. If you were to use DOM functions to traverse the tree, you will find these elements there and can query their properties. These elements get displayed, but the template itself is not displayed, although it still exists the the document tree. In addition, the id of each of the labels will be set to the RDF resource for that row.

+ +

Kreator treści zawsze rozpoczyna pracę od miejsca gdzie wyspecyfikowany jest uri="rdf:*". Jeśli atrybut uri jest umieszczony na niższym elemencie w drzewku, zewnętrze elementy są stworzone tylko raz. W poniższym przykładzie, jeden hbox będzie stworzony i wypełniony napisem dla każdej pozycji.

+ +
<template>
+  <hbox>
+    <label uri="rdf:*" value="rdf:http://home.netscape.com/NC-rdf#Name"/>
+  </hbox>
+</template>
+
+ +

Jeśli treść znajduje się wewnątrz elementu z atrybutem datasources i na zewnątrz szablonu, treść także się ukaże. Idąc tą drogą, możesz mieszać stałą i dynamiczną treść szablonu.

+ +

Kreator drzewek

+ +

The tree builder, on the other hand, doesn't generate the DOM elements for the rows. Instead, it gets the data directly from the RDF datasource whenever it needs it. Since trees are often expected to display thousands of rows of data, this is much more efficient. Creating an element for every cell would be too costly. However, the tradeoff is that trees may only display text, and, since no elements are created, you can't use CSS properties to style tree cells in the same way.

+ +

Kreator drzewek jest używany wyłącznie do drzewek. Inne elementy są tworzone poprzez kreator treści. To nie powinno być problemem, choć inne elementy - jak na przykład menu - nie powinny wyświetlać zbyt dużo składników. Możliwe jest także użycie kreatora drzewek, stosując element treeitem i inne, odnoszące się do tego elementy będą stworzone w każdym rzędzie.

+ +

Zasady

+ +

In the image of the earlier example, you may have noticed that the third button is simply a button with hyphens on it. This is a separator in the bookmark list. In the way that we have been using it, the RDF bookmarks datasource supplies the separators as if they were just regular bookmarks. What we would really like to do is add a small amount of spacing instead of a button for separator resources. That means that we want to have two different types of content be created, one type for regular bookmarks and a second type for separators.

+ +

Możemy zrobić to dzięki użyciu elementu rule. Definiujemy reguły dla każdego odchylenia elementów, które chcielibyśmy stworzyć. W naszym przypadku, potrzebujemy regułę dla zakładek i regułę dla separatorów. Atrybuty umiejscowiono na elemencie rule określają które reguły należy zaakceptować przy zasobach RDF.

+ +

When scanning for which rule applies to the data, each rule element is checked in sequence for a match. That means that the order in which you define rules is important. Earlier rules will override later rules.

+ +

Przykład użycia zasady

+ +

Przedstawiony przykład demonstruje wcześniejszy przykład z dwiema zasadami:

+ +

Przykład 4 : Źródła

+ +
<window
+  id="example-window"
+  title="Bookmarks List"
+  xmlns:html="http://www.w3.org/1999/xhtml"
+  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+ <vbox datasources="rdf:bookmarks" ref="NC:BookmarksRoot" flex="1">
+   <template>
+
+    <rule rdf:type="http://home.netscape.com/NC-rdf#BookmarkSeparator">
+     <spacer uri="rdf:*" height="16"/>
+    </rule>
+
+    <rule>
+      <button uri="rdf:*" label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+    </rule>
+
+  </template>
+ </vbox>
+
+</window>
+
+ +
Image:templates2.jpg
+ +

By using two rules, we have allowed the contents of the template to be selectively generated. In the first rule, bookmark separators are selected, as can be seen by the rdf:type attribute. The second rule does not have any attributes so all data matches it.

+ +

All of the attributes placed on the rule tag are used as match criteria. In this case, the bookmarks datasource supplies a rdf:type property to distinguish separators. This attribute is set to a special value for separators in the RDF bookmarks datasource. This is how we can distinguish them from non-separators. You can use a similar technique for any attribute that might be on an RDF Description element.

+ +

The special URL value given in the example above for the first rule is used for separators. That means that separators will follow rule one and generate a spacer element, which will display a 16 pixel gap. Elements that are not separators will not match rule one and will fall through to rule two. Rule two does not have any attributes on it. This means that it will match all data. This is, of course, what we want to have happen to the rest of the data.

+ +

You should also have noticed that because we wanted to get an attribute from the RDF namespace (rdf:type), we needed to add the namespace declaration to the window tag. If we didn't do this, the attribute would be looked for in the XUL namespace. Because it does not exist there, the rule will not match. If you use attributes in your own custom namespace, you need to add the namespace declaration in order to match them.

+ +

You should be able to guess what would happen if the second rule was removed. The result would be a single spacer displayed but no bookmarks because they don't match any of the rules.

+ +

Put simply, a rule matches if all of the attributes placed on the rule element match the corresponding attributes on the RDF resource. In the case of an RDF file, the resources would be the Description elements.

+ +

There are some small exceptions however. You cannot match based on the attributes id, rdf:property or rdf:instanceOf. Because you can just use your own attributes with your own namespace, it probably doesn't really matter anyway.

+ +

Note that a template with no rules in it, as in the first example, is really equivalent functionally to a template with a single rule with no attributes.

+ +

Następny artykuł pokazuje nam jak stosować szablony z drzewami.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_modelu_pude\305\202kowego/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_modelu_pude\305\202kowego/index.html" new file mode 100644 index 0000000000..2aa2418742 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_modelu_pude\305\202kowego/index.html" @@ -0,0 +1,105 @@ +--- +title: Szczegóły modelu pudełkowego +slug: Mozilla/Tech/XUL/Kurs_XUL/Szczegóły_modelu_pudełkowego +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Box_Model_Details +--- +

+

+

« PoprzedniNastępny »

+
+

Widzieliśmy już dużo własności modelu pudełkowego. Tutaj znajdziemy trochę szczegółów z przykładami.

+

Więcej szczegółów układu graficznego

+

Własności stylu, takie jak min-width i max-height, mogą być dodawane do każdego elementu. Wstawialiśmy je już do przycisków i pól tekstowych, ale możemy je również dodać do pól odstępu czy pudełek. Dodatkowo do każdego elementu może być dodany atrybut flex. +

Przykład 1 : Źródła Podgląd +

+
<hbox flex="1">
+  <button label="Lewo" style="min-width: 100px;" flex="1"/>
+  <spacer flex="1"/>
+  <button label="Prawo" style="min-width: 100px;" flex="1"/>
+</hbox>
+
+

W powyższym przykładzie wszystkie trzy elementy zmieniają swój rozmiar, ponieważ mają ustawiony atrybut flex. Obydwa przyciski maja ustawioną minimalną szerokość 100 pikseli i nigdy się nie zmniejszą poniżej tej wartości, ale mogą się powiększać. Okno powinno być niewiele szersze niż 200 pikseli. Jest to szerokość wystarczająca, aby wyświetlić oba przyciski, dlatego wstępnie elastyczność nie zmieni ich rozmiaru. +

+
grafika:boxdet1.png
+

Jak widać na obrazku obok, znajdują się tam dwa przyciski, które są rozciągnięte w pionie, aby wypełnić pudełko, które w tym przypadku jest typu hbox. Można zapobiec nadmiernemu rozciąganiu się pudełka poprzez ustawianie maksymalnej wysokości elementów w jego wnętrzu lub lepiej, samego pudełka. Jeśli ta wartość zostanie ustawiona, wszystkie elementy pudełka będą nim ograniczane. W tym wypadku pojawia się problem, gdyż musimy wiedzieć z góry, ile miejsca potrzebujemy, aby pomieścić wszystkie elementy w pudełku. +Atrybut align kontroluje zachowanie się poziomego pudełka. Poniższy przykład demonstruje jego działanie. +

Przykład 2 : Źródła Podgląd +

+
<hbox flex="1" align="top">
+  <button label="Lewo" style="min-width: 100px;" flex="1"/>
+  <spacer flex="1"/>
+  <button label="Prawo" style="min-width: 100px;" flex="1"/>
+</hbox>
+
+

Podsumowanie modelu pudełkowego

+

Realizując skomplikowane układy graficzne, trzeba zazwyczaj zagnieżdżać wiele pudełek, określać minimalne i maksymalne wymiary elementów oraz tworzyć pewne elementy jako elastyczne. Najlepszym układem jest taki, który można wyświetlić bezproblemowo w oknie o różnej wielkości. Model pudełkowy może być trudny do zrozumienia bez samodzielnego wypróbowania różnych kombinacji i możliwości.

Poniżej są wypisane najważniejsze cechy dostępnych pudełek:

Pudełka poziome +

+
  1. Elementy potomne układane są obok siebie w poziomie (w rzędzie). +
  2. Elementy elastyczne są rozciągane w poziomie. +
  3. Pakowanie (pack) kontroluje ułożenie elementów potomnych w poziomie. +
  4. Wyrównanie (align) kontroluje, w jaki sposób rząd elementów jest wyrównywany w pionie. +
+

Pudełka pionowe +

+
  1. Elementy potomne układane są jeden pod drugim (w kolumnie). +
  2. Elementy elastyczne są rozciągane w pionie. +
  3. Pakowanie (pack) kontroluje pionowe ułożenie elementów potomnych. +
  4. Wyrównanie (align) kontroluje, w jaki sposób kolumna elementów jest wyrównywana w poziomie. +
+

Pudełka mogą być wstawiane w dowolnym miejscu pliku XUL, w tym także wewnątrz elementów HTML (np. jako tabele). Jednakże ich układ graficzny będzie wtedy częściowo kontrolowany przez element HTML, do którego zostały wstawione. Oznacza to, że atrybut flex może nie działać w sposób, jaki byśmy sobie tego życzyli. Należy pamiętać, że elastyczność dotyczy tylko tych elementów, które są bezpośrednio zastosowane wewnątrz pudełka lub elemencie dziedziczącym z pudełka. +

+

Przykłady układu graficznego

+
Zastosowanie odstępów
+

Przykład 3 : Źródła Podgląd +

+
<hbox>
+  <button label="Jeden"/>
+  <spacer style="width: 5px"/>
+  <button label="Dwa"/>
+</hbox>
+
+

Tutaj spacer (odstęp) został użyty jako separator pomiędzy dwoma przyciskami, odstęp jest stały i wynosi 5 pikseli. To samo mogliśmy osiągnąć ustawiając marginesy używając własności CSS margin. +

+

Wyśrodkowanie przycisków

+

Przykład 4 : Źródła Podgląd +

+
<hbox pack="center" align="center" flex="1">
+  <button label="Look at Me!"/>
+  <button label="Push Me!"/>
+</hbox>
+
+

W tym przykładzie mamy elastyczne pudełko z dwoma przyciskami wewnątrz. Pudełko posiada atrybut pack, dzięki któremu możemy wyśrodkować przyciski w poziomie. Atrybut align wyrównuje przyciski w pionie. W efekcie przyciski będą wyśrodkowane w obu kierunkach. Jeśli zamiast pudełka typu hbox użyte zostało by pudełko vbox, efekt byłby ten sam z tą różnicą, że przyciski były by ustawione jeden pod drugim a nie obok siebie. +

+

Okno dialogowe <tt>Znajdź tekst</tt>

+

Przykład 5 : Źródła Podgląd +

+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<window id="findtext" title="Znajdź tekst" orient="horizontal"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+  <vbox flex="3">
+    <label control="t1" value="Szukaj tekstu:"/>
+    <textbox id="t1" style="min-width: 100px;" flex="1"/>
+  </vbox>
+
+  <vbox style="min-width: 150px;" flex="1" align="start">
+    <checkbox id="c1" label="Uwzględnij wielkość liter"/>
+    <spacer flex="1" style="max-height: 30px;"/>
+    <button label="Znajdź"/>
+  </vbox>
+
+</window>
+
+
grafika:boxdet-ex3.png
+

Okno składa się z dwóch pudełek, jedno dla pola tekstowego, drugie dla pola wyboru oraz przycisku. Oba pudełka są elastyczne, lecz elastyczność lewego pudełko jest trzykrotnie większa od prawego, co sprawia, że podczas zmiany rozmiaru okna otrzymuje trzy razy więcej dodatkowego miejsca. Minimalna wielkość prawego pudełka jest wyznaczona i wynosi 150 pikseli.

Pole tekstowe jest elastyczne, więc zmienia swoją wielkość podczas zmiany rozmiaru okna. Pole to również ma wyznaczoną minimalna szerokość, która wynosi 100 pikseli. Pole wyboru pojawi się w prawym pudełku wraz ze swoją etykietą. Poniżej pola wyboru wstawiamy pustą przestrzeń, która będzie zmieniała swój rozmiar podczas zmiany wielkości okna, jednak nie będzie ona większa niż 30 pikseli. W rezultacie pole wyboru i przycisk <tt>Znajdź</tt> będą rozdzielone od siebie pustą przestrzenią nie większą niż 30 pikseli.

Drugie pudełko zostało utworzone z atrybutem start. Powoduje to wyrównanie elementów potomnych do lewej krawędzi. Jeśli nie zdefiniujemy wartości tego atrybutu, to domyślnym ustawieniem jest stretch, powodujące rozciąganie elementów potomnych w poziomie. Ponieważ nie chcemy, aby przycisk <tt>Znajdź</tt> zmieniał rozmiar, musimy ustawić wyrównanie.

Następnie dowiemy się więcej o specjalnych typach pudełka - polach grupy.

+

« PoprzedniNastępny »

+
+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_widoku_drzewa/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_widoku_drzewa/index.html" new file mode 100644 index 0000000000..af0fa0c905 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/szczeg\303\263\305\202y_widoku_drzewa/index.html" @@ -0,0 +1,346 @@ +--- +title: Szczegóły widoku drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Szczegóły_widoku_drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Tree_View_Details +--- +

+

« PoprzedniNastępny »

+

+ +

W tej części będzie opisane więcej cech wyglądu drzewa.

+ +

Tworzenie własnego hierarchicznego widoku

+ +

W ostatnim artykule tworzyliśmy prosty widok drzewa, który implementował tylko minimum funkcjonalności. Teraz przyjrzyjmy się innym, dodatkowym funkcjom, których możemy zaimplementować. Sprawdzimy tutaj, jak stworzyć hierarchicznie ustawione pozycje, używające widoku. Jest to dość podstępny proces pociągający za sobą utrzymywanie ścieżek pozycji potomnych i także, które wiersze są otwarte, a które zostały zamknięte.

+ +

Zagnieżdżanie poziomu

+ +

Każdy wiersz w drzewie ma zagnieżdżony poziom. Najwyższy wiersz jest na poziomie 0, dzieci tego wiersza są na poziomie 1, a z kolei kolejne dzieci mamy na poziomie 2 itd. Drzewo wypyta widok o każdy wiersz, wywołując metodę getLevel w celu znalezienia poziomu danego wiersza. Widok zwróci 0 dla najwyższych, zewnętrznych wierszy, wyższe wartości dla wierszy wewnętrznych. Drzewo użyje tych informacji w celu ustalenia hierarchicznej struktury wierszy.

+ +

Dodatkowo do metody getLevel, jest jeszcze funkcja hasNextSibling, która daje wiersz zwracająca wartość true, jeżeli znajduje się kolejny wiersz na tym samym poziomie. Funkcja ta jest używana w szczególności podczas rysowania zagnieżdżonych linii w głąb drzewa.

+ +

Metoda getParentIndex jest zwraca źródłowy wiersz dla rzędu, jeżeli znajduje się kolejny rząd na tym samym poziomie. Wszystkie z tych metod muszą być zastosowane przez widok dla dzieci do podtrzymania własności.

+ +

Kontenery

+ +

Są tam też trzy funkcje isContainer, isContainerEmpty i isContainerOpen do posługiwania się źródłowymi pozycjami drzewa.

+ + + +

Zwróć uwagę ze metody te nie zostaną użyte, jeżeli isContainer nie wskaże tego, że dany element jest pojemnikiem.

+ +

Pojemnik może zostać przedstawiony inaczej, jako nie kontener. Na przykład może mieć ikonę folderu obok siebie. Schemat może zostać użyty do stylizacji elementów opierając się na różnych własnościach, takich jak to czy wiersz jest otwarty czy nie. Opisane jest to w dalszej części. Niepusty pojemnik będzie wyświetlony obok, tak, że użytkownik będzie mógł go otwierać i zamykać by zobaczyć zawartość wiersza.

+ +

Kiedy użytkownik kliknie by otworzyć wiersz drzewo wywoła funkcję toggleOpenState. Następnie widok powinien wykonać wszelkie konieczne operacje, by uzyskać zawartość wiersza i wypełnić drzewo nowymi wierszami.

+ +

Przegląd metod

+ +

Przegląd metod potrzebnych do użycia hierarchicznego widoku:

+ +
getLevel(row)
+hasNextSibling(row, afterIndex)
+getParentIndex(row)
+isContainer(row)
+isContainerEmpty(row)
+isContainerOpen(row)
+toggleOpenClose(row)
+
+ +

Argument afterIndex wykona funkcję hasNextSibling w celu optymalizacji, żeby znaleźć następny element. Na przykład, klient mógłby już wiedzieć gdzie dany element prawdopodobnie mógłby się znajdować. Wyobraź sobie sytuację gdzie wiersz ma pod wiersze, a te pod wiersze maja pochodne wiersze i niektóre z nich są otwarte.

+ +

Przykład własnego hierarchicznego widoku

+ +

Zobaczmy na prostym przykładzie, z pobranej tablicy budowane jest drzewo. Przeanalizujmy to kawałek, po kawałku.

+ +
<window onload="init();"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<tree id="elementList" flex="1">
+  <treecols>
+    <treecol id="element" label="Element" primary="true" flex="1"/>
+  </treecols>
+  <treechildren/>
+</tree>
+
+</window>
+
+ +

Używamy prostego drzewa bez danych w treechildren. Funkcja 'init' jest wywoływana, gdy okno jest ładowane w celu uruchomienia drzewa. To w prosty sposób umieszcza własny widok odzyskując drzewo i umieszczeniu własności widoku.

+ +
function init() {
+  document.getElementById("elementList").view = treeView;
+}
+
+ +

Własny widok drzewa będzie musiał wprowadzić pewna liczbę metod, z których najważniejsze będą sprawdzane indywidualnie. Drzewo to wesprze tylko pojedynczy główny poziom z wewnętrznym pochodnym poziomem, ale może to być dodatkowo rozszerzone bez większych problemów. Najpierw zdefiniujemy dwie struktury do przetrzymywania danych dla drzewa, pierwsza będzie przetrzymywała mapę zawartą między głównym, a pochodną pozycją, a druga tablicę widocznych elementów. Pamiętaj, że własny widok musi posiadać informacje o tym, które są widoczne.

+ +
var treeView = {
+  childData : {
+    Solids: ["Silver", "Gold", "Lead"],
+    Liquids: ["Mercury"],
+    Gases: ["Helium", "Nitrogen"]
+  },
+
+  visibleData : [
+    ["Solids", true, false],
+    ["Liquids", true, false],
+    ["Gases", true, false]
+  ],
+
+ +

Struktura childData zawiera tablicę pochodnych pozycji trzech głównych węzłów. Tablica visibleData zaczyna się tylko trzema widocznymi pozycjami, trzy szczytowe poziomy. Elementy będą dodawane i usuwane z tej tablicy, gdy pozycje będą otwierane i zamykane. Zasadniczo, gdy główny wiersz będzie otwarty, pochodne pozycje zostaną pobrane z childData i wstawione do tablicy visibleData. Na przykład, jeżeli wiersz płynów będzie otwarty, korespondująca tablica chilldData, która zawiera tylko pojedynczy pochodny element <tt>Merkury</tt>, będzie umieszczony w tablicy visibleData za płynami, ale przed gazami. To zwiększy rozmiar tablicy o jeden. Dwie wartości boolean w każdym wierszu w strukturze visibleData wskazują na to czy wiersz jest pojemnikiem i czy jest otwarty. Oczywiście nowo wstawione pochodne pozycje będą miały obie wartości ustawione na false.

+ +

Implementowanie interfejsu widoku drzewa

+ +

Następnie potrzeba wprowadzić interfejs widoku drzewa. Najpierw proste funkcje:

+ +
  treeBox: null,
+  selection: null,
+
+  get rowCount()                     { return this.visibleData.length; },
+  setTree: function(treeBox)         { this.treeBox = treeBox; },
+  getCellText: function(idx, column) { return this.visibleData[idx][0]; },
+  isContainer: function(idx)         { return this.visibleData[idx][1]; },
+  isContainerOpen: function(idx)     { return this.visibleData[idx][2]; },
+  isContainerEmpty: function(idx)    { return false; },
+  isSeparator: function(idx)         { return false; },
+  isSorted: function()               { return false; },
+  isEditable: function(idx, column)  { return false; },
+
+ +

Funkcja rowCount zwróci długość tablicy visibleData. Zauważ to, że powinno zwrócić liczbę aktualnie widocznych wierszy, a nie ich całkowitą ilość. Więc na początku trzy pozycje są widoczne i w rowCount powinny być trzy, nawet, jeżeli sześć rzędów jest ukrytych.

+ +

Funkcje getCellText, isContainer i isContainerOpen, zawracają tylko odpowiedni element z tablicy visibleData. W końcu pozostałe funkcje mogą zwrócić wartość false ponieważ nie potrzeba tych cech. Gdybyśmy mieli wiersz, który by nie miał żadnych pochodnych pozycji, chcielibyśmy wprowadzić funkcję isContainerEmpty to zwróciłaby ona wartość true dla tych elementów.

+ +
  getParentIndex: function(idx) {
+    if (this.isContainer(idx)) return -1;
+    for (var t = idx - 1; t >= 0 ; t--) {
+      if (this.isContainer(t)) return t;
+    }
+  },
+
+ +

Funkcją getParentIndex będzie musiała odnaleźć główny przedmiot zadanego indeksu. W naszym prostym przykładzie, mamy tylko dwa poziomy, więc wiemy, że pojemniki nie posiadają głównych elementów, więc otrzymujemy -1. W takim wypadku cofamy się wstecz szukając wiersz będącego pojemnikiem. Następna funkcja jest getLevel:

+ +
  getLevel: function(idx) {
+    if (this.isContainer(idx)) return 0;
+    return 1;
+  },
+
+ +

Funkcja getLevel jest prosta. Zwraca wartość 0 dla pojemnika, 1 dla nie-pojemnika. Gdybyśmy chcieli dołożyć dodatkowy poziom elementów pochodnych, wiersz te miałyby poziom 2.

+ +
  hasNextSibling: function(idx, after) {
+    var thisLevel = this.getLevel(idx);
+    for (var t = idx + 1; t < this.visibleData.length; t++) {
+      var nextLevel = this.getLevel(t)
+      if (nextLevel == thisLevel) return true;
+      else if (nextLevel < thisLevel) return false;
+    }
+  },
+
+ +

Funkcja theNextSibling zwraca true, jeżeli wiersz jest tego samego poziomu, co podany wiersz. Powyższy kod używa metody "brute force", która po prostu powtarzana jest, poszukując jednego wiersza, zwraca wartość true jeżeli wiersz jest tego samego poziomu, false jeżeli niższego poziomu. W tym prostym przykładzie ta metoda działa świetnie, lecz bardziej rozbudowane drzewo lepiej użyć innego, bardziej efektywnego sposobu.

+ +

Otwieranie i zamykanie wiersza

+ +

Ostatnia funkcja to toggleOpenState, jest najbardziej złożona. Wymaga to modyfikacji tablicy, visibleData, gdy wiersz jest otwarty lub zamknięty.

+ +
  toggleOpenState: function(idx) {
+    var item = this.visibleData[idx];
+    if (!item[1]) return;
+
+    if (item[2]) {
+      item[2] = false;
+
+      var thisLevel = this.getLevel(idx);
+      var deletecount = 0;
+      for (var t = idx + 1; t < this.visibleData.length; t++) {
+        if (this.getLevel(t) > thisLevel) deletecount++;
+        else break;
+      }
+      if (deletecount) {
+        this.visibleData.splice(idx + 1, deletecount);
+        this.treeBox.rowCountChanged(idx + 1, -deletecount);
+      }
+    }
+    else {
+      item[2] = true;
+
+      var label = this.visibleData[idx][0];
+      var toinsert = this.childData[label];
+      for (var i = 0; i < toinsert.length; i++) {
+        this.visibleData.splice(idx + i + 1, 0, [toinsert[i], false]);
+      }
+      this.treeBox.rowCountChanged(idx + 1, toinsert.length);
+    }
+  },
+
+ +

Najpierw musimy sprawdzić czy wiersz jest pojemnikiem. Jeżeli nie, funkcja po prostu powróci, ponieważ nie pojemniki nie mogą być otwarte ani zamknięte. Od trzeciej pozycji tablicy (indeks 2) przetrzymywane są informacje czy wiersz jest otwarty czy nie, używamy dwóch ścieżek kodu, pierwszej do zamykania wiersza, a druga do otwierania wiersza. Zbadajmy każdy blok kodu, lecz zerknijmy najpierw na drugi blok służący do otwierania wiersza.

+ +
      item[2] = true;
+
+      var label = this.visibleData[idx][0];
+      var toinsert = this.childData[label];
+      for (var i = 0; i < toinsert.length; i++) {
+        this.visibleData.splice(idx + i + 1, 0, [toinsert[i], false]);
+      }
+      this.treeBox.rowCountChanged(idx + 1, toinsert.length);
+
+ +

Pierwsza linia czyni w tablicy, wiersz otwartym, więc z stąd funkcja toggleOpenState będzie wiedziała, który wiersz ma być zamknięty. Następnie szukamy danych w childData dla danego wiersza. Wynikiem jest to, że 'toinsert' będzie wypełnione jednym z elementów tablicy, na przykład ["Silver", "Gold", "Lead"], jeżeli wiersz zostanie otwarty. Następnie używamy funkcji, splice tablicy, by wstawić nowy rząd do każdej pozycji. Dla stałych elementów, zostaną wstawione trzy pozycje.

+ +

Używamy funkcji rowCountChanged do poinformowania drzew, że dodaliśmy kilka wierszy do podstawowych danych. Drzewo zostanie przerysowane według potrzeby, a w wyniku pochodne wiersze ukażą się wewnątrz pojemnika. Inne implementowane funkcje powyżej, jak getLevel i isContainer są używane przez drzewo do określenia tego jak wyrysować drzewo.

+ +

Funkcja rowCountChanged pobiera dwa argumenty, indeks gdzie pierwszy wiersz był wstawiony i numer wierszy do wstawienia. W powyższym kodzie, zauważ, że początkowy wiersz określony jest jako ‘idx’ plus jeden, którym będzie pierwsza pochodna pozycja pod główną. Drzewo użyje tej informacji i doda przestrzeń dla odpowiedniej liczy wierszy i umieści je w niej. Upewnij się czy liczba jest prawidłowa, w przeciwnym wypadku drzewo zostanie narysowane niepoprawnie lub spróbuje narysować więcej wierszy niż jest to konieczne.

+ +

Poniższy kod jest używany do usuwania wierszy, gdy wiersz jest zamknięty.

+ +
      item[2] = false;
+
+      var thisLevel = this.getLevel(idx);
+      var deletecount = 0;
+      for (var t = idx + 1; t < this.visibleData.length; t++) {
+        if (this.getLevel(t) > thisLevel) deletecount++;
+        else break;
+      }
+      if (deletecount) {
+        this.visibleData.splice(idx + 1, deletecount);
+        this.treeBox.rowCountChanged(idx + 1, -deletecount);
+      }
+
+ +

Najpierw, element jest zamknięty w tablicy. Następnie będziemy przeszukiwać wiersze, aż natkniemy się na któryś tego samego poziomu. Wszystkie o wyższym poziomie będą musiały być usunięte, lecz wiersz na tym samym poziomie, będzie kolejnym pojemnikiem, który nie powinien być usuniety.

+ +

W końcu używamy funkcji splotu (splice) w celu usunięcia wierszy z tablicy visibleData a wywołania funkcji rowCountChanged żeby przerysować drzewo ponownie. Podczas usuwania wierszy, będziesz musiał dostarczyć odwrotny licznik wierszy do usunięcia.

+ +

Pełen przykład

+ +

Jest tam kilka innych funkcji widoku, które możemy implementować, jednak nie będą one miały nić do wykonania w tym przykładzie. Będą one dodane pod koniec następującego przykładu:

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<window onload="init();"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<tree id="elementList" flex="1">
+  <treecols>
+    <treecol id="element" label="Element" primary="true" flex="1"/>
+  </treecols>
+  <treechildren/>
+</tree>
+
+<script>
+<![CDATA[
+
+var treeView = {
+  childData : {
+    Solids: ["Silver", "Gold", "Lead"],
+    Liquids: ["Mercury"],
+    Gases: ["Helium", "Nitrogen"]
+  },
+
+  visibleData : [
+    ["Solids", true, false],
+    ["Liquids", true, false],
+    ["Gases", true, false]
+  ],
+
+  treeBox: null,
+  selection: null,
+
+  get rowCount()                     { return this.visibleData.length; },
+  setTree: function(treeBox)         { this.treeBox = treeBox; },
+  getCellText: function(idx, column) { return this.visibleData[idx][0]; },
+  isContainer: function(idx)         { return this.visibleData[idx][1]; },
+  isContainerOpen: function(idx)     { return this.visibleData[idx][2]; },
+  isContainerEmpty: function(idx)    { return false; },
+  isSeparator: function(idx)         { return false; },
+  isSorted: function()               { return false; },
+  isEditable: function(idx, column)  { return false; },
+
+  getParentIndex: function(idx) {
+    if (this.isContainer(idx)) return -1;
+    for (var t = idx - 1; t >= 0 ; t--) {
+      if (this.isContainer(t)) return t;
+    }
+  },
+  getLevel: function(idx) {
+    if (this.isContainer(idx)) return 0;
+    return 1;
+  },
+  hasNextSibling: function(idx, after) {
+    var thisLevel = this.getLevel(idx);
+    for (var t = idx + 1; t < this.visibleData.length; t++) {
+      var nextLevel = this.getLevel(t)
+      if (nextLevel == thisLevel) return true;
+      else if (nextLevel < thisLevel) return false;
+    }
+  },
+  toggleOpenState: function(idx) {
+    var item = this.visibleData[idx];
+    if (!item[1]) return;
+
+    if (item[2]) {
+      item[2] = false;
+
+      var thisLevel = this.getLevel(idx);
+      var deletecount = 0;
+      for (var t = idx + 1; t < this.visibleData.length; t++) {
+        if (this.getLevel(t) > thisLevel) deletecount++;
+        else break;
+      }
+      if (deletecount) {
+        this.visibleData.splice(idx + 1, deletecount);
+        this.treeBox.rowCountChanged(idx + 1, -deletecount);
+      }
+    }
+    else {
+      item[2] = true;
+
+      var label = this.visibleData[idx][0];
+      var toinsert = this.childData[label];
+      for (var i = 0; i < toinsert.length; i++) {
+        this.visibleData.splice(idx + i + 1, 0, [toinsert[i], false]);
+      }
+      this.treeBox.rowCountChanged(idx + 1, toinsert.length);
+    }
+  },
+
+  getImageSrc: function(idx, column) {},
+  getProgressMode : function(idx,column) {},
+  getCellValue: function(idx, column) {},
+  cycleHeader: function(col, elem) {},
+  selectionChanged: function() {},
+  cycleCell: function(idx, column) {},
+  performAction: function(action) {},
+  performActionOnCell: function(action, index, column) {},
+  getRowProperties: function(idx, column, prop) {},
+  getCellProperties: function(idx, column, prop) {},
+  getColumnProperties: function(column, element, prop) {},
+};
+
+function init() {
+  document.getElementById("elementList").view = treeView;
+}
+
+]]></script>
+
+</window>
+
+ +

Następnie, zobaczymy więcej szczegółów o obiekcie pola drzewa.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/trwa\305\202e_dane/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/trwa\305\202e_dane/index.html" new file mode 100644 index 0000000000..8c7ba56ce2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/trwa\305\202e_dane/index.html" @@ -0,0 +1,54 @@ +--- +title: Trwałe dane +slug: Mozilla/Tech/XUL/Kurs_XUL/Trwałe_dane +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Persistent_Data +--- +

+

+

« PoprzedniNastępny »

+
+

Artykuł ten opisuje w jaki sposób zapisać stan okna XUL. +

+

Stan pamięci

+

Podczas budowy dużej aplikacji, będziemy chcieli posiadać możliwość zapisu niektórych stanów okna poprzez sesje. Na przykład: Okno mogłoby pamiętać, który paski narzędzi są rozwinięte nawet po tym jak użytkownik zamknął okno.

Jedyną możliwością byłoby wpisanie skryptu do gromadzenia informacji o tym, co chcielibyśmy zapisać i następnie zapisać to w pliku. Jednakże, mogłoby to szkodliwe dla każdej aplikacji. XUL dostarcza dogodnego mechanizmu do zapisu stanu okna.

Informacje są gromadzone i magazynowane w pliku RDF (localstore.rdf) w tym samym katalogu jak inne ustawienia użytkownika. Będą przetrzymywać informacje o stanie każdego okna. Ta metoda posiada zalety, które współpracują z profilami użytkownika w Mozilli, dzięki czemu każdy użytkownik posiada inne ustawienia.

XUL pozwala na zapisanie stanu jakiegokolwiek elementu. Zazwyczaj będziemy chcieli zapisać stan pasków narzędzi, pozycję okna i gdzie są lub nie są wyświetlone pewne panele, ale możemy zapisać prawie wszystko.

+

Atrybut persist

+

Aby pozwolić na zapisywanie stanu, w prostu dodajemy atrybut persist do elementu, który podtrzymuje wartości, które chcemy zapisać. Atrybut persist powinien być ustawiony jako lista atrybutów elementu (które chcemy, aby zostały zapisane) rozdzielonych spacją. Element musi posiadać także atrybut id w poleceniu do identyfikacji. +

Na przykład, aby zapisać rozmiar okna, powinniśmy postępować następująco: +

+
<window
+  id="someWindow"
+  width="200"
+  height="300"
+  persist="width height"
+  .
+  .
+  .
+
+

Dwa atrybuty elementu window, czyli width i height zostaną zapisane. Możemy dodać dodatkowe atrybuty poprzez dodanie spacji i nazwy następnego atrybutu do atrybutu persist. Atrybut persist możemy dodać do jakiegokolwiek elementu oraz magazynować w nim jakiekolwiek atrybuty. Możemy stosować niezwykłych wartości, jeśli porządkujemy atrybuty stosując skrypt. +

+

Nasz przykład: <tt>Znajdź pliki</tt>

+
+

Dodajmy atrybut persist do niektórych elementów w okienku dialogowego <tt>Znajdź pliki</tt>, aby zapisać pozycje okna. Aby to zrobić, potrzebujemy zmodyfikować okno. +

+
<window
+  id="findfile-window"
+  title="Find Files"
+  persist="screenX screenY width height"
+  orient="horizontal"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+

Będzie to powodowało, że pozycja x i y okna oraz długość i szerokość okna zostaną zapisane. Możemy to rozszerzać dalej, aby zapisać rozwinięty stan rozdzielacza. Zapisanie bieżącego stanu karty, tak naprawdę nie ma jednak sensu. +

Przykład : Źródła Podgląd +

+
+

Następnie, zobaczymy jak stosuje się arkusze stylów z plikami XUL. +

+

« PoprzedniNastępny »

+
+

+
+
diff --git a/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_instalatora/index.html b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_instalatora/index.html new file mode 100644 index 0000000000..c602a24e61 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_instalatora/index.html @@ -0,0 +1,80 @@ +--- +title: Tworzenie instalatora +slug: Mozilla/Tech/XUL/Kurs_XUL/Tworzenie_instalatora +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Creating_an_Installer +--- +

 

+

+

« PoprzedniNastępny »

+

+

W tym artykule opisane jest, jak umieścić aplikację XUL w instalatorze.

+

Paczki XPInstall

+

Mozilla dostarcza mechanizm, który może zostać użyty do umieszczenia okien XUL, skryptów, skórek i innych plików w pojedynczych plikach instalatora. Możesz umieścić gdziekolwiek plik instalatora, aby użytkownik mógł go pobrać. Wystarczy prosty skrypt do tego, by paczka została pobrana i zainstalowana. Ten mechanizm nazywa się XPInstall (Cross Platform Install).

+

Instalator XPInstall jest spakowany w pliku JAR. Do pliku JAR można dodawać pliki, które mają być zainstalowane. W dodatku instalator powinien być zawarty w skryptach instalacyjnych (plik install.js), używanych w procesie instalacji. Skrypt ma dostęp do różnych funkcji instalacji, które mogą posłużyć do instalacji plików i komponentów.

+

Pliki instalatora JAR zwykle mają rozszerzenie .xpi (wymawiamy zippy), by odróżnić je od innych archiwów. Zwykle instalatory będą używane do instalacji komponentów Mozilli, takich jak motywy, wtyczki i inne paczki.

+

Jest kilka następujących po sobie kroków wymaganych do instalacji. Opisane poniżej (krok po kroku):

+
    +
  1. Stwórz stronę WWW, z której użytkownik może pobrać oprogramowanie do instalacji. Strona będzie zawierała wyzwalacz, który jest częścią skryptu, który zainicjuje proces instalacji.
  2. +
  3. Użytkownik otrzyma okno dialogowe z informacją o tym, jaka paczka będzie instalowana. Może być to użyte do uruchomienia wielu instalatorów. W tym przypadku będą one przedstawione na liście. Użytkownik będzie mógł wybrać między kontynuacją lub anulowaniem instalacji.
  4. +
  5. Jeżeli użytkownik zdecyduje się na kontynuację, plik XPI jest pobierany. Pasek postępu jest wyświetlany podczas całego procesu.
  6. +
  7. Plik install.js jest wypakowywany z archiwum skryptu i uruchamiany. Skrypt ten wywoła funkcje instalacyjne, które wskażą, które pliki z archiwum powinny zostać zainstalowane
  8. +
  9. Gdy skrypt się zakończy, instalacja nowej paczki jest gotowa. W przypadku rozbudowanych paczek skrypty będą uruchamiane kolejno po sobie.
  10. +
+

Wyzwalacze instalatora

+

Jak widać na powyższym przykładzie, proces instalacji jest inicjowany przez umieszczony na stornie wyzwalacz instalatora. To pociąga za sobą użycie specjalnego, globalnego obiektu InstallTrigger. Zawiera pewną liczbę metod, które mogą zostać użyte, by zacząć proces instalacji. Możesz użyć obiektu o lokalnej lub zdalnej zawartości, to znaczy pobieranej z jakiegoś miejsca w sieci.

+

Stwórzmy przykładowy wyzwalacz instalatora. Pociąga to za sobą użycie funkcji InstallTrigger.install(), która pobiera dwa argumenty, pierwszy to lista paczek do instalacji, a druga jest funkcją wywołania zwrotnego, która będzie wywołana, gdy instalacja dobiegnie końca. Na przykład:

+
function doneFn ( name , result ){
+  alert("The package " + name + " was installed with a result of " + result);
+}
+
+var xpi = new Object();
+xpi["Calendar"] = "calendar.xpi";
+InstallTrigger.install(xpi,doneFn);
+
+

Najpierw definiujemy funkcję zwrotną doneFn(), która będzie wywołana, gdy instalacja będzie kompletna. Możesz oczywiście nazwać funkcję, jak ci się podoba. Funkcja ma dwa argumenty. Pierwszy jest nazwą paczki aktualnie zainstalowanej. Jest to istotne, gdy instalujesz wiele składników. Drugi jest kodem wynikowym. Jeżeli ma wartość 0, to znaczy, że instalacja przebiegła pomyślnie. Jeżeli wartość jest inna niż 0, wartość jest kodem błędu. Funkcja doneFn() pokazuje właśnie okienko z alertem.

+

Następnie tworzymy tablice xpi, która będzie przetrzymywać nazwę (Calendar) i adres URL (calendar.xpi) dla instalatora. Robisz tak samo dla każdej paczki, którą chcesz zainstalować. W końcu wywołujemy funkcję instalacyjną.

+

Kiedy ta część skryptu zostanie wykonana, calendar.xpi będzie zainstalowane.

+
+

Nasz przykład: Okienko dialogowe <tt>Znajdź pliki</tt>

+

Wypróbujmy to z wyszukiwaniem plików:

+
function doneFn ( name , result ){
+  if (result) alert("An error occured: " + result);
+}
+
+var xpi = new Object();
+xpi["Find Files"] = "findfile.xpi";
+InstallTrigger.install(xpi,doneFn);
+
+
+

Archiwum XPI

+
+ Uwaga: Jeśli chcesz stworzyć nową aplikację XULRunner, rozszerzenie lub motyw, zobacz Paczki.
+

Plik instalatora XPI jest konieczny, by zawrzeć plik zwany install.js, który jest plikiem JavaScript, wykonywanym podczas instalacji. Pozostałe pliki są plikami do instalacji. Zwykle te pliki umieszczone są w katalogu, wewnątrz archiwum, ale niekoniecznie. Dla plików chrome może mieć strukturę podobną do katalog chrome.

+

Często tylko pliki umieszczone w archiwum XPI zostaną zainstalowane, a będą to skrypty instalacji (install.js) i pliki JAR. JAR przechowuje pliki używane przez twoja aplikację. Komponenty dostarczone wraz z Mozillą są przechowywane w ten sam sposób.

+

Ponieważ plik XPI jest specjalnym plikiem ZIP, możemy tworzyć i dodawać pliki do niego używając do tego programów archiwizujących.

+
+

Nasz przykład: Okienko dialogowe <tt>Znajdź pliki</tt>

+

Dla okienka dialogowego <tt>Znajdź pliki</tt> stworzymy strukturę w archiwum następująco:

+
install.js
+findfile
+  content
+    contents.rdf
+    findfile.xul
+    findfile.js
+  skin
+    contents.rdf
+    findfile.css
+  locale
+    contents.rdf
+    findfile.dtd
+
+
+

Katalog został dodany dla każdego części paczki, z zawartością, motywów i lokalizacji. Plik contents.rdf posiada także ten dodatek, ponieważ będzie potrzebny do rejestracji plików chrome.

+

Następne spojrzenie w przyszłość z zainstalowanymi skryptami.

+

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_kreatora/index.html b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_kreatora/index.html new file mode 100644 index 0000000000..1fef2adb08 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_kreatora/index.html @@ -0,0 +1,143 @@ +--- +title: Tworzenie kreatora +slug: Mozilla/Tech/XUL/Kurs_XUL/Tworzenie_kreatora +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Creating_a_Wizard +--- +

+

« PoprzedniNastępny »

+

+ +

Wiele aplikacji używa kreatorów aby pomóc użytkownikowi przejść złożone zadania. XUL dostarcza łatwego sposobu na tworzenie kreatorów

+ +

Kreator

+ +

Kreator jest specjalnym typem okna dialogowego, które zawiera kilka stron. Na dole tego okna dialogowego pojawiają się przyciski nawigacyjne do przełączania między stronami. Kreatory są zazwyczaj używane do pomocy użytkownikom przy wykonywaniu złożonych zadań. Każda strona zawiera pojedyncze pytanie lub zbiór powiązanych pytań. Po ostatniej stronie jest wykonywane działanie XUL dostarcza elementu wizard który może być użyty do stworzenia kreatora.

+ +

Zawartość wewnątrz elementu wizard obejmuje całą zawartość każdej strony kreatora. Atrybutu umieszczone w wizard są używane do sterowania nawigacją kreatora. Kiedy tworzymy kreator, użyjemy znacznika wizard zamiast znacznika window.

+ +

Zauważ, że kreatory obecnie pracują poprawnie z chrom URL.

+ +
Note that wizards currently only work properly from chrome URLs.
+ +

Kreator składa się składa się z kilku sekcji, chociaż dokładny rozkład będzie różny dla każdej platformy. Kreator będzie generalnie wyświetlany jak te na platformie użytkownika. Typowy rozkład będzie obejmował tytuł na górze, zbiór przycisków nawigacyjnych na dole i zawartość strony po środku.

+ +

Tytuł u góry jest stworzony przy zastosowaniu atrybutu title, podobnie jak robi się to w zwykłym oknie. Przyciski nawigacyjne są tworzone automatycznie. Strony kreatora są tworzone przy użyciu elementu wizardpage. Możesz umieścić jakąkolwiek zawartość jaką chcesz wewnątrz każdego wizardpage.

+ +

Przykład kreatora

+ +

Źródła

+ +
<?xml version="1.0"?>
+
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<wizard id="example-window" title="Select a Dog Wizard"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+  <wizardpage>
+    <description>
+      This wizard will help you select the type of dog that is best for you."
+    </description>
+    <label value="Why do you want a dog?"/>
+    <menulist>
+      <menupopup>
+        <menuitem label="To scare people away"/>
+        <menuitem label="To get rid of a cat"/>
+        <menuitem label="I need a best friend"/>
+      </menupopup>
+    </menulist>
+  </wizardpage>
+
+  <wizardpage description="Dog Details">
+    <label value="Provide additional details about the dog you would like:"/>
+    <radiogroup>
+      <caption label="Size"/>
+      <radio value="small" label="Small"/>
+      <radio value="large" label="Large"/>
+    </radiogroup>
+    <radiogroup>
+      <caption label="Gender"/>
+      <radio value="male" label="Male"/>
+      <radio value="female" label="Female"/>
+    </radiogroup>
+  </wizardpage>
+
+</wizard>
+
+ +
grafika:wizard1.jpg
+ +

Ten kreator ma dwie strony, jedną z menu rozwijanym i drugą ze zbiorem przycisków opcji. Kreator będzie sformatowany automatycznie, z tytułem na górze i zbiorem przycisków na dole. Użytkownik może nawigować pomiędzy stronami kreatora przyciskami Wstecz oraz Dalej. Przyciski te włączają się i wyłączają same w odpowiedniej chwili. Dodatkowo na ostatniej stronie pojawia się przycisk Zakończ. Wszystko to jest automatyczne, więc nie musisz robić niczego aby manipulować stronami.

+ +

Atrybut description może opcjonalnie umieścić element wizardpage dostarczający podnagłówków dla tej strony. W powyższym przykładzie będzie umieszczony na drugiej stronie, ale nie na pierwszej.

+ +

Obsługa zmian strony

+ +

Generalnie chcesz zrobić coś po tym jak naciśniesz przycisk Zakończ. Możesz ustawić atrybut onwizardfinish w elemencie wizard aby to wykonać. Ustaw go w skrypcie który wykonuje jakieś zadanie jakie chcesz a potem zwraca prawdę. Ten skrypt może być używany do zapisania informacji, jaką użytkownik wprowadził podczas pracy z kreatorem.

+ +
<wizard id="example-window" title="Select a Dog Wizard"
+  onwizardfinish="return saveDogInfo();"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+ +

Kiedy użytkownik nacisnął przycisk Zakończ, będzie wywołana funkcja saveDogInfo(), będąca zdefiniowaną w pliku skryptu zapisującym informację jaka została wprowadzona. Jeśli funkcja zwraca true, kreator zostanie zamknięty. Jeśli zwróci false, wtedy kreator się nie zamknie, co może wystąpić, jeśli funkcja saveDogInfo() napotka niepoprawną daną wejściową, na przykład.

+ +

Są również powiązane atrybuty onwizardback, onwizardnext i onwizardcancel, które są wywoływane, kiedy są naciśnięte przyciski Wstecz, Dalej i Anuluj. Te funkcje są wywoływane bez względu na to jaka strona jest aktualnie wyświetlana.

+ +

Aby mieć różny kod wywoływany w zależności od strony na jakiej jesteś, użyj atrybutów onpagerewound lub onpageadvanced w elemencie wizardpage. Pracują one podobnie do innych funkcji z wyjątkiem tego, że możesz użyć różnego kodu dla każdej strony. Pozwala Ci to sprawdzenie poprawności wprowadzonych danych wejściowych zanim użytkownik będzie kontynuował.

+ +

Trzecią metodą jest zastosowanie atrybutów onpagehide i onpageshow w elemencie wizardpage. Będą one wywoływane kiedy strona jest ukrywana lub pokazywana bez względu na to jaki przycisk naciśnięto (z wyjątkiem, kiedy naciśnięto przycisk Anuluj -- musisz użyć onwizardcancel, aby to sprawdzić).

+ +

Te trzy metody powinny dostarczyć dosyć elastyczności dla obsługi nawigacji jakiej potrzebujemy. Poniżej mamy podsumowanie funkcji atrybutów, które są wywoływane, kiedy użytkownik naciśnie Dalej, w porządku, w jakim będą sprawdzane. Jeśli tylko jedna zwróci false, nawigacja zostaje przerwana.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AtrybutyMiejsce na znacznikMoment wywoływana
pagehidewizardpageWywoływana na stronie, którą użytkownik opuszcza.
pageadvancedwizardpageWywoływana na stronie opuszczonej przez użytkownika.
wizardnextwizardWywoływana w kreatorze.
pageshowwizardpageWywoływana na stronie, którą użytkownik wpisał.
+ +

Podobny proces wystąpi dla przycisku Wstecz.

+ +
Próbując kiedykolwiek użyć w funkcji zdarzenia, takiej jak pageadvanced, powinniśmy zastosować: +

return funcName() zamiast samego wywołania funcName()
+ Nie będzie to działało jak oczekiwano np.

+ +
 <wizardpage pageadvanced='return funcName()'></wizardpage></code>
+
+
+ +

W kolejnym artykule, zobaczymy kilka dodatkowych możliwości kreatorów.

+ +

+

« PoprzedniNastępny »

+

+ +

 

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_motyw\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_motyw\303\263w/index.html" new file mode 100644 index 0000000000..437aeb8f98 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_motyw\303\263w/index.html" @@ -0,0 +1,171 @@ +--- +title: Tworzenie motywów +slug: Mozilla/Tech/XUL/Kurs_XUL/Tworzenie_motywów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Creating_a_Skin +--- +

+

« PoprzedniNastępny »

+

+ +

Artykuł opisuje jak utworzyć prosty motyw. Dla prostoty, tylko zastosujemy to do okna dialogowego Znajdź pliki.

+ +

Proste motywy

+ +
Grafika:cskin1.jpg
+ +

Obrazek poniżej ukazuje aktualne okno dialogowe Znajdź pliki. Utworzymy motyw, który będziemy mogli dodać do niego. Normalnie, motyw znalazłaby zastosowanie do całej aplikacji, ale my się tylko skupimy na oknie dialogowym Znajdź pliki, aby nasza praca stała się łatwiejsza. Z tego powodu, zmienimy tylko plik findfile.css</code> a nie cały plik <tt>global.css. Rozdział ten zaczynamy posiadając klasyczny motyw. Powinieneś wykonać kopię zapasową plików użytych w oknie dialogowym Znajdź pliki, zanim zaczniesz je edytować.

+ +

Będziesz potrzebować do utworzenia motywu pliku findfile.css z ustawionymi danymi motywu podstawowego. Możesz tymczasowo umieścić te wartości w katalogu i zdefiniować go używając dyrektywy w pliku stylów kaskadowych. Możesz modyfikować istniejący plik findfile.css i natychmiast zobaczyć jak wygląda on zmieniony, lub możesz utworzyć zwykły motyw i podać ścieżkę do niego. Aby utworzyć motyw, musisz wykonać:

+ +
    +
  1. Utworzyć katalog, gdzie kolwiek będziesz chciał umieścić pliki motywu.
  2. +
  3. Skopiuj listę plików (condents.rdf) z klasycznej lub nowoczesnego motywu do nowego katalogu.
  4. +
  5. Zmodyfikuj wzmianki w pliku listy, ze zwykłego motywu do twojego motywu. Na przykład, zmień wzmiankę 'classic/1.0' na 'blueswayedshoes/1.0'.
  6. +
  7. Dodaj linię do pliku 'chrom/installed-chrom.txt z następującymi zmianami:
    + skin,install,url,file:///stuff/blueswayedshoes/
    + gdzie ostatnia para wskazuje do twojego nowo utworzonego katalogu. Upewnij się czy dodałeś slash na końcu ścieżki.
  8. +
+ +

Skopiuj oryginalny plik findfile.css do nowego katalogu. Użyjemy go jako bazy dla nowego motywu. Potem możemy kierować do niego używając URL 'chrome://findfile/skin/findfile.css'. Po pierwsze, zdecydujmy, jaki rodzaj zmian chcemy wprowadzić. My zrobimy prostą zmianę kolorów, zmodyfikujemy style przycisków, i zmodyfikujemy trochę rozmieszczenie. Zacznijmy od menu, paska narzędzi i powłoki tabulacji.

+ +

Następne reguły stylu dodawane do pliku findfile.css będą powodować zmiany w wyświetlaniu załączonego obrazu.

+ +
window > box {
+  background-color: #0088CC;
+}
+
+menubar,menupopup,toolbar,tabpanels {
+  background-color: lightblue;
+  border-top: 1px solid white;
+  border-bottom: 1px solid #666666;
+  border-left: 1px solid white;
+  border-right: 1px solid #666666;
+}
+
+caption {
+  background-color: lightblue;
+}
+
+ +
Grafika:Cskin2.jpg
+ +

Wewnętrzne okno pudełka, (który aktualnie otacza całą zawartość okna) zostało zmienione na kolor średnio-niebieski. Możesz zobaczyć ten niebieski, pomiędzy pasem kart i u samego dołu okna. Cztery elementy menubar, menupopup, toolbar i tabpanels są koloru jasno niebieskiego. Obramowanie wokół tych czterech elementów zostało zmienione na cięższy widok 3D. Możesz zobaczyć, jeśli przyjrzysz się bliżej. Tło caption po zmianie jest bardziej ciemne.

+ +

Pierwsza reguła powyżej (dla 'window > box') określa, że potomek-dziecko box, okna posiada inny kolor. Prawdopodobnie nie jest to dobre rozwiązanie w tym przypadku. Powinniśmy naprawdę zmienić użyte tutaj klasy stylu. Zróbmy to. Idąc tą drogą, możemy zmodyfikować XUL bez potrzeby trzymania pudełka jako pierwszego potomka okna.

+ +
.findfilesbox {
+  background-color: #0088CC;
+}
+
+XUL:
+
+<vbox class="findfilesbox" orient="vertical" flex="100%">
+<toolbox>
+
+ +

Następnie, zmodyfikujmy karty. Zrobimy zaznaczone kartę, pogrubimy i zmienimy zaokrąglenia na nich.

+ +
tab:first-child {
+  -moz-border-radius: 4px 0px 0px 0px;
+}
+
+tab:last-child {
+  -moz-border-radius: 0px 4px 0px 0px;
+}
+
+tab[selected="true"] {
+  color: #000066;
+  font-weight: bold;
+  text-decoration: underline;
+}
+
+ +
Grafika:Cskin3.jpg
+ +

Druga reguła zmienia wygląd normalnej karty, pierwsze ustawienia zaokrąglenia pierwszej karty i ustawienia drugiej zaokrągla, gdyż jest to ostatnia karta. Użyte tutaj są specjalne reguły stylów Mozilli, -moz-border-radius, które tworzą zaokrąglone obramowanie rogów. Górne lewe obramowanie pierwszej karty i górne prawe obramowanie drugiej karty, są zaokrąglone czterema pikselami i pozostałe rogi mają również wartość równą zero pikseli, które są równoważne nie zaokrąglaniu. Powiększenie wartości tutaj powodują większe zaokrąglenie i zmniejszają widok ich jako prostokątnych.

+ +

Ostatnia reguła nakłada tylko kartę, że posiadają atrybut selected ustawiony na true. To stwarza tekst w zaznaczonej karcie jako pogrubiony, podkreślony i koloru ciemno niebieskiego. Uwaga, w obrazku w tym przykładzie styl ten został zastosowany tylko do pierwszej karty, ponieważ jest zaznaczony jako jedyny.

+ +

Przyciski paska narzędzi z menu commands poniekąd są trudne do wyróżnienia. Dodamy kilka ikon do przycisków robiąc je bardziej przejrzystymi. Mozilla Compresor dostarcza ikony przycisków Otwórz i Zapisz, które będą użyte tutaj do zapisania czasu. Potrafimy ustawić obrazek dla przycisku poprzez właściwość CSS list-style-image.

+ +
#opensearch {
+  list-style-image: url("chrome://editor/skin/icons/btn1.gif");
+  -moz-image-region: rect(48px 16px 64px 0);
+  -moz-box-orient: vertical;
+}
+
+#savesearch {
+  list-style-image: url("chrome://editor/skin/icons/btn1.gif");
+  -moz-image-region: rect(80px 16px 96px 0);
+  -moz-box-orient: vertical;
+}
+
+ +
Grafika:Cskin4.jpg
+ +

Mozilla dostarcza własności zwykłych stylów -moz-image-region, które potrafi zostać użyte do zrobienia części elementu obrazka. Możesz myśleć o tym , jako, że jest to spięty region obrazka. Ustawiasz właściwości pozycji i rozmiaru obrazka i przycisk będzie wyświetli tylko ten kawałek obrazka. Uznane to zostaje jako ten sam obrazek dla wielokrotnego przycisków i ustawia inne regiony dla każdego. Kiedy masz kilka przycisków, ze statusem najechany, aktywny i wyłączony, to zachowuje miejsce, które normalnie jest okupowane przez wielokrotne obrazki. W kodzie powyżej, używamy tego samego obrazka dla każdego przycisku, ale ustawiamy inne regiony dla każdego jednego. Jeśli widzisz ten obrazek (btn1.gif), powinieneś spostrzec, że stanowi to kratkę z małymi obrazkami, każdy jeden o wymiarach 16 na 16 pikseli.

+ +


+ Własność -moz-box-orient jest użyta do orientacji pionowej przycisku, więc obrazek ten stanowi powyższą etykietę. Ta cecha ma te same znaczenie jako atrybut orient . To jest wygodne, ponieważ motyw nie zmieni XUL-a. Wiele atrybutów box ma właściwość korespondencji.

+ +

Następnie, zrobimy kilka zmian dotyczących przycisków znajdujących się wzdłuż dołu, ponownie użyjemy kilku ikon z Mozilli do zapisania w czasie. Jeśli tworzysz swój własny motyw, będziesz potrzebować nowych ikon lub skopiuj ikony nowych plików. Jeśli pójdziemy za przykładem w tym rozdziale, to tylko kopia plików do Twojej nowego motywu i odpowiednia zmiana URL-a.

+ +
#find-button {
+  list-style-image: url("chrome://global/skin/checkbox/images/cbox-check.jpg");
+  font-weight: bold;
+}
+
+#cancel-button {
+  list-style-image: url("chrome://global/skin/icons/images/close-button.jpg");
+}
+
+button:hover {
+  color: #000066;
+}
+
+ +

 

+ +
Grafika:Cskin5.jpg
+ +

Dodamy obrazki do przycisków i zrobimy przycisk Znajdź, który będzie posiadał pogrubiony tekst wskazujący, że jest to przycisk domyślny. Ostatnia zasada nakłada na przycisk zasadę, że jeśli kursor myszy ma się zmieniać nad przyciskiem. Ustawiamy kolor tekstu na ciemny niebieski w tym przypadku. Na koniec, kilka mniejszych zmian w rozmieszczeniu w oknie znajdujących się tam rzeczy, poprzez ustawienie marginesów:

+ +
Grafika:cskin-fin.jpg
+ +
tabbox {
+  margin: 4px;
+}
+
+toolbarbutton {
+  margin-left: 3px;
+  margin-right: 3px;
+}
+
+ +

Po tych zmianach, okno dialogowe Znajdź pliki będzie wyglądało w następujący sposób.

+ +

Jak możesz zauważyć, proste zmiany w regułach stylu dały rezultat całkiem innego wyglądu okna dialogowego Znajdź pliki. Możemy kontynuować poprzez zmianę menu, chwytając pasek narzędzi i położenie elementu pola wyboru.

+ +

Tworzenie globalnego motywu

+ +

Stworzony motyw powyżej, jest prosty i tylko zastosowanie do okna dialogowego Znajdź pliki. Niektóre zmiany zrobione dla motywu, powinny być umieszczone w pliku globalnych arkuszach stylów (w globalnym katalogu skórek) dla zastosowania we wszystkich aplikacjach. Na przykład, posiadanie innych obrazków dla sprawdzenia pudełka w oknie dialogowym Znajdź pliki, jako inny wygląd okna to trochę dziwaczne. Ta zmiana powinna naprawdę zostać przeniesiona do arkusza stylów globalnych.

+ +

Spróbuj przenieść style CSS z pliku findfile.css do pliku global.css i następnie spójrz na niektóre okna dialogowe w Mozilli (Widok cookie jest dobrym przykładem). Zostaniesz powiadomiony, że posiada adoptowane reguły te, co dodałeś. Niektóre reguły popadają w konflikt miedzy sobą w plikach stylów. Na przykład, reguły już zdefiniowane dla przycisków, kart i inne zdefiniowane dodatkowe reguły dla nich. Kiedy zmieniasz skórę global, możesz potrzebować scalenia zmian do istniejących reguł.

+ +

Do najlepszych zdolności skórki, to jest deklaracja wyglądu bliskich zasad stylów w katalogu globalnym, raczej niż w indywidualnym pliku stylów. Zawiera on kolory, czcionki i rozmiary wyglądu. Jeśli zmienisz kolor lub coś w lokalnym pliku skóry (takim jak findfile.css), okno dialogowe może wyglądać dziwacznie jeśli użytkownik zmieni swoją skórę globalną. Nie wyklucza to użytkownikowi używania jednej domyślnej.

+ +
+

Przykład Znajdź pliki wraz z motywem Source View Stylesheet

+
+ +

Zobacz także: Rozszerzenia CSS Mozilli i Dokumentacja CSS

+ +

W następnym temacie przedstawiamy dyskusje, jak zrobić lokalizację aplikacji XUL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okien_dialogowych/index.html b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okien_dialogowych/index.html new file mode 100644 index 0000000000..7cea315024 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okien_dialogowych/index.html @@ -0,0 +1,151 @@ +--- +title: Tworzenie okien dialogowych +slug: Mozilla/Tech/XUL/Kurs_XUL/Tworzenie_okien_dialogowych +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Creating_Dialogs +--- +

+

« PoprzedniNastępny »

+

+ +

Aplikacja XUL często wymaga wyświetlania okien dialogowych. Ten artykuł opisuje jak takie okna skonstruować.

+ +

Tworzenie okien dialogowych

+ +

Funkcja openDialog() stosowana jest do otwarcia okna dialogowego. Podobną funkcją jest open(). Różni się jednak pod kilkoma względami. Wyświetli okno, a nie okno dialogowe, z czego wynika, że oczekujemy jakiejś akcji użytkownika. Okno to może mieć subtelne różnice w sposobie pracy i w postrzeganiu je przez użytkownika. Te różnice wynikają z platformy, na której pracujemy.

+ +

W dodatku funkcja openDialog() może wymagać dodatkowych argumentów, poza trzema opisanymi wcześniej. Te argumenty są przesyłane do okienka dialogowego i umieszczane w obszarze przechowywanym we właściwościach argumentów nowego okna. Można przesłać tyle argumentów, ile jest potrzebne. Jest to bardzo wygodny sposób dostarczania wartości domyślnych do pól w oknie dialogowym.

+ +
var somefile=document.getElementById('enterfile').value;
+
+window.openDialog("chrome://findfile/content/showdetails.xul","showmore",
+                  "chrome",somefile);
+
+ +

W tym przykładzie zostanie wyświetlone okno dialogowe showdetails.xul. Przesłany mu będzie jeden argument somefile wzięty z wartości elementu o id enterfile. W skrypcie używanym przez to okienko dialogowe, możemy się odwołać do tego argumentu używając własności arguments okna. Na przykład:

+ +
var fl = window.arguments[0];
+
+document.getElementById('thefile').value = fl;
+
+ +

Jest to bardzo efektywny sposób przekazywania wartości nowemu oknu. Można przesłać wartości z otwartego okna do oryginalnego na dwa sposoby. Po pierwsze można użyć własności window.opener, która pozostawia okno, z którego otwarto dialog. Po drugie można przesłać funkcję lub obiekt jako jeden z argumentów, a potem odwołać się do tej funkcji lub zmodyfikować obiekt w otwartym dialogu.

+ +
+

Uwaga: openDialog() żąda przywileju UniversalBrowserWrite. To znaczy, że to nie będzie działało na zdalnej stronie; dlatego stosuj w zamian window.open().

+
+ +

Element okna dialogowego

+ +

Element okna dialogowego powinien być używany zamiast elementu window, podczas tworzenia dialog. Zapewnia to użyteczną możliwość stworzenia nawet do czterech przycisków w dole okienka dialogowego na polecenia takie jak 'OK', 'Anuluj' itd. Nie musisz zamieszczać XUL-a dla każdego button, ale musisz pamiętać o kodzie, który wygeneruje odpowiednią akcję, gdy użytkownik naciśnie dany przycisk. Ta procedura jest niezbędna, ponieważ różne platformy mają odpowiednią dla siebie kolejność, w której pojawiają się te przyciski.

+ +

Przykład okienka dialogowego

+ +

Źródła Podgląd

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
+
+<dialog id="donothing" title="Przykład okienka dialogowego"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+        buttons="accept,cancel"
+        ondialogaccept="return doOK();"
+        ondialogcancel="return doCancel();">
+
+<script>
+function doOK(){
+  alert("Nacisnąłeś OK!");
+  return true;
+}
+
+function doCancel(){
+  alert("Nacisnąłeś  Cancel!");
+  return true;
+}
+</script>
+
+<description value="Zaznacz przycisk"/>
+
+</dialog>
+
+ +

W oknie dialogowym możesz umieszczać elementy jakie tylko chcesz. Element dialog ma kilka dodatkowych możliwości, których nie posiadają elementy okien. Atrybut buttons jest używany w celu zdefiniowania, które przyciski mają się pojawić w oknie dialogowym. Następujące wartości mogą być użyte, gdy zostaną oddzielone przecinkami:

+ + + +

Możemy ustawić kod do wykonania po naciśnięciu jakiegoś przycisku, za pomocą atrybutów ondialogaccept, ondialogcancel, ondialoghelp i ondialogdisclosure. Jeśli wypróbujesz powyższy przykład, odkryjesz, że funkcja do doOK() jest wywoływana, gdy przycisk 'OK' został wciśnięty, a funkcja doCancel(), gdy wciśnięty został przycisk 'Anuluj'.

+ +

Te dwie funkcje doOK() i doCancel() - zwracają true, co oznacza, że okno dialogowe musi zostać zamknięte. Jeśli zwrócone byłoby false, to okno dialogowe pozostałoby otwarte. Jest to używane w przypadku wpisania błędnej wartości w pole w oknie dialogowym.

+ +

Użytecznymi atrybutami między innymi są:

+ + + +
+

Uwaga: Atrybuty etykiety są żądane przez zdalne strony i prawdopodobnie zapomniano o tym w powyższych przykładach due to błąd 224996.

+
+ +

Przykładowe okno dialogowe wraz z dodatkowymi możliwościami

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
+
+<dialog id="myDialog" title="Moje okienko"
+        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+        onload="window.sizeToContent();"
+        buttons="accept,cancel"
+        buttonlabelaccept="Ustaw ulubione"
+        buttonaccesskeyaccept="U"
+        ondialogaccept="return doSave();"
+        buttonlabelcancel="Anuluj"
+        buttonaccesskeycancel="n"
+        ondialogcancel="return doCancel();">
+
+<script>
+function doSave(){
+ //doSomething()
+ return true;
+}
+function doCancel(){
+  return true;
+}
+</script>
+
+<dialogheader title="Moje okienko dialogowe" description="Przykładowe okno"/>
+<groupbox flex="1">
+  <caption label="Wybierz ulubiony owoc"/>
+  <radio id="orange" label="Oranges because they are fruity"/>
+  <radio id="violet" selected="true" label="Strawberries because of colour"/>
+  <radio id="yellow" label="Bananna because it pre packaged"/>
+</groupbox>
+
+</dialog>
+
+ +

Elementy przycisków mogą być dostępne z następującym kodem JavaScript

+ +
// przycisk accept
+var acceptButt = document.documentElement.getButton("accept")
+
+ +

Więcej przykładów

+ +

Więcej przykładów znajdziemy w Dialogs and prompts (fragment kodu).

+ +

Następnie, zobaczymy jak otworzyć okienko dialogowe pliku.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okna/index.html b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okna/index.html new file mode 100644 index 0000000000..1b94462992 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/tworzenie_okna/index.html @@ -0,0 +1,103 @@ +--- +title: Tworzenie okna +slug: Mozilla/Tech/XUL/Kurs_XUL/Tworzenie_okna +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Creating_a_Window +--- +

+

« PoprzedniNastępny »

+

+ +

Przez cały kurs będziemy tworzyć proste narzędzie do wyszukiwania plików. Najpierw jednak powinniśmy zapoznać się z podstawową składnią pliku XUL.

+ +

Tworzenie pliku XUL

+ +

Plik XUL może posiadać dowolną nazwę, ale powinien mieć rozszerzenie .xul. Prosty plik XUL ma następującą postać:

+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<window
+    id="findfile-window"
+    title="Znajdź pliki"
+    orient="horizontal"
+    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ ...
+</window>
+
+ +

To okno pozostanie puste dopóty, dopóki nie będzie zawierało jakichkolwiek elementów interfejsu użytkownika. Elementy te dodamy w kolejnych artykułach. Poniżej znajduje się analiza powyższego przykładu kodu, linijka po linijce:

+ +

Otwieranie okna

+ +

Istnieje kilka metod, których możemy użyć do otwarcia okna XUL. Jeśli znajdujesz się w okresie programowania, wystarczy tylko wpisać URL (czy tochrome:,file: czy inny typ URL) do paska adresu w oknie przeglądarki Mozilla. Powinieneś być także zdolnym do podwójnego kliknięcia w plik w swoim menedżerze plików, który przypisze pliki XUL do połączenia z Mozillą. Okno XUL wyświetli się w oknie przeglądarki jako nowe okno, lecz jest też często dostatecznie, podczas stawiania pierwszych kroków w programowaniu.

+ +

Poprawnym sposobem do otworzenia okna jest zastosowanie JavaScript. Nie potrzebna jest żadna nowa składnia, jako, że możemy zastosować funkcję window.open() jako jeden dokument HTML. Jednakże, jedna dodatkowa flaga, nazywająca się 'chrome' jest potrzebna do wskazania przeglądarce dokument chrome do otwarcia. Otworzymy okno bez paska narzędzi i menu, reszta okna będzie wyświetlana jak w normalnym oknie przeglądarki. Składnia została opisana poniżej:

+ +
window.open(url,windowname,flags);
+
+gdzie: flags stanowi flagę "chrome", tak jak w tym przykładzie:
+
+window.open("chrome://navigator/content/navigator.xul", "bmarks", "chrome,width=600,height=300");
+
+ +
+
Przykład findfile.xul
+ +

Zacznijmy tworzenie prostego pliku okna dialogowego Znajdź pliki. Po pierwsze nazywamy ten plik findfile.xul i umieszczamy jego zawartość w określonym pliku w findfile.manifest, (który został utworzony w poprzednim artykule). Dodaj szablon XUL do pliku, który pokazaliśmy na górze tej strony, a następnie wszystko zapisz.

+
+ +

Możemy użyć parametru linii poleceń '-chrome' do określenia pliku XUL, który zostanie otwarty w momencie uruchomienia Mozilli. Jeśli nie zostało to określone, zostanie otwarte okno domyślne (zazwyczaj jest to okno przeglądarki). Na przykład, możemy otworzyć okno dialogowe Znajdź pliki na dwa następujące sposoby:

+ +
mozilla -chrome chrome://findfile/content/findfile.xul
+
+mozilla -chrome resource:/chrome/findfile/content/findfile.xul
+
+ +

Jeśli uruchomisz tą komendę z linii poleceń (w zależności od tego, jakiej platformy używasz), okienko dialogowe Znajdź pliki zostanie otwarte domyślnie zamiast okna przeglądarki Mozilla. Oczywiście, ponieważ nie mamy dodanych jakichkolwiek elementów UI do okna, zobaczysz tylko okno. W kolejnych tematach dodamy różne dodatkowe elementy.

+ +

Zobacz, chociaż efekt następującego otwarcia okna zakładek:

+ +
mozilla -chrome chrome://communicator/content/bookma...rksManager.xul
+
+Jeśli używasz Firefoksa, sprawdź:
+firefox -chrome chrome://browser/content/bookmarks/b...rksManager.xul
+
+ +

Argument '-chrome' nie nadaje plikowi jakichkolwiek dodatkowych uprawnień. Zamiast, to powód określający plik do otwarcia jako okno bez jakiegokolwiek przeglądarkowego chrome, takich jak pole adresowe lub menu. Tylko URL chrome posiada dodatkowe przywileje.

+ +
Rozszerzenie programisty będące edytorem XUL, który pozwala na pisanie w języku XUL oraz pozwala na przeglądanie wyników w czasie rzeczywistym za pomocą Mozilli!
+ +

W następnym artykule dodamy przyciski do okna.

+ +

+

« PoprzedniNastępny »

+

+ +
 
+ +
    +
  1. <?xml version="1.0"?>
    + Deklaracja pliku XML. Dodajemy tą linijkę na początku każdego pliku XUL, tak jak znacznik HTML wstawiamy na początku pliku HTML.
  2. +
  3. <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
    + Linijka ustalająca arkusz stylów używany dla pliku. Jest to składnia, którą plik XML używa do importowania arkuszy stylów. W tym przypadku importuje style znajdujące się w chrome://global/skin. Nie odwołując się do konkretnego pliku przeglądarka Mozilla, w tym przypadku, wybierze plik all-important global.css. Plik ten zawiera wszystkie domyślne deklaracje wszystkich elementów XUL. Ponieważ XML nie posiada żadnej dokumentacji dotyczącej sposobu, w jaki sposób powinny być jego elementy wyświetlane. Ogólnie, umieszczamy tą linię na samej górze każdego pliku XUL. Możemy także importować inne arkusze stylów stosując prostą składnię. Zauważ, że normalnie zaimportowany zostanie globalny arkusz stylów, z wewnątrz Twojego własnego pliku arkusza stylu.
  4. +
  5. <window
    + Deklarujemy, że będziemy opisywać okno window. Znacznik ten ma analogiczne znaczenie do BODY z języka HTML, który otacza całą zawartość strony. W znaczniku window można umieścić wiele atrybutów (w przykładzie zawarte są cztery). Każdy z nich umieszczony został w oddzielnej linii, głównie po to, aby kod był przejrzysty.
  6. +
  7. 'id="findfile-window"'
    + Atrybut id jest używany jako identyfikator, dzięki któremu skrypty mogą odwoływać się do okna. Przeważnie id dodaje się do każdego elementu. Nazwa identyfikatora może być dowolna.
  8. +
  9. title="Znajdź pliki"
    + Atrybut title określa tekst, który jest umieszczony na pasku tytułowym okna. W tym przypadku zostanie wyświetlone: Znajdź pliki.
  10. +
  11. orient="horizontal"
    + Atrybut orient określa położenie elementów w oknie. Wartość horizontal ustala poziome położenie elementów w oknie. Wartością domyślną orient jest vertical, które to określa położenie elementów w kolumnie.
  12. +
  13. xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
    + Deklaracja przestrzeni nazw (namespace) w języku XUL, którą powinieneś umieścić w elemencie window, aby wskazać, że wszyscy jego potomkowie należą do XUL-a. W rzeczywistości URL ten nie jest nigdy wczytany. Stanowi informację dla przeglądarki Mozilla, że ma do czynienia ze standardową składnią języka XUL.
  14. +
  15. ...
    + W tym miejscu deklarowane będą elementy takie jak: przyciski, menu lub inne komponenty interfejsu użytkownika.
  16. +
  17. </window>
    + Na końcu pliku zamykamy znacznik window.
  18. +
+ +

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/url_chrome/index.html b/files/pl/mozilla/tech/xul/kurs_xul/url_chrome/index.html new file mode 100644 index 0000000000..dae67852d4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/url_chrome/index.html @@ -0,0 +1,74 @@ +--- +title: URL Chrome +slug: Mozilla/Tech/XUL/Kurs_XUL/URL_Chrome +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/The_Chrome_URL +--- +

+

« PoprzedniNastępny »

+

+ +

Następujący artykuł opisuje jak odnosić się do dokumentów XUL i innych plików chrome.

+ +

URL Chrome

+ +

Pliki XUL mogą być połączone z normalnymi adresami URL HTTP (lub innymi typami adresów URL) tak jak pliki HTML. Jednakże paczki, które są zainstalowanej wewnątrz systemu chrome Mozilli mogą się łączyć ze sobą za pomocą specjalnych adresów URL. Paczki zawarte z przeglądarką Mozilli są już zainstalowane, ale możemy zarejestrować swoje własne.

+ +

Paczki zainstalowane nie mają żadnych ograniczeń ochronnych, co jest wymagane przez wiele aplikacji. Inną zaletą nad innymi typami URL jest automatyczne radzenie sobie z tematami i lokalizacjami. Dla przykładu, chrome URL pozwala dostać się do pliku grafiki w temacie wyglądu bez potrzeby znania tematu używanego przez użytkownika. Jest to możliwe dzięki temu, że każdy temat posiada takie same nazwy plików. Mozilla sama określi gdzie znajduję się plik i zwróci właściwe dane. Nie ma też znaczenia dla tego żeby się do niej dostać, gdzie paczka jest zainstalowana. Chrome URL są nie zależne od fizycznego miejsca plików. To czyni pisanie aplikacji odnoszącej się do wielu plików znacznie łatwiejsza gdyż nie musisz się martwić gdzie one dokładnie się znajdują.

+ +

Prosta składnia URL chrome jest następująca:

+ +
chrome://<nazwa paczki>/<część>/<plik.xul>
+
+ +

Another advantage over other URL types is that they automatically handle multiple themes and locales. For example, a chrome URL lets you refer to a file in the theme such as an image without needing to know which theme the user is using. As long as the filenames are the same in each theme, you can refer to the file using a chrome URL. Mozilla will take care of determining where the file is located and return the right data. This also means that it doesn't matter where the package is installed to be able to access it. The chrome URLs are independent of where the files might physically be located. This makes it much easier to write applications that have lots of files since you don't have to worry about the details of locating files.  <nazwa paczki> - to nazwa paczki jak np. edytor czy komunikator. <część> - to np. 'content', 'skin' lub 'locale' zależnie do czego się odnosisz. <plik.xul> - to nazwa pliku.

+ +

Przykład: chrome://messenger/content/messenger.xul

+ +

Przykład odnosi się do okna Kuriera (messenger'a). Możesz dostać się do pliku tematu zmieniając 'content' na 'skin' i zmieniając nazwę pliku. Tak samo możesz dostać się do katalogu 'locale'.

+ +

Kiedy otwierasz chrome URL, Mozilla sprawdza swoją listę zainstalowanych paczek i próbuje zlokalizować plik JAR który odpowiada nazwie paczki i jej części. Po odnalezieniu zagląda do tego pliku w poszukiwaniu pliku.xul. Mozilla zawsze zacznie poszukiwania w tym samym katalogu w pliku JAR gdzie znajduję się powiązany plik contents.rdf, który opisano w poprzedniej sekcji. To oznacza, że jeżeli kilka paczek lub części znajduje się w tym samym pliku JAR, pliki znajda się we właściwym miejscu. Dla przykładu plik contents.rdf dla przykładu powyższego adresu chrome URL znajduje się w pliku messenger.jar we wnętrzu tego archiwum, katalog 'content/messenger'. To oznacza, że 'messenger.xul' zostanie wczytany z tej lokacji a jeśli otworzysz messenger.jar znajdziesz ten plik właśnie w tym katalogu. Jeżeli używasz rozszerzonej formy plików zamiast JAR, stanie się to samo z wyjątkiem tego, że Mozilla może przejść bezpośrednio do katalogu bez szukania go w pliku JAR.

+ +

Jeżeli przeniesiesz plik messenger.jar gdzieś indziej i uaktualnisz miejsce w liście Mozilla zarejestrowanych paczek chrome, Poczta nadal będzie działać, ponieważ nie polega na określonym miejscu instalacji. Używając chrome URL możemy zostawić szczegóły takie jak te w Mozilli. Podobnie, jeżeli użytkownik zmieni temat, część 'skin' chrome URL przetłumaczy do innego zestawu plików, jeszcze XUL i skrypty nie potrzebują nic zmieniać.

+ +

Mozilla jest w stanie zrozumieć, która skóra i język są aktualnie używane i sporządza mapę odpowiednich katalogów dla chrome URL. Pliki chrome.rdf w chrome i katalogu profilu i contents.rdf są tam, by powiedzieć Mozilla jak to zrobić. Użytkownik może użyć każdej skóry albo języka, ale URL-e, które prowadzą do plików chrome nie muszą być zmienione. Na przykład, domyślny navigator.css jest dostępny:

+ +
chrome://navigator/skin/navigator.css
+
+ +

Jeżeli zmieniasz skórę przeglądarki, chrome URL nie zmieni się, nawet jeśli zmieni się prawdziwe miejsce plików użytych przez skórę.

+ +

System chrome bierze sekcje nawigatora zawartości, aktualnej skóry i aktualnej lokalizacji i grupuje je razem, by utworzyć interfejs użytkownika. Teraz więcej przykładów, ten raz dla kuriera. Zauważ, że żaden z URL-i nie wskazuje, który temat albo lokalizacja jest użyta i żaden nie wskazuje określonego katalogu.

+ +
chrome://messenger/content/messenger.xul
+chrome://messenger/content/attach.js
+chrome://messenger/skin/icons/folder-inbox.gif
+chrome://messenger/locale/messenger.dtd
+
+ +

Dla pod paczek, można użyć tej samej struktury. Następne adresy odniosą się do okna zakładek, sporządzone zarówno dla Mozilli i Firefoksa, odkąd nazwy paczki są różne w obu:

+ +
chrome://communicator/content/bookmarks/bookmarksManager.xul (Mozilla) chrome://browser/content/bookmarks/bookmarksManager.xul (Firefox)
+
+ +

Możesz wejść poprzez chrome URL wszędzie tam, gdzie może zostać użyty normalny URL. Możesz nawet używać ich bezpośrednio w pasku adresu w oknie Mozilli. Jeżeli wejdziesz na któryś z adresów wymienionych powyżej, powinieneś zobaczyć, okno jak strona sieci i przeważnie działałaby jak gdyby to było oddzielne okno. Niektóre okienka dialogowe mogą nie działać dobrze, mogą wymagać argumentów dostarczonych od okna, które je otworzyło.

+ +

Zobaczysz też chrome URL bez wyszczególnionych nazw, takie jak:

+ +
chrome://navigator/content/
+
+ +

W tym przypadku, tylko nazwa paczki i część są określone. Ten typ odniesięnia automatycznie wybierze odpowiedni plik z właściwego katalogu. Dla content, plik z tą samą nazwą paczki i rozszerzeniem xul są wybrane. W powyższym przykładzie w pliku navigator.xul jest wybrane. Dla kuriera, messenger.xul byłby wybrany. Kiedy tworzysz swoje własne aplikacje, będziesz chciał utworzyć plik dla twojego głównego okna z tą samą nazwą jak paczka, więc to może zostać odnalezione do używają tej krótszej formy. To jest wygodne odkąd wszystkim co musi wiedzieć użytkownik jest nazwa paczki, by móc otwierać aplikacje. Oczywiście, dla rozszerzeń, które modyfikują interfejs przeglądarki, użytkownik nie będzie potrzebował znać URL, ponieważ rozszerzenie przedstawi siebie w interfejsie użytkownika.

+ +

Dla tematów, jest wybrany plik <nazwa paczki>.css. Dla lokalizacji jest wybrany plik <nazwa paczki>.dtd.

+ +

Zapamiętaj, że chrome URL nie jest powiązany z tym gdzie na dysku się znajduje. Pierwsze dwa kawałki są nazwą paczki i częścią (content, skin albo locale). Zazwyczaj pliki content umieszczane są w katalogu zwanym 'content', jest to czysto umowne więc te pliki mogą zostać umieszczone w całkowicie innej strukturze. Jedyną regułą jest, że część nazwy chrome URL odnosi się do plików umieszczonych w tym samym katalogu, gdzie znajduje się powiązany plik 'contents.rdf'.

+ +

W następnym artykule dowiemy się jak tworzyć pliki contents.rdf i paczki.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/wi\304\231cej_funkcji_obs\305\202ugi_zdarze\305\204/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/wi\304\231cej_funkcji_obs\305\202ugi_zdarze\305\204/index.html" new file mode 100644 index 0000000000..cddafecfd3 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/wi\304\231cej_funkcji_obs\305\202ugi_zdarze\305\204/index.html" @@ -0,0 +1,174 @@ +--- +title: Więcej funkcji obsługi zdarzeń +slug: Mozilla/Tech/XUL/Kurs_XUL/Więcej_funkcji_obsługi_zdarzeń +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/More_Event_Handlers +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule, badana jest postać obiektu zdarzenia oraz opisane są dodatkowe zdarzenia.

+ +

Obiekt zdarzenia

+ +

Każda obsługa zdarzeń posiada pojedynczy argument, który przetrzymuje obiekt zdarzenia. W postaci atrybutu nasłuchu, zdarzenie jest argumentem kodu skryptu, do którego można się odnosić poprzez używanie nazwy 'event'. Natomiast w funkcji addEventListener, pierwszy argument będzie obiektem zdarzenia. Ten obiekt zdarzenia, posiada pewną liczbę własności, które mogą być badane w trakcie trwania zdarzenia. Pełną listę własności można znaleźć w dokumentacji obiektu na XULPlanet].

+ +

Mieliśmy już okazję oglądać własność target zdarzenia w poprzedniej sekcji. Zawiera ona odnośnik do elementu, w którym pojawiło się zdarzenie. Podobną własnością jest currentTarget, która zawiera element, którego nasłuch jest aktualnie obsługiwany. W poniższym przykładzie, currentTarget zawsze wskazuje na vbox, natomiast własność target będzie przechowywała specyficzny element: przycisk lub pole wyboru, które zostały aktywowane.

+ +

Przykład 1 : Źródła Podgląd

+ +
<vbox oncommand="alert(event.currentTarget.tagName);">
+  <button label="OK"/>
+  <checkbox label="Pokaż obrazki"/>
+</vbox>
+
+ +

Zatrzymanie propagowania zdarzenia

+ +

Przypomnijmy, że faza przejęcia ma miejsce przed fazą wrzenia, więc jakikolwiek "listener" należący do tej pierwszej będzie wyzwalany przed nasłuchem drugiej. Jeśli zdarzenie odnoszące się do fazy przejęcia, zatrzyma swoją propagację, żaden z późniejszych "listenerów", tak tych należących do fazy przejęcia, jak i wrzenia nie otrzyma powiadomienia o zdarzeniu. W celu zatrzymania propagacji zdarzenia, wystarczy wywołać metodę stopPropagation należącą do obiektu zdarzenia. Przykład tego wywołania poniżej:

+ +

Przykład 2 : Źródła Podgląd

+ +
<hbox id="outerbox">
+  <button id="okbutton" label="OK"/>
+</hbox>
+
+<script>
+function buttonPressed(event){
+  alert('Przycisk został naciśnięty!');
+}
+
+function boxPressed(event){
+  alert('Pudełko zostało naciśnięte!');
+  event.stopPropagation();
+}
+
+var button = document.getElementById("okbutton");
+button.addEventListener('command',buttonPressed,true);
+
+var outerbox = document.getElementById("outerbox");
+outerbox.addEventListener('command',boxPressed,true);
+</script>
+
+ +

W tym przypadku, nasłuch zdarzenia został dodany do przycisku, a inny nasłuch został dodany do ramki. Metoda stopPropagation została wywołana w "listenerze" ramki, więc "listener" przycisku nigdy nie zostanie wywołany. Jeśli to wywołanie zostało usunięte, oba "listenery" będą wywoływane, co spowoduje pojawienie się obu alertów.

+ +

Zapobieganie domyślnym akcją

+ +

Jeśli żadna obsługa wydarzenia nie została zarejestrowani dla wydarzenia, to po zakończeniu fazy przejęcia i wrzenia, element obsłuży zdarzenie w sposób domyślny. Co się stanie zależy od zdarzenia i typu samego elementu. Przykładowo, zdarzenie "popupshowing" jest wysyłane do "popupa" chwilę przed jego wyświetleniem. Domyślną akcją jest wyświetlenie "popupa". Jeśli coś zapobiegnie akcji domyślnej, "popup" nie zostanie wyświetlony. Domyślnej akcji możemy zapobiec dzięki znajdującej się w obiekcie zdarzenia metodzie preventDefault. Przykład jej zastosowania poniżej.

+ +

Przykład 3 : Źródła Podgląd

+ +
<button label="Types" type="menu">
+  <menupopup onpopupshowing="event.preventDefault();">
+    <menuitem label="Glass"/>
+    <menuitem label="Plastic"/>
+  </menupopup>
+</button>
+
+ +

Zauważmy, że zapobieganie domyślnym akcjom, to nie to samo co zatrzymywanie propagacji zdarzenia przy użyciu metody stopPropagation. Nawet w przypadku kiedy zapobiegnięto domyślnej akcji, zdarzenie będzie nadal kontynuowało swoją propagację. Podobnie, wywoływanie metody stopPropagation, nie zapobiegnie domyślnej akcji. W celu zatrzymania przed zajściem obu tych akcji, należy wywołać obie powyższe metody.

+ +

Warto zaznaczyć, że kiedy zapobiegniemy propagacji lub akcji domyślnej, żadna z nich nie będzie w już stanie być uruchomiona ponownie dla danego wydarzenia.

+ +

The following sections list some of the events that may be used. A full list is provided in the XULPlanet event reference.

+ +

Zdarzenia myszy

+ +

Jest tu kilka zdarzeń, które mogą być użyte do obsługi myszki i jej określonych akcji, które są opisane pokrótce poniżej:

+ +
+
click 
+
Wywoływany, kiedy przycisk myszy zostanie naciśnięty i zwolniony nad elementem.
+
+ +
+
dblclick 
+
Wywoływana, kiedy przycisk myszy zostanie naciśnięty dwukrotnie.
+
+ +
+
mousedown 
+
Wywoływana, kiedy przycisk myszy jest naciśnięty nad elementem. Obsługa zdarzenia będzie wywoływana jak tylko przycisk zostanie naciśniety, nawet jeśli nie został jeszcze zwolniony.
+
+ +
+
mouseup 
+
Wywoływana, kiedy przycisk myszy zostanie zwolniony na elemencie.
+
+ +
+
mouseover 
+
Wywoływana kiedy wskaźnik myszy zostanie przeniesiony nad element. Można ją wykorzystywać w celu podświetlania elementu, jednakże CSS umożliwia to automatycznie, więc lepiej nie wykonywać tego z pomocą zdarzeń. Można jednak, wykorzystywać to do wyświetlania tekstu pomocy w pasku statusu.
+
+ +
+
mousemove 
+
Wywoływana, kiedy wskaźnik myszy zostanie poruszony nad elementem. Zdarzenie to może być wywoływane wiele razy, w chwili w której użytkownik porusza myszą, więc należy
+
+ +

unikać obsługi nią długotrwałych zadań.

+ +
+
mouseout 
+
Wywoływana, kiedy wskaźnik myszy rozstanie przesunięty poza element. Można to wykorzystać do usunięcia podświetlenia elementu lub usunięcia tekstu pomocy paska statusu.
+
+ +

There are also a set of drag related events, which occur when the user holds down a mouse button and drags the mouse around. Those events are described in Przeciągnij i upuść.

+ +

Istnieje także zestaw zdarzeń związanych z funkcja drag, które mają miejsce w chwili kiedy, użytkownik przytrzymując wciśnięty przycisk myszy ciągnie (drag) mysz. Zostaną one opisane w późniejszej sekcji związanej z funkcjami drag i drop.

+ +

Własności zdarzenia przycisku myszy

+ +

Kiedy zachodzą zdarzenia związane z przyciskiem myszy, mamy dostęp do różnego typu dodatkowych własności, które są w stanie określić który przycisk myszy został wciśnięty lub dokładną lokalizację miejsca w którym znajduje się wskaźnik myszy. Własności zdarzenia związanego z przyciskiem, mogą zostać użyte w celu określenia, który przycisk został wciśnięty, gdzie dostępne wartości to 0 dla lewego przycisku, 1 dla prawego i 2 dla środkowego. Jeśli mysz jest skonfigurowana inaczej, wartości mogą się zmienić.

+ +

Szczegółowe własności (detail) przechowują wartość mówiącą, ile razy przycisk został szybko wciśnięty w pewnej sekwencji. Pozwala to sprawdzić czy przycisk został raz, dwa lub trzy razy wciśnięty. Oczywiście, jeśli chcesz tylko sprawdzić podwójne kliknięcia można użyć w zastępstwie zdarzenia dblclick. Zdarzenie wciśnięcia będzie uruchamiane w chwili pierwszego wciśnięcia przycisku, jak również drugiego oraz trzeciego. Zdarzenie dblclick natomiast, będzie uruchamiane jednorazowo dla podwójnego wciśnięcia przycisku myszy.

+ +

Własności przycisku oraz własności detail stosują się tylko do obsługi zdarzeń powiązanych z przyciskami myszy, a nie jej ruchem. Dla zdarzeń związanych z ruchem myszy, obie własności będą miały wartość 0.

+ +

Własności zdarzenia pozycji myszy

+ +

Jednak, wszystkie zdarzenia związane z obsługą myszy, będą posiadały dołączone własności przetrzymujące położenie myszy, w chwili zajścia zdarzenia. Istnieją dwa zestawy kordynatów położenia. Pierwszy to własności screenX i screenY i są w odniesieniu do lewego, górnego rogu ekranu. Drugi zestaw, clientX i clientY, istnieją w odniesieniu do lewego, górnego rogu dokumentu. Poniżej pokazany jest przykład wyświetlający aktualne położenie myszy:

+ +

Przykład 4 : Źródła Podgląd

+ +
<script>
+
+function updateMouseCoordinates(event){
+  var text = "X:" + event.clientX + " Y:" + event.clientY;
+  document.getElementById("xy").value = text;
+}
+</script>
+
+<label id="xy"/>
+<hbox width="400" height="400" onmousemove="updateMouseCoordinates(event);"/>
+
+ +

W tym przykładzie, rozmiar ramki został wyspecyfikowany, w celu podkreślenia efektu. Obsługa zdarzenia pobiera własności clientX i clientY, a następnie tworzy dla nich string. Ten string jest przypisany do własności value danej etykiety. Warto zaznaczyć, że argument zdarzenia musi być przekazany do funkcji updateMouseCoordinates. Jeśli poruszysz szybko myszą, nad granicą ramki możesz zauważyć, że wartości położenia nie zatrzymują się idealnie na wartości 400. Jest to spowodowane zdarzeniem mousemove, które pojawia się w pewnym odstępie czasu po przekroczeniu granicy. Im szybciej poruszała się mysz tym większa będzie różnica między teoretycznie poprawną wartością, a tym co zwrócą nam wartości clientX i clientY.

+ +

Element Relative Coordinates

+ +

W większości przypadków będziemy woleli pobrać koordynaty zdarzenia w odniesieniu do elementu, nie zaś całego okna. Wartości te można otrzymać poprzez, odjęcie pozycji elementu od pozycji zdarzenia. Przykład poniżej.

+ +
var element = event.target;
+var elementX = event.clientX - element.boxObject.x;
+var elementY = event.clientY - element.boxObject.y;
+
+ +

Elementy XUL posiadają obiekty ramek, które mogą być odzyskiwane za pomocą własności boxObject. Więcej informacji na ten temat znajdziemy w kolejnej sekcji, jednak co warto powiedzieć już teraz to, że wspomniana własność przechowuje informacje określającą jak wyświetlany jest element, włączając jego koordynaty x i y. W poniższym przykładzie, wspomniane koordynaty zostaję odjęte od koordynatów zdarzenia. Operacja ta daje nam pozycję zdarzenia w odniesieniu do elementu.

+ +

Zdarzenia wczytywania

+ +

Zdarzenie wczytywania jest wysyłane do dokumentu (znacznika window), kiedy tylko plik XUL zakończy wczytywanie i zaraz przed wyświetleniem zawartości. To zdarzenie jest bardzo często używane do inicjacji pól i wykonywania innych zadań które wymagają być zrobione przed tym jak użytkownik będzie używał okna. Należy używać zdarzenia wczytywania, aby wykonywać tego typu rzeczy dodając skrypt na górnym poziomie na zewnątrz funkcji. Wymagane to jest ze względu na to że elementy XUL mogą być jeszcze niewczytane lub nie w pełni zainicjowane, ze względu na co niektóre rzeczy mogą nie działać tak jak powinny. W celu użycia zdarzenia wczytywania, umieść atrybut onload w znaczniku window. Wywołaj kod wewnątrz obsługi zdarzenia wczytywania, który zainicjuje potrzebny interfejs.

+ +

Istnieją także zdarzenia przeciwne do wczytywania (unload), które są wywoływane w trakcie zamykania okna lub w kontekście przeglądarki, kiedy strona jest przełączana na kolejny adres URL. Możemy wykorzystywać to zdarzenie do zapisania jakichkolwiek informacji.

+ +

W następnym artykule dowiemy się jak dodać dodawać skróty klawiaturowe.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie/index.html b/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie/index.html new file mode 100644 index 0000000000..2a7783d02e --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie/index.html @@ -0,0 +1,73 @@ +--- +title: Wprowadzenie +slug: Mozilla/Tech/XUL/Kurs_XUL/Wprowadzenie +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Introduction +--- +

+

Następny »

+

+ +

Ten kurs pomoże Ci nauczyć się XUL (XML User Interface Language) (język opisu interfejsu użytkownika XML), wieloplatformowego języka opisującego interfejs użytkownika.

+ +

Kurs pokazuje, jak stworzyć prosty interfejs w postaci okna Znajdź pliki, wyglądającego podobnie jak okno w programie Sherlock na Macintoshu lub okienko dialogowe w Windows. Utworzony zostanie tylko interfejs użytkownika o nieco ograniczonej funkcjonalności. Faktyczne wyszukiwanie plików nie zostanie w nim zaimplementowane. Czytając po kolei poszczególne artykuły kursu, dowiemy się, jak utworzyć okienko dialogowe Znajdź pliki.

+ +

Czym jest XUL i po co został stworzony

+ +

XUL (wym. "zool" i rymuje się z "cool") stworzony został w celu uproszczenia i przyspieszenia rozwoju przeglądarki Mozilla. Jest językiem opartym na języku XML (Extensible Markup Language), w związku z czym wszystkie dostępne własności języka XML są także dostępne w języku XUL.

+ +

Większość aplikacji musi być rozwijana na bazie własności konkretnych platform, co niesie za sobą duże nakłady czasu i kosztów. Mimo że dla części użytkowników nie jest to istotne, inni mogą chcieć używać aplikacji na innych urządzeniach, takich jak urządzenia przenośne lub urządzenia typu set-top box.

+ +

W przeszłości stworzono wiele rozwiązań wieloplatformowych. Java, na przykład, szczyci się swoją możliwością przenoszenia pomiędzy różnymi systemami. XUL jest jednym z takich języków, zaprojektowanych do tworzenia przenośnych interfejsów użytkownika.

+ +

Budowa aplikacji zajmuje dużo czasu, nawet dla jednej tylko platformy. Wiele czasu wymaga też kompilacja i debugowanie. Dzięki XUL interfejs można implementować i modyfikować szybko i w prosty sposób.

+ +

XUL posiada wszystkie zalety języka XML, więc XHTML lub inny język oparty na XML, jak MathML (Math Markup Language) czy  SVG ("Scalable Vector Graphics), może być do niego bezpośrednio włączony. Ponieważ tekst wyświetlany z XUL jest wpisany wprost, oznacza to, że łatwo i przy małym nakładzie pracy może zostać przetłumaczony na inny język.

+ +

Do modyfikacji wyglądu interfejsu użytkownika można wykorzystać arkusze stylów CSS (w podobny sposób, jak w odtwarzaczu WinAmp, na menedżery okien nakłada sięskórki).

+ +

Jakie rodzaje interfejsu użytkownika mogą być stworzone w XUL

+ +

XUL pozwala na tworzenia większości elementów znanych ze współczesnych interfejsów graficznych. Jest wystarczająco ogólny, aby mógł być dostosowany do specjalnych potrzeb na niektórych urządzeniach, a jednocześnie wystarczająco potężny, by programiści mogli dzięki niemu tworzyć rozbudowane interfejsy.

+ +

W XUL można utworzyć m.in.:

+ + + +

przy liście, jeżeli stosujemy dużą literę na początku musimy dać na koniec kropkę, ew. nie stawiać nic. przecinki i kropke na końcu listy można stosować, jeśli kolejne wypunktowania zaczynamy małą literą

+ +

Wyświetlaną zawartość można utworzyć z treści pliku XUL lub z danych z tzw. źródła danych. W Mozilli takimi źródłami danych mogą być: skrzynka pocztowa użytkownika, jego zakładki i wyniki wyszukiwania. Zawartość menu, drzew i innych elementów może być wypełniana tymi danymi lub danymi dostarczonymi w pliku RDF (Resource Description Framework).

+ +

Zawartość XUL jest zwykle ładowana z pakietu zainstalowanego w Mozilli. Pakiet taki pozwala aplikacji na dodatkowe uprawnienia, takie jak odczyt plików lokalnych i modyfikację preferencji użytkownika. Pliki XUL i powiązane z nimi skrypty oraz obrazki danej aplikacji są pakowane do jednego pliku, który użytkownik może pobrać i zainstalować. Mozilla dostarcza środki do instalowania i rejestrowania takich pakietów bez potrzeby pisania dużej ilości złożonego kodu. Ponadto pakiety te mogą się nakładać na przeglądarkę lub inną aplikację, rozszerzając ich możliwości. W ten sposób działają rozszerzenia Firefoksa.

+ +

Możliwe jest także otwarcie plików XUL bezpośrednio z systemu plików lub ze zdalnej witryny internetowej. Wówczas jednak niektóre ich możliwości zostaną ograniczone, przez co niektóre elementy XUL nie będą działać. Jeśli mimo to będziesz chciał załadować zawartość XUL ze zdalnej strony internetowej, serwer WWW musi być odpowiednio skonfigurowany, tj. wysyłać pliki XUL z typem MIME application/vnd.mozilla.xul+xml. XUL jest zwykle przechowywany w plikach z rozszerzeniem .xul. Możesz otworzyć plik XUL w Mozilli tak samo, jak każdy inny plik, używając menu Plik i wybierając polecenie Otwórz plik... lub wpisując adres URL do paska adresu.

+ +

Co powinieneś wiedzieć, by posługiwać się tym kursem

+ +

Powinieneś dobrze znać język HTML (HyperText Markup Language) i orientować się w podstawach języków XML oraz CSS (Cascading Style Sheets). Oto kilka wskazówek, które należy wziąć pod uwagę:

+ + + +

Można także dołączać dodatkowe pliki, jak np. obrazki lub dane wykorzystywane w zależności od platformy systemowej.

+ +

XUL jest obsługiwany przez Mozillę i inne przeglądarki oparte na silniku Gecko, np. przez Netscape 6 (i nowsze) oraz Mozillę Firefox. Z powodu ciągłych zmian w składni języka XUL, niezbędna będzie jego najnowsza wersja, by przykłady z tego przewodnika działały poprawnie. Większość z podanych tutaj przykładów powinna działać w Mozilli 1.0 i nowszych. W Firefoksie i innych przeglądarkach XUL jest prawie identyczny, choć istnieje kilka dość specyficznych różnic, takich jak obsługa dostosowywanych pasków narzędzi.

+ +

W kursie tym próbujemy zaprezentować większość możliwości języka XUL, nie wszystkie jednak mogły zostać w tym miejscu omówione. Gdy już zaznajomisz się z językiem XUL, zapraszamy do skorzystania z dokumentacji XUL, aby poznać pozostałe własności poszczególnych elementów.

+ +

+

Następny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_rdf/index.html b/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_rdf/index.html new file mode 100644 index 0000000000..d3fe523f6d --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_rdf/index.html @@ -0,0 +1,138 @@ +--- +title: Wprowadzenie do RDF +slug: Mozilla/Tech/XUL/Kurs_XUL/Wprowadzenie_do_RDF +tags: + - Kurs_XUL + - Przewodniki + - RDF + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XUL +--- +

+

« PoprzedniNastępny »

+
W artykule tym, poznamy RDF (Resource Description Framework).

+ +

Resource Description Framework

+ +

Możemy użyć trzech elementów do wyświetlenia ustawień danych, także zakładek i wiadomości e-mail. Jednakże, był by to niewygodny sposób na wprowadzenie danych do pliku XUL. To było by trudne, aby zmodyfikować zakładki jeśli one by były bezpośrednio w pliku XUL. Rozwiązaniem jest użycie kodu źródłowego RDF.

+ +

RDF (Resource Description Framework) jest formatem, który potrafi być stosowany jako źródło do takich rzeczy jak wiadomość e-mail lub zakładki. Alternatywne dane w innych formatach możemy użyć i zapisać do pliku do odczytu, aby utworzyć dane RDF. Tak się dzieje podczas czytania danych przez pracującą Mozillę, służącą do odczytywania takich list ulubionych czy historii lub wiadomości e-mail. Mozilla dostarcza kod źródłowy dla tymczasowych danych więc będzie można prosto z nich korzystać.

+ +

Możesz używać dostarczonego źródła RDF do promocji drzew z danymi lub wskazywać RDF na plik magazynowania w XML-u, który stanowi dane. Robiąc ...

+ +

Możesz użyć jakiś dostarczony kod źródłowy do zwiększenia ilości drzew z danymi lub wskaż plik RDF będący magazynem w XML-u, który powstrzyma dane. Zrobi się to wtedy bardzo wygodne do przeglądania drzew z niemałą liczbą wierszy w niej. RDF potrafi także zapełniać inne elementy XUL równie dobrze tak jak listboxy i menu. Zobaczymy to w następnej sekcji.

+ +

Jest tu dostarczony bardzo krótki ogólny przegląd plików RDF. Dla większych szczegółów jest przewodnik po RDF, przeczytaj Instrukcja modelu RDF, na XULPlanet. Jest to zalecane do czytania, jeśli dopiero zaczynasz z RDF. Zobacz niektóre przykłady plików RDF/XML, popatrz na te dostarczone przez Mozillę. Mają one rozszerzenie rdf.

+ +

RDF/XML

+ +

RDF stanowi model lub bazę danych, która jest reprezentowana w formie grafu. RDF/XML jest językiem XML-a, który może być użyty do reprezentacji danych RDF. Stanowi to dość proste ustawienie elementów. Przykład poniżej pokazuje szablon RDF.

+ +
<?xml version="1.0"?>
+<RDF:RDF
+  xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+  ...
+</RDF:RDF>
+
+ +

Mają one podobieństwa do nagłówków XUL. Wewnątrz elementu window, jest użyty element RDF. Widzimy przestrzeń nazw dla RDF, które było deklarowane więc tak elementy RDF organizują własności. Wewnątrz elementu RDF, wprowadź dane.

+ +

Baza danych RDF

+ +

Krótki opis RDF, zostanie tutaj dodany. Dla większości informacji o RDF, zobacz specyfikację RDF. Uzyskajmy przykład generowania listy zakładek z RDF. Lista zakładek stanowi ustawienie rekordów, każdy z ustawieniem łączenia danych, takie jak URL-e, tytuł zakładki i data wizyty.

+ +

Pomyśl o zakładkach jako o bazie danych, które są magazynowane jako duże tabele z ponumerowanymi plikami. W tym przypadku RDF, jednakże lista może być hierarchiczna jako dobar. To jest aktówka więc tak jak mamy w posiadaniu foldery kategorii pełne zakładek. Każdy z plików w bazie danych RDF jest źródłem, każdy z nazwą łączy się z nim. Nazwa jest opowiadane poprzez URI.

+ +

Na przykład zaznaczamy pole zakładki Mozilli i lista URI jest opisana poniżej

+ + + + + + + + + + + + + + + + + + + + + + + + +
Namehttp://home.netscape.com/NC-rdf#NameNazwa zakładki
URLhttp://home.netscape.com/NC-rdf#URLURL do zlinkowania
Descriptionhttp://home.netscape.com/NC-rdf#DescriptionOpis zakładki
Last Visitedhttp://home.netscape.com/WEB-rdf#LastVisitDateData ostatniej wizyty
+ +

Te są generowane pobierając nazwę miejsca położenia i dołączenie nazwy pola. W następnym rozdziałem, zobaczymy w jaki sposób możemy automatycznie wykonać wypełnienie pola. Nota jest ostatnimi modyfikowanymi danymi posiadającymi nieznacznie inne pole nazwy, niż cała reszta.

+ +

RDF/XML file example

+ +

Poniżej znajduje się przykład pliku RDF/XML, ustawiono tablicę z trzema dowodami i trzema polami.

+ +
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+         xmlns:ANIMALS="http://www.some-fictitious-zoo.com/rdf#">
+
+  <RDF:Seq about="http://www.some-fictitious-zoo.com/all-animals">
+    <RDF:li>
+       <RDF:Description about="http://www.some-fictitious-zoo.com/mammals/lion">
+         <ANIMALS:name>Lion</ANIMALS:name>
+         <ANIMALS:species>Panthera leo</ANIMALS:species>
+         <ANIMALS:class>Mammal</ANIMALS:class>
+       </RDF:Description>
+    </RDF:li>
+    <RDF:li>
+       <RDF:Description about="http://www.some-fictitious-zoo.com/arachnids/tarantula">
+         <ANIMALS:name>Tarantula</ANIMALS:name>
+         <ANIMALS:species>Avicularia avicularia</ANIMALS:species>
+         <ANIMALS:class>Arachnid</ANIMALS:class>
+       </RDF:Description>
+    </RDF:li>
+    <RDF:li>
+       <RDF:Description about="http://www.some-fictitious-zoo.com/mammals/hippopotamus">
+         <ANIMALS:name>Hippopotamus</ANIMALS:name>
+         <ANIMALS:species>Hippopotamus amphibius</ANIMALS:species>
+         <ANIMALS:class>Mammal</ANIMALS:class>
+       </RDF:Description>
+    </RDF:li>
+  </RDF:Seq>
+</RDF:RDF>
+
+ +

Tutaj, trzy rekordy zostały opisane, jeden dla każdego zwierzęcia. Każdy tag RDF:Description opisuje pojedynczy rekord. Wewnątrz każdego rekordu, trzy pola są opisane, name, species i class. To nie jest konieczne dla wszystkich rekordów posiadających te same pola.

+ +

Każde z trzech pól posiada przyporządkowaną nazwę ANIMALS URL, który jest zadeklarowany w tagu RDF. Nazwy zostały po selekcjonowane, ponieważ ma to znaczenie w tym przypadku, lecz my możemy poseleekcjonować coś innego. Cechą nazwy feature is useful because the class field might conflict with that used for styles.

+ +

Elementy Seq i li są używane do specyficznych rekordów ,które są na liście. This is much like how HTML lists are declared. Seq element is used to indicate that the elements are ordered, or in sequence. Instead of the Seq element, you can also use Bag to indicate unordered data, i Alt to indicate data where each record specifies alternative values (such as mirror URLs).

+ +

The resources can be referred to in a XUL file by combining the namespace URL followed by the field name. In the example above, the following URIs are generated which can be used to refer to the specific fields:

+ + + + + + + + + + + + + + + + +
Namehttp://www.some-fictitious-zoo.com/rdf#name
Specieshttp://www.some-fictitious-zoo.com/rdf#species
Classhttp://www.some-fictitious-zoo.com/rdf#class
+ +

Następnie zobaczymy jak stosować RDF do promocji elementów XUL.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_xbl/index.html b/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_xbl/index.html new file mode 100644 index 0000000000..c0690c246d --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/wprowadzenie_do_xbl/index.html @@ -0,0 +1,100 @@ +--- +title: Wprowadzenie do XBL +slug: Mozilla/Tech/XUL/Kurs_XUL/Wprowadzenie_do_XBL +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XBL + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Introduction_to_XBL +--- +

+

« PoprzedniNastępny »

+

+ +

Język XUL posiada siostrzany język, XBL (eXtensible Bindings Language). Ten język jest stosowany do określania zachowań kontrolek XUL.

+ +

Wiązania

+ +

Języka XUL można używać do definiowania układu (wyglądu) interfejsu przeznaczonego dla użytkownika. Oprawę graficzną elementów można zmieniać za pomocą stylów. Możesz również tworzyć nowe motywy poprzez zmianę stylów. Podstawowy wygląd wszystkich elementów, jak na przykład pasek przewijania i pole wyboru może być modyfikowane przez styl lub przez ustawienie atrybutów elementu.

+ +

Niemniej jednak, XUL nie dostarcza możliwości, dzięki której mógłbyś zmienić sposób pracy wszystkich elementów. Na przykład, chcesz koniecznie zmienić działanie poszczególnych części funkcji scroll bar (paska przewijania). Do tego potrzebujesz języka XBL.

+ +

XUL, XBL jest podobny do języka XML, więc ma podobną składnię. Następujący przykład pokazuje podstawowy szkielet pliku XBL:

+ +
<?xml version="1.0"?>
+<bindings xmlns="http://www.mozilla.org/xbl">
+  <binding id="binding1">
+    <!-- Zawartość, właściwość, metoda i zdarzenia opisujące są tutaj  -->
+  </binding>
+  <binding id="binding2">
+    <!-- Zawartość, właściwość, metoda i zdarzenia opisujące są tutaj  -->
+  </binding>
+</bindings>
+
+ +

The bindings element is the root element of an XBL file and contains one or more binding elements. Each binding element declares a single binding. The id attribute can be used to identify the binding, as in the example above. The template has two bindings, one called binding1 and the other called binding2. One might be attached to a scroll bar and the other to a menu. A binding can be attached to any XUL element. If you use CSS classes, you can use as many different bindings as you need. Note the namespace on the bindings element in the template above. This declares that we are using XBL syntax.

+ +

You assign a binding to an element by setting the CSS property -moz-binding to the URL of the bindings file. For example:

+ +
scrollbar {
+    -moz-binding: url('chrome://findfile/content/findfile.xml#binding1');
+}
+
+ +

The URL points to the binding with the id 'binding1' in the file 'chrome://findfile/content/findfile.xml'. The '#binding1' syntax is used to point to a specific binding, much like how you would point to an anchor in an HTML file. You will usually put all of your bindings in a single file. The result in this example, is that all scrollbar elements will have their behavior described by the binding 'binding1'.

+ +

Wiązanie posiada pięć typów, które możemy zadeklarować:

+ +
    +
  1. Content: child elements that are added to the element that the binding is bound to.
  2. +
  3. Properties: properties added to the element. They can be accessed through a script.
  4. +
  5. Methods: methods added to the element. They can be called from a script.
  6. +
  7. Events: events, such as mouse clicks and keypresses that the element will respond to. The binding can add scripts to provide default handling. In addition new events can be defined.
  8. +
  9. Style: custom style properties that the XBL defined element has.
  10. +
+ +

Przykład wiązania

+ +

Element box jest generowany wystarczająco tak jak możesz użyć do utworzenia elementu graficznego (poprzez to możesz użyć jakikolwiek element, nawet jeden zrobiony dla siebie). Przydzielając do class tagu box, możesz łączyć oprawy tylko do tych do których należą te klasy. Następujący przykład demonstruje to.

+ +
XUL (example.xul):
+
+<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<?xml-stylesheet href="chrome://example/skin/example.css" type="text/css"?>
+
+<window
+     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+  <box class="okcancelbuttons"/>
+</window>
+
+CSS (example.css):
+
+box.okcancelbuttons {
+    -moz-binding: url('chrome://example/skin/example.xml#okcancel');
+}
+
+XBL (example.xml):
+
+<?xml version="1.0"?>
+<bindings xmlns="http://www.mozilla.org/xbl"
+         xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+  <binding id="okcancel">
+    <content>
+      <xul:button label="OK"/>
+      <xul:button label="Cancel"/>
+    </content>
+  </binding>
+</bindings>
+
+ +

Ten przykład tworzy okno z pojedynczym pudełkiem. Pudełko zostało zadeklarowane dla class z okcancelbuttons. Arkusz stylów łączy nazwę pliku, którego pola z klasą okcancelbuttons ma specjalne łączenie, definiując w pliku XBL. Możesz użyć inne elementy w dodatku box, będący Twoim własnym znacznikiem:

+ +

We'll look more at the details of the XBL part in the next section. However, to summarize, it causes two buttons to be added automatically inside the box, one an OK button and the other a Cancel button. W następnym artykule, zobaczymy jak utworzyć treść korzystając się z XBL.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/wyskakuj\304\205ce_menu/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/wyskakuj\304\205ce_menu/index.html" new file mode 100644 index 0000000000..e5ccc54615 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/wyskakuj\304\205ce_menu/index.html" @@ -0,0 +1,196 @@ +--- +title: Wyskakujące menu +slug: Mozilla/Tech/XUL/Kurs_XUL/Wyskakujące_menu +tags: + - Kurs_XUL + - Przewodniki + - Strony_wymagające_dopracowania + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Popup_Menus +--- +

+

« PoprzedniNastępny »

+

+ +

W poprzednim artykule zobaczyliśmy jak utworzyć menu na pasku menu. Język XUL także posiada możliwości utworzenia wyskakujących menu (popup menus ), które są zazwyczaj wyświetlane w momencie kiedy użytkownik naciśnie prawy przycisk myszy.

+ +

Tworzenie wyskakującego menu

+ +

XUL posiada trzy różne rodzaje wyskakujących okienek (popups), które zostały opisane poniżej. Główną różnicą pomiędzy nimi jest sposób ich wyświetlania:

+ +
+
Zwykły popup (plain popup
+
Wyskakujące menu pojawiające się po naciśnięciu lewego przycisku myszy na elemencie. Jest podobne do menu na pasku menu, tyle tylko że może zostać umieszczone w dowolnym miejscu oraz zawierać dowolne elementy. Przykładem jest menu pojawiające po naciśnięciu przycisku Wstecz w przeglądarce.
+
+ +
+
Menu kontekstowe (context popup
+
Pojawia się po naciśnięciu kontekstowego przycisku myszy. Najczęściej jest to prawy przycisk, czasami inny lub z kombinacją innych klawiszy. Na przykład na Macintoshu należy użyć klawisza Ctrl oraz przycisku myszy lub przytrzymać przycisk przez chwilę. Możliwe jest także otworzenie menu kontekstowego bez użycia myszy, na przykład poprzez naciśnięcie klawisza menu na klawiaturze.
+
+ +
+
Podpowiedzi (tooltips
+
Wyskakujące okienko pojawiające się kiedy użytkownik najedzie myszką na element. Stosuje się je zazwyczaj w celu dostarczenia dodatkowych informacji o danym elemencie.
+
+ +

Wszystkie one różnią się sposobem wywołania. Mimo że mogą zawierać dowolną zawartość, dwa pierwsze zazwyczaj mają w sobie menu, a trzeci to najczęściej po prostu tekst. Rodzaj popupa określa się poprzez element go wywołujący.

+ +

Deklarowanie zawartości wyskakującego okienka

+ +

Wyskakujące okienko opisuje zastosowanie elementu menupopup. Nie posiada określonych atrybutów i jest typem pudełka. Podczas wywołania wyświetli okienko zawierające to co umieścimy we wnętrzu menupopup. Jednakże, powinniśmy zawsze umieszczać atrybut id w menupopup jako powiązanie z elementem wyskakującego okienka (popup). Zobaczmy, co to oznacza wkrótce. Najpierw, przykład:

+ +
<popupset>
+  <menupopup id="clipmenu">
+    <menuitem label="Wytnij"/>
+    <menuitem label="Kopiuj"/>
+    <menuitem label="Wklej"/>
+  </menupopup>
+</popupset>
+
+ +

Jak widać, zostało stworzone proste menu wyskakujące z trzema komendami. Element menupopup otacza trzy pozycje menu. Należy zwrócić uwagę, że id został ustawiony na element menupopup.

+ +

Deklaracja menu wyskakującego okienka została cała otoczona przez element popupset. Jest to opcjonalnym kontenerem na wyskakujących okienek. Nie jest on rysowany na ekranie, lecz jest używany jako miejsce deklaracji wszystkich wyskakujących okienek. Może on zawierać wiele menu wyskakujących, jeden pod drugim. Zazwyczaj w pliku popupset jest zadeklarowany tylko raz, chociaż nic nie stoi na przeszkodzie aby zrobić to wiele razy.

+ +

As the name <code>popupset</code> implies, you can put multiple popup declarations inside it. Just add additional ones after the first <code>menupopup</code> element. You can have more than one <code>popupset</code> in a file, but usually you will have only one.

+ +

Powiązanie wyskakującego okienka z elementem

+ +

Teraz po utworzeniu wyskakującego okna należałoby je pokazać. W tym celu musimy powiązać wyskakujące okno z elementem, gdzie powinno się ukazać. Dokonujemy tego w celu pokazania okna tylko wtedy, gdy użytkownik kliknie w danym obszarze okna. Przeważnie będzie to dany przycisk lub pudełko.

+ +

Popup po utworzeniu może zostać wyświetlony. Aby pojawił się w określonym położeniu, należy go połączyć z odpowiednim elementem (najczęściej z przyciskiem lub pudełkiem elementu ). W tym celu należy do danego elementu dodać jeden z trzech atrybutów, każdy odpowiadający odpowiedniemu rodzajowi popupa. Są to: popup - zwykły popup context - kontekstowy tooltip - podpowiedź

+ +

Wartość atrybutu musi być ustawiona na id menupopup, które chcemy, aby się pojawiło. Dlatego właśnie każde z wyskakujących okienek musi posiadać id. W ten bardzo prosty sposób, możemy mieć wiele wyskakujących menu w jednym pliku.

+ +

W powyższym przykładzie zostaje utworzone menu kontekstowe. Następnie jest ono dołączone do pudełka elementu.

+ +

In the example above, we want to make the popup a context menu. That means that we need to use the <code>context</code> attribute and add it to the element which we want to have the popup associated with. The sample below shows how we might do this:

+ +


+ Przykład 1 : Źródła Podgląd

+ +
grafika:popups-ex1.png
+ +
<popupset>
+  <popup id="clipmenu">
+    <menuitem label="Wytnij"/>
+    <menuitem label="Kopiuj"/>
+    <menuitem label="Wklej"/>
+  </popup>
+</popupset>
+
+<box context="clipmenu">
+  <description value="Kliknięcie kontekstowe dla menu"/>
+</box>
+
+ +

Jak widać, menu kontekstowe zostało powiązane z pudełkiem. Jeśli zostanie on kliknięty kontekstowym przyciskiem myszy (najczęściej prawym), pojawi się popup. Stanie się tak również po kliknięciu w jego dziecko (element description w naszym przykładzie). Dzięki temu, że menu dołącza się za pomocą atrybutu context do danego elementu poprzez jegoid , może być on użyty z wieloma obiektami. W tym wypadku pojawi się popup clipmenu.

+ +

Here, the popup has been associated with a box. Whenever you context-click (right-click) anywhere inside the box, the popup menu will appear. The popup will also appear even if you click on the children of the box, so it will work if you click on the <code>description</code> element also. The <code>context</code> attribute has been used to associate the box with a popup with the same id. In this case, the popup <code>clipmenu</code> will appear. This way, you can have a number of popups and associate them with different elements. You could associate multiple popups with the same element by putting more attributes of different types on an element. You could also associate the same popup with multiple elements, which is one advantage of using the popup syntax. Popups can only be associated with XUL elements; they cannot be associated with HTML elements.

+ +

Podpowiedzi

+ +

Dowiemy się w jaki sposób prosto stworzyć podpowiedź. Są dwa sposoby na utworzenie podpowiedzi. Prostsza i zarazem pierwsza możliwość to dodanie atrybutu tooltiptext do elementu, do którego chcemy załączyć podpowiedź.

+ +

Druga możliwość to użycie elementu typu tooltip zawierającego treść podpowiedzi. Wymaga to oddzielnego bloku kodu dla każdej podpowiedzi lub skryptu generującego zawartość podpowiedzi. Zaletą takiego rozwiązania jest to, że można zawrzeć w niej dowolną treść.

+ +

The second method is to use a <code>tooltip</code> element containing the content of a tooltip. This requires you to have a separate block of content for each tooltip or to have a script which sets the content. However, it does allow you to use any content besides text in a tooltip.

+ +

Przykład 2 : Źródła Podgląd

+ +
<button label="Zapisz" tooltiptext="Kliknij tutaj, aby zapisać swoją zawartość"/>
+
+<popupset>
+  <tooltip id="moretip" orient="vertical" style="background-color: #33DD00;">
+    <description value="Kliknij tutaj, aby dowiedzieć się więcej"/>
+    <description value="Naprawdę!" style="color: red;"/>
+  </tooltip>
+</popupset>
+
+<button label="Więcej" tooltip="moretip"/>
+
+ +

Każdy z tych dwóch przycisków posiada podpowiedź. Pierwszy stosuje domyślny styl podpowiedzi, natomiast drugi posiada styl nadany przez użytkownika, mający inny kolor tła oraz styl czcionki. Podpowiedź przyporządkowana została wraz przyciskiem Więcej za pomocą atrybutu tooltip, który jest ustawiony do przesłania na wartość id elementu tooltip. Zauważ, że element tooltip jest wciąż umieszczony wewnątrz elementu popupset, podobnie jak inne typy wyskakujących okienek (popup).

+ +

powyżej fragment - zrobiony

+ +

Wyrównywanie okienek

+ +

Domyślnie okienko wyskakujące (popup ) oraz kontekstowe (context window ) zostaną wyświetlone tam gdzie znajduje się wzkaźnik myszy. Podpowiedź (tooltip ) pojawi się trochę poniżej elementu aby nie był zasłonięty przez wzkaźnik myszy. Czasami jednak zdarza się potrzeba większej kontroli nad miejscem wyświetlania okienka wyskakującego, na przykład menu które pojawia się po naciśnięciu przycisku Wstecz powinno pojawić się pod nim, a nie w miejscu gdzie znajduje się wzkaźnik myszy.

+ +

W tym celu można użyć dodatkowego atrybutu elementu popup - position. Można go również dodać do elementu typu menupopup. Jest on używany w celu ustawienia miejsca wyświetlania okienka względem elementu go wywołującego. Posiada kilka zdefiniowanych wartości, krótko opisanych poniżej:

+ +
+
after_start 
+
popup pojawi się poniżej elementu, wyrównanie wzdłuż lewych krawędzi. Popup zostanie rozszerzony po prawej stronie jeśli jest większy niż element. W ten sposób wyświetlane jest menu, które pojawia się po naciśnięciu przycisku Wstecz w przeglądarce.
+
after_end 
+
popup pojawi się poniżej elementu, wyrównanie wzdłuż prawych krawędzi.
+
before_start 
+
popup pojawi się powyżej elementu, wyrównanie wzdłuż lewych krawędzi.
+
before_end 
+
popup pojawi się powyżej elementu, wyrównanie wzdłuż prawych krawędzi.
+
end_after 
+
popup pojawi się po prawej stronie elementu, wyrównanie wzdłuż dolnych krawędzi.
+
end_before 
+
popup pojawi się po prawej stronie elementu, wyrównanie wzdłuż górnych krawędzi.
+
start_after 
+
popup pojawi się po lewej stronie elementu, wyrównanie wzdłuż dolnych krawędzi.
+
start_before 
+
popup pojawi się po lewej stronie elementu, wyrównanie wzdłuż górnych krawędzi.
+
overlap 
+
popup pojawi się na elemencie.
+
at_pointer 
+
popup pojawi się w tym samym miejscu, co wzkaźnik myszy.
+
after_pointer 
+
popup pojawi się na takim samym poziomie co wzkaźnik myszy, ale poniżej elementu. W ten sposób zostaje wyświetlona podpowiedź.
+
+ +

Dodając do elementu jeden lub dwa takie atrybuty, można dokładnie określić, gdzie popup powinien się pojawić (nie można określić położenia w pikselach). Atrybutuposition można użyć z wszystkimi typami okienek wyskakujących, ale zazwyczaj nie zmienia się jego wartości dla podpowiedzi.

+ +

Poniższy przykład pokazuje sposób tworzenia przycisku Wstecz wraz z menu wyskakującym:

+ +

Przycisk z menu wyskakującym

+ +

Źródła Podgląd

+ +
<popupset>
+  <popup id="backpopup" position="after_start">
+    <menuitem label="Page 1"/>
+    <menuitem label="Page 2"/>
+  </popup>
+</popupset>
+
+<button label="Pop Me Up" popup="backpopup"/>
+
+ +
+

Nasz przykład: Znajdź pliki

+ +

Dodajmy proste menu wyskakujące do okienka dialogowego Znajdź pliki. Dla przejrzystości zawartość będzie taka sama jak w menu EdycjaZnajdź pliki. Popup pojawi się po kliknięciu pierwszej zakładki:

+ +
<popupset>
+  <popup id="editpopup">
+    <menuitem label="Wytnij" accesskey="t"/>
+    <menuitem label="Kopiuj" accesskey="k"/>
+    <menuitem label="Wklej" accesskey="w" disabled="true"/>
+  </popup>
+</popupset>
+
+<vbox flex="1">
+.
+.
+.
+
+<tabpanel id="searchpanel" orient="vertical" context="editpopup">
+
+ +

Proste menu zostało dodane do pierwszej zakładki. Pojawi się ono po naciśnięciu prawego przycisku myszy (lub z klawiszem Ctrl na Macintoshu) gdziekolwiek na pierwszym panelu, natomiast kliknięcie w innym miejscu nie spowoduje żadnego efektu. Warto zauważyć że 'textbox' posiada swoje własne wbudowane menu, które zastąpi nasze.

+ +

Nasz przykład, okienko dialogowe Znajdź pliki: Źródła Podgląd

+
+ +

W następnym artykule zostaną omówione menu przewijane.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/w\305\202asne_widoki_drzewa/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/w\305\202asne_widoki_drzewa/index.html" new file mode 100644 index 0000000000..d1ac85888d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/w\305\202asne_widoki_drzewa/index.html" @@ -0,0 +1,149 @@ +--- +title: Własne widoki drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Własne_widoki_drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Custom_Tree_Views +--- +

+

« PoprzedniNastępny »

+

+ +

Widok drzewa przetrzymuje dane, które mają być wyświetlone w drzewie.

+ +

Tworzenie własnych widoków

+ +

Dotychczas używaliśmy wbudowanych wyglądów drzewa. W tej sekcji przyjrzymy się tworzeniu własnego wyglądu. Jest to konieczne w sytuacji, gdy ilość danych jest bardzo duża, lub są one kompleksowo zaaranżowane. Na przykład, wydajność była by niezbyt duża w sytuacji gdybyśmy mieli użyć treeitems kilka tysięcy razy. Możesz też tworzyć własny widok w sytuacji, gdy chcesz wykonać obliczenia na danych, które maja być wyświetlone. Ponieważ widok może magazynować i odzyskiwać dane w sposób najbardziej odpowiedni dla użytych danych, drzewo może być użyte nawet setki tysięcy razy.

+ +
Uwaga: The tree-related interfaces changed in Gecko 1.8. Zobacz Tree Widget Changes, aby uzyskać więcej informacji.
+ +

Żeby implementować własny wygląd, będziesz musiał stworzyć obiekt wprowadzający interfejs nsITreeView. Możesz tworzyć te obiekty w JavaScript, ale będziesz potrzebować oddzielnego obiektu dla każdego drzewa. Naturalnie, ponieważ własny widok będzie używany, wbudowany widok nie będzie już używany, więc treeitem, treerow i treecell będą bezużyteczne, ponieważ własny widok będzie otrzymywać dane z innego źródła. Tak więc treechildren może zostać pusty. Przykład:

+ +
<tree id="my-tree" flex="1">
+  <treecols>
+    <treecol id="namecol" label="Name" flex="1"/>
+    <treecol id="datecol" label="Date" flex="1"/>
+  </treecols>
+  <treechildren/>
+</tree>
+
+ +

By wyznaczyć dane do pokazania w drzewie, musi być stworzony obiekt widoku, który jest użyty dla każdej komórki, całkowita liczba wierszy plus inne opcjonalne informacje. Drzewo wywoła metody widoku w celu otrzymania informacji potrzebnych do wyświetlenia.

+ +

Generalnie, chociaż widok drzewa ma około trzydziestu funkcji mogących zostać zaimplementowanymi, musimy je uruchomić tylko jednokrotnie, gdy drzewo ją wywołuje.

+ +
+
rowCount
+
Własność powinna być ustawiona, do ustalenia dla całkowitej liczby wierszy w drzewie.
+
+ +
+
getCellText( row , column )
+
Metoda ta, zwraca tekst zawarty w podanej kolumnie i wierszu. Będzie używana do wyświetlania danych dla każdej komórki. Wiersze podaje się numerycznie, zaczynając od 0. Kolumny, to atrybut id przypisany kolumnom. W Mozilla 1.8 i późniejszych, zamiast tego będzie używany obiekt treeColumn.
+
+ +
+
setTree( tree )
+
Metoda ta, jest wywoływana jednokrotnie, w celu umieszczenia elementu drzewa w widoku.
+
+ +

Tutaj jest przykład definicji takiego obiektu, który może być wywołany, kiedy tylko chcesz:

+ +
//Moz 1.8
+var treeView = {
+    rowCount : 10000,
+    getCellText : function(row,column){
+      if (column.id == "namecol") return "Wiersz "+row;
+      else return "18 luty";
+    },
+    setTree: function(treebox){ this.treebox = treebox; },
+    isContainer: function(row){ return false; },
+    isSeparator: function(row){ return false; },
+    isSorted: function(){ return false; },
+    getLevel: function(row){ return 0; },
+    getImageSrc: function(row,col){ return null; },
+    getRowProperties: function(row,props){},
+    getCellProperties: function(row,col,props){},
+    getColumnProperties: function(colid,col,props){}
+};
+
+ +

Funkcje nieopisane powyżej nie pełnią żadnego zadania, lecz muszą być użyte, gdy drzewo będzie je wywoływać w celu zebrania dodatkowych informacji.

+ +

Ten przykład może zostać użyty dla drzewa z 10000 wierszy. Zawartość komórek pierwszej kolumny będzie wypełniona tekstem Row X, gdzie X jest numerem wiersza. Zawartość komórek drugiej kolumny będzie ustawiona na ‘18 luty’. Warunek if funkcji getCellText() porównuje kolumnę z tekstem ‘namecol’. Tekst ‘namecol’ odpowiada id pierwszego treecol w powyższym przykładzie. Przykład jest oczywiście bardzo prosty, w rzeczywistości miał być bardziej skomplikowane dane w każdej komórce.

+ +

Ostatnim krokiem będzie skojarzenie obiektu widoku z drzewem. Drzewo ma własność view, która może być przyporządkowana do obiektu widoku deklarowanego powyżej. Możemy wyznaczyć wartość tej własności, by w dowolnym czasie, ustawić lub zmienić widok.

+ +

<div class="note">Note: The tree-related interfaces changed in Gecko 1.8. See Tree Widget Changes for details.</div> To implement a custom view, you will need to create an object which implements the nsITreeView interface. You can create these objects in 'JavaScript, but you will need a separate object for each tree. Naturally, since a custom tree view is being used, the content tree view will not be used, so the <code>treeitem</code>, <code>treerow</code>, and <code>treecell</code> elements will have no purpose since the custom view will get its data from elsewhere. Thus, you can just leave the <code>treechildren</code> element empty. The following example shows this:

+ +
function setView()
+{
+    document.getElementById('my-tree').view = treeView;
+}
+
+ +

W celu uproszczenia przykładu, użyto wbudowanego skryptu. Normalnie byłby on umieszczony w zewnętrznym pliku.

+ +

Przykład drzewa użytkownika

+ +

Źródła

+ +
grafika:treeview1.png
+ +
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<window title="Przykład okna" id="tree-window"
+   xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+   onload="setView();">
+
+<script>
+//Moz 1.8
+var treeView = {
+    rowCount : 10000,
+    getCellText : function(row,column){
+      if (column.id == "namecol") return "Row "+row;
+      else return "February 18";
+    },
+    setTree: function(treebox){ this.treebox = treebox; },
+    isContainer: function(row){ return false; },
+    isSeparator: function(row){ return false; },
+    isSorted: function(){ return false; },
+    getLevel: function(row){ return 0; },
+    getImageSrc: function(row,col){ return null; },
+    getRowProperties: function(row,props){},
+    getCellProperties: function(row,col,props){},
+    getColumnProperties: function(colid,col,props){}
+};
+
+function setView(){
+    document.getElementById('my-tree').view = treeView;
+}
+</script>
+
+<tree id="my-tree" flex="1">
+  <treecols>
+    <treecol id="namecol" label="Nazwa" flex="1"/>
+    <treecol id="datecol" label="Data" flex="1"/>
+  </treecols>
+  <treechildren/>
+</tree>
+
+</window>
+
+ +

Na obrazku widoczne są 2 kolumny każda z danymi, pobranymi z funkcji getCellText(). Funkcja setView() była wywołana w operatorze okna onload(), jednak mógłbyś ustawić widok jeżeli tak sobie zażyczysz. Widok możesz zmieniać w dowolnym momencie.

+ +

Rzeczą, którą należy zapamiętać to, to że funkcja getCellText() jest wywoływana tylko kiedy jest potrzeba pokazania zawartości. Z pośród 10000 wierszy powyżej, getCellText() jest uruchamiana tylko dla aktualnie widocznych komórek. Na obrazku jest pokazanych tylko 7 wierszy, ostatni tylko częściowo, więc getCellText będzie wywołana tylko 14 razy, po razie dla każdego wiersza i kolumny. Dla innych wierszy jest uruchamiana w momencie przewijania przez użytkownika. Dzięki temu drzewo działa bardziej efektywnie.

+ +

Zauważ to, że obiekt widoku jest dostępny też dla drzew używających wbudowanego wyglądu. Możesz używać tego by zdobyć etykiety i inne informacje nt. komórki.

+ +

Interfejs nsITreeView listuje wszystkie metody i własności, które możemy zastosować dla widoku drzewa.

+ +

Następnie, zobaczymy więcej szczegółów widoku drzewa.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/zaawansowane_regu\305\202y/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/zaawansowane_regu\305\202y/index.html" new file mode 100644 index 0000000000..1f895144ec --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/zaawansowane_regu\305\202y/index.html" @@ -0,0 +1,219 @@ +--- +title: Zaawansowane reguły +slug: Mozilla/Tech/XUL/Kurs_XUL/Zaawansowane_reguły +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Advanced_Rules +--- +

+

« PoprzedniNastępny »

+

+ +

Artykuł ten, opisuje więcej zaawansowanych zasad składni.

+ +

Pełne zasady składni

+ +

Reguły składni opisującej dotychczas używane były w pewnych ilościach w kodzie źródłowym ale czasami będą potrzebne do wyświetlenia dane w sposób bardziej skomplikowany. Prosta reguła składni jest naprawdę tylko skrótem dla pełnej zasady składni, która jest opisana poniżej. Jak prosta zasada składni, tak i pełna zasada jest umieszczana w obrębie tagu rule.

+ +

Pełne reguły zawierają trzy tagi będące potomnymi, conditions stanami tagu, bindings opraw tagu i action akcji tagu, poprzez bindings tag jest nie zawsze potrzebny.

+ +

Element conditions jest użyty jako specyficzne kryterium odpowiadające dawanych źródeł. Możesz określić liczbę stanów odpowiadającą, wszystkim które muszą odpowiedzieć. W prostej regule składni, stany te są umiejscowione bezpośrednio w rule własnej elementu.

+ +

Jeżeli warunki spotkania odpowiadają zawartości źródła, zawartość ta umieszczona wewnątrz tagu actions jest wygenerowana. W prostej składni, zawartość jest umieszczona bezpośrednio wewnątrz rule.

+ +

Zasady

+ +

Kiedy drzewo, menu lub inny element z kodem źródłowym wygenerują zawartość, budowniczy szablonu pierwszy znajdzie źródło kierując się atrybutem ref. To potem powtarzamy nad całym tym źródłem będącego potomkiem zawartości. Stosuje się to w każdym stanie źródła. Jeśli warunki odpowiadają zawartości źródła, to zawartość w elemencie actions jest generowana dla tego źródła. Jeśli warunki są nie spełnione, zawartość nie jest generowana.

+ +

Element content

+ +

Element conditions może zawierać trzy elementy. Pierwszy do zawartość elementu content, który powinien zawsze występować tylko raz. Służy on za miejsce przechowywania podczas przeglądania zasobów przez budowniczego szablonu. Wyszczególnia on nazwę zmiennej, w której przechowywany jest odnośnik do głównego zasobu ( + + root resource + ), podczas gdy warunki są analizowane w celu dopasowania. Główny zasób jest określony przez atrybut ref w elemencie zawierającym szablon.

+ +

Składnia elementu content zawiera następujący kod:

+ +
<content uri="?var"/>
+
+ +

Znak zapytania oznacza, że następujący potem tekst jest zmienną. Możesz więc użyć zmiennej 'var' wewnątrz pozostałych warunków. Oczywiście możesz nazywać zmienną jak tylko chcesz.

+ +

Element member

+ +

Następujący element jest elementem member, który jest używany do przeglądania zestawu potomnych zasobów. W terminach RDF oznacza to zasobnik taki jak Seq, Bag albo Alt. Powiedzmy, że masz listę miast opisanych w następującym fragmencie RDF/XML:

+ +
<RDF:Seq about="http://www.xulplanet.com/rdf/weather/cities">
+  <RDF:li resource="http://www.xulplanet.com/rdf/weather/city/Paris"/>
+  <RDF:li resource="http://www.xulplanet.com/rdf/weather/city/Manchester"/>
+  <RDF:li resource="http://www.xulplanet.com/rdf/weather/city/Melbourne"/>
+  <RDF:li resource="http://www.xulplanet.com/rdf/weather/city/Kiev"/>
+</RDF:Seq>
+
+<RDF:Description about="http://www.xulplanet.com/rdf/weather/city/Paris">
+  <cityset:name>Paris</cityset:name>
+</RDF:Description>
+
+.
+.
+.
+
+ +

Możesz chcieć wyświetlić element wiersza w drzewie dla każdego opisu. Do zrobienia tego, użyj elementu member jak poniżej:

+ +
<tree id="citiesTree" datasources="weather.rdf"
+      ref="http://www.xulplanet.com/rdf/weather/cities">
+  <template>
+    <rule>
+      <conditions>
+        <content uri="?list"/>
+        <member container="?list" child="?city"/>
+      </conditions>
+    <rule>
+  <template>
+</tree>
+
+ +


+ Budowniczy szablonu rozpoczyna od przechwycenia wartości atrybutu ref, którą w tym przypadku jest http://www.xulplanet.com/rdf/weather/cities. Ten zasób będzie umieszczone w zmiennej 'list', jak zostało ustalone w znaczniku content. Możemy następnie pobrać pokrewne zasoby używając zmiennej 'list'.

+ +

Potem budowniczy szablonu widzi element member. Sprawia on, że budowniczy wędruje przez elementy potomne danego elementu. Element rodzic jest wyszczególniony przez atrybut container, a elementy dzieci - przez atrybut child. W przykładzie powyżej wartość atrybutu container to zmienna 'list'. Z tego wynika, że rodzic będzie wartością zmiennej list, która została ustawiona na główny zasób 'http://www.xulplanet.com/rdf/weather/cities'. Efektem tego będzie przejście przez listę dzieci tego zasobu.

+ +

Jeśli spojrzymy na powyższy RDF zobaczymy, że zasób "http://www.xulplanet.com/rdf/weather/cities" ma czworo dzieci, każdego dla innego miasta. Budowniczy szablonu wędruje przez każdego z nich, dopasowując go do wartości atrybutu dziecka ("child attribute"). W tym przypadku jest to po prostu wartość "city". Tak więc budowniczy wstawi zmienną "city" w miejsce wartości każdego zasobu potomnego.

+ +

Ponieważ nie ma więcej warunków, warunek pasuje do każdego z tych czterech zasobów i budowniczy wygeneruje zawartość dla każdego z tej czwórki. Oczywiście powyższy przykład nie ma żadnej zawartości. Dodamy ją później.

+ +

triple element

+ +

Następnym elementem jest element triple. Jest używany w celu sprawdzenia istnienia danego powiązania (potwierdzenie: prawda/fałsz) w danych źródłowych RDFu. + + Triple + jest jak własność zasobu. Na przykład triple istnieje pomiędzy zakładką a jej adresem URL. Można to przedstawić następująco:

+ +
A Bookmark to mozilla.org  ->  URL  ->  www.mozilla.org
+
+ +

Znaczy to, że jest powiązanie ( + triple + ) pomiędzy zakładką 'A Bookmark to mozilla.org', a 'www.mozilla.org' poprzez własność URL. Pierwsza część tego wyrażenia jest nazwana podmiotem, druga - orzeczeniem, a trzecia to obiekt. Jako element triple wyrażałby się następująco:

+ +
<triple subject="A Bookmark to mozilla.org"
+           predicate="URL"
+           object="www.mozilla.org"/>
+
+ +

Zostało to nieco uproszczone w porównaniu z realnym kodem. Orzeczenie normalnie zawierałoby miejsce na nazwę, a podmiot byłby identyfikatorem id zasobu zakładki, a nie jej tytułem, jak powyżej. W rzeczywistości, tytuł zakładki byłby kolejnym powiązaniem w źródle danych, używanym z orzeczeniem Name.

+ +

Możesz wymienić podmiot i obiekt w elemencie triple na odnośniki zmiennych, a wtedy w miejsce zmiennych wstawione zostaną wartości. Jeśli żadna wartość nie zostanie zdefiniowana dla danej zmiennej, budowniczy szablonu poszuka zmiennej w źródle danych i przypisze ją danej zmiennej.

+ +

Powiedzmy, że chcemy dodać przewidywanie pogody do danych źródłowych miast. Można użyć następujących warunków:

+ +
<conditions>
+  <content uri="?list"/>
+  <member container="?list" child="?city"/>
+  <triple subject="?city"
+             predicate="http://www.xulplanet.com/rdf/weather#prediction"
+             object="?pred"/>
+</conditions>
+
+ +

Budowniczy szablonu będzie wędrował przez każde miasto jak wcześniej. Gdy dojdzie do triple, poszuka potwierdzenia w danych źródłowych RDFu czy istnieją przewidywania pogodowe dla danego miasta. Zmiennej 'pred' zostaną przypisane odpowiednie dane. Budowniczy powtórzy to dla każdego z czterech miast. Pojawi się dopasowanie, a budowniczy wygeneruje zawartość każdego miasta, które posiada prognozę. Jeśli miasto nie ma zasobu prognozowego, warunek nie pasuje do niego i nie zostanie wygenerowana zawartość dla takiego miasta. Zauważmy, że nie trzeba wstawiać 'rdf:' na początku orzeczenia, jako że tą część zakładamy wcześniej.

+ +

Moglibyśmy zastępować także object wartością wewnątrz linii. Na przykład:

+ +
<conditions>
+  <content uri="?city"/>
+  <triple subject="?city"
+             predicate="http://www.xulplanet.com/rdf/weather#prediction"
+             object="Cloudy"/>
+</conditions>
+
+ +

Ten przykład jest podobny, ale wyszczególniliśmy fakt, że chcemy znaleźć dopasowanie do 'Cloudy'. Rezultat jest taki, że warunki będą pasować tylko dla miast, dla których prognoza zawiera 'Cloudy'.

+ +

Możemy dodać więcej powiązań, gdybyśmy wymagali więcej dopasowań. Na przykład we fragmencie powyżej, moglibyśmy chcieć sprawdzić temperaturę i prędkość wiatru. Aby to zrobić należy po prostu dodać następne powiązanie, które sprawdza dodatkowe zasoby. Warunek będzie spełniony, jeśli wszystkie powiązania dostarczą odpowiednich wartości.

+ +

Poniższy przykład sprawdzi dodatkowe powiązanie, warunek na nazwę miasta. Będzie to przypisane do zmiennej 'name'. Warunek będzie spełniony, wtedy i tylko wtedy gdy miasto ma zarówno nazwę jak i prognozę.

+ +
<conditions>
+  <content uri="?list"/>
+  <member container="?list" child="?city"/>
+  <triple subject="?city"
+             predicate="http://www.xulplanet.com/rdf/weather#name"
+             object="?name"/>
+  <triple subject="?city"
+             predicate="http://www.xulplanet.com/rdf/weather#prediction"
+             object="?pred"/>
+</conditions>
+
+ +

Generowanie zawartości

+ +

Zawartość, którą generuje reguła, jest wyszczególniona wewnątrz elementu action. Powinna to być zawartość pod poziomów drzewa, elementów menu albo jakakolwiek, jaką chcesz wygenerować. Z tego wynika, że dla przykładu z pogodą powyżej, możesz użyć zmiennych 'name' albo 'pred' do wyświetlania miasta albo prognozy. Możesz użyć także zmiennych 'list' albo 'city', ale one przechowują zasoby, a nie tekst, więc nie będą mieć raczej znaczącej wartości dla użytkowników.

+ +

W prostej składni reguły używamy składni uri='rdf:*', aby zaznaczyć, gdzie powinna być wygenerowana zawartość. W pełnej składni ustawia się wartość atrybutu uri na zmienną, którą używasz w warunkach. Zwyczajowo będzie to zmienna przypisana do atrybutu child elementu member.

+ +

Complete Tree Example

+ +

Następny przykład pokazuje kompletne drzewo w czasie działania. Możesz zobaczyć plik RDF osobno Źródła RDF

+ +

Przykład 1 : Źródła

+ +
<tree id="weatherTree" flex="1" datasources="weather.rdf"
+      ref="http://www.xulplanet.com/rdf/weather/cities">
+  <treecols>
+    <treecol id="city" label="City" primary="true" flex="1"/>
+    <treecol id="pred" label="Prediction" flex="1"/>
+  </treecols>
+
+  <template>
+    <rule>
+      <conditions>
+        <content uri="?list"/>
+        <member container="?list" child="?city"/>
+        <triple subject="?city"
+                predicate="http://www.xulplanet.com/rdf/weather#name"
+                object="?name"/>
+        <triple subject="?city"
+                predicate="http://www.xulplanet.com/rdf/weather#prediction"
+                object="?pred"/>
+      </conditions>
+      <action>
+        <treechildren>
+          <treeitem uri="?city">
+            <treerow>
+              <treecell label="?name"/>
+              <treecell label="?pred"/>
+            </treerow>
+          </treeitem>
+        </treechildren>
+      </action>
+    </rule>
+  </template>
+</tree>
+
+ +

Dwie kolumny pokazują nam się w tym drzewie, jedna wyświetla cechy nazwy każdego pod poziomów, a reszta wyświetla przewidywane cechy.

+ +
Jeśli użyjemy flagi dont-build-content zmniejszymy drzewo, zamieniając element content z elementem treeitem.
+ +

Dodawanie dodatkowych wiązań

+ +

Końcowy element możesz dodać wewnątrz reguły elementu bindings. Wewnątrz jego, możesz położyć jeden lub więcej elementów binding. Oprawiając w zasady mamy taką samą składnię jako potrójny i spełnia prawie tą samą funkcję. Na przykład w przykładzie poniżej możemy dodać następujące oprawy:

+ +
<bindings>
+  <binding subject="?city"
+             predicate="http://www.xulplanet.com/rdf/weather#temperature"
+             object="?temp"/>
+</bindings>
+
+ +

Taka oprawa przechwyci zasoby temperaturowe każdego drzewa i przypisze je do zmiennej 'temp'. Jest to bardzo podobne do tego, co robi powiązanie. Różnica jest taka, że oprawa nie jest sprawdzana, gdy próbuje sprawdzić warunki. Oznacza to, że miasto musi mieć nazwę i prognozę do wyświetlenia, chociaż nie ma znaczenia czy ma temperaturę. Jednak, jeśli ma, będzie ona umieszczona w zmiennej 'temp', żeby mogła być użyta w akcji. Jeśli miasto nie ma temperatury, zmienna "temp" będzie miała pusty string.

+ +

Następnie, poszukamy jak zapisać stanowisko elementów XUL.

+ +

+

« PoprzedniNastępny »

+

diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/zastosowanie_odst\304\231p\303\263w/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/zastosowanie_odst\304\231p\303\263w/index.html" new file mode 100644 index 0000000000..8883f13c69 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/zastosowanie_odst\304\231p\303\263w/index.html" @@ -0,0 +1,141 @@ +--- +title: Zastosowanie odstępów +slug: Mozilla/Tech/XUL/Kurs_XUL/Zastosowanie_odstępów +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Using_Spacers +--- +

+

« PoprzedniNastępny »

+

+ +

Artykuł pokazuje jak dodać odstępy pomiędzy elementami jakie stworzyliśmy.

+ +

Dodawanie odstępów

+ +

Jednym z problemów przy programowaniu interfejsów użytkownika jest to, że każdy użytkownik posiada inny monitor. Niektórzy użytkownicy posiadają monitory o dużej rozdzielczości, natomiast inni mają monitory o małej rozdzielczości. W dodatku, różne platformy mają określone wymagania, jeśli dodamy obsługę wielu języków, tekst w jednym języku może wymagać więcej miejsca, niż inny język.

+ +


+ Aplikacje, które potrzebują obsługę wielu platform i języków zazwyczaj posiadają własne okna z dużą przestrzenią pozwalającą na to. Niektóre platformy i zestawy narzędziowe interfejsu użytkownika dostarczają komponentów, które są wystarczająco eleganckie na zmianę rozmiaru i możliwość zmiany swojej pozycji, tak, aby dopasować się do potrzeb użytkownika (dla przykładu Java używa menedżera układu rozmieszczenia).

+ +

XUL dostarcza możliwości do automatycznego pozycjonowania i zmiany rozmiaru elementów. Jak widzieliśmy, okno znajdowania plików pojawia się w takim rozmiarze, że dopasowuje elementy w swoim wnętrzu. Za każdym razem, gdy dodajemy kolejny element, okno staje się większe.

+ +

XUL używa systemu rozkładu elementów nazwanego 'Model pudełkowy'. Pomówimy o tym w kolejnym rozdziale, ale zasadniczo pozwala podzielić okno na szereg pól przechowujących elementy. Pola będą pozycjonowane, a ich rozmiar zmieniany w oparciu o specyfikację jaką możesz zdefiniować. Teraz wiesz, że element window jest typem pola.

+ +

Zanim przejdziemy do szczegółów pól, wprowadzimy inny element XUL użyteczny dla rozkładu, spacer. Odstęp jest bardzo prosty i wymaga tylko jednego atrybutu, jaki wyjaśnimy za chwilę. Najprostszy odstęp wygląda następująco:

+ +
<spacer flex="1"/>
+
+ +

spacer jest stosowany do umieszczenia pustej przestrzeni w oknie. Najbardziej użyteczną możliwością jest to, że może rosnąć lub się kurczyć, jeśli użytkownik zmienia rozmiar okna. Byłoby to jak gdyby umieszczenie przycisków z prawej strony lub u dołu okna i przymocowanie ich do prawego lub dolnego brzegu bez względu na to, jaki jest rozmiar okna. Jak zobaczymy, można użyć szeregu odstępów do stworzenia kliku efektów rozkładu elementów.

+ +

W powyższej składni odstęp ma jeden atrybut nazwany flex. Jest on używany do definiowania elastyczności odstępu. W powyższym przypadku odstęp ma flex równy 1, czyni to element odstępu rozciągniętym. Jeśli umieścisz odstęp bezpośrednio wewnątrz okna, jego rozmiar będzie rósł, gdy będzie zmieniał się rozmiar okna.

+ +

Wkrótce dodamy odstęp do naszego okna dialogowego Znajdź pliki. Najpierw, spójrzmy na to, co stanie się, kiedy bieżące okno dialogowe zmieni swój rozmiar.

+ +

Grafika:springs1.png

+ +

Jeśli zmienisz rozmiar okna znajdowania plików, zobaczysz, że elementy pozostały tam, gdzie były na początku. Żaden z nich nie został przesunięty lub nie zmienił się jego rozmiar, mimo że okno ma więcej miejsca. Zobaczmy, co się zdarzy, kiedy dodamy odstęp pomiędzy polem tekstowym a przyciskiem Znajdź.

+ +

Grafika:springs2.png

+ +

Po dodaniu odstępu i zmianie rozmiaru okna widać, że odstęp wypełnił przestrzeń. Przyciski zostały przesunięte.

+ +
+
Przykład okna: Znajdź pliki
+ +

Kod dodający odstęp został podany poniżej. Wstaw go przed przyciskiem Znajdź.

+ +
<spacer flex="1"/>
+
+<button id="find-button" label="Znajdź"/>
+
+
+ +

Więcej o elastyczności

+ +

XUL rozkłada elementy w oknie poprzez obliczenie odpowiedniej szerokości i wysokości dla elementów, a potem dodaje przestrzeń, gdzie są elastyczne. O ile nie określisz informacji o szerokości i wysokości elementu, domyślny rozmiar elementu jest określony przez jego zawartość. Zauważ, że przycisk Anuluj w okienkach dialogowych jest zawsze ustawiony na taką szerokość aby zmieścił się wewnątrz niego cały tekst. Jeśli tworzysz przycisk z bardzo długą etykietą, domyślny rozmiar przycisku będzie dosyć duży aby przechować całą etykietę. Pozostałe elementy takie jak pole tekstowe mają wybrany odpowiedni domyślny rozmiar.

+ +

Atrybut flex jest używany do określenia, czy element może zmienić rozmiar odpowiedniego pola (w tym przypadku, okna). Już widzieliśmy, że atrybut flex stosuje się do odstępów, ale może być zastosowany do dowolnego elementu. Na przykład możesz chcieć zmienić rozmiar przycisku Znajdź.

+ +

Grafika:springs3.png

+ +

Jak widzisz na obrazku, przez umieszczenie atrybutu flex w przycisku Znajdź, zmienia on rozmiar, kiedy zmieniany jest rozmiar okna. Odstęp nie jest w rzeczywistości niczym specjalnym. Właściwie może być rozpatrywany jako ukryte okno. Działa w ten sam sposób, co przycisk z wyjątkiem tego, że nie jest odrysowywany na ekranie.

+ +

Na powyższym rysunku można zauważyć jeszcze jedną rzecz. Nie tylko przycisk Znajdź zmienia rozmiar, ale także przestrzeń pojawiająca się pomiędzy etykietą główną a przyciskiem. Oczywiście jest to odstęp, jaki wstawiliśmy wcześniej. Również on zmienia rozmiar sam. Jeśli spojrzysz dokładnie, powinieneś zauważyć, że zmiana w rozmiarze dokonała się równo pomiędzy odstępem a przyciskiem. Odstęp odebrał połowę wolnej przestrzeni a przycisk druga połowę.

+ +

Przyczyna takiego efektu jest to, że zarówno odstęp jak i przycisk Znajdź mają atrybut flex. Ponieważ oba są elastyczne. Zarówno przycisk jak i odstęp równo zmieniają rozmiar.

+ +

A co jeśli chcesz ustawić jeden element rosnący dwukrotnie w stosunku do innego? Możesz zastosować większą liczbę jako wartość atrybutu flex. Wartości elementu flex są współczynnikami. jeśli jeden element ma flex równy 1 a kolejny ma flex równy 2 drugi element wzrasta dwukrotnie w stosunku do pierwszego. W efekcie, flex równy 2 mówi, że ten element ma flex który jest dwa razy większy niż elementy mające flex równy 1.

+ +

Atrybut flex jest używany do określenia aktualnego rozmiaru. Zamiast tego określa, jak pusta przestrzeń dzieli się miedzy potomkami pola kontenera. Przyjrzymy się polom w kolejnym rozdziale. Jeśli domyślny rozmiar potomków został określony, wartości elastyczności są używane do dzielenia pozostałej pustej przestrzeni pola. Na przykład jeśli pole ma 200 pikseli szerokości i zawiera dwa elastyczne przyciski, pierwszy na 50 pikseli a drugi na 90 pikseli będzie 60 pikseli przestrzeni między nimi, jeśli oba przyciski mają wartość flex równą 1, przestrzeń będzie dzielona równo z 30 dodatkowymi pikselami szerokości dla każdego przycisku. Jeśli elastyczność drugiego przycisku wzrosła do 2, pierwszy przycisk odbierze 20 pikseli dodatkowej przestrzeni a drugi przycisk odbierze 40 pikseli dodatkowej przestrzeni.

+ +

Atrybuty flex może być umieszczony w dowolnym elemencie, jednak ma znaczenie tylko wtedy, gdy umieścimy go w elemencie bezpośrednio wewnątrz pola XUL. Oznacza to, że chociaż możesz umieścić flex w elemencie HTML-a, nie uzyskasz takiego efektu, jeśli ten element jest wewnątrz elementu, nie - pola.

+ +

Spójrz na te przykłady:

+ +
Przykłady flex
+ +
Przykład 1:
+  <button label="Znajdź" flex="1"/>
+  <button label="Anuluj" flex="1"/>
+
+Przykład 2:
+  <button label="Znajdź" flex="1"/>
+  <button label="Anuluj" flex="10"/>
+
+Przykład 3:
+  <button label="Znajdź" flex="2"/>
+  <button label="Zastąp"/>
+  <button label="Anuluj" flex="4"/>
+
+Przykład 4:
+  <button label="Znajdź" flex="2"/>
+  <button label="Zastąp" flex="2"/>
+  <button label="Anuluj" flex="3"/>
+
+Przykład 5:
+  <html:div>
+    <button label="Znajdź" flex="2"/>
+    <button label="Zastąp" flex="2"/>
+  </html:div>
+
+Przykład 6:
+  <button label="Znajdź" flex="145"/>
+  <button label="Zastąp" flex="145"/>
+
+ +
+
Przykład 1 
+
W tym przypadku elastyczność jest dzielona równo pomiędzy oba przyciski. Oba przyciski zmienią rozmiar równo
+
Przykład 2 
+
Tu oba przyciski będą rosły, ale przycisk Anuluj będzie rósł 10 razy bardziej, niż przycisk Znajdź ponieważ ma wartość flex, która jest 10 razy większa od wartości flex przycisku Znajdź. Dostępna przestrzeń będzie dzielona na jedną część dla przycisku Znajdź i 10 części dla przycisku Anuluj.
+
Przykład 3 
+
Tylko dwa z tych przycisków są tu oznaczone jako elastyczne. Przycisk replace nigdy nie zmieni rozmiaru ale pozostałe dwa tak. Przycisk Anuluj zawsze będzie zmieniał rozmiar dwukrotnie w stosunku do przycisku Znajdź ponieważ jego wartość flex jest dwukrotnie większa.
+
Przykład 4 
+
W tym przypadku, wszystkie trzy przyciski są elastyczne. Przyciski Find i Replace będą tego samego rozmiaru ale przycisk Anuluj będzie nieco większy (dokładnie 50% większy)
+
Przykład 5 
+
Tu, dwa przyciski, są umieszczone wewnątrz elementu div. Elastyczność jest tu bez znaczenia ponieważ przyciski nie są bezpośrednio w polu. Efekt będzie taki sam, jeśli zostanie pominięty atrybut flex.
+
Przykład 6 
+
Ponieważ wartości flex są takie same w obu przyciskach, będą równo rozwijane. Działałoby to również z wartościami flex równymi jeden zamiast 145. Nie ma różnic w tym przypadku. Zalecane jest używanie mniejszych liczb dla zwiększenia czytelności.
+
+ +

Zauważ, że pozostałe czynniki, takie jak etykiety przycisków i minimalne rozmiary przycisków będą wpływały na aktualny rozmiar przycisków. Na przykład przycisk nie zostanie zmniejszony mniej niż do przestrzeni potrzebnej do przechowania jego etykiety.

+ +

Określenie wartości flex na 0 ma taki sam efekt, jak całkowite pominięcie atrybutu flex. Oznacza to, że elementy nie są wcale elastyczne. Czasami możesz zobaczyć wartość flex określoną w procentach. Nie ma to specjalnego znaczenia i jest traktowane tak, jak gdyby nie było tam znaku procenta.

+ +

Możesz zauważyć, że kiedy zmieniasz rozmiar okna dialogowego pionowo, przyciski zmieniają rozmiar same dopasowując się do wysokości okna. Jest tak ponieważ wszystkie przyciski mają wbudowany pionowy flex dodany im przez okno. W kolejnym rozdziale nauczymy się jak to zmienić.

+ +
+
Przykład: Znajdź pliki
+ +

Źródła Podgląd

+
+ +

W następnym artykule dowiemy się kilku dodatkowych możliwościach przycisku.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/kurs_xul/zaznaczenie_drzewa/index.html b/files/pl/mozilla/tech/xul/kurs_xul/zaznaczenie_drzewa/index.html new file mode 100644 index 0000000000..4bd2e007b6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/kurs_xul/zaznaczenie_drzewa/index.html @@ -0,0 +1,73 @@ +--- +title: Zaznaczenie drzewa +slug: Mozilla/Tech/XUL/Kurs_XUL/Zaznaczenie_drzewa +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/Tree_Selection +--- +

+

+

« PoprzedniNastępny »

+
+

Artykuł opisuje, jak pobrać i ustawić zaznaczone pozycje w drzewie. +

+

Pobieranie zaznaczonych elementów drzewa

+

Każdy element treeitem w drzewie może być zaznaczony indywidualnie. Dodając atrybut seltype do drzewa, ustawiamy wartość single, to zezwoli na zaznaczenia tylko jednego wiersza na raz. W przeciwnym wypadku użytkownik mógłby zaznaczać wiele wierszy na raz i to niekoniecznie sąsiednich. Drzewo zawiera kilka funkcji służących do określania, czy pozycja została zaznaczona. +

+

Podtrzymanie zdarzenia zaznaczenia

+

Najpierw zobaczmy, jak możemy decydować o tym, czy element jest zaznaczony. Uchwyt zdarzenia onselect() może być dodany do drzewa. Kiedy użytkownik zaznaczy jakiś element drzewa (tree), uchwyt ten jest wywoływany. Użytkownik ma także możliwość zmiany zaznaczenia poprzez używanie klawiszy strzałek na klawiaturze. Jeśli użytkownik przytrzyma naciśnięty klawisz kursora do szybkiego przewinięcia pozycji, to uchwyt zdarzenia nie zostanie wywołany do momentu, aż użytkownik się zatrzyma. Wynikiem będzie wykonanie postępu. Znaczy to także, że podświetlenie będzie się pojawiać na kilku pozycjach nawet przez zaznaczone zdarzenia nie będące nigdy aktywne dla tych pozycji.

Składnia uchwytu zdarzenia onselect() przedstawiona jest poniżej: +

+
<tree id="treeset" onselect="alert('Zaznaczyłeś cokolwiek!');">
+
+

Zaznaczenie drzewa

+

Drzewo ma własność currentIndex, która może być użyta, by uzyskać aktualnie zaznaczenie pozycji, gdzie pierwszym wierszem jest 0. +

Pozycje pochodnych wiersza są zawarte w sumie zaraz po głównych. To znaczy, że jeżeli są tam 3 pozycje najwyższego poziomu i każda ma po dwie pochodne, będzie to w sumie 9 pozycji. Pierwsza pozycja (przy indeksie 0) będzie pierwszą pozycją najwyższego poziomu. Następna pozycja przy indeksie 0 będzie od niego pierwszą pochodną. Druga pochodna pozycja będzie się znajdowała pod indeksem 2, a druga główna pozycja będzie miała indeks 3 itd. +

+
grafika:seltree1.png
+

Na obrazku z prawej strony pokazanych jest osiem wierszy, z których to dwa są zaznaczone. Pierwszy zaznaczony wiersz jest o indeksie 4, a drugi ma indeks 7. Rzędy, które są ukryte, nie zaliczają się do sumy indeksu. +

+

Wielokrotne zaznaczenie

+

Dla drzew umożliwiających wielokrotne zaznaczenie, otrzymanie listy zaznaczonych wierszy jest bardziej skomplikowane. Widok drzewa ma własność zaznaczenia, która przetrzymuje informacje o zaznaczonych wierszach. Bieżące zaznaczenie będzie obiektem TreeSelection. Widok nie musi wdrażać tego obiektu samodzielnie, drzewo określi obiekt zaznaczenia dla własności widoku zaznaczenia, kiedy widok będzie dołączony do drzewa. Informacje o zaznaczeniu możemy uzyskać od drzewa, używając własności widoku drzewa (view). Możemy użyć metod obiektu zaznaczenia (selection) w celu uzyskania informacji o zaznaczonych pozycjach lub w celu modyfikacji zaznaczenia. +

Ponieważ zaznaczone pozycje w drzewie wielokrotnego zaznaczenia niekoniecznie mogą być kolejnymi, możemy uzyskać każdy blok przylegający używając funkcji getRangeCount() i getRangeAt(). Pierwsza funkcja zwraca liczbę znajdujących się tam obszarów. W przypadku, gdy zaznaczona jest tylko jedna, wartość będzie wynosiła 1. Wtedy możesz napisać pętlę dla obszarów, wywołując getRangeAt(), żeby pobrać aktualne indeksy początku i końca obszaru. +

Funkcja getRangeAt() pobiera trzy argumenty:

+ +
Przykład getRangeAt
+
var start = new Object();
+var end = new Object();
+var numRanges = tree.view.selection.getRangeCount();
+
+for (var t = 0; t < numRanges; t++){
+  tree.view.selection.getRangeAt(t,start,end);
+  for (var v = start.value; v <= end.value; v++){
+    alert("Pozycja " + v + " jest zaznaczona.");
+  }
+}
+
+

Tworzymy dwa obiekty, nazwane 'start' i 'end'. Następnie powtarzamy w obszarach liczbę, która jest zwrócona przez funkcję getRangeCount(). Funkcja getRangeAt() jest wywołana przyjmując obszar indeksu obiektu na początku i na końcu. Funkcja przyporządkuje 'start' i 'end' dodając do własności 'value'. Jeżeli więc pierwszy obszar jest od trzeciej do siódmej pozycji, 'start.value' będzie 2 (pamiętaj, że indeksy zaczynają się od 0, więc odejmujemy jeden), a 'end.value' będzie równe 6. Ostrzeżenie jest pokazywane dla każdego indeksu. +

Jeżeli chcesz wiedzieć, który wiersz jest zaznaczony, możesz użyć funkcji isSelected(). Pobiera indeks wiersza jako argument i zwraca true, jeżeli wiersz jest zaznaczony. +

+
alert(tree.view.selection.isSelected(3));
+
+

Modyfikowanie zaznaczenia drzewa

+

Przedmiot zaznaczenia ma pewną liczbę funkcji, które mogą zostać użyte w celu zmiany zaznaczenia. Najprostszą funkcją jest funkcja select(), która znosi zaznaczenie dowolnego, aktualnie zaznaczonego wiersza i zaznacza dowolny inny. Na przykład następujący kod zaznaczy wiersz o indeksie 5: +

+
tree.view.selection.select(5);
+
+

Zauważ, że nie powinniśmy zmienić tylko wartości currentIndex w celu zmiany zaznaczenia. Zamiast tego powinniśmy użyć funkcji zaznaczenia jak w powyższym przykładzie. Możliwe jest zaznaczenie wszystkich wierszy za pomocą funkcji selectAll(). Zauważ, że wiersze zagnieżdżały się wewnątrz kontenerów, te które nie są otwarte, nie zostaną zaznaczone. Oczywiście to będzie miało efekt tylko w przypadku drzew z wielokrotnym zaznaczeniem. Jest też funkcja clearSelection() do wyczyszczenia zaznaczenia oraz funkcja invertSelection do odwracania zaznaczenia, która odznacza zaznaczenie, a zaznacza te, które nie były zaznaczone. +

W celu zaznaczenia określonych wierszy zastosuj funkcję rangedSelect(), która zaznaczy wiersze z obszaru pomiędzy dwoma indeksami. Jak w przykładzie pomiędzy indeksem 2 a 7. Zwróć uwagę na to, że indeksy 2 i 7 też zostaną zaznaczone: +

+
tree.view.selection.rangedSelect(2,7,true);
+
+

Ostatni argument określa to, czy dodać te indeksy, czy nie. Jeżeli ma wartość true, indeksy te zostaną zaliczone do zaznaczonego obszaru. Jeżeli false, zaznaczone wcześniej wiersze będą najpierw odznaczone. W końcu funkcja clearRange() może zostać użyta do odznaczania obszaru wierszy, pozostawiając resztę niezaznaczonego obszaru nietkniętą.

+
tree.view.selection.clearRange(2,7);
+
+

Następnie dowiemy się, jak utworzyć własny widok dla drzewa.

+

« PoprzedniNastępny »

+
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/kurs_xul/\305\272r\303\263d\305\202a_danych_rdf/index.html" "b/files/pl/mozilla/tech/xul/kurs_xul/\305\272r\303\263d\305\202a_danych_rdf/index.html" new file mode 100644 index 0000000000..d8db68cfe0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/kurs_xul/\305\272r\303\263d\305\202a_danych_rdf/index.html" @@ -0,0 +1,299 @@ +--- +title: Źródła danych RDF +slug: Mozilla/Tech/XUL/Kurs_XUL/Źródła_danych_RDF +tags: + - Kurs_XUL + - Przewodniki + - XUL +translation_of: Archive/Mozilla/XUL/Tutorial/RDF_Datasources +--- +

+

« PoprzedniNastępny »

+

+ +

W tym artykule znajdziemy dodatkowe źródła danych i dowiemy się jak ich użyć w naszym pliku RDF jako źródła.

+ +

Inne kody źródłowe Mozilli

+ +

Mozilla dostarcza kilka różnych kodów źródłowych służących do budowy. Niektóre z nich są tutaj wymienione wraz z kilkoma przykładami. Pracują one bardzo podobnie jako zakładki, mimo że platformy bywają różne.

+ +

Lista historii

+ +

Dane źródła historii są dostarczone poprzez dostęp to listy historii użytkowników, których linki z listy adresów URL użytkownika zostały ostatnio odwiedzone. Zasoby mają być kierowane do użycia rdf:history jako źródło danych. Tabela poniżej ukazuje zasoby (lub pola), które możesz uzyskać źródła danych jakim jest historia. Połóż własności adresu URL poniżej gdzie chcesz użyć właściwości źródła danych.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Daterdf:http://home.netscape.com/NC-rdf#DateData ostatniej wizyty
Namerdf:http://home.netscape.com/NC-rdf#NameTytuł strony
Pagerdf:http://home.netscape.com/NC-rdf#PageNazwa strony
Referrerrdf:http://home.netscape.com/NC-rdf#ReferrerStrona przekierowująca
URLrdf:http://home.netscape.com/NC-rdf#URLStrona URL
Visit Countrdf:http://home.netscape.com/NC-rdf#VisitCountLiczba odwiedzonych stron
+ +

Typowa lista historii jest wyświetlona na drzewie z wyborem tych plików. Aby go użyć, wystarczy tylko położyć właściwości URL powyżej w atrybucie przycisków lub szablonu label. Możesz użyć właściwości NC:HistoryRoot atrybutu ref. Możesz także użyć NC:HistoryByDate, aby pobrać historię z kilku ostatnich dni.

+ +

Using The History List Example

+ +

Zobaczysz szablony wyświetlające się jako lista historii. Wyświetlimy historię drzewa z trzema kolumnami, Name, Page oraz Date.

+ +

Przykład 1 : Źródła

+ +
<tree flex="1" datasources="rdf:history" ref="NC:HistoryRoot">
+
+  <treecols>
+    <treecol id="name" label="Name" flex="1"/>
+    <treecol id="url" label="URL" flex="1"/>
+    <treecol id="date" label="Date" flex="1"/>
+  </treecols>
+
+  <template>
+
+    <rule>
+      <treechildren>
+       <treeitem uri="rdf:*">
+         <treerow>
+           <treecell label="rdf:http://home.netscape.com/NC-rdf#Name"/>
+           <treecell label="rdf:http://home.netscape.com/NC-rdf#URL"/>
+           <treecell label="rdf:http://home.netscape.com/NC-rdf#Date"/>
+         </treerow>
+       </treeitem>
+      </treechildren>
+    </rule>
+
+  </template>
+</tree>
+
+ +

Inne źródła danych

+ +

Tablice z listy poniżej są innymi źródłami osiągalnych z Mozilla. Chcesz możesz użyć któregokolwiek z zasobów.

+ +
+
Zakładki (rdf:bookmarks)
+
Zakładki są generowane na podstawie listy z zawartością .
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Źródła
Added Daterdf:http://home.netscape.com/NC-rdf#BookmarkAddDateData dodania zakładki
Descriptionrdf:http://home.netscape.com/NC-rdf#DescriptionOpis zakładki
Last Modifiedrdf:http://home.netscape.com/WEB-rdf#LastModifiedDateData ostatniej modyfikacji
Last Visitedrdf:http://home.netscape.com/WEB-rdf#LastVisitDateData ostatniej wizyty
Namerdf:http://home.netscape.com/NC-rdf#NameNazwa zakładki
Shortcut URLrdf:http://home.netscape.com/NC-rdf#ShortcutURLSkróty klawiszowe
URLrdf:http://home.netscape.com/NC-rdf#URLLink URL do
+ + + + + + + + + + + + + + + + + + + +
Prawdopodobne źródła zakładek
NC:BookmarksRootNajwyższy poziom w hierarchi zakładek
NC:IEFavoritesRootFolder zakładek odpowiadający folderowi Ulubione z IE.
NC:PersonalToolbarFolderFolder zakładek odpowiadający własnemu paskowi narzędzi.
+ +
+
Pliki (rdf:files)
+
Podgląd plików użytkownika.
+
+ + + + + + + + + + + + + + + + + +
Źródła
Namerdf:http://home.netscape.com/NC-rdf#NameNazwa pliku
URLrdf:http://home.netscape.com/NC-rdf#URLURL do pliku
+ + + + + + + + + + + + + + + +
Prawdopodobne źródła plików
NC:FilesRootNajwyższy poziom systemu plików (często lista napędów)
A file URLUżywając URL pliku dla atrybutu ref, możesz zaznaczyć specyficzny folder bedący przekierowaniem. Na przykład, możesz użyć file:///windows or file:///usr/local.
+ +

Przykład kodu źródłowego w pliku kodu ze źródłem, określa swoją konieczną zawartość. Nie chcemy każdego pliku z plików systemowych decydowały o wyświetleniu danych. Natomiast, tylko pliki i foldery elementów drzewa (lub innych elementów) były potrzebne do wyświetlenia w momencie kiedy tak zadecydujemy.

+ +

Composite Datasources

+ +

Specjalny wielokrotny kod źródła w atrybutach źródła danych jest oddzielnie poprzez białe pola, przykład poniżej. Jest to efekt czytania źródła danych wspomniany we wszystkich źródłach.

+ +
<tree datasources="rdf:bookmarks rdf:history animals.rdf" ref="NC:BookmarksRoot">
+
+ +

Przykład ten czyta zawartość źródła z zakładek, historię i plik animals.rdf. Są one połączone z jednym składem kodu źródłowego i potrafią wtedy być użyte jako pojedyncze pliki.

+ +

Specjalny kod źródłowy rdf:null odzwierciedla pustkę, nicość. Możesz używać tego kodu źródłowego jeśli chcesz umieścić dynamiczny kod źródłowy w skrypcie, nie potrzebujesz jego na początku i nie poznasz swojego dokładnego URL-a.

+ +

Kod źródłowy RDF użytkownika

+ +

Możemy używać jakiegokolwiek wewnętrznego kodu źródłowego, jeśli będziemy mieli taką potrzebę. Jest tu kilka innych kodów dla poczty, książki adresowej i służących do przeszukiwania ich. Kiedykolwiek, będziesz chciał możesz użyć twojego własnego kodu źródłowego RDF przechowanego w pliku RDF. Plik może być dwojaki, lokalny lub zdalny. Wystarczy umieścić URL pliku RDF w atrybucie datasources.

+ +

Używanie kodu źródłowego RDF prowadzi do większej funkcjonalności kodu wewnętrznego. Możesz używać reguł odpowiadającym specjalnym typom zawartości. Atrybuty w elemencie rule odpowiadają, jeżeli one odpowiadają atrybutom RDF Description elementu. Także możesz tworzyć pliki RDF, które są hierarchiczne.

+ +

Using RDF file Example

+ +

Następny przykład, to jak plik RDF potrafi być użyty w bazie danych. Plik RDF jest czarodziejski i potrafi wyświetlić osobno: Źródła RDF

+ +

Przykład 2 : Źródła Podgląd

+ +
<tree flex="1" width="200" height="200"
+      datasources="animals.rdf" ref="http://www.some-fictitious-zoo.com/all-animals">
+
+  <treecols>
+    <treecol id="name" label="Name" primary="true" flex="1"/>
+    <treecol id="species" label="Species" flex="1"/>
+  </treecols>
+
+  <template>
+    <rule>
+      <treechildren>
+       <treeitem uri="rdf:*">
+         <treerow>
+           <treecell label="rdf:http://www.some-fictitious-zoo.com/rdf#name"/>
+           <treecell label="rdf:http://www.some-fictitious-zoo.com/rdf#species"/>
+         </treerow>
+       </treeitem>
+      </treechildren>
+    </rule>
+
+  </template>
+</tree>
+
+ +

grafika:datasrc1.jpg

+ +

Tutaj, dane zostały wygenerowane z pliku. Atrybut ref został zarejestrowany jako element korzenia w pliku RDF, który jest najwyższym poziomem Seq. Otrzymamy kompletną listę + + animals + . Jeżeli potrzebowalibyśmy,to moglibyśmy umieszczać atrybut ref do wszelkiej innej zawartości about cechach atrybutu ograniczającego ustawienia danych, które są zwracane. Na przykład, do wyświetlania tylko reptails, użyj wartości http://www.some-fictitious-zoo.com/reptiles.

+ +

Setting the ref Attribute Example

+ +

Przykład poniżej pokazuje jak wyświetlić szczególną część kodu źródłowego RDF ustawiając atrybut ref.

+ +

Przykład 3 : Źródła Podgląd

+ +
<window
+  id="example-window"
+  title="History List"
+  xmlns:ANIMALS="http://www.some-fictitious-zoo.com/rdf#"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<button label="Click here to see the mammals the zoo has" type="menu"
+        datasources="animals.rdf" ref="http://www.some-fictitious-zoo.com/mammals">
+  <template>
+    <rule ANIMALS:specimens="0"></rule>
+    <rule>
+      <menupopup>
+        <menuitem uri="rdf:*" label="rdf:http://www.some-fictitious-zoo.com/rdf#name"/>
+      </menupopup>
+    </rule>
+  </template>
+</button>
+
+</window>
+
+ +

W tym przypadku tylko mammals są żądane, więc zaznaczamy mammals URI na liście. Zauważymy tą wartość atrybutu ref w przykładzie http://www.some-fictitious-zoo.com/mammals, który odzwierciedla jeden element Seq w pliku RDF. To zdarzenie tylko powraca w liście w przypadku potomków.

+ +

Zostały użyte tutaj dwie zasady. Pierwsza reguła trzyma całą zawartość jaką posiada ANIMALS:specimens, atrybut ustawiony jest na 0. Możesz zobaczyć te cechy w każdym Description elementu w pliku RDF. Niektóre z nich mają wartość równą 0. Więc w tym wypadku, użyjemy zasady pierwszej. Ponieważ, zasada pierwsza nie ma wartości, nic nie będzie ci wyświetlane. Jest to efektowna droga do ukrycia daty, której nie chcemy wyświetlić.

+ +

Druga zasada stosuje się do całej reszty kodu i tworzy wiersze wyskakującego menu. Końcowy efekt jest taki, że dostaniemy wyskakujące menu zawierające wszystkie + mammals + które nie mają podanej wartości równej 0.

+ +

Następnie, zobaczymy pełne zasady składni.

+ +

+

« PoprzedniNastępny »

+

diff --git a/files/pl/mozilla/tech/xul/label/index.html b/files/pl/mozilla/tech/xul/label/index.html new file mode 100644 index 0000000000..fda18697f6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/label/index.html @@ -0,0 +1,258 @@ +--- +title: label +slug: Mozilla/Tech/XUL/label +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/label +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element pozwala zastosować etykietę dla elementu sterującego. Po kliknięciu etykiety, focus zostanie przełączony na element sterujący określony przez atrybut control. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, control, crop, disabled, href, value +
+
Własności
accessKey, accessible, control, crop, disabled, value +
+
Klasy stylów +
header, indent, monospace, plain, small-margin, text-link
+

Przykłady

+
grafika:XUL_ref_label.png
+
<label value="Email address" control="email"/>
+<textbox id="email"/>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
control +
Typ: id elementu +
Ten atrybut określa id elementu, z którym powiązana jest etykieta. Kiedy użytkownik na nią kliknie, połączony element staje się aktywny (focus). +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
href +
Typ: string +
Definiuje adres URL do otworzenia, w momencie naciśnięcia elementu. Żąda atrybutu class, by włączyć text-link. +
+ + +
+
+ +
value +
Typ: string +
Tekst dla etykiety. +
+ + +
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika. +

+
+ header
+
+ Klasę stosujemy do nagłówków. Zazwyczaj będzie powodować, że tekst ukaże się pogrubiony.
+
+
+
+ indent
+
+ Klasa ta powoduje wcięcie z lewej strony tekstu.
+
+
+
+ monospace
+
+ Klasa powoduje, że tekst będzie wyświetlany w czcionce o stałej szerokości znaków.
+
+
+
+ plain
+
+ Ta klasa sprawia, że element będzie wyświetlony bez obramowania lub marginesu.
+
+
small-margin +
Ta klasa powoduje wyświetlenie tekstu z małym marginesem. +
+


+

+
text-link +
Etykiety o tej klasie mogą być aktywne (focus), a funkcja obsługi zdarzenia kliknięcia zostanie wywołana zarówno dla kliknięcia myszą, jak i wciśnięcia klawisza Enter. +
+


+

+

+

Podobne

+
Elementy +
description +
+
Atrybuty +
label +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULLabelElement +
+

Notatki

+

Należy pamiętać, że, inaczej niż w języku HTML, element label posiada atrybut "value", natomiast przyciski i pola wyboru używają label="foo" jako atrybutu.

+
<label label="Przycisk"/> <-- Źle -->
+<label value="Przycisk"/>
+
+<label value="Kliknij w przycisk"/>
+<button label="Przycisk"/>
+<checkbox label="Decyzja" value="1"/>
+
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/listbox/index.html b/files/pl/mozilla/tech/xul/listbox/index.html new file mode 100644 index 0000000000..7520964ca1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/listbox/index.html @@ -0,0 +1,413 @@ +--- +title: listbox +slug: Mozilla/Tech/XUL/listbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest stosowany do tworzenia listy pozycji, na której można zaznaczyć jedną lub wiele pozycji. Lista taka może zawierać wiele kolumn. Istnieje szereg metod pozwalających na modyfikowanie i dostęp do elementów zawartych w listbox. +

Można określić liczbę wierszy do wyświetlenia w liście za pomocą atrybutu rows. Jeśli wierszy jest więcej, niż to określono w tym atrybucie, listę będzie można przewinąć przy pomocy paska przewijania. Wszystkie wiersze w liście mają tę samą wysokość – jest to wysokość największego wiersza z listy. Element listbox powinien zawierać elementy listitem, każdy z nich wyświetla etykietę tekstową. Aby utworzyć listę z zawartością inną niż tekst, należy skorzystać z elementu richlistbox. +

Dodatkowe informacje są dostępne w kursie XUL, można także przejrzeć źródła w LXR. +

+
Atrybuty +
disabled, disableKeyNavigation, preference, rows, seltype, suppressonselect, tabindex, value +
+
Własności +
accessible, disabled, disableKeyNavigation, selectedCount, selectedIndex, selectedItem, selectedItems, selType, tabIndex +
+
Metody +
addItemToSelection, appendItem, clearSelection, ensureElementIsVisible, ensureIndexIsVisible, getIndexOfFirstVisibleRow, getIndexOfItem, getItemAtIndex, getNextItem, getNumberofVisibleRows, getPreviousItem, getRowCount, getSelectedItem, insertItemAt, invertSelection, removeItemAt, scrollToIndex, selectAll, selectItem, selectItemRange, timedSelect, toggleItemSelection +
+

Przykład

+
grafika:XUL_ref_listbox.png
+
 <listbox id="theList">
+   <listitem label="Ruby"/>
+   <listitem label="Emerald"/>
+   <listitem label="Sapphire" selected="true"/>
+   <listitem label="Diamond"/>
+ </listbox>
+
+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
disablekeynavigation +
Typ: boolean +
Jeśli atrybut ten nie jest użyty, użytkownik może przechodzić do określonych pozycji listy poprzez naciśnięcie pierwszej litery etykiety danej pozycji. Odbywa się to przyrostowo, dlatego przyciśnięcie dodatkowych klawiszy spowoduje zaznaczenie lepiej określonych pozycji. Opcja ta może zostać wyłączona poprzez ustawienie wartości atrybutu jako true. +
+


+

+ + +
+
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+
+ +
+
+ rows
+
+ Typ: + + integer +
+
+ Liczba wierszy do wyświetlenia w elemencie. Jeśli w elemencie znajduje się więcej niż ta liczba wierszy, pojawi się pasek przewijania, który użytkownik może zastosować do przewijania do innych wierszy. Aby pobrać aktualną liczbę wierszy w elemencie, zastosuj metodę getRowCount.
+
+
+
+ +
+
+ +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ disableKeyNavigation
+
+ Typ: + + boolean +
+
+ Pobiera lub ustawia wartość atrybutu disableKeyNavigation.
+
+
+
+
+ selectedCount
+
+ Typ: + + integer +
+
+ Zwraca liczbę pozycji, która jest aktualnie zaznaczona.
+
+
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+
+ selectedItem
+
+ Typ: + + element +
+
+ Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie null. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własność selectedIndex lub zmieniona będzie przez użytkownika.
+
+
+
+
+ selectedItems
+
+ Typ: + + tablica z listą pozycji +
+
+ Zwraca tablicę zaznaczonych pozycji na liście.
+
+
+
+
+ selType <magic name="\"PAGENAME\"/"></magic>
+
+  
+
+ Type: string
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu seltype.
+
+

 

+

 

+ +

+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+

addItemToSelection( item ) +
Zwraca typ: nie zwraca wartości +
Zaznacza daną pozycje, bez odznaczania innych pozycji aktualnie zaznaczonych. +
+


+

+
appendItem( label, value ) +
Zwraca typ: element +
Tworzy nową pozycję i dodaje ją na koniec istniejącej listy pozycji. Opcjonalnie posiada ustawioną wartość. Funkcja zwraca nowo utworzony element.
+
clearSelection() +
Zwraca typ: nie zwraca wartości
Odznacza wszystkie pozycje. +
+


+

+
ensureElementIsVisible( element ) +
Zwraca typ: nie zwraca wartości +
Jeśli określony element nie jest aktualnie widziany przez użytkownika, to wyświetlane pozycje są przewijane, do momentu, aż będzie on widoczny. Jeśli pozycja jest już widoczna, przewijanie nie będzie miało miejsca. +
+


+

+
ensureIndexIsVisible( index ) +
Zwraca typ: nie zwraca wartości +
Jeśli pozycja w określonym indeksie nie jest aktualnie widoczna, to użytkownik wyświetla tą pozycję poprzez przewinięcie okna. Jeśli natomiast pozycja jest widoczna, nie będzie możliwe żadne przewijanie. +
+


+

+
getNumberOfVisibleRows() +
Zwraca typ: integer +
Zwraca liczbę wierszy, które są aktualnie widoczne dla użytkownika. +
+


+

+
getIndexOfItem( item ) +
Zwraca typ: integer +
Zwraca od zera pozycję określonych pozycji. Pozycje są numerowane zaczynając od pierwszej wyświetlanej pozycji na liście. +
+


+

+
getItemAtIndex( index ) +
Zwraca typ: element +
Zwraca element, który jest o określonym indeksie. +
+


+

+
getNextItem( startItem, delta ) +
Zwraca typ: element +
Metoda ta zwraca pozycję danej odległości (delta) po określonym startItem lub zwraca null, jeśli takiej pozycja nie istnieje. Ten przykład będzie zwracał pozycję dwa wiersze po jakiejśPozycji: getNextItem ( someItem, 2 ); +
+


+

+
getNumberOfVisibleRows() +
Zwraca typ: integer +
Zwraca liczbę wierszy, które są aktualnie widoczne dla użytkownika. +
+


+

+
getPreviousItem( startItem, delta ) +
Zwraca typ: element +
Metoda zwraca pozycję danej odległości (delta) przed określonym startItem lub zwraca null, jeśli taka pozycja nie istnieje. Ten przykład zwróci pozycje pięć wierszy przed someItem: getPreviousItem ( someItem, 5 ); +
+


+

+
getRowCount() +
Zwraca typ: integer +
Zwraca ogólną liczbę wierszy w elemencie, nieważne ile wierszy jest wyświetlanych. +
+


+


+

+ +
insertItemAt( index, label, value ) +
Zwraca typ: element +
Ta metoda tworzy nowy element listy i umieszcza go w określonej pozycji. Opcjonalnie można ustawić jego wartość. Nowy element jest zwracany. +
+
+
+ invertSelection()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Odwraca status wszystkich zaznaczonych pozycji. Pozycja zaznaczona staje się odznaczona oraz odznaczona pozycja staje się zaznaczoną.
+
+
removeItemAt( index ) +
Zwraca typ: element +
Usuwa pozycję potomną w elemencie o określonym indeksie. Metoda zwraca usuniętą pozycję. +
+
+
+ scrollToIndex( index )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przewija element do określonego indeksu. Jest inne niż ensureIndexIsVisible, ponieważ widok jest zawsze przewijany.
+
+
+
+ selectAll()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza wszystkie pozycje. Zdarzenie zaznaczenia jest wysyłane po tym, jak zostanie zrobione zaznaczenie.
+
+
+
+ selectItem( item )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Odznacza wszystkie aktualnie zaznaczone pozycje i zaznacza daną pozycję. Zdarzenie zaznaczenia jest wysyłane po wykonaniu zaznaczenia.
+
+
+
selectItemRange( startItem, endItem)
+
Zwraca typ:nie zwraca wartości
+
Zaznaczone pozycje pomiędzy dwoma danymi pozycjami jako argumenty. Wszystkie inne pozycje są odznaczone. Ta metoda does nothing for single-selection list boxes. A select event is sent after the selection is made.
+
+
+
+ timedSelect( item, timeout )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza pozycję określoną przez argument po danej liczbie milisekund argumentu czasu przerwy. Wszystkie inne pozycje są odznaczone.
+
+
+
+ toggleItemSelection( item )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Jeśli określona pozycja jest zaznaczona, to jest odznaczana. Jeśli nie jest zaznaczona, to jest zaznaczana. Inne pozycje na liście pudełka, które są zaznaczone are not affected, and retain their selected state.
+
+

+

Podobne

+
Elementy +
listcell, listcol, listcols, listhead, listheader, listitem +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULMultiSelectControlElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/listcell/index.html b/files/pl/mozilla/tech/xul/listcell/index.html new file mode 100644 index 0000000000..312989c822 --- /dev/null +++ b/files/pl/mozilla/tech/xul/listcell/index.html @@ -0,0 +1,135 @@ +--- +title: listcell +slug: Mozilla/Tech/XUL/listcell +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listcell +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedyncza komórka listbox; używana do tworzenia komórek zawierających tylko tekst. +

+
Atrybuty +
crop, disabled, image, label, type +
+
Własności +
disabled +
+
Klasy stylów +
listcell-iconic,
+

Przykład

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ type
+
+ Typ: + + string +
+
+ Możemy zrobić komórkę pola wyboru w listbox, przez ustawienie tych wartości atrybutów na checkbox.
+
+
+

+

Własności

+

+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

+
+ listcell-iconic
+
+ Klasa ta pozwala na wyświetlenie obrazka w komórce listy. Obrazek należy określić przy pomocy atrybutu image.
+
+

+

Wskazówki

+

Jeśli chcesz wyrównać do prawej strony zawartość komórek możesz to zrobić w następujący sposób: +

+
cell = document.createElement("listcell");
+cell.setAttribute("label", "This is the cell's label");
+cell.setAttribute("style", "text-align:right");
+
+

Podobne

+
Elementy +
listbox, listcol, listcols, listhead, listheader, listitem +
+
+
diff --git a/files/pl/mozilla/tech/xul/listcol/index.html b/files/pl/mozilla/tech/xul/listcol/index.html new file mode 100644 index 0000000000..486fd5084d --- /dev/null +++ b/files/pl/mozilla/tech/xul/listcol/index.html @@ -0,0 +1,95 @@ +--- +title: listcol +slug: Mozilla/Tech/XUL/listcol +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listcol +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kolumna w listbox. Można tworzyć kolumny elastyczne lub nieelastyczne. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
listbox, listcell, listcols, listhead, listheader, listitem +
+
+
diff --git a/files/pl/mozilla/tech/xul/listcols/index.html b/files/pl/mozilla/tech/xul/listcols/index.html new file mode 100644 index 0000000000..d7a01a0760 --- /dev/null +++ b/files/pl/mozilla/tech/xul/listcols/index.html @@ -0,0 +1,109 @@ +--- +title: listcols +slug: Mozilla/Tech/XUL/listcols +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listcols +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener dla kolumn listbox, tworzonych przy użyciu elementu listcol. W elemencie listbox powinien znajdować się wyłącznie jeden potomny element listcols. Jeśli element listcols zostanie pominięty, pudełko listy będzie jednokolumnowe. +

+

Przykład

+
<!-- Tworzy dwie kolumny listbox -->
+<listbox>
+  <listcols>
+    <listcol/>
+    <listcol/>
+  </listcols>
+  <listitem>
+    <listcell label="Buck"/>
+    <listcell label="Rogers"/>
+  </listitem>
+  <listitem>
+    <listcell label="John"/>
+    <listcell label="Painter"/>
+  </listitem
+</listbox>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
listbox, listcell, listcol, listhead, listheader, listitem +
+
+
diff --git a/files/pl/mozilla/tech/xul/listhead/index.html b/files/pl/mozilla/tech/xul/listhead/index.html new file mode 100644 index 0000000000..a6e2d81f88 --- /dev/null +++ b/files/pl/mozilla/tech/xul/listhead/index.html @@ -0,0 +1,125 @@ +--- +title: listhead +slug: Mozilla/Tech/XUL/listhead +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listhead +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Wiersz nagłówka listbox. Zazwyczaj umieszcza się w nim elementy listheader, po jednym dla każdej każdej kolumny. +

+
Atrybuty +
disabled +
+
Własności +
disabled +
+

Przykłady

+

(przykłady potrzebne) +

+

Atrybuty

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
listbox, listcell, listcol, listcols, listheader, listitem +
+
+
diff --git a/files/pl/mozilla/tech/xul/listheader/index.html b/files/pl/mozilla/tech/xul/listheader/index.html new file mode 100644 index 0000000000..303596770a --- /dev/null +++ b/files/pl/mozilla/tech/xul/listheader/index.html @@ -0,0 +1,128 @@ +--- +title: listheader +slug: Mozilla/Tech/XUL/listheader +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listheader +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Nagłówek pojedynczej kolumny w listbox. +

+
Atrybuty +
disabled +
+

Przykład

+
Image:XUL_ref_listheader.png
+
<listbox>
+  <listhead>
+    <listheader label="Name"/>
+    <listheader label="Occupation"/>
+  </listhead>
+  <listitem>
+    <listcell label="George"/>
+    <listcell label="House Painter"/>
+  </listitem>
+  <listitem>
+    <listcell label="Mary Ellen"/>
+    <listcell label="Candle Maker"/>
+  </listitem>
+  <listitem>
+    <listcell label="Roger"/>
+    <listcell label="Swashbuckler"/>
+  </listitem>
+</listbox>
+
+

Atrybuty

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
listbox, listcell, listcol, listcols, listhead, listitem +
+
+
diff --git a/files/pl/mozilla/tech/xul/listitem/index.html b/files/pl/mozilla/tech/xul/listitem/index.html new file mode 100644 index 0000000000..c274a10552 --- /dev/null +++ b/files/pl/mozilla/tech/xul/listitem/index.html @@ -0,0 +1,366 @@ +--- +title: listitem +slug: Mozilla/Tech/XUL/listitem +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/listitem +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedynczy wiersz listbox. Tekst w listitem jest określony w jednym z elementów listcell lub poprzez umieszczenie atrybutu label bezpośrednio w elemencie listitem. Możesz także umieścić inne elementy wewnątrz listitem, gdy chcesz stworzyć bardziej złożoną treść. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, checked, command, crop, current, disabled, image, label, preference, selected, tabindex, type, value +
+
Własności +
accessKey, accessible, checked, control, crop, current, disabled, image, label, selected, tabIndex, value +
+
Klasy stylów +
listitem-iconic
+

Przykład

+

(potrzeba przykładu) +

+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
checked +
Typ: boolean +
Określa, czy przycisk jest zaznaczony. Konieczne jest ustawienie atrybutu type na checkbox lub radio, aby zmiana atrybutu checked mogła odnosić jakiekolwiek skutki. +
+


+

+ + +
+
+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ + +
+
current
+
Typ:boolean
+
Ten atrybut będzie ustawiony na true, jeśli listitem jest aktualną pozycją. Jest typowo używany przez motyw do customize the focus ring. Aby zaznaczyć aktualną pozycję w listbox, listbox używa do tego własności selectedItem.
+
+
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+
+ +
+
+ selected
+
+ Typ: + + boolean +
+
+ Sygnalizuje gdzie element jest zaznaczony lub nie. Ta wartość jest tylko do odczytu. Aby zmienić zaznaczenie, ustaw pozostałe własności selectedIndex lub selectedItem stanowiące ten element.
+
+ +

 

+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
type +
Typ: string +
Możemy utworzyć pozycję pola wyboru listbox, poprzez ustawienie tego atrybutu na wartość checkbox. +
+


+

+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
checked +
Typ: boolean +
Pobiera i ustawia wartość atrybutu checked. +
+


+

+ +
+
+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ current
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu current.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika. +

+
+ listitem-iconic
+
+ Zastosuj tą klasę, aby mieć wyświetlony obrazek na listitem. Określa obrazek za pomocą arybutu image.
+
+

+

Podobne

+
Elementy +
listbox, listcell, listcol, listcols, listhead, listheader +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/member/index.html b/files/pl/mozilla/tech/xul/member/index.html new file mode 100644 index 0000000000..ffa74e924d --- /dev/null +++ b/files/pl/mozilla/tech/xul/member/index.html @@ -0,0 +1,107 @@ +--- +title: member +slug: Mozilla/Tech/XUL/member +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/member +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Stosowany wewnątrz zasad elementu conditions do dopasowania elementów, które są kontenerami lub są zawarte wewnątrz kolejnego elementu. Oba kontenery i atrybuty potomne mogą używać zmiennych. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Własności
child, container +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
child +
Typ: ? +
Zmienna odwołująca się do węzła, który jest oczekiwanym elementem potomnym, który jest kierowany poprzez element kontenera. +
+


+

+ +
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/menu/index.html b/files/pl/mozilla/tech/xul/menu/index.html new file mode 100644 index 0000000000..0123198630 --- /dev/null +++ b/files/pl/mozilla/tech/xul/menu/index.html @@ -0,0 +1,218 @@ +--- +title: menu +slug: Mozilla/Tech/XUL/menu +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/menu +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element bardzo podobny do button, który jest umieszczony na menubar. Kiedy użytkownik kliknie element menu, to potomek menupopup z menu zostanie wyświetlony. Ten element jest także stosowany do tworzenia podmenu. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
acceltext, accesskey, allowevents, crop, disabled, key, label, menuactive, open, sizetopopup, value +
+
Własności +
control, open, select, value +
+

Przykład

+
  <menubar id="sample-menubar">
+    <menu id="file-menu" label="File">
+      <menupopup id="file-popup">
+        <menuitem label="New"/>
+        <menuitem label="Open"/>
+        <menuitem label="Save"/>
+        <menuseparator/>
+        <menuitem label="Exit"/>
+      </menupopup>
+    </menu>
+    <menu id="edit-menu" label="Edit">
+      <menupopup id="edit-popup">
+        <menuitem label="Undo"/>
+        <menuitem label="Redo"/>
+      </menupopup>
+    </menu>
+  </menubar>
+
+

Atrybuty

+

+

+ +
+
+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
key +
Typ: znak +
Litera, która musi zostać naciśnięta. Powinien to być znak, który może być wyświetlany. +
+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ +
{{ XULAttr("open") }} +
Typ: boolean +
Dla przycisków o {{ XULAttr("type") }} ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ +{{ languages( { "en": "en/XUL/Attribute/open", "fr": "fr/XUL/Attributs/open", "ja": "ja/XUL/Attribute/open" } ) }} +
+
+ + +
+
sizetopopup
+
Typ:jedna z poniższych wartości
+
Indicates how the menu width and the menupopup width are determined. If the sizetopopup attribute is left out or set to none, the menu will be its preferred width and the popup may extend outside of this width, unaffected by the maximum width of the menu itself.
+
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
menubar, menuitem, menulist, menupopup, menuseparator +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/menubar/index.html b/files/pl/mozilla/tech/xul/menubar/index.html new file mode 100644 index 0000000000..ca5cbbb12d --- /dev/null +++ b/files/pl/mozilla/tech/xul/menubar/index.html @@ -0,0 +1,114 @@ +--- +title: menubar +slug: Mozilla/Tech/XUL/menubar +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/menubar +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener, który zazwyczaj składa się z elementów menu. Na Macintosh, pasek menu jest wyświetlony wzdłóż góry okna i wszystkie elementy niebędące menu wewnątrz paska menu, to będą ignorowane. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accessible, grippyhidden, statusbar +
+
Własności +
statusbar +
+

Przykłady

+
grafika:XUL_ref_menu.png
+
<menubar id="sample-menubar">
+  <menu id="action-menu" label="Action">
+    <menupopup id="action-popup">
+      <menuitem label="New"/>
+      <menuitem label="Save" disabled="true"/>
+      <menuitem label="Close"/>
+      <menuseparator/>
+      <menuitem label="Quit"/>
+    </menupopup>
+  </menu>
+  <menu id="edit-menu" label="Edit">
+    <menupopup id="edit-popup">
+      <menuitem label="Undo"/>
+      <menuitem label="Redo"/>
+    </menupopup>
+  </menu>
+</menubar>
+
+

Atrybuty

+

+

+ +
accessible +
Typ: nsIAccessible +
Zwraca obiekt dostępności dla elementu. +
+


+

+ + +
+
+ +
grippyhidden +
Nie w Firefoksie +
Typ: boolean +
Kiedy ustawiamy na true, grippy będzie ukryty. Kiedy ustawienie będzie na false, domyślnie, grippy będzie wyświetlony. +
+


+

+ + +
+
+ +
+
+ statusbar
+
+ Typ: + + id elementu paska stanu +
+
+ Jeśli ustawimy ten atrybut na id elementu statusbar, to etykieta na pasku stanu będzie aktualizowana do statustext w momencie, gdy użytkownik przesunie kursor myszy nad pozycję w menu.
+
+ +
+

+

Własności

+

+
+
+ statusbar
+
+ Typ: + + id elementu paska stanu +
+
+ Pobiera i ustawia wartość atrybutu statusbar.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
menu, menuitem, menulist, menupopup, menuseparator +
+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/menuitem/index.html b/files/pl/mozilla/tech/xul/menuitem/index.html new file mode 100644 index 0000000000..75540fe7d6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/menuitem/index.html @@ -0,0 +1,360 @@ +--- +title: menuitem +slug: Mozilla/Tech/XUL/menuitem +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/menuitem +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedyncza pozycja do wybrania w elemencie menupopup. Działa bardzo podobnie jak button, lecz jest ona renderowana przez menu. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
acceltext, accessible, accesskey, allowevents, autocheck, checked, command, crop, description, disabled, image, key, label, name, selected, tabindex, type, validate, value +
+
Własności +
control, label, selected, value +
+
Klasy stylów +
menuitem-iconic, menuitem-non-iconic +
+

Przykład

+
<menu id="edit-menu" label="Edycja">
+  <menupopup id="edit-popup">
+     <menuitem label="Wstecz"/>
+     <menuitem label="Dalej"/>
+  </menupopup>
+</menu>
+
+

Atrybuty

+

+

+ +
+
+ +
accessible +
Typ: nsIAccessible +
Zwraca obiekt dostępności dla elementu. +
+


+

+ + +
+
+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
+
+ +
autoCheck +
Typ: boolean +
Gdy atrybut ten ma wartość true lub nie jest ustawiony, stan zaznaczenia przycisku będzie przełączany przy każdym jego naciśnięciu. Gdy wartość została ustawiona na false, stan zaznaczenia musi być dopasowany ręcznie. +
+


+

+ + +
+
+ +
checked +
Typ: boolean +
Określa, czy przycisk jest zaznaczony. Konieczne jest ustawienie atrybutu type na checkbox lub radio, aby zmiana atrybutu checked mogła odnosić jakiekolwiek skutki. +
+


+

+ + +
+
+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
description +
Typ: string +
Tekst opisowy do wyświetlenia w dodatku do tytułu okienka dialogowego. +
+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
+
+ key
+
+ Typ: + + id element +
+
+ Ustawia id elementu key, którego klawisz skrótu jest wyświetlony w menuitem.
+
+
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ name
+
+ Typ: + + nazwa jako łańcuch znaków +
+
+ Opcja menuitem z tą samą nazwą umieszczona w jednej grupie. Tylko jedna pozycja menuitem w każdej grupie opcji, może być zaznaczona w tym samym czasie.
+
+ +

 

+
+
+ +
+
+ selected
+
+ Typ: + + boolean +
+
+ Sygnalizuje gdzie element jest zaznaczony lub nie. Ta wartość jest tylko do odczytu. Aby zmienić zaznaczenie, ustaw pozostałe własności selectedIndex lub selectedItem stanowiące ten element.
+
+ +

 

+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ type
+
+ Typ: + + jedna z wartości poniżej +
+
+ Może zostać użyta do tworzenia pozycji wielokrotnego (pole wyboru) lub pojedynczego wyboru (przycisk opcji) menu.
+
+ +


+ Więcej informacji na temat dodawania pozycji opcji menu znajduje się w kursie XUL

+
+
+ +
+
+ validate
+
+ Typ: + + jedna z poniższych wartości +
+
+ Atrybut ten określa, czy obrazek ma być wczytywany z pamięci podręcznej. Może być to przydatne, jeśli obrazki są wczytywane z serwera zdalnego, albo planowana jest częsta ich podmiana. Poniższe wartości są akceptowane; pominięcie tego atrybutu spowoduje zastosowanie wartości domyślnej.
+
+ +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

+
+ menuitem-iconic
+
+ Zastosuj tą klasę, aby mieć wyświetlony obrazek na menuitem. Określa obrazek za pomocą arybutu image.
+
+
+
+ menuitem-non-iconic
+
+ Normalnie, menuitem posiada margines z lewej strony na obrazek lub znak zaznaczenia. Ta klasa może zostać użyta do usunięcia tego marginesu, więc ta pozycja menu pojawi się z lewej strony brzegu menupopup.
+
+

+

Podobne

+
Elementy +
menu, menubar, menulist, menupopup, menuseparator
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/menulist/index.html b/files/pl/mozilla/tech/xul/menulist/index.html new file mode 100644 index 0000000000..f27548b2fa --- /dev/null +++ b/files/pl/mozilla/tech/xul/menulist/index.html @@ -0,0 +1,476 @@ +--- +title: menulist +slug: Mozilla/Tech/XUL/menulist +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/menulist +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który stosujemy w przypadku rozwijanej listy wyboru. Użytkownik może zaznaczyć jedną z pozycji wyświetlanych w elemencie menulist. Aktualnie zaznaczona pozycja zostanie wyświetlona na elemencie menulist. Aby utworzyć listę rozwijaną, umieść element menupopup wewnątrz menulist składający się z elementów wyboru menuitem. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, crop, disableautoselect, disabled, editable, focused, image, label, open, preference, readonly, sizetopopup, src, tabindex, value +
+
Własności +
accessible, crop, description, disableautoselect, disabled, editor, inputField, label, menuBoxObject, menupopup, open, selectedIndex, selectedItem, src, tabIndex, value +
+
Metody +
appendItem, insertItemAt, removeAllItems, removeItemAt, select +
+

Przykłady

+
  <menulist>
+	<menupopup>
+	  <menuitem label="Opcja 1" value="1"/>
+	  <menuitem label="Opcja 2" value="2"/>
+	  <menuitem label="Opcja 3" value="3"/>
+	  <menuitem label="Opcja 4" value="4"/>
+	</menupopup>
+  </menulist>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disableautoselect +
Typ: boolean +
Jeśli ten atrybut jest true lub pominięty, zaznaczona pozycja w menu będzie aktualizowana dopasowując się do tego co użytkownik wprowadzi w polu tekstowym. Jeśli tekst nie dopasuje się do jakiejkolwiek pozycji na liście, to zaznaczenie zostanie wyczyszczone. Jeśli ten atrybut jest false, zaznaczenie nigdy nie zostanie zaktualizowane do dopasowania pola tekstowego. Ten atrybut zastosowany jest tylko do menulist, który jest zdolny do edycji. +
+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ + +
+
editable
+
Typ:boolean
+
Sygnalizuje, która wartość menulist może być modyfikowana poprzez wpis bezpośrednio do wartości pola. This is rendered as a textbox with a drop-down arrow beside it. The user may enter text into the textbox or select one of the choices by clicking from the drop-down. If used in a tree, editable allows the content to be changed, especially useful when type="checkbox".
+
+
+
+ +
focused +
Typ: boolean +
Ten atrybut jest ustawiony na true, jeśli element jest aktywny (focused). +
+


+

+ + +
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ + +
+
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+
+ +
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+ + +
+
+ + +
+
sizetopopup
+
Typ:jedna z poniższych wartości
+
Indicates how the menu width and the menupopup width are determined. If the sizetopopup attribute is left out or set to none, the menu will be its preferred width and the popup may extend outside of this width, unaffected by the maximum width of the menu itself.
+
+ + +
+
+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ description
+
+ Typ: + + string +
+
+ Ustawia opis aktualnie zaznaczonej pozycji menuitem.
+
+
+
+
+ disableautoselect
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disableautoselect.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ editor
+
+ Typ: + + nsIEditor +
+
+ Odwołanie do nsIEditor dla edytowanego tekstu. Własność tylko do odczytu.
+
+
+
+
+ inputField
+
+ Typ: + + element textbox +
+
+ Odniesienie elementu textbox stosuje się dla list edycji menu. Ta własność jest tylko do odczytu i nakłada się tylko do montażu w menulist.
+
+ +

 

+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ menuBoxObject
+
+ Typ: + + nsIMenuBoxObject +
+
+ Referencja do nsIMenuBoxObject, który implementuje menu.
+
+
+
+
+ menupopup
+
+ Typ: + + element menupopup +
+
+ Referencja do menupopup stosowany przez menulist. Własność ta jest tylko do odczytu.
+
+
+
+
+ open
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu open.
+
+
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+
+ selectedItem
+
+ Typ: + + element +
+
+ Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie null. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własność selectedIndex lub zmieniona będzie przez użytkownika.
+
+
+
+
+ src
+
+ Typ: + + URL +
+
+ Pobiera i ustawia wartość atrybutu src.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
appendItem( label, value ) +
Zwraca typ: element +
Tworzy nową pozycję i dodaje ją na koniec istniejącej listy pozycji. Opcjonalnie posiada ustawioną wartość. Funkcja zwraca nowo utworzony element.
+
insertItemAt( index, label, value ) +
Zwraca typ: element +
Ta metoda tworzy nowy element listy i umieszcza go w określonej pozycji. Opcjonalnie można ustawić jego wartość. Nowy element jest zwracany. +
+
removeAllItems() +
Zwraca typ: nie zwraca wartości +
Usuwa wszystkie pozycje w menu. +
+


+

+
removeItemAt( index ) +
Zwraca typ: element +
Usuwa pozycję potomną w elemencie o określonym indeksie. Metoda zwraca usuniętą pozycję. +
+
+
+ select()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza cały tekst w polu tekstowym menulist. Ta metoda nakłada się tylko do list menu editable.
+
+

+

Podobne

+
Elementy +
menu, menubar, menuitem, menupopup, menuseparator +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULMenuListElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/menuseparator/index.html b/files/pl/mozilla/tech/xul/menuseparator/index.html new file mode 100644 index 0000000000..b203650234 --- /dev/null +++ b/files/pl/mozilla/tech/xul/menuseparator/index.html @@ -0,0 +1,149 @@ +--- +title: menuseparator +slug: Mozilla/Tech/XUL/menuseparator +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/menuseparator +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Stosujemy do tworzenia separatorów pomiędzy poszczególnymi pozycjami menu. Zazwyczaj rysuje cieniutką linie. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Własności +
accessible, control, selected +
+

Przykład

+
<menu label="Help">
+  <menupopup>
+    <menuitem label="Contents"/>
+    <menuseparator/>
+    <menuitem label="Release Notes"/>
+  </menupopup>
+</menu>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
menu, menubar, menuitem, menulist, menupopup +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/acceptdialog/index.html b/files/pl/mozilla/tech/xul/metoda/acceptdialog/index.html new file mode 100644 index 0000000000..86735171e0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/acceptdialog/index.html @@ -0,0 +1,18 @@ +--- +title: acceptDialog +slug: Mozilla/Tech/XUL/Metoda/acceptDialog +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/acceptDialog +--- +
+ « Dokumentacja XUL
+
+
+ acceptDialog()
+
+ Zwraca typ: nie zwraca wartości
+
+ Akceptuje okienko dialogowe i je zamyka, działa podobnie jak naciśnięcie przycisku OK.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/additemtoselection/index.html b/files/pl/mozilla/tech/xul/metoda/additemtoselection/index.html new file mode 100644 index 0000000000..c0b0e7cf9e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/additemtoselection/index.html @@ -0,0 +1,17 @@ +--- +title: addItemToSelection +slug: Mozilla/Tech/XUL/Metoda/addItemToSelection +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/addItemToSelection +--- +
« Dokumentacja XUL
+
addItemToSelection( item ) +
Zwraca typ: nie zwraca wartości +
Zaznacza daną pozycje, bez odznaczania innych pozycji aktualnie zaznaczonych. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/addpane/index.html b/files/pl/mozilla/tech/xul/metoda/addpane/index.html new file mode 100644 index 0000000000..77a2116e9e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/addpane/index.html @@ -0,0 +1,18 @@ +--- +title: addPane +slug: Mozilla/Tech/XUL/Metoda/addPane +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/addPane +--- +
+ « Dokumentacja XUL
+
+
+ addPane( prefpane )
+
+ Zwraca typ: nie zwraca wartości
+
+ Dołącza prefpane do listy okien.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/addprogresslistener/index.html b/files/pl/mozilla/tech/xul/metoda/addprogresslistener/index.html new file mode 100644 index 0000000000..a71a29fbc7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/addprogresslistener/index.html @@ -0,0 +1,18 @@ +--- +title: addProgressListener +slug: Mozilla/Tech/XUL/Metoda/addProgressListener +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/addProgressListener +--- +
+ « Dokumentacja XUL
+
+
+ addProgressListener( listener )
+
+ Zwraca typ: nie zwraca wartości
+
+ Dodaje do przeglądarki element nasłuchujący postęp, który będzie monitorował wczytywane dokumenty. Element nasłuchujący powinien implementować interfejs nsIWebProgressListener.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/addsession/index.html b/files/pl/mozilla/tech/xul/metoda/addsession/index.html new file mode 100644 index 0000000000..f2664cad88 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/addsession/index.html @@ -0,0 +1,17 @@ +--- +title: addSession +slug: Mozilla/Tech/XUL/Metoda/addSession +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/addSession +--- +
« Dokumentacja XUL
+
addSession( session ) +
Zwraca typ: nsIAutoCompleteSession +
Dodaje obiekt nowej sesji do widgetu autouzupełnienia. Ten możemy zastosować do utworzenia autouzupełnienia listy rezultatów dostosowanej do naszych wymagań. Argument powinien być obiektem, który implementuje interfejs nsIAutoCompleteSession. Ta metoda zwraca pasujący obiekt. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/addtab/index.html b/files/pl/mozilla/tech/xul/metoda/addtab/index.html new file mode 100644 index 0000000000..946a7d269c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/addtab/index.html @@ -0,0 +1,18 @@ +--- +title: addTab +slug: Mozilla/Tech/XUL/Metoda/addTab +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/addTab +--- +
« Dokumentacja XUL
+
addTab( URL, referrerURI, charset, postData, owner, allowThirdPartyFixup ) +
Zwraca typ: element tab +
Otwiera nową kartę, która ładuje stronę o określonym adresie URL. Pozostałe parametry są opcjonalne. Pasek kart pojawi się, jeśli to potrzebne. +
Zobacz przykład: Fragmenty kodu:Przeglądanie w kartach. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/advance/index.html b/files/pl/mozilla/tech/xul/metoda/advance/index.html new file mode 100644 index 0000000000..b0e8a5986b --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/advance/index.html @@ -0,0 +1,18 @@ +--- +title: advance +slug: Mozilla/Tech/XUL/Metoda/advance +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/advance +--- +
+ « Dokumentacja XUL
+
+
+ advance( pageID )
+
+ Zwraca typ: nie zwraca wartości
+
+ Wywołaj tą metodę, aby przejść stronę dalej. Jest równoważna naciśnięciu przycisku Dalej. Własność canAdvance musi być ustawiona na true dla strony, która będzie zmieniona. Kod w atrybucie onwizardnext jest wywołany przed zmianą strony. Argument pageID pozwala nam określić indeks strony do której mamy przejść. Dostarcza null jako argument przejścia do strony dalej w pewnej kolejności.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/advanceselectedtab/index.html b/files/pl/mozilla/tech/xul/metoda/advanceselectedtab/index.html new file mode 100644 index 0000000000..eaf4aab114 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/advanceselectedtab/index.html @@ -0,0 +1,17 @@ +--- +title: advanceSelectedTab +slug: Mozilla/Tech/XUL/Metoda/advanceSelectedTab +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/advanceSelectedTab +--- +
« Dokumentacja XUL
+
advanceSelectedTab( dir, wrap ) +
Zwraca typ: nie zwraca wartości +
Jeśli argument dir jest ustawiony na 1, aktualnie zaznaczona karta zmieni się w następnej karcie. Jeśli argument dir jest ustawiony na -1, aktualnie zaznaczona karta zmienia się w kartę poprzednią. Jeśli argument wrap jest true, będzie regulowało przewijaniem w koło, kiedy pierwsza lub ostatnia karta zostanie osiągnięta. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/appendcustomtoolbar/index.html b/files/pl/mozilla/tech/xul/metoda/appendcustomtoolbar/index.html new file mode 100644 index 0000000000..55bec836d8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/appendcustomtoolbar/index.html @@ -0,0 +1,17 @@ +--- +title: appendCustomToolbar +slug: Mozilla/Tech/XUL/Metoda/appendCustomToolbar +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/appendCustomToolbar +--- +
« Dokumentacja XUL
+
appendCustomToolbar( name, currentset ) +
Tylko w Firefoksie +
Zwraca typ: element +
Dodaje własny pasek narzędzi (toolbar) do toolbox z daną name. Możemy dostarczyć listę argumentów id pozycji paska narzędzi oddzieloną przecinkiem jako drugi argument, aby dodać domyślnie kilka pozycji. Metoda zwraca element DOM dla tworzonego paska narzędzi.
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/appendgroup/index.html b/files/pl/mozilla/tech/xul/metoda/appendgroup/index.html new file mode 100644 index 0000000000..232b074322 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/appendgroup/index.html @@ -0,0 +1,18 @@ +--- +title: appendGroup +slug: Mozilla/Tech/XUL/Metoda/appendGroup +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/appendGroup +--- +
« Dokumentacja XUL
+
appendGroup( group ) +
Zwraca typ: nie zwraca wartości +
Nie w Firefoksie +
Dodaje kilka nowych kart na koniec istniejących kart. Argument powinien być tablicą obiektów, jeden dla każdego dokumentu do wczytania. Obiekty mogą być definiowane w skrypcie i stanowić mogą własności URI dla adresu URL strony do wczytania. Własność referrerURI może także być opcjonalnie zastosowana do ustawienia odniesienia się do strony. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/appenditem/index.html b/files/pl/mozilla/tech/xul/metoda/appenditem/index.html new file mode 100644 index 0000000000..11e663c173 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/appenditem/index.html @@ -0,0 +1,38 @@ +--- +title: appendItem +slug: Mozilla/Tech/XUL/Metoda/appendItem +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/appendItem +--- +
« Dokumentacja XUL
+
appendItem( label, value ) +
Zwraca typ: element +
Tworzy nową pozycję i dodaje ją na koniec istniejącej listy pozycji. Opcjonalnie posiada ustawioną wartość. Funkcja zwraca nowo utworzony element.
+
+

Przykłady

+
<script language="javascript">
+function addItemsToList(){
+	var list = document.getElementById('myMenuList');
+
+	// dodaje pozycję tylko z etykietą
+	list.appendItem('One');
+
+	// dodaje pozycję z etykietą i wartością
+	list.appendItem('Two', 999);
+
+	// wybiera pierwsza pozycję
+	list.selectedIndex = 0;
+}
+</script>
+
+<button label="Dodaj pozycję" oncommand="addItemsToList()"/>
+<menulist id="myMenuList">
+  <menupopup/>
+</menulist>
+
+

Zobacz także

+

insertItemAt() i removeItemAt() +

+
diff --git a/files/pl/mozilla/tech/xul/metoda/blur/index.html b/files/pl/mozilla/tech/xul/metoda/blur/index.html new file mode 100644 index 0000000000..49660ab3d0 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/blur/index.html @@ -0,0 +1,18 @@ +--- +title: blur +slug: Mozilla/Tech/XUL/Metoda/blur +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/blur +--- +
« Dokumentacja XUL
+
blur() +
Zwraca typ: nie zwraca wartości +
Jeśli element jest "oznaczony" jako aktywny to oznaczenie jest usuwane. focus nie jest automatycznie umieszczana na żadnym elemencie. Podsumowując, jest używany do wywołania uchwytu onblur. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/cancel/index.html b/files/pl/mozilla/tech/xul/metoda/cancel/index.html new file mode 100644 index 0000000000..82786e99f3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/cancel/index.html @@ -0,0 +1,17 @@ +--- +title: cancel +slug: Mozilla/Tech/XUL/Metoda/cancel +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/cancel +--- +
« Dokumentacja XUL
+
cancel() +
Zwraca typ: nie zwraca wartości +
Wywołuje tą metodę do anulowania i zamknięcia kreatora. Kod w atrybucie onwizardcancel jest wywołany zanim okno kreatora zostanie anulowane. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/canceldialog/index.html b/files/pl/mozilla/tech/xul/metoda/canceldialog/index.html new file mode 100644 index 0000000000..e5e9400d27 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/canceldialog/index.html @@ -0,0 +1,17 @@ +--- +title: cancelDialog +slug: Mozilla/Tech/XUL/Metoda/cancelDialog +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/cancelDialog +--- +
« Dokumentacja XUL
+
cancelDialog() +
Zwraca typ: nie zwraca wartości +
Anuluje okienko dialogowe i je zamyka, działa podobnie jak naciśnięcie przycisku <tt>Anuluj</tt>. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/centerwindowonscreen/index.html b/files/pl/mozilla/tech/xul/metoda/centerwindowonscreen/index.html new file mode 100644 index 0000000000..a33451738d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/centerwindowonscreen/index.html @@ -0,0 +1,17 @@ +--- +title: centerWindowOnScreen +slug: Mozilla/Tech/XUL/Metoda/centerWindowOnScreen +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/centerWindowOnScreen +--- +
« Dokumentacja XUL
+
centerWindowOnScreen() +
Zwraca typ: nie zwraca wartości +
Ustawia okienko dialogowe na środku ekranu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/checkadjacentelement/index.html b/files/pl/mozilla/tech/xul/metoda/checkadjacentelement/index.html new file mode 100644 index 0000000000..bae1d47f2c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/checkadjacentelement/index.html @@ -0,0 +1,17 @@ +--- +title: checkAdjacentElement +slug: Mozilla/Tech/XUL/Metoda/checkAdjacentElement +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/checkAdjacentElement +--- +
« Dokumentacja XUL
+
checkAdjacentElement( dir ) +
Zwraca typ: nie zwraca wartości +
Odznacza aktualnie zaznaczony przycisk radio w grupie i zaznacza przyległy. Jeśli argument dir jest true, to następny przycisk opcji jest zaznaczony. Jeśli jest false, to zostanie poprzedni przycisk opcji zaznaczony. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/clearresults/index.html b/files/pl/mozilla/tech/xul/metoda/clearresults/index.html new file mode 100644 index 0000000000..1374ce5d24 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/clearresults/index.html @@ -0,0 +1,17 @@ +--- +title: clearResults +slug: Mozilla/Tech/XUL/Metoda/clearResults +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/clearResults +--- +
« Dokumentacja XUL
+
clearResults() +
Zwraca typ: ??? +
Czyści listę z wynikiem. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/clearselection/index.html b/files/pl/mozilla/tech/xul/metoda/clearselection/index.html new file mode 100644 index 0000000000..0971276416 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/clearselection/index.html @@ -0,0 +1,16 @@ +--- +title: clearSelection +slug: Mozilla/Tech/XUL/Metoda/clearSelection +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/clearSelection +--- +
« Dokumentacja XUL
+
clearSelection() +
Zwraca typ: nie zwraca wartości
Odznacza wszystkie pozycje. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/click/index.html b/files/pl/mozilla/tech/xul/metoda/click/index.html new file mode 100644 index 0000000000..5df2725846 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/click/index.html @@ -0,0 +1,18 @@ +--- +title: click +slug: Mozilla/Tech/XUL/Metoda/click +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/click +--- +
« Dokumentacja XUL
+
click() +
Zwraca typ: nie zwraca wartości +
Wywołuje uchwyt onclick dla elementu. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/close/index.html b/files/pl/mozilla/tech/xul/metoda/close/index.html new file mode 100644 index 0000000000..067ea03177 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/close/index.html @@ -0,0 +1,17 @@ +--- +title: close +slug: Mozilla/Tech/XUL/Metoda/close +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/close +--- +
« Dokumentacja XUL
+
close +
Zwraca typ: brak +
Zamyka powiadomienie i usuwa je z jego otaczających znaczników <notificationbox>. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/collapsetoolbar/index.html b/files/pl/mozilla/tech/xul/metoda/collapsetoolbar/index.html new file mode 100644 index 0000000000..2be74c5249 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/collapsetoolbar/index.html @@ -0,0 +1,18 @@ +--- +title: collapseToolbar +slug: Mozilla/Tech/XUL/Metoda/collapseToolbar +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/collapseToolbar +--- +
« Dokumentacja XUL
+
collapseToolbar( toolbar ) +
Nie w Firefoksie +
Zwraca typ: nie zwraca wartości +
Zawija dany toolbar, który powinien być zawarty wewnątrz toolbox. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/decrease/index.html b/files/pl/mozilla/tech/xul/metoda/decrease/index.html new file mode 100644 index 0000000000..4a6b5bcd1e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/decrease/index.html @@ -0,0 +1,19 @@ +--- +title: decrease +slug: Mozilla/Tech/XUL/Metoda/decrease +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/decrease +--- +
« Dokumentacja XUL
+
decrease()
+
Metoda: scale
+
Zwraca typ: nie zwraca wartości +
Wartość zmniejszająca się skali poprzez przyrost. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/decreasepage/index.html b/files/pl/mozilla/tech/xul/metoda/decreasepage/index.html new file mode 100644 index 0000000000..0c4ad07268 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/decreasepage/index.html @@ -0,0 +1,18 @@ +--- +title: decreasePage +slug: Mozilla/Tech/XUL/Metoda/decreasePage +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/decreasePage +--- +
« Dokumentacja XUL
+
decreasePage()
+
Metoda: scale
+
Zwraca typ: nie zwraca wartości +
Wartość zmniejszająca się skali poprzez przyrost strony.
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/docommand/index.html b/files/pl/mozilla/tech/xul/metoda/docommand/index.html new file mode 100644 index 0000000000..738ea2e98d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/docommand/index.html @@ -0,0 +1,18 @@ +--- +title: doCommand +slug: Mozilla/Tech/XUL/Metoda/doCommand +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/doCommand +--- +
« Dokumentacja XUL
+
doCommand() +
Zwraca typ: nie zwraca wartości +
Wykonuje zdarzenie command dla elementu. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/ensureelementisvisible/index.html b/files/pl/mozilla/tech/xul/metoda/ensureelementisvisible/index.html new file mode 100644 index 0000000000..058b39f3f6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/ensureelementisvisible/index.html @@ -0,0 +1,17 @@ +--- +title: ensureElementIsVisible +slug: Mozilla/Tech/XUL/Metoda/ensureElementIsVisible +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/ensureElementIsVisible +--- +
« Dokumentacja XUL
+
ensureElementIsVisible( element ) +
Zwraca typ: nie zwraca wartości +
Jeśli określony element nie jest aktualnie widziany przez użytkownika, to wyświetlane pozycje są przewijane, do momentu, aż będzie on widoczny. Jeśli pozycja jest już widoczna, przewijanie nie będzie miało miejsca. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/ensureindexisvisible/index.html b/files/pl/mozilla/tech/xul/metoda/ensureindexisvisible/index.html new file mode 100644 index 0000000000..03595e5cb6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/ensureindexisvisible/index.html @@ -0,0 +1,17 @@ +--- +title: ensureIndexIsVisible +slug: Mozilla/Tech/XUL/Metoda/ensureIndexIsVisible +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/ensureIndexIsVisible +--- +
« Dokumentacja XUL
+
ensureIndexIsVisible( index ) +
Zwraca typ: nie zwraca wartości +
Jeśli pozycja w określonym indeksie nie jest aktualnie widoczna, to użytkownik wyświetla tą pozycję poprzez przewinięcie okna. Jeśli natomiast pozycja jest widoczna, nie będzie możliwe żadne przewijanie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/ensureselectedelementisvisible/index.html b/files/pl/mozilla/tech/xul/metoda/ensureselectedelementisvisible/index.html new file mode 100644 index 0000000000..aadd4f54dd --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/ensureselectedelementisvisible/index.html @@ -0,0 +1,16 @@ +--- +title: ensureSelectedElementIsVisible +slug: Mozilla/Tech/XUL/Metoda/ensureSelectedElementIsVisible +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/ensureSelectedElementIsVisible +--- +
« Dokumentacja XUL
+
ensureSelectedElementIsVisible() +
Zwraca typ: nie zwraca wartości +
Jeśli aktualnie zaznaczony element w pudełku listy jest aktualnie nie widoczny dla użytkownika, to widok pudełka jest przewijany, aż się on pojawi. Jeśli pozycja jest widoczna, to nie pojawią się paski przewijania.
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/expandtoolbar/index.html b/files/pl/mozilla/tech/xul/metoda/expandtoolbar/index.html new file mode 100644 index 0000000000..90dfd6348a --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/expandtoolbar/index.html @@ -0,0 +1,18 @@ +--- +title: expandToolbar +slug: Mozilla/Tech/XUL/Metoda/expandToolbar +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/expandToolbar +--- +
« Dokumentacja XUL
+
expandToolbar( toolbar ) +
Nie w Firefoksie +
Zwraca typ: nie zwraca wartości +
Rozwija dany toolbar, który powinien być zawarty w toolbox. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/extra1/index.html b/files/pl/mozilla/tech/xul/metoda/extra1/index.html new file mode 100644 index 0000000000..de063ca42d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/extra1/index.html @@ -0,0 +1,17 @@ +--- +title: extra1 +slug: Mozilla/Tech/XUL/Metoda/extra1 +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/extra1 +--- +
« Dokumentacja XUL
+
extra1() +
Zwraca typ: nie zwraca wartości +
Wywołanie tej metody symuluje naciśnięcie dodatkowego przycisku (<tt>extra1</tt>). Kod w atrybucie onextra1 zostanie wywołany. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/extra2/index.html b/files/pl/mozilla/tech/xul/metoda/extra2/index.html new file mode 100644 index 0000000000..7b2939494a --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/extra2/index.html @@ -0,0 +1,17 @@ +--- +title: extra2 +slug: Mozilla/Tech/XUL/Metoda/extra2 +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/extra2 +--- +
« Dokumentacja XUL
+
extra2() +
Zwraca typ: nie zwraca wartości +
Wywołanie tej metody symuluje naciśnięcie dodatkowego przycisku (<tt>extra2</tt>). Kod w atrybucie onextra2 zostanie wywołany. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/focus/index.html b/files/pl/mozilla/tech/xul/metoda/focus/index.html new file mode 100644 index 0000000000..eaf8f68217 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/focus/index.html @@ -0,0 +1,18 @@ +--- +title: focus +slug: Mozilla/Tech/XUL/Metoda/focus +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/focus +--- +
« Dokumentacja XUL
+
focus() +
Zwraca typ: nie zwraca wartości +
Przydziela fokus do elementu, jeśli może być fokus zaakceptowany. Uchwyt obiektu onfocus jest wywołany. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getbrowserfordocument/index.html b/files/pl/mozilla/tech/xul/metoda/getbrowserfordocument/index.html new file mode 100644 index 0000000000..b454173534 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getbrowserfordocument/index.html @@ -0,0 +1,21 @@ +--- +title: getBrowserForDocument +slug: Mozilla/Tech/XUL/Metoda/getBrowserForDocument +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getBrowserForDocument +--- +
+ « Dokumentacja XUL
+
+
+ getBrowserForDocument( document )
+
+ Typ: + + element browser +
+
+ Zwraca browser dla określonego dokumentu.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getbrowserfortab/index.html b/files/pl/mozilla/tech/xul/metoda/getbrowserfortab/index.html new file mode 100644 index 0000000000..df231cfc2e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getbrowserfortab/index.html @@ -0,0 +1,17 @@ +--- +title: getBrowserForTab +slug: Mozilla/Tech/XUL/Metoda/getBrowserForTab +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getBrowserForTab +--- +
« Dokumentacja XUL
+
getBrowserForTab( tab ) +
Typ: element browser +
Zwraca browser dla określonego elementu tab. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getbutton/index.html b/files/pl/mozilla/tech/xul/metoda/getbutton/index.html new file mode 100644 index 0000000000..088656af89 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getbutton/index.html @@ -0,0 +1,17 @@ +--- +title: getButton +slug: Mozilla/Tech/XUL/Metoda/getButton +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getButton +--- +
« Dokumentacja XUL
+
getButton( typ ) +
Zwraca typ: element button +
Zwraca element button o zadanym typie, znajdujący się w okienku dialogowym. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getdefaultsession/index.html b/files/pl/mozilla/tech/xul/metoda/getdefaultsession/index.html new file mode 100644 index 0000000000..dff9f56348 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getdefaultsession/index.html @@ -0,0 +1,17 @@ +--- +title: getDefaultSession +slug: Mozilla/Tech/XUL/Metoda/getDefaultSession +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getDefaultSession +--- +
« Dokumentacja XUL
+
getDefaultSession +
Zwraca typ: nazwa sesji +
Zwraca nazwę pierwszej sesji z dostępnych rezultatów. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/geteditor/index.html b/files/pl/mozilla/tech/xul/metoda/geteditor/index.html new file mode 100644 index 0000000000..7cac0ec61e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/geteditor/index.html @@ -0,0 +1,17 @@ +--- +title: getEditor +slug: Mozilla/Tech/XUL/Metoda/getEditor +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getEditor +--- +
« Dokumentacja XUL
+
getEditor( window ) +
Zwraca typ: nsIEditor +
Zwraca interfejs edycji dla edytora, który zawiera szereg metod pozwalających na manipulację dokumentem. Jako argument należy przekazać contentWindow edytora. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getelementsbyattribute/index.html b/files/pl/mozilla/tech/xul/metoda/getelementsbyattribute/index.html new file mode 100644 index 0000000000..69617d4739 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getelementsbyattribute/index.html @@ -0,0 +1,18 @@ +--- +title: getElementsByAttribute +slug: Mozilla/Tech/XUL/Metoda/getElementsByAttribute +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getElementsByAttribute +--- +
« Dokumentacja XUL
+
getElementsByAttribute( attrib, value ) +
Zwraca typ: DOM NodeList +
Zwraca tablicę wszystkich elementów potomnych elementu, które posiadają dany atrybut poprzez ustawienie danej wartości poprzez drugi argument. Jeśli drugi argument jest '*', to atrybut może mieć ustawioną jakąkolwiek wartość. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/gethtmleditor/index.html b/files/pl/mozilla/tech/xul/metoda/gethtmleditor/index.html new file mode 100644 index 0000000000..35e3c2a94c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/gethtmleditor/index.html @@ -0,0 +1,17 @@ +--- +title: getHTMLEditor +slug: Mozilla/Tech/XUL/Metoda/getHTMLEditor +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getHTMLEditor +--- +
« Dokumentacja XUL
+
getHTMLEditor( window ) +
Zwraca typ: nsIHTMLEditor +
Zwraca interfejs edycji HTML dla edytora, który zawiera szereg metod pozwalających na manipulację dokumentem HTML. Jako argument należy przekazać contentWindow edytora. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getindexoffirstvisiblerow/index.html b/files/pl/mozilla/tech/xul/metoda/getindexoffirstvisiblerow/index.html new file mode 100644 index 0000000000..da9e3fc3e3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getindexoffirstvisiblerow/index.html @@ -0,0 +1,17 @@ +--- +title: getIndexOfFirstVisibleRow +slug: Mozilla/Tech/XUL/Metoda/getIndexOfFirstVisibleRow +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getIndexOfFirstVisibleRow +--- +
« Dokumentacja XUL
+
getNumberOfVisibleRows() +
Zwraca typ: integer +
Zwraca liczbę wierszy, które są aktualnie widoczne dla użytkownika. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getindexofitem/index.html b/files/pl/mozilla/tech/xul/metoda/getindexofitem/index.html new file mode 100644 index 0000000000..c0c6fbfbab --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getindexofitem/index.html @@ -0,0 +1,17 @@ +--- +title: getIndexOfItem +slug: Mozilla/Tech/XUL/Metoda/getIndexOfItem +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getIndexOfItem +--- +
« Dokumentacja XUL
+
getIndexOfItem( item ) +
Zwraca typ: integer +
Zwraca od zera pozycję określonych pozycji. Pozycje są numerowane zaczynając od pierwszej wyświetlanej pozycji na liście. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getitematindex/index.html b/files/pl/mozilla/tech/xul/metoda/getitematindex/index.html new file mode 100644 index 0000000000..e52b2bc80f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getitematindex/index.html @@ -0,0 +1,17 @@ +--- +title: getItemAtIndex +slug: Mozilla/Tech/XUL/Metoda/getItemAtIndex +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getItemAtIndex +--- +
« Dokumentacja XUL
+
getItemAtIndex( index ) +
Zwraca typ: element +
Zwraca element, który jest o określonym indeksie. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getnextitem/index.html b/files/pl/mozilla/tech/xul/metoda/getnextitem/index.html new file mode 100644 index 0000000000..e8f115b408 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getnextitem/index.html @@ -0,0 +1,17 @@ +--- +title: getNextItem +slug: Mozilla/Tech/XUL/Metoda/getNextItem +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getNextItem +--- +
« Dokumentacja XUL
+
getNextItem( startItem, delta ) +
Zwraca typ: element +
Metoda ta zwraca pozycję danej odległości (delta) po określonym startItem lub zwraca null, jeśli takiej pozycja nie istnieje. Ten przykład będzie zwracał pozycję dwa wiersze po jakiejśPozycji: getNextItem ( someItem, 2 ); +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getnotificationbox/index.html b/files/pl/mozilla/tech/xul/metoda/getnotificationbox/index.html new file mode 100644 index 0000000000..63de0af7bc --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getnotificationbox/index.html @@ -0,0 +1,21 @@ +--- +title: getNotificationBox +slug: Mozilla/Tech/XUL/Metoda/getNotificationBox +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getNotificationBox +--- +
+ « Dokumentacja XUL
+
+
+ getNotificationBox( browser )
+
+ Typ: + + element notificationbox +
+
+ Zwraca notificationbox dla określonego elementu browser.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getnumberofvisiblerows/index.html b/files/pl/mozilla/tech/xul/metoda/getnumberofvisiblerows/index.html new file mode 100644 index 0000000000..600ef7d38b --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getnumberofvisiblerows/index.html @@ -0,0 +1,17 @@ +--- +title: getNumberOfVisibleRows +slug: Mozilla/Tech/XUL/Metoda/getNumberOfVisibleRows +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getNumberOfVisibleRows +--- +
« Dokumentacja XUL
+
getNumberOfVisibleRows() +
Zwraca typ: integer +
Zwraca liczbę wierszy, które są aktualnie widoczne dla użytkownika. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getpagebyid/index.html b/files/pl/mozilla/tech/xul/metoda/getpagebyid/index.html new file mode 100644 index 0000000000..7132d5158e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getpagebyid/index.html @@ -0,0 +1,17 @@ +--- +title: getPageById +slug: Mozilla/Tech/XUL/Metoda/getPageById +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getPageById +--- +
« Dokumentacja XUL
+
getPageById( pageID ) +
Zwraca typ: element wizardpage +
Zwraca element wizardpage przesyłając go do określonej pageID. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getpreviousitem/index.html b/files/pl/mozilla/tech/xul/metoda/getpreviousitem/index.html new file mode 100644 index 0000000000..81ac9d8ae2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getpreviousitem/index.html @@ -0,0 +1,17 @@ +--- +title: getPreviousItem +slug: Mozilla/Tech/XUL/Metoda/getPreviousItem +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getPreviousItem +--- +
« Dokumentacja XUL
+
getPreviousItem( startItem, delta ) +
Zwraca typ: element +
Metoda zwraca pozycję danej odległości (delta) przed określonym startItem lub zwraca null, jeśli taka pozycja nie istnieje. Ten przykład zwróci pozycje pięć wierszy przed someItem: getPreviousItem ( someItem, 5 ); +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getresultat/index.html b/files/pl/mozilla/tech/xul/metoda/getresultat/index.html new file mode 100644 index 0000000000..6e29d9b53c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getresultat/index.html @@ -0,0 +1,17 @@ +--- +title: getResultAt +slug: Mozilla/Tech/XUL/Metoda/getResultAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getResultAt +--- +
« Dokumentacja XUL
+
getResultAt( index ) +
Zwraca typ: nsIAutoCompleteItem +
Zwraca wynik pozycji w określonym indeksie. Pozycja będzie wartością typu nsIAutoCompleteItem. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getresultcount/index.html b/files/pl/mozilla/tech/xul/metoda/getresultcount/index.html new file mode 100644 index 0000000000..e767a660e4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getresultcount/index.html @@ -0,0 +1,17 @@ +--- +title: getResultCount +slug: Mozilla/Tech/XUL/Metoda/getResultCount +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getResultCount +--- +
« Dokumentacja XUL
+
getResultCount( session ) +
Zwraca typ:: ??? +
Zwraca liczbę rezultatów (Argument session jest is obecnie ignorowany). +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getresultvalueat/index.html b/files/pl/mozilla/tech/xul/metoda/getresultvalueat/index.html new file mode 100644 index 0000000000..ccbda65b7c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getresultvalueat/index.html @@ -0,0 +1,21 @@ +--- +title: getResultValueAt +slug: Mozilla/Tech/XUL/Metoda/getResultValueAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getResultValueAt +--- +
+ « Dokumentacja XUL
+
+
+ getResultValueAt( index )
+
+ Zwraca typ: + + wartość wyniku +
+
+ Zwraca wartość wyniku w określonym indeksie. Pozycja będzie przesłana do tekstu tej pozycji, która pojawi się w okienku wyskakującym (popup).
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getrowcount/index.html b/files/pl/mozilla/tech/xul/metoda/getrowcount/index.html new file mode 100644 index 0000000000..397ff26de7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getrowcount/index.html @@ -0,0 +1,18 @@ +--- +title: getRowCount +slug: Mozilla/Tech/XUL/Metoda/getRowCount +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getRowCount +--- +
« Dokumentacja XUL
+
getRowCount() +
Zwraca typ: integer +
Zwraca ogólną liczbę wierszy w elemencie, nieważne ile wierszy jest wyświetlanych. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getsearchat/index.html b/files/pl/mozilla/tech/xul/metoda/getsearchat/index.html new file mode 100644 index 0000000000..5c467dab57 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getsearchat/index.html @@ -0,0 +1,21 @@ +--- +title: getSearchAt +slug: Mozilla/Tech/XUL/Metoda/getSearchAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getSearchAt +--- +
+ « Dokumentacja XUL
+
+
+ getSearchAt( index )
+
+ Zwraca typ: + + string +
+
+ Zwraca komponent szukania z danym indeksem. Komponenty są ustawiane z atrybutem autocompletesearch.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getsession/index.html b/files/pl/mozilla/tech/xul/metoda/getsession/index.html new file mode 100644 index 0000000000..1e482c99ec --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getsession/index.html @@ -0,0 +1,21 @@ +--- +title: getSession +slug: Mozilla/Tech/XUL/Metoda/getSession +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getSession +--- +
+ « Dokumentacja XUL
+
+
+ getSession( session )
+
+ Zwraca typ: + + nsIAutoCompleteSession +
+
+ Zwraca obiekt sesji z danym indeksem. Będzie zwrócony obiekt typu nsIAutoCompleteSession.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getsessionbyname/index.html b/files/pl/mozilla/tech/xul/metoda/getsessionbyname/index.html new file mode 100644 index 0000000000..2bceb36b9e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getsessionbyname/index.html @@ -0,0 +1,21 @@ +--- +title: getSessionByName +slug: Mozilla/Tech/XUL/Metoda/getSessionByName +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getSessionByName +--- +
+ « Dokumentacja XUL
+
+
+ getSessionByName( name )
+
+ Zwraca typ: + + nsIAutoCompleteSession +
+
+ Zwraca obiekt sesji wraz z daną nazwą. Będzie zwracał obiekt typu nsIAutoCompleteSession.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getsessionresultat/index.html b/files/pl/mozilla/tech/xul/metoda/getsessionresultat/index.html new file mode 100644 index 0000000000..7870bbfab7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getsessionresultat/index.html @@ -0,0 +1,21 @@ +--- +title: getSessionResultAt +slug: Mozilla/Tech/XUL/Metoda/getSessionResultAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getSessionResultAt +--- +
+ « Dokumentacja XUL
+
+
+ getSessionResultAt( session, index )
+
+ Zwraca typ: + + pozycja wyniku +
+
+ Zwraca pozycję wyniku w określonym index dla określonej session.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getsessionstatusat/index.html b/files/pl/mozilla/tech/xul/metoda/getsessionstatusat/index.html new file mode 100644 index 0000000000..983f616aa3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getsessionstatusat/index.html @@ -0,0 +1,21 @@ +--- +title: getSessionStatusAt +slug: Mozilla/Tech/XUL/Metoda/getSessionStatusAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getSessionStatusAt +--- +
+ « Dokumentacja XUL
+
+
+ getSessionStatusAt( index )
+
+ Zwraca typ: + + ??? +
+
+ Zwraca status dla obiektu sesji z danego indeksu.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getsessionvalueat/index.html b/files/pl/mozilla/tech/xul/metoda/getsessionvalueat/index.html new file mode 100644 index 0000000000..ca9557e1f8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getsessionvalueat/index.html @@ -0,0 +1,21 @@ +--- +title: getSessionValueAt +slug: Mozilla/Tech/XUL/Metoda/getSessionValueAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getSessionValueAt +--- +
+ « Dokumentacja XUL
+
+
+ getSessionValueAt( session, index )
+
+ Zwraca typ: + + wartość wyniku/rezultatu +
+
+ Zwraca wartość rezultatu w określonym index dla określonej session.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/getstring/index.html b/files/pl/mozilla/tech/xul/metoda/getstring/index.html new file mode 100644 index 0000000000..cd6466470d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/getstring/index.html @@ -0,0 +1,21 @@ +--- +title: getString +slug: Mozilla/Tech/XUL/Metoda/getString +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/getString +--- +
+ « Dokumentacja XUL
+
+
+ getString( key )
+
+ Zwraca typ: + + string +
+
+ Zwraca łańcuch znaków z daną nazwą key z łańcucha znaków paczki (boundle).
+
diff --git a/files/pl/mozilla/tech/xul/metoda/goback/index.html b/files/pl/mozilla/tech/xul/metoda/goback/index.html new file mode 100644 index 0000000000..726e6c4242 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/goback/index.html @@ -0,0 +1,17 @@ +--- +title: goBack +slug: Mozilla/Tech/XUL/Metoda/goBack +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goBack +--- +
« Dokumentacja XUL
+
goBack() +
Zwraca typ: nie zwraca wartości +
Przejście o jedną stronę wstecz w historii. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/gobackgroup/index.html b/files/pl/mozilla/tech/xul/metoda/gobackgroup/index.html new file mode 100644 index 0000000000..881fa5f4ef --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/gobackgroup/index.html @@ -0,0 +1,23 @@ +--- +title: goBackGroup +slug: Mozilla/Tech/XUL/Metoda/goBackGroup +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goBackGroup +--- +
+ « Dokumentacja XUL
+
+
+ goBackGroup()
+
+ Nie w Firefoksie
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zwraca poprzednią grupę kart.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/godown/index.html b/files/pl/mozilla/tech/xul/metoda/godown/index.html new file mode 100644 index 0000000000..392d89c3f7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/godown/index.html @@ -0,0 +1,21 @@ +--- +title: goDown +slug: Mozilla/Tech/XUL/Metoda/goDown +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goDown +--- +
+ « Dokumentacja XUL
+
+
+ goDown()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przenosi zaznaczenie w dół o jedną pozycje.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/goforward/index.html b/files/pl/mozilla/tech/xul/metoda/goforward/index.html new file mode 100644 index 0000000000..b3b721e948 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/goforward/index.html @@ -0,0 +1,17 @@ +--- +title: goForward +slug: Mozilla/Tech/XUL/Metoda/goForward +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goForward +--- +
« Dokumentacja XUL
+
goForward() +
Zwraca typ: nie zwraca wartości +
Przejście o jedną stronę do przodu w historii. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/goforwardgroup/index.html b/files/pl/mozilla/tech/xul/metoda/goforwardgroup/index.html new file mode 100644 index 0000000000..c5ac95be28 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/goforwardgroup/index.html @@ -0,0 +1,23 @@ +--- +title: goForwardGroup +slug: Mozilla/Tech/XUL/Metoda/goForwardGroup +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goForwardGroup +--- +
+ « Dokumentacja XUL
+
+
+ goForwardGroup()
+
+ Nie w Firefoksie
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Idzie dalej do następnej grupy kart.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/gohome/index.html b/files/pl/mozilla/tech/xul/metoda/gohome/index.html new file mode 100644 index 0000000000..93293ad7cb --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/gohome/index.html @@ -0,0 +1,17 @@ +--- +title: goHome +slug: Mozilla/Tech/XUL/Metoda/goHome +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goHome +--- +
« Dokumentacja XUL
+
goHome() +
Zwraca typ: nie zwraca wartości +
Wczytuje stronę startową użytkownika do przeglądarki. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/goto/index.html b/files/pl/mozilla/tech/xul/metoda/goto/index.html new file mode 100644 index 0000000000..f7f9e0ebb9 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/goto/index.html @@ -0,0 +1,21 @@ +--- +title: goTo +slug: Mozilla/Tech/XUL/Metoda/goTo +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goTo +--- +
+ « Dokumentacja XUL
+
+
+ goTo( pageID )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Ta metoda jest stosowana do zmiany, która strona jest aktualnie wyświetlana, określona poprzez argument pageID. Strona będzie zmieniona niezależnie od własności canAdvance lub canRewind. Atrybuty onwizardback i onwizardnext nie są wywoływane podczas użycia tej metody.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/gotoindex/index.html b/files/pl/mozilla/tech/xul/metoda/gotoindex/index.html new file mode 100644 index 0000000000..9c59fd3fd6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/gotoindex/index.html @@ -0,0 +1,17 @@ +--- +title: gotoIndex +slug: Mozilla/Tech/XUL/Metoda/gotoIndex +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/gotoIndex +--- +
« Dokumentacja XUL
+
gotoIndex( index ) +
Zwraca typ: nie zwraca wartości +
Przechodzi do strony o podanym indeksie w historii. Użyj wartości dodatniej, by przejść w przód, a ujemnej by w tył. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/goup/index.html b/files/pl/mozilla/tech/xul/metoda/goup/index.html new file mode 100644 index 0000000000..4f537f3912 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/goup/index.html @@ -0,0 +1,21 @@ +--- +title: goUp +slug: Mozilla/Tech/XUL/Metoda/goUp +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/goUp +--- +
+ « Dokumentacja XUL
+
+
+ goUp()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przenosi zaznaczenie do góry o jedną pozycję.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/hasuservalue/index.html b/files/pl/mozilla/tech/xul/metoda/hasuservalue/index.html new file mode 100644 index 0000000000..55a48469bc --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/hasuservalue/index.html @@ -0,0 +1,21 @@ +--- +title: hasUserValue +slug: Mozilla/Tech/XUL/Metoda/hasUserValue +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/hasUserValue +--- +
+ « Dokumentacja XUL
+
+
+ hasUserValue()
+
+ Zwraca typ: + + boolean +
+
+ Zwraca true, jeśli preferencje zostały zmienione z domyślnej wartości.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/hidepopup/index.html b/files/pl/mozilla/tech/xul/metoda/hidepopup/index.html new file mode 100644 index 0000000000..5a58b60262 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/hidepopup/index.html @@ -0,0 +1,20 @@ +--- +title: hidePopup +slug: Mozilla/Tech/XUL/Metoda/hidePopup +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/hidePopup +--- +
« Dokumentacja XUL
+
hidePopup()
+
Metoda: popup, menupopup, tooltip
+
Zwraca typ: nie zwraca wartości +
Natychmiast zamyka wyskakujące okienko. +
+


+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/increase/index.html b/files/pl/mozilla/tech/xul/metoda/increase/index.html new file mode 100644 index 0000000000..d4f022fa56 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/increase/index.html @@ -0,0 +1,27 @@ +--- +title: increase +slug: Mozilla/Tech/XUL/Metoda/increase +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/increase +--- +
+ « Dokumentacja XUL
+
+
+
+ Metoda: scale textbox
+
+
+
+
+ increase()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wartość wzrastająca na increment poprzez przyrost.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/increasepage/index.html b/files/pl/mozilla/tech/xul/metoda/increasepage/index.html new file mode 100644 index 0000000000..8ad5726fb2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/increasepage/index.html @@ -0,0 +1,19 @@ +--- +title: increasePage +slug: Mozilla/Tech/XUL/Metoda/increasePage +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/increasePage +--- +
« Dokumentacja XUL
+
increasePage()
+
Metoda: scale
+
Zwraca typ: nie zwraca wartości +
Wartość wzrastająca na skali poprzez przyrost strony. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/index.html b/files/pl/mozilla/tech/xul/metoda/index.html new file mode 100644 index 0000000000..853d557fcb --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/index.html @@ -0,0 +1,147 @@ +--- +title: Metody +slug: Mozilla/Tech/XUL/Metoda +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method +--- +

« Dokumentacja XUL

+ +

Powiązane metody elementu DOM

+ +
+
diff --git a/files/pl/mozilla/tech/xul/metoda/insertitem/index.html b/files/pl/mozilla/tech/xul/metoda/insertitem/index.html new file mode 100644 index 0000000000..e14e9bb854 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/insertitem/index.html @@ -0,0 +1,27 @@ +--- +title: insertItem +slug: Mozilla/Tech/XUL/Metoda/insertItem +tags: + - Dokumentacja_XUL + - Metody_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Method/insertItem +--- +
« Dokumentacja XUL
+ +
+
insertItem( id, beforeNode, wrapper, beforePermanent )
+
Tylko Firefox
+
Zwraca typ:element
+
Dodaje pozycję z danym id do paska narzędzi toolbar. Nowa pozycja jest dodawana tuż przed pozycja daną przez drugi argument. Jeśli drugi argument jest null, lecz argument beforePermanent jest true, to pozycja jest dodawana na początku paska narzędzi przed pierwszą stałą pozycję paska. Inaczej, jeśli argument beforePermanent jest false, nowa pozycja jest dodawana na koniec paska narzędzi. Trzeci argument możemy zastosować do wrap nowej pozycji w kolejnym elemencie. Zazwyczaj ostatni argument będzie typu null jako jego główny argument do zastosowania w oknie użytkownika.
+
+ +

id powinno być dopasowane do elementu na pasku narzędzi toolbarpalette. Kilka określonych id mogą być stosowane do tworzenia specjalnych przestrzeni dla pozycji paska:

+ + + +

Metoda zwraca element DOM dla tworzonej pozycji.

diff --git a/files/pl/mozilla/tech/xul/metoda/insertitemat/index.html b/files/pl/mozilla/tech/xul/metoda/insertitemat/index.html new file mode 100644 index 0000000000..c57ead3b5d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/insertitemat/index.html @@ -0,0 +1,50 @@ +--- +title: insertItemAt +slug: Mozilla/Tech/XUL/Metoda/insertItemAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/insertItemAt +--- +
« Dokumentacja XUL
+
insertItemAt( index, label, value ) +
Zwraca typ: element +
Ta metoda tworzy nowy element listy i umieszcza go w określonej pozycji. Opcjonalnie można ustawić jego wartość. Nowy element jest zwracany. +
+
+

Uwaga: Nie można umieszczać elementu listy pod indeksem, który nie istnieje np: próbując umieścić go na końcu z element.getRowCount() + 1 +

+

Przykład

+
<!-- Ten przykład umieszcza element listy w zaznaczonej pozycję lub dołącza go, następnie zaznacza nowo powstały element listy -->
+<script language="javascript">
+function insertItemToList(){
+
+    var myListBox = document.getElementById('myListBox');
+
+    // tworzy datę do pobrania etykiety i wartości
+    var someDate = new Date();
+
+    if(myListBox.selectedIndex == -1){
+        // żaden element nie został zaznaczona na liście, więc dołączamy ją na koniec
+        myListBox.appendItem( someDate.toLocaleTimeString(), someDate.getTime() );
+        var newIndex = myListBox.getRowCount()  -1
+    }else{
+        // element listy został zaznaczony, więc umieść na zaznaczonej pozycji
+        var newIndex =  myListBox.selectedIndex;
+        myListBox.insertItemAt(newIndex, someDate.toLocaleTimeString(), someDate.getTime());
+    }
+
+    // zaznacza nową utworzoną pozycję
+    myListBox.selectedIndex = newIndex;
+}
+</script>
+
+<button label="Umieść element w zaznaczonym miejscu" oncommand="insertItemToList()"/>
+<listbox id="myListBox">
+    <listitem label="foo"/>
+</listbox>
+
+

Zobacz także

+

appendItem() i removeItemAt() +

+
diff --git a/files/pl/mozilla/tech/xul/metoda/invertselection/index.html b/files/pl/mozilla/tech/xul/metoda/invertselection/index.html new file mode 100644 index 0000000000..fc3d42e750 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/invertselection/index.html @@ -0,0 +1,21 @@ +--- +title: invertSelection +slug: Mozilla/Tech/XUL/Metoda/invertSelection +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/invertSelection +--- +
+ « Dokumentacja XUL
+
+
+ invertSelection()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Odwraca status wszystkich zaznaczonych pozycji. Pozycja zaznaczona staje się odznaczona oraz odznaczona pozycja staje się zaznaczoną.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/loadonetab/index.html b/files/pl/mozilla/tech/xul/metoda/loadonetab/index.html new file mode 100644 index 0000000000..7a84e4eda5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/loadonetab/index.html @@ -0,0 +1,21 @@ +--- +title: loadOneTab +slug: Mozilla/Tech/XUL/Metoda/loadOneTab +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/loadOneTab +--- +
+ « Dokumentacja XUL
+
+
+ loadOneTab( URL, referrerURI, charset, postData, loadInBackground, allowThirdPartyFixup )
+
+ Zwraca typ: + + element tab +
+
+ Otwiera nową kartę, która ładuje stronę o określonym adresie URL. Pozostałe parametry są opcjonalne. Pasek kart pojawi się, jeśli to potrzebne. Metoda ta działa tak samo, jak addTab z tą różnicą, że posiada parametr loadInBackground, który pozwala wybrać, czy otworzyć nową kartę w tle lub na pierwszym planie. Nie ma również parametru owner, jako że karta-właściciel zostanie określona automatycznie.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/loadtabs/index.html b/files/pl/mozilla/tech/xul/metoda/loadtabs/index.html new file mode 100644 index 0000000000..aa7509df5b --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/loadtabs/index.html @@ -0,0 +1,21 @@ +--- +title: loadTabs +slug: Mozilla/Tech/XUL/Metoda/loadTabs +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/loadTabs +--- +
+ « Dokumentacja XUL
+
+
+ loadTabs( uris, loadInBackground, replace )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wczytuje ustawienia URI, określone przez tablicę <tt>uris</tt>, w kartach. Jeśli <tt>loadInBackground</tt> jest true, karty są wczytywane w tle i jeśli <tt>replace</tt> jest typu true, aktualnie wyświetlane karty są zastąpione przez określone URI zamiast dodawania nowych kart.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/loaduri/index.html b/files/pl/mozilla/tech/xul/metoda/loaduri/index.html new file mode 100644 index 0000000000..95f575a14d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/loaduri/index.html @@ -0,0 +1,17 @@ +--- +title: loadURI +slug: Mozilla/Tech/XUL/Metoda/loadURI +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/loadURI +--- +
« Dokumentacja XUL
+
loadURI( uri, adres-odsyłający, kodowanie-znaków ) +
Zwraca typ: nie zwraca wartości +
Wczytuje dokument spod danego adresu URL, z danym kodowaniem i adresem odsyłającym. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/loaduriwithflags/index.html b/files/pl/mozilla/tech/xul/metoda/loaduriwithflags/index.html new file mode 100644 index 0000000000..a3e67ce1e7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/loaduriwithflags/index.html @@ -0,0 +1,21 @@ +--- +title: loadURIWithFlags +slug: Mozilla/Tech/XUL/Metoda/loadURIWithFlags +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/loadURIWithFlags +--- +
« Dokumentacja XUL
+
loadURIWithFlags( uri, flagi, adres-odsyłający, kodowanie-znaków, postData ) +
Zwraca typ: nie zwraca wartości +
Wczytuje adres URL do dokumentu z określonymi flagami wczytywania, pozwala określić adres odsyłający, kodowanie znaków oraz dane przesyłane metodą POST. Poza flagami dozwolonymi dla metody reloadWithFlags, dostępne są także: +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/makeeditable/index.html b/files/pl/mozilla/tech/xul/metoda/makeeditable/index.html new file mode 100644 index 0000000000..7b144fba61 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/makeeditable/index.html @@ -0,0 +1,17 @@ +--- +title: makeEditable +slug: Mozilla/Tech/XUL/Metoda/makeEditable +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/makeEditable +--- +
« Dokumentacja XUL
+
makeEditable( editortype, waitForLoad ) +
Zwraca typ: nie zwraca wartości +
Ta funkcja włącza edycję w edytorze. Należy określić typ edytora – text lub html – w atrybucie editortype. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/menulist.appenditem/index.html b/files/pl/mozilla/tech/xul/metoda/menulist.appenditem/index.html new file mode 100644 index 0000000000..071bbed40d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/menulist.appenditem/index.html @@ -0,0 +1,26 @@ +--- +title: menulist.appendItem +slug: Mozilla/Tech/XUL/Metoda/menulist.appendItem +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/menulist.appendItem +--- +
+ « Dokumentacja XUL
+
+
+ menulist.appendItem( label, value, description )
+
+ Zwraca typ: + + element +
+
+ Tworzy nowy element menuitem i dodaje go na koniec listy menu. Opcjonalnie ustawioną ma wartość i opis. Funkcja zwraca nową pozycję.
+
+
+

Zobacz także

+

appendItem

+
+

 

diff --git a/files/pl/mozilla/tech/xul/metoda/menulist.select/index.html b/files/pl/mozilla/tech/xul/metoda/menulist.select/index.html new file mode 100644 index 0000000000..16ad0fc72f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/menulist.select/index.html @@ -0,0 +1,21 @@ +--- +title: menulist.select +slug: Mozilla/Tech/XUL/Metoda/menulist.select +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/menulist.select +--- +
+ « Dokumentacja XUL
+
+
+ select()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza cały tekst w polu tekstowym menulist. Ta metoda nakłada się tylko do list menu editable.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/moveto/index.html b/files/pl/mozilla/tech/xul/metoda/moveto/index.html new file mode 100644 index 0000000000..a70938ab11 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/moveto/index.html @@ -0,0 +1,21 @@ +--- +title: moveTo +slug: Mozilla/Tech/XUL/Metoda/moveTo +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/moveTo +--- +
+ « Dokumentacja XUL
+
+
+ moveTo( x, y )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przenosi wyskakujące okienko do nowej lokalizacji.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/movetoalertposition/index.html b/files/pl/mozilla/tech/xul/metoda/movetoalertposition/index.html new file mode 100644 index 0000000000..ae9fd3eb61 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/movetoalertposition/index.html @@ -0,0 +1,17 @@ +--- +title: moveToAlertPosition +slug: Mozilla/Tech/XUL/Metoda/moveToAlertPosition +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/moveToAlertPosition +--- +
« Dokumentacja XUL
+
moveToAlertPosition() +
Zwraca typ: nie zwraca wartości +
Przenosi okno dialogowe na pozycję właściwą dla okna z ostrzeżeniem, jednocześnie nadając mu rozmiar właściwy dla takiego okna. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/onsearchcomplete/index.html b/files/pl/mozilla/tech/xul/metoda/onsearchcomplete/index.html new file mode 100644 index 0000000000..f17d68c92b --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/onsearchcomplete/index.html @@ -0,0 +1,21 @@ +--- +title: onSearchComplete +slug: Mozilla/Tech/XUL/Metoda/onSearchComplete +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/onSearchComplete +--- +
+ « Dokumentacja XUL
+
+
+ onSearchComplete()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wywołuje uchwyt zdarzenia onsearchcomplete. Nie powinieneś wywoływać tej metody samej w sobie.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/ontextentered/index.html b/files/pl/mozilla/tech/xul/metoda/ontextentered/index.html new file mode 100644 index 0000000000..64e479e88f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/ontextentered/index.html @@ -0,0 +1,21 @@ +--- +title: onTextEntered +slug: Mozilla/Tech/XUL/Metoda/onTextEntered +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/onTextEntered +--- +
+ « Dokumentacja XUL
+
+
+ onTextEntered()
+
+ Zwraca typ: + + rezultat zdarzenia +
+
+ Wywołujemy uchwyt zdarzenia ontextentered. Nie powinieneś wywoływać tej metody samej w sobie.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/ontextreverted/index.html b/files/pl/mozilla/tech/xul/metoda/ontextreverted/index.html new file mode 100644 index 0000000000..b6f11661c7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/ontextreverted/index.html @@ -0,0 +1,21 @@ +--- +title: onTextReverted +slug: Mozilla/Tech/XUL/Metoda/onTextReverted +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/onTextReverted +--- +
+ « Dokumentacja XUL
+
+
+ onTextReverted()
+
+ Zwraca typ: + + rezultat zdarzenia +
+
+ Wywołujemy uchwyt zdarzenia ontextreverted. Nie powinieneś wywoływać tej metody samej w sobie.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/openwindow/index.html b/files/pl/mozilla/tech/xul/metoda/openwindow/index.html new file mode 100644 index 0000000000..a72eb6f9ee --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/openwindow/index.html @@ -0,0 +1,21 @@ +--- +title: openWindow +slug: Mozilla/Tech/XUL/Metoda/openWindow +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/openWindow +--- +
+ « Dokumentacja XUL
+
+
+ openWindow( windowtype, url, features, params )
+
+ Zwraca typ: + + window +
+
+ Otwiera potomne okno. windowtype jest łańcuchem znaków określającym typ okna. Jeśli okno jest z tym typem, które jest teraz otwarte, to metoda ta będzie przełączała to okno na wierzch i stanie się aktywne, zamiast otwarcia kolejnego okna. Jeśli typ okna nie jest otwarty, nowe jest otwierane wyświetlając dostarczony url.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/preferenceforelement/index.html b/files/pl/mozilla/tech/xul/metoda/preferenceforelement/index.html new file mode 100644 index 0000000000..c3e946583e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/preferenceforelement/index.html @@ -0,0 +1,18 @@ +--- +title: preferenceForElement +slug: Mozilla/Tech/XUL/Metoda/preferenceForElement +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/preferenceForElement +--- +
+ « Dokumentacja XUL
+
+
+ preferenceForElement( uielement )
+
+ Zwraca typ: element preferencji
+
+ Zwraca element preference, do którego jest dołączony dany element interfejsu użytkownika.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/reload/index.html b/files/pl/mozilla/tech/xul/metoda/reload/index.html new file mode 100644 index 0000000000..55f35a3a11 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/reload/index.html @@ -0,0 +1,17 @@ +--- +title: reload +slug: Mozilla/Tech/XUL/Metoda/reload +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/reload +--- +
« Dokumentacja XUL
+
reload() +
Zwraca typ: nie zwraca wartości +
Wczytuje ponownie dokument w przeglądarce. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/reloadalltabs/index.html b/files/pl/mozilla/tech/xul/metoda/reloadalltabs/index.html new file mode 100644 index 0000000000..8903d4044f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/reloadalltabs/index.html @@ -0,0 +1,21 @@ +--- +title: reloadAllTabs +slug: Mozilla/Tech/XUL/Metoda/reloadAllTabs +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/reloadAllTabs +--- +
+ « Dokumentacja XUL
+
+
+ reloadAllTabs()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wczytuje ponownie zawartość wszystkich kart.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/reloadtab/index.html b/files/pl/mozilla/tech/xul/metoda/reloadtab/index.html new file mode 100644 index 0000000000..c30913845f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/reloadtab/index.html @@ -0,0 +1,21 @@ +--- +title: reloadTab +slug: Mozilla/Tech/XUL/Metoda/reloadTab +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/reloadTab +--- +
+ « Dokumentacja XUL
+
+
+ reloadTab( tab )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wczytuje ponownie określona kartę.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/reloadwithflags/index.html b/files/pl/mozilla/tech/xul/metoda/reloadwithflags/index.html new file mode 100644 index 0000000000..0e5ff91b53 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/reloadwithflags/index.html @@ -0,0 +1,21 @@ +--- +title: reloadWithFlags +slug: Mozilla/Tech/XUL/Metoda/reloadWithFlags +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/reloadWithFlags +--- +
« Dokumentacja XUL
+
reloadWithFlags( flags ) +
Zwraca typ: nie zwraca wartości +
Wczytuje ponownie dokument w przeglądarce z danymi flagami wczytywania. Można użyć poniższych flag; wszystkie one są stałymi własności webNavigation (lub interfejsu nsIWebNavigation). Flagi te można łączyć przy użyciu symbolu ( | ). +
+ +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removeallitems/index.html b/files/pl/mozilla/tech/xul/metoda/removeallitems/index.html new file mode 100644 index 0000000000..94d014b6c1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removeallitems/index.html @@ -0,0 +1,17 @@ +--- +title: removeAllItems +slug: Mozilla/Tech/XUL/Metoda/removeAllItems +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeAllItems +--- +
« Dokumentacja XUL
+
removeAllItems() +
Zwraca typ: nie zwraca wartości +
Usuwa wszystkie pozycje w menu. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removealltabsbut/index.html b/files/pl/mozilla/tech/xul/metoda/removealltabsbut/index.html new file mode 100644 index 0000000000..8a9f48ed9e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removealltabsbut/index.html @@ -0,0 +1,21 @@ +--- +title: removeAllTabsBut +slug: Mozilla/Tech/XUL/Metoda/removeAllTabsBut +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeAllTabsBut +--- +
+ « Dokumentacja XUL
+
+
+ removeAllTabsBut( tabElement )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Usuwa wszystkie panele kart oprócz jednego przesyłanego do określonej karty. Jeśli tylko jedna strona karta jest wyświetlana, to ta metoda nie robi nic.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removecurrentnotification/index.html b/files/pl/mozilla/tech/xul/metoda/removecurrentnotification/index.html new file mode 100644 index 0000000000..77d87baa0f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removecurrentnotification/index.html @@ -0,0 +1,18 @@ +--- +title: removeCurrentNotification +slug: Mozilla/Tech/XUL/Metoda/removeCurrentNotification +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeCurrentNotification +--- +
+ « Dokumentacja XUL
+
+
+ removeCurrentNotification
+
+ Zwraca typ: brak
+
+ Usuwa bieżące powiadomienie.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removecurrenttab/index.html b/files/pl/mozilla/tech/xul/metoda/removecurrenttab/index.html new file mode 100644 index 0000000000..852ab3b6a5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removecurrenttab/index.html @@ -0,0 +1,21 @@ +--- +title: removeCurrentTab +slug: Mozilla/Tech/XUL/Metoda/removeCurrentTab +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeCurrentTab +--- +
+ « Dokumentacja XUL
+
+
+ removeCurrentTab()
+
+ Zwraca typ: + + element tab +
+
+ Usuwa bieżącą kartę wyświetlonej strony. Jeśli jest to jedyna wyświetlona karta ze stroną, metoda ta nie zostanie wykonana.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removeitemat/index.html b/files/pl/mozilla/tech/xul/metoda/removeitemat/index.html new file mode 100644 index 0000000000..31d06b97c3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removeitemat/index.html @@ -0,0 +1,39 @@ +--- +title: removeItemAt +slug: Mozilla/Tech/XUL/Metoda/removeItemAt +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeItemAt +--- +
« Dokumentacja XUL
+
removeItemAt( index ) +
Zwraca typ: element +
Usuwa pozycję potomną w elemencie o określonym indeksie. Metoda zwraca usuniętą pozycję. +
+
+
<script language="javascript">
+function removeSelectedItem(){
+
+    var myListBox = document.getElementById('myListBox');
+
+    if(myListBox.selectedIndex == -1){
+        return; // brak zaznaczonych pozycji, więc zwraca
+    }else{
+        myListBox.removeItemAt(myListBox.selectedIndex);
+    }
+}
+</script>
+
+<button label="Usuń zaznaczoną pozycję" oncommand="removeSelectedItem()"/>
+<listbox id="myListBox">
+  <listitem label="Alpha"/>
+  <listitem label="Beta"/>
+  <listitem label="Oscar"/>
+  <listitem label="Foxtrot"/>
+</listbox>
+
+

Zobacz także

+

removeAllItems(), appendItem() i insertItemAt() +

+
diff --git a/files/pl/mozilla/tech/xul/metoda/removeitemfromselection/index.html b/files/pl/mozilla/tech/xul/metoda/removeitemfromselection/index.html new file mode 100644 index 0000000000..229db2416d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removeitemfromselection/index.html @@ -0,0 +1,21 @@ +--- +title: removeItemFromSelection +slug: Mozilla/Tech/XUL/Metoda/removeItemFromSelection +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeItemFromSelection +--- +
+ « Dokumentacja XUL
+
+
+ removeItemFromSelection( item )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Odznacza określoną pozycję bez odznaczenia pozostałych pozycji.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removenotification/index.html b/files/pl/mozilla/tech/xul/metoda/removenotification/index.html new file mode 100644 index 0000000000..92cbad10b6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removenotification/index.html @@ -0,0 +1,21 @@ +--- +title: removeNotification +slug: Mozilla/Tech/XUL/Metoda/removeNotification +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeNotification +--- +
+ « Dokumentacja XUL
+
+
+ removeNotification( item )
+
+ Zwraca typ: + + element +
+
+ Usuwa powiadomienie, wyświetla kolejne, jeśli bieżące zostało usunięte.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removeprogresslistener/index.html b/files/pl/mozilla/tech/xul/metoda/removeprogresslistener/index.html new file mode 100644 index 0000000000..a92c2c1bbe --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removeprogresslistener/index.html @@ -0,0 +1,17 @@ +--- +title: removeProgressListener +slug: Mozilla/Tech/XUL/Metoda/removeProgressListener +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeProgressListener +--- +
« Dokumentacja XUL
+
removeProgressListener( listener ) +
Zwraca typ: nie zwraca wartości +
Usuwa element nasłuchujący postęp wczytywania z przeglądarki. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/removesession/index.html b/files/pl/mozilla/tech/xul/metoda/removesession/index.html new file mode 100644 index 0000000000..f8183b40df --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/removesession/index.html @@ -0,0 +1,21 @@ +--- +title: removeSession +slug: Mozilla/Tech/XUL/Metoda/removeSession +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/removeSession +--- +
+ « Dokumentacja XUL
+
+
+ removeSession( session )
+
+ Zwraca typ: + + ??? +
+
+ Usuwa obiekt sesji z widgetu autouzupełniania. Argument powinien być obiektem, który implementuje interfejs nsIAutoCompleteSession.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/replacegroup/index.html b/files/pl/mozilla/tech/xul/metoda/replacegroup/index.html new file mode 100644 index 0000000000..8246249e10 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/replacegroup/index.html @@ -0,0 +1,17 @@ +--- +title: replaceGroup +slug: Mozilla/Tech/XUL/Metoda/replaceGroup +tags: + - Dokumentacja_XUL + - Metody_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Method/replaceGroup +--- +
« Dokumentacja XUL
+ +
+
replaceGroup( group )
+
Nie w Firefoksie
+
Zwraca typ:tablica obiektów historii sesji
+
Zastępuje istniejące karty nowymi ustawieniami. Jeśli tutaj było więcej kart przedtem, dodatkowe karty nie zostaną usunięte. Możemy zastosować metodę removeTab, aby usunąć istniejące pierwsze karty, jeśli if that is desired. The argument should be an array of objects, one for each document to load. The objects may be defined in script and contain a URI property for the URL of the page to load. A referrerURI property may also be optionally used to set the referrer page. This method returns an array of the session history objects for the tabs that were removed.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/reset/index.html b/files/pl/mozilla/tech/xul/metoda/reset/index.html new file mode 100644 index 0000000000..11b0e9872d --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/reset/index.html @@ -0,0 +1,23 @@ +--- +title: reset +slug: Mozilla/Tech/XUL/Metoda/reset +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/reset +--- +
+ « Dokumentacja XUL
+
+
+ reset()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przywraca preferencje do domyślnej wartości.
+
+ Dla elementu textbox jest także wykorzystane do czyszczenia list transakcji (Gecko1.9).
+
diff --git a/files/pl/mozilla/tech/xul/metoda/rewind/index.html b/files/pl/mozilla/tech/xul/metoda/rewind/index.html new file mode 100644 index 0000000000..fda3734dca --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/rewind/index.html @@ -0,0 +1,21 @@ +--- +title: rewind +slug: Mozilla/Tech/XUL/Metoda/rewind +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/rewind +--- +
+ « Dokumentacja XUL
+
+
+ rewind()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wywołaj tą metodę, aby przejść wstecz na stronie. Jest równoważna naciśnięciu przycisku Wstecz. Własność canRewind musi być ustawiona na true dla strony, która będzie zmieniona. Kod w atrybucie onwizardback jest wywołany przed zmianą strony.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/scrolltoindex/index.html b/files/pl/mozilla/tech/xul/metoda/scrolltoindex/index.html new file mode 100644 index 0000000000..83e7821d7c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/scrolltoindex/index.html @@ -0,0 +1,21 @@ +--- +title: scrollToIndex +slug: Mozilla/Tech/XUL/Metoda/scrollToIndex +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/scrollToIndex +--- +
+ « Dokumentacja XUL
+
+
+ scrollToIndex( index )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przewija element do określonego indeksu. Jest inne niż ensureIndexIsVisible, ponieważ widok jest zawsze przewijany.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/select/index.html b/files/pl/mozilla/tech/xul/metoda/select/index.html new file mode 100644 index 0000000000..257b50e80f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/select/index.html @@ -0,0 +1,21 @@ +--- +title: select +slug: Mozilla/Tech/XUL/Metoda/select +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/select +--- +
+ « Dokumentacja XUL
+
+
+ select()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza cały tekst w polu tekstowym.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/selectall/index.html b/files/pl/mozilla/tech/xul/metoda/selectall/index.html new file mode 100644 index 0000000000..4b6b47fd52 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/selectall/index.html @@ -0,0 +1,21 @@ +--- +title: selectAll +slug: Mozilla/Tech/XUL/Metoda/selectAll +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/selectAll +--- +
+ « Dokumentacja XUL
+
+
+ selectAll()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza wszystkie pozycje. Zdarzenie zaznaczenia jest wysyłane po tym, jak zostanie zrobione zaznaczenie.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/selectitem/index.html b/files/pl/mozilla/tech/xul/metoda/selectitem/index.html new file mode 100644 index 0000000000..c7dd5f3bc5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/selectitem/index.html @@ -0,0 +1,21 @@ +--- +title: selectItem +slug: Mozilla/Tech/XUL/Metoda/selectItem +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/selectItem +--- +
+ « Dokumentacja XUL
+
+
+ selectItem( item )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Odznacza wszystkie aktualnie zaznaczone pozycje i zaznacza daną pozycję. Zdarzenie zaznaczenia jest wysyłane po wykonaniu zaznaczenia.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/selectitemrange/index.html b/files/pl/mozilla/tech/xul/metoda/selectitemrange/index.html new file mode 100644 index 0000000000..ba7397ab15 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/selectitemrange/index.html @@ -0,0 +1,16 @@ +--- +title: selectItemRange +slug: Mozilla/Tech/XUL/Metoda/selectItemRange +tags: + - Dokumentacja_XUL + - Metody_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/Method/selectItemRange +--- +
« Dokumentacja XUL
+ +
+
selectItemRange( startItem, endItem)
+
Zwraca typ:nie zwraca wartości
+
Zaznaczone pozycje pomiędzy dwoma danymi pozycjami jako argumenty. Wszystkie inne pozycje są odznaczone. Ta metoda does nothing for single-selection list boxes. A select event is sent after the selection is made.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/setselectionrange/index.html b/files/pl/mozilla/tech/xul/metoda/setselectionrange/index.html new file mode 100644 index 0000000000..2a7bb9bb5e --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/setselectionrange/index.html @@ -0,0 +1,18 @@ +--- +title: setSelectionRange +slug: Mozilla/Tech/XUL/Metoda/setSelectionRange +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/setSelectionRange +--- +
« Dokumentacja XUL
+
setSelectionRange( start, end ) +
Zwraca typ: nie zwraca wartości +
Ustawia zaznaczoną porcję pola tekstowego, gdzie argumentem początkowym start jest pierwszy zaznaczony znak i argument końcowym end jest indeks znaku po zaznaczeniu. Ustawiając oba argumenty na tę samą wartość, pozwoli nam na przesunięcie kursora do przesłanej pozycji bez zaznaczenia tekstu. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/showpane/index.html b/files/pl/mozilla/tech/xul/metoda/showpane/index.html new file mode 100644 index 0000000000..5db138a2bd --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/showpane/index.html @@ -0,0 +1,21 @@ +--- +title: showPane +slug: Mozilla/Tech/XUL/Metoda/showPane +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/showPane +--- +
+ « Dokumentacja XUL
+
+
+ showPane( prefpane )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Włącza specjalne okno.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/sizeto/index.html b/files/pl/mozilla/tech/xul/metoda/sizeto/index.html new file mode 100644 index 0000000000..aed1a06269 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/sizeto/index.html @@ -0,0 +1,18 @@ +--- +title: sizeTo +slug: Mozilla/Tech/XUL/Metoda/sizeTo +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/sizeTo +--- +
« Dokumentacja XUL
+
sizeTo( width, height ) +
Zwraca typ: nie zwraca wartości +
Zmienia aktualny rozmiar wyskakującego okienka, zostaje nadana nowa szerokość (width) oraz wysokość (height). +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/stop/index.html b/files/pl/mozilla/tech/xul/metoda/stop/index.html new file mode 100644 index 0000000000..ccd02e566f --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/stop/index.html @@ -0,0 +1,18 @@ +--- +title: stop +slug: Mozilla/Tech/XUL/Metoda/stop +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/stop +--- +
« Dokumentacja XUL
+
stop() +
Zwraca typ: nie zwraca wartości +
Odpowiednik naciśnięcia przycisku Zatrzymaj. Metoda ta zatrzymuje wczytywanie bieżącego dokumentu. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/syncsessions/index.html b/files/pl/mozilla/tech/xul/metoda/syncsessions/index.html new file mode 100644 index 0000000000..cb70ab24a6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/syncsessions/index.html @@ -0,0 +1,18 @@ +--- +title: syncSessions +slug: Mozilla/Tech/XUL/Metoda/syncSessions +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/syncSessions +--- +
« Dokumentacja XUL
+
syncSessions( autoCompleteElement ) +
Zwraca typ: ??? +
Kopiuje sesje z kolejnego elementu autouzupełnienia. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/metoda/timedselect/index.html b/files/pl/mozilla/tech/xul/metoda/timedselect/index.html new file mode 100644 index 0000000000..adab8207ea --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/timedselect/index.html @@ -0,0 +1,21 @@ +--- +title: timedSelect +slug: Mozilla/Tech/XUL/Metoda/timedSelect +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/timedSelect +--- +
+ « Dokumentacja XUL
+
+
+ timedSelect( item, timeout )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza pozycję określoną przez argument po danej liczbie milisekund argumentu czasu przerwy. Wszystkie inne pozycje są odznaczone.
+
diff --git a/files/pl/mozilla/tech/xul/metoda/toggleitemselection/index.html b/files/pl/mozilla/tech/xul/metoda/toggleitemselection/index.html new file mode 100644 index 0000000000..1adcaef82c --- /dev/null +++ b/files/pl/mozilla/tech/xul/metoda/toggleitemselection/index.html @@ -0,0 +1,21 @@ +--- +title: toggleItemSelection +slug: Mozilla/Tech/XUL/Metoda/toggleItemSelection +tags: + - Dokumentacja_XUL + - Metody_XUL +translation_of: Archive/Mozilla/XUL/Method/toggleItemSelection +--- +
+ « Dokumentacja XUL
+
+
+ toggleItemSelection( item )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Jeśli określona pozycja jest zaznaczona, to jest odznaczana. Jeśli nie jest zaznaczona, to jest zaznaczana. Inne pozycje na liście pudełka, które są zaznaczone are not affected, and retain their selected state.
+
diff --git a/files/pl/mozilla/tech/xul/notification/index.html b/files/pl/mozilla/tech/xul/notification/index.html new file mode 100644 index 0000000000..0e5a41260d --- /dev/null +++ b/files/pl/mozilla/tech/xul/notification/index.html @@ -0,0 +1,117 @@ +--- +title: notification +slug: Mozilla/Tech/XUL/notification +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/notification +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

<notification> jest stosowane do wyświetlenia wiadomości informacyjnych. Normalnie jest zastosowane jako część <notificationbox>. +

+
Własności +
accessible, control, image, label, priority, type, value +
+
Metody +
close +
+

Przykłady

+
<notification label="To jest ostrzeżenie"/>
+
+

Atrybuty

+

+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
close +
Zwraca typ: brak +
Zamyka powiadomienie i usuwa je z jego otaczających znaczników <notificationbox>. +
+


+

+

+

Podobne

+
Elementy +
notificationbox +
+
+
diff --git a/files/pl/mozilla/tech/xul/notificationbox/index.html b/files/pl/mozilla/tech/xul/notificationbox/index.html new file mode 100644 index 0000000000..1eab8d5e05 --- /dev/null +++ b/files/pl/mozilla/tech/xul/notificationbox/index.html @@ -0,0 +1,150 @@ +--- +title: notificationbox +slug: Mozilla/Tech/XUL/notificationbox +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/notificationbox +--- +
+ + « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+

<notificationbox> jest stosowana do powiadomień powyżej elementu. Zazwyczaj element będzie przeglądarką, ale jakikolwiek element może być zastosowany. Element <notification> jest stosowany dla każdego powiadomienia i będzie tworzony automatycznie dla każdego elementu. Każde powiadomienie będzie zsuwać się do i na zewnątrz, jak będzie potrzebne.

+

Pudełko jest pudełkiem pionowym, które posiada dzieci. Powiadomienie wyświetla się na górze pudełka. Powiadomienie może być ustawione na dole atrybutu na "reverse".

+
+
+ Własności
+
+ currentNotification, allNotifications, notificationsHidden
+
+
+
+ Metody
+
+ appendNotification, agetNotificationWithValue, removeAllNotifications, removeCurrentNotification, removeNotification,
+
+

Przykłady

+
<notificationbox flex="1">
+  <browser src="http://www.mozilla.org"/>
+</notificationbox>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+

+

Własności

+

+
+
+ currentNotification
+
+ Typ: + + element powiadomienia +
+
+ Aktualnie wyświetlany element notification lub null. Własność tylko do odczytu.
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
+ removeCurrentNotification
+
+ Zwraca typ: brak
+
+ Usuwa bieżące powiadomienie.
+
+
+ removeNotification( item )
+
+ Zwraca typ: + + element +
+
+ Usuwa powiadomienie, wyświetla kolejne, jeśli bieżące zostało usunięte.
+

+

Podobne

+
+
+ Elementy
+
+ notification
+
+
+  
+

diff --git a/files/pl/mozilla/tech/xul/observes/index.html b/files/pl/mozilla/tech/xul/observes/index.html new file mode 100644 index 0000000000..25f6c9f97c --- /dev/null +++ b/files/pl/mozilla/tech/xul/observes/index.html @@ -0,0 +1,120 @@ +--- +title: observes +slug: Mozilla/Tech/XUL/observes +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/observes +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element observes stosujemy do nasłuchiwania broadcaster i otrzymywania z niego zdarzeń i atrybutów. Element observes powinien być umieszczony wewnątrz elementu, którego to broadcaster obserwuje. Kiedy obserwowany atrybut jest zmieniony na broadcasterze, wartość atrybutu zostanie przekazana i ustawiona na elemencie-rodzicu obserwatora. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
attribute, element +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ +
attribute +
Typ: nazwa atrybutu +
Atrybut, który obserwuje obserwator. Kiedy wartość atrybutu zmieni się, zdarzenie rozgłaszacza jest wywoływane w obserwatorze. Zastosujemy wartość * do obserwacji wszystkich atrybutów rozgłaszaczy. Atrybuty id, ref i persist nie są obserwowane. +
+


+

+ + +
+
+ +
element +
Typ: id elementu broadcaster +
Atrybut id elementu broadcaster, którego obserwator jest obserwowany. +
+


+

+ + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/page/index.html b/files/pl/mozilla/tech/xul/page/index.html new file mode 100644 index 0000000000..1a78cace53 --- /dev/null +++ b/files/pl/mozilla/tech/xul/page/index.html @@ -0,0 +1,92 @@ +--- +title: page +slug: Mozilla/Tech/XUL/page +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/page +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Podobny do window, oprócz tego powinien być stosowany do plików XUL, które są wczytywane do elementu iframe. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobny

+

TBD +

diff --git a/files/pl/mozilla/tech/xul/popup/index.html b/files/pl/mozilla/tech/xul/popup/index.html new file mode 100644 index 0000000000..5b4e357b04 --- /dev/null +++ b/files/pl/mozilla/tech/xul/popup/index.html @@ -0,0 +1,19 @@ +--- +title: popup +slug: Mozilla/Tech/XUL/popup +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/popup +--- +
+ + « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+

Element popup jest równoważny elementowi menupopup. Zobacz dokumentację elementu menupopup, aby zdobyć więcej informacji.

+

Kontener, który pojawia się w dziecku okna (okno potomne). Okienko popup nie posiada żadnych specjalnych ramek. Okienko to może być wyświetlane, kiedy do naciśniętego elementu, za pomocą atrybutu id okienka popup są przydzielone inne atrybuty elementu m.in: popup, context lub tooltip. Popup jest typem pudełka, które domyślnie posiada orientację poziomą. Dodatkowe informacje są dostępne w kursie XUL. Zakomentowaną treść pozostawiam tymczasowo (Ptak82)

diff --git a/files/pl/mozilla/tech/xul/popupset/index.html b/files/pl/mozilla/tech/xul/popupset/index.html new file mode 100644 index 0000000000..fc0eeb1e2c --- /dev/null +++ b/files/pl/mozilla/tech/xul/popupset/index.html @@ -0,0 +1,104 @@ +--- +title: popupset +slug: Mozilla/Tech/XUL/popupset +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/popupset +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener dla elementu popup. Powinieneś zadeklarować wszystkie elementy popup jako dzieci popupset. Ten element nie wyświetla się bezpośrednio na ekranie. Potomny popups będzie wyświetlony, kiedy zapytamy o niego poprzez inny elementy. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+
grafika:XUL_ref_popup.png
+
<popupset>
+  <popup id="clipmenu">
+    <menuitem label="Cut"/>
+    <menuitem label="Copy"/>
+    <menuitem label="Paste"/>
+  </popup>
+</popupset>
+<label value="Right click for popup" context="clipmenu"/>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
popup, menupopup +
+
+
diff --git a/files/pl/mozilla/tech/xul/preference/index.html b/files/pl/mozilla/tech/xul/preference/index.html new file mode 100644 index 0000000000..8b5b5d7744 --- /dev/null +++ b/files/pl/mozilla/tech/xul/preference/index.html @@ -0,0 +1,268 @@ +--- +title: preference +slug: Mozilla/Tech/XUL/preference +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/preference +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Deklaruje ustawienie, które może zostać zmienione w prefpane. Element ten musi być umieszczony wewnątrz elementu preferences. Każdy element preference odpowiada ustawieniu, które przechowywane jest w pliku preferencji użytkownika. Możesz połączyć element interfejsu użytkownika, taki jak pole wyboru z elementem preference używając atrybutu preference elementu interfejsu użytkownika. +

Dodatkowe informacje są dostępne w artykule System preferencji. +

+
Atrybuty +
disabled, instantApply, inverted, name, onchange, readonly, tabindex, type +
+
Własności
disabled, inverted, locked, name, preferences, readonly, tabIndex, type, value +
+
Metody +
hasUserValue, reset +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
instantApply +
Typ: boolean +
Jeśli true, preferencje zostaną zmienione albo niebawem lub gdy interfejs użytkownika jest modyfikowany. +
+


+


+

+ + +
+
+ + +
+
inverted
+
Typ:boolean
+
Preferencje logiczne, jeśli ten atrybut jest ustawiony na true, to sygnalizuje, która wartość preferencji jest reverse of the user interface element attached to it. For instance, checking the checkbox disables the preference instead of enabling it.
+
+
+
+ +
name +
Typ: string +
Nazwa preferencji do zmiany. Na przykład strona startowa przeglądarki jest ustawiona z preferencją browser.startup.homepage. +
+ + +
+
+ +
onchange +
Typ: kod skryptu +
Kod w atrybucie onchange jest wywołany, kiedy wartość elementu jest zmieniana. +
+


+


+

+ + +
+
+ +
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
type +
Typ: jedna z poniższych wartości +
Typ preferencji, która powinna posiadać jedną z poniższych wartości: +
+ +


+


+

+ + +
+

+

Własności

+

+

+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ inverted
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu inverted.
+
+
+
+
+ locked
+
+ Typ: + + boolean +
+
+ Jeśli true, to preferencje zostaną zabezpieczone i wyłączone z konfiguracji systemu, zabezpieczając zawartość przed zmianami. Własność jest tylko do odczytu.
+
+
+
+
+ name
+
+ Typ: + + string +
+
+ Nazwa preference do zmiany. Na przykład, strona startowa przeglądarki jest ustawiona z preferencją browser.startup.homepage.
+
+
+
+
+ preferences
+
+ Typ: + + element +
+
+ Odwołanie się do elementu zawierającego preferences.
+
+
+
+
+ readonly
+
+ Typ: + + boolean +
+
+ Jeśli jest ustawiony na true, to użytkownik nie może zmieniać wartości elementu. Jest to odpowiednia własności do użytku textbox zamiast własności readonly.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+
+ hasUserValue()
+
+ Zwraca typ: + + boolean +
+
+ Zwraca true, jeśli preferencje zostały zmienione z domyślnej wartości.
+
+
+
+ reset()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przywraca preferencje do domyślnej wartości.
+
+ Dla elementu textbox jest także wykorzystane do czyszczenia list transakcji (Gecko1.9).
+
+ +

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/preferences/index.html b/files/pl/mozilla/tech/xul/preferences/index.html new file mode 100644 index 0000000000..960273ae60 --- /dev/null +++ b/files/pl/mozilla/tech/xul/preferences/index.html @@ -0,0 +1,96 @@ +--- +title: preferences +slug: Mozilla/Tech/XUL/preferences +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/preferences +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Stosuje się go do utrzymania ustawień elementów preference. +

Dodatkowe informacje są dostępne w artykule System preferencji. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/prefpane/index.html b/files/pl/mozilla/tech/xul/prefpane/index.html new file mode 100644 index 0000000000..47984f3b33 --- /dev/null +++ b/files/pl/mozilla/tech/xul/prefpane/index.html @@ -0,0 +1,183 @@ +--- +title: prefpane +slug: Mozilla/Tech/XUL/prefpane +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/prefpane +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedynczy panel preferencji w prefwindow. Element prefpane stworzony jest z dwóch części. Pierwsza to opisy preferencji, które podają listę preferencji, które zostaną zmienione. Druga zawiera interfejs użytkownika służący do zmiany tych ustawień. Pierwsza część jest określana za pomocą elementu preferences, a druga może składać się z innych elementów XUL. +

Obydwie mogą być bezpośrednio dziećmi elementu prefpane, lub atrybut src może służyć do przechowywania panelu w zewnętrznym pliku. W drugim przypadku, zewnętrzny plik powinien stosować znacznik overlay jako głównego znacznika, jako że zostanie on załadowany jako nakładka na główne okno właściwości. +

Dodatkowe informacje są dostępne w artykule System preferencji. +

+
Atrybuty +
helpURI, image, label, onpanelload, selected, src +
+
Własności +
image, label, preferenceElements, preferences, selected, src +
+
Metody +
preferenceForElement
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
+
+ helpURI
+
+ Typ: uri
+
+ URI strony pomocy połączona z panelem preferencji. URI będzie otwarty przy zastosowaniu przeglądarki pomocy, kiedy zostanie naciśnięty przycisk pomocy.
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ onpaneload
+
+ Typ: + + kod skryptu +
+
+ Zdefiniowany tutaj kod jest wywołany kiedy okno będzie wczytane, bardzo podobnym zdarzeniem dla okna jest load.
+
+
+
+ +
+
+ selected
+
+ Typ: + + boolean +
+
+ Ten atrybut będzie ustawiony na true dla aktualnie zaznaczonego prefpane. Do zmiany okna zastosuj metodę showPane w elemntach prefwindow.
+
+ +

 

+
+
+ +
+
+ src
+
+ Typ: adres URL nakładki
+
+ Adres URL zawartości okna preferencji. Jeśli nie jest określono, zawartość elementu prefpane jest stosowana.
+
+ +
+

+

Własności

+

+

+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ preferenceElements
+
+ Typ: + + DOM Nodelist +
+
+ Podtrzymuje listę elementów UI w oknie, które są dołączone do preferencji.
+
+
+

 

+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+
+
+
+ src
+
+ Typ: + + URL +
+
+ Pobiera i ustawia wartość atrybutu src.
+
+

+

Metody

+

+
+ preferenceForElement( uielement )
+
+ Zwraca typ: element preferencji
+
+ Zwraca element preference, do którego jest dołączony dany element interfejsu użytkownika.
+
+ +

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/prefwindow/index.html b/files/pl/mozilla/tech/xul/prefwindow/index.html new file mode 100644 index 0000000000..f54333b04c --- /dev/null +++ b/files/pl/mozilla/tech/xul/prefwindow/index.html @@ -0,0 +1,388 @@ +--- +title: prefwindow +slug: Mozilla/Tech/XUL/prefwindow +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/prefwindow +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Okno wyspecjalizowane do okien preferencji. Ten element powinien być użyty zamiast znacznika window i powinien zawierać jeden lub więcej elementów prefpane. Rząd przycisków pojawia się w oknie preferencji, po jednym przycisku dla każdego elementu prefpane. Każdy panel zwykle zawiera w sobie grupę podobnych ustawień. Jeśli istnieje tylko jeden element prefpane, przestrzeń nawigacyjna nie zostanie wyświetlona. +

W przypadku platform, w których ustawienia muszą zostać zastosowane natychmiastowo, są one zmieniane w momencie, kiedy element interfejsu jest zmieniony. Na innych platformach, ustawienia nie zostają zastosowane zanim okno jest zamknięte. +

Możesz otworzyć okno preferencji używając metody openDialog okna, tak jak z innymi oknami dialogowymi. Możesz przekazać id odpowiedniego panelu jako czwarty argument openDialog, aby domyślnie otworzyć odpowiedni panel. Możesz również ustawić atrybut lastSelected znacznika prefwindow na id panela, od którego chcesz zacząć. Zwykle, nie będziesz ustawiać tego atrybutu, jako że zostanie on automatycznie ustawiony w taki sposób, że domyślnym panelem stanie się ten sam panel, który był wyświetlany, kiedy okno preferencji było ostatnio zamknięte. +

Więcej informacji dostępne jest w artykule System preferencji. +

+
Atrybuty +
buttonalign, buttondir, buttonorient, buttonpack, buttons, defaultButton, lastSelected, onbeforeaccept, ondialogaccept, ondialogcancel, ondialogdisclosure, ondialoghelp, onpanelload, title, type +
+
Własności +
buttons, currentPane, defaultButton, lastSelected, preferencePanes, type +
+
Metody +
acceptDialog, addPane, cancelDialog, centerWindowOnScreen, getButton, openSubDialog, openWindow, showPane +
+

Przykłady

+
   <prefwindow xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+     <prefpane id="saveoptions" label="Backups">
+       <preferences>
+         <preference id="pref-backup" name="myapp.mybackups" type="bool"/>
+         <preference id="pref-backupduration" name="myapp.mybackups.duration" type="int"/>
+       </preferences>
+       <checkbox label="Automatically Save Backups" preference="pref-backup"/>
+       <textbox label="Duration:" preference="pref-backupduration"/>
+     </prefpane>
+   </prefwindow>
+
+

Atrybuty

+

+

+ +
buttonalign +
Typ: string +
Wartość atrybutu align dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttondir +
Typ: string +
Wartość atrybutu dir dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttonorient +
Typ: string +
Wartość atrybutu orient dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttonpack +
Typ: string +
Wartość atrybutu pack dla pudełka zawierającego przyciski. +
+


+

+ + +
+
+ +
buttons +
Typ: rozdzielona przecinkami lista poniższych wartości +
Rozdzielona przecinkami lista przycisków do wyświetlenia w okienku dialogowym. Przyciski zostaną umieszczone w odpowiednim miejscu w zależności od platformy systemowej użytkownika, a podstawowa obsługa zdarzeń zostanie wykonana automatycznie. Następujące wartości mogą zostać użyte w tej liście: +
+ + + +
+
+ +
defaultButton +
Typ: string +
Zwykle nie powinno się ustawiać tego atrybutu. Określa on domyślny przycisk w oknie dialogowym. Zazwyczaj oznacza to, że przycisk zostanie aktywowany po naciśnięciu klawisza Enter. Atrybutowi temu powinna być przypisana jedna z wartości używanych przez atrybut buttons. +
+


+

+ + +
+
+ +
lastSelected +
Typ: string +
Ustaw to na id ostatniego zaznaczonego okna. Będzie otwierany domyślnie następnym razem, gdy okno preferencji jest otwarte. +
+


+

+ + +
+
+ +
+
+ onbeforeaccept
+
+ Typ: + + Kod skryptu +
+
+ Kod w tym atrybucie jest wywołany kiedy przycisk OK zostaje naciśnięty lub kiedy wywołana zostaje metoda acceptDialog.
+
+
+
+ +
+
+ ondialogaccept
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku akceptacji lub po wywołaniu metody acceptDialog.
+
+
+
+ +
+
+ ondialogcancel
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku 'Anuluj' lub po wywołaniu metody cancelDialog.
+
+
+
+ +
+
+ ondialogdisclosure
+
+ Typ: + + Kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku ujawniającego (ang. disclosure).
+
+
+
+ +
+
+ ondialoghelp
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywołany po naciśnięciu przycisku 'Pomoc'.
+
+
+
+ +
+
+ onpaneload
+
+ Typ: + + kod skryptu +
+
+ Zdefiniowany tutaj kod jest wywołany kiedy okno będzie wczytane, bardzo podobnym zdarzeniem dla okna jest load.
+
+
+
+ +
title +
Typ: string +
Tekst wyświetlony na pasku tytułu w oknie dialogowym. +
+


+


+

+ + +
+
+ +

Zobacz

+ + +
+

+

Własności

+

+

+
buttons +
Typ: rozdzielona przecinkami lista poniższych wartości +
Rozdzielona przecinkami lista przycisków do wyświetlenia w okienku dialogowym. Przyciski zostaną umieszczone w odpowiednim miejscu w zależności od platformy systemowej użytkownika, a podstawowa obsługa zdarzeń zostanie wykonana automatycznie. Następujące wartości mogą zostać użyte w tej liście: +
+ +


+

+ +
+
+
currentPane +
Typ: element prefpane +
Odniesienie do aktualnie wyświetlanego okna. Aby zmienić bieżące okno zastosuj metodę showPane. +
+


+

+ +
+
+
+
+ defaultButton
+
+ Typ: + + string +
+
+ Zwykle nie powinno się ustawiać tej własności. Określa ona domyślny przycisk w oknie dialogowym. Zazwyczaj oznacza to, że przycisk zostanie aktywowany po naciśnięciu klawisza Enter. Własności tej powinna być przypisana jedna z wartości używanych przez atrybut buttons.
+
+
+
+
+ lastSelected
+
+ Typ: + + string +
+
+ Ustawia to na id ostatniego zaznaczonego okna. Będzie otwarte domyślnie następnym razem, kiedy zostanie otwarte okno preferencji.
+
+
+
+
+ preferencePanes
+
+ Typ: + + DOM NodeList +
+
+ Podtrzymuje listę wszystkich elementów prefpane w oknie.
+
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
+
+ acceptDialog()
+
+ Zwraca typ: nie zwraca wartości
+
+ Akceptuje okienko dialogowe i je zamyka, działa podobnie jak naciśnięcie przycisku OK.
+
+
+
+ addPane( prefpane )
+
+ Zwraca typ: nie zwraca wartości
+
+ Dołącza prefpane do listy okien.
+
+
cancelDialog() +
Zwraca typ: nie zwraca wartości +
Anuluje okienko dialogowe i je zamyka, działa podobnie jak naciśnięcie przycisku <tt>Anuluj</tt>. +
+


+

+
centerWindowOnScreen() +
Zwraca typ: nie zwraca wartości +
Ustawia okienko dialogowe na środku ekranu. +
+


+

+
getButton( typ ) +
Zwraca typ: element button +
Zwraca element button o zadanym typie, znajdujący się w okienku dialogowym. +
+


+

+ +
+
+ openWindow( windowtype, url, features, params )
+
+ Zwraca typ: + + window +
+
+ Otwiera potomne okno. windowtype jest łańcuchem znaków określającym typ okna. Jeśli okno jest z tym typem, które jest teraz otwarte, to metoda ta będzie przełączała to okno na wierzch i stanie się aktywne, zamiast otwarcia kolejnego okna. Jeśli typ okna nie jest otwarty, nowe jest otwierane wyświetlając dostarczony url.
+
+
+
+ showPane( prefpane )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Włącza specjalne okno.
+
+

+

Podobne

+

TBD +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/progressmeter/index.html b/files/pl/mozilla/tech/xul/progressmeter/index.html new file mode 100644 index 0000000000..e9adbe9501 --- /dev/null +++ b/files/pl/mozilla/tech/xul/progressmeter/index.html @@ -0,0 +1,170 @@ +--- +title: progressmeter +slug: Mozilla/Tech/XUL/progressmeter +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/progressmeter +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pasek postępu, który możemy zastosować do wyświetlenia postępu długości operacji. Jest to rysowany pasek, który jest wypełniany w miarę jak operacja jest zakończona. W dodatku nieokreślony progressmeter można utworzyć ustawiając atrybut mode na wartość undetermined. Jest stosowany wtedy, gdy długość czasu zakończenia operacji nie jest znany wcześniej. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
mode, value +
+
Własności +
accessible, mode, value +
+

Przykłady

+
grafika:XUL_ref_progress.png
+
<progressmeter mode="determined" value="82"/>
+<progressmeter mode="undetermined"/>
+
+
<!-- switching modes - eg on an ajax call, but in this example with a mouseover the button -->
+<progressmeter mode="determined" id="myProgress"/>
+<button label="Example"  onmouseover="setLoading(true)" onmouseout="setLoading(false)"/>
+function setLoading(state){
+    document.getElementById('myProgress').mode = (state) ? 'undetermined' : 'determined';
+}
+
+

Atrybuty

+

+ +
mode +
Typ: jedna z wartości poniżej +
determined czyli określony progressmeter możemy zastosować w przypadku, gdzie znamy długość operacji jaka jest wykonywana. undetermined czyli nieokreślony progressmeter możemy zastosować do do operacji, w której nie możemy określić czasu jej przebiegu i zazwyczaj będzie wyświetlony jako słupek. '''as a spinning barber pole.''' +
+ +


+

+ + +
+
+ +
value +
Typ: integer +
Zakres liczbowy od 0 do 100, który wyświetla postęp. Dla przykładu, ustaw wartość na "0", która pokaże pusty pasek. Natomiast ustawiając wartość na "100" zobaczymy wypełnienie całej długości paska, a wartość ustawiona na "25" zajmie jedną czwartą paska. Znaki po liczbie są ignorowane.
+


+

+ + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ mode
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu mode.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/radio/index.html b/files/pl/mozilla/tech/xul/radio/index.html new file mode 100644 index 0000000000..ca97414061 --- /dev/null +++ b/files/pl/mozilla/tech/xul/radio/index.html @@ -0,0 +1,314 @@ +--- +title: radio +slug: Mozilla/Tech/XUL/radio +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/radio +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który może być włączany lub wyłączany. Przyciski opcji są prawie zawsze pogrupowane razem w grupę. Tylko jeden przycisk opcji wewnątrz tego samego radiogroup może być zaznaczony w jednym czasie. Użytkownik może włączyć przycisk opcji, jeśli klikniemy włączony poprzez zaznaczenie opcji myszka lub poprzez klawiaturę. Inne przyciski opcji w tej samej grupie zostaną wyłączone. Etykieta, określona za pomocą atrybutu label i możemy dodać ją obok przycisku opcji.

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty
accesskey, command, crop, disabled, focused, group, image, label, selected, tabindex, value +
+
Własności +
accessKey, accessible, crop, disabled, image, label, radioGroup, selected, tabIndex, value +
+

Przykłady

+
grafika:XUL_ref_radio.png
+
<radiogroup>
+  <radio id="orange" label="Red" accesskey="R"/>
+  <radio id="violet" label="Green"  accesskey="G" selected="true"/>
+  <radio id="yellow" label="Blue"  accesskey="B" disabled="true"/>
+</radiogroup>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
focused +
Typ: boolean +
Ten atrybut jest ustawiony na true, jeśli element jest aktywny (focused). +
+


+

+ + +
+
+ +
+
+ group
+
+ Typ: + + nazwa grupy jako łańcuch znaków + <magic name="\"PAGENAME\"/"></magic>
+
+ Przyciski z tą samą wartością atrybutu group należą do tej samej grupy. Tylko jeden przycisk z grupy może być zaznaczony w danej chwili. Jeśli użytkownik zaznaczy jeden z przycisków, inne z tej grupy zostaną odznaczone.
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ selected
+
+ Typ: + + boolean +
+
+ Sygnalizuje gdzie element jest zaznaczony lub nie. Ta wartość jest tylko do odczytu. Aby zmienić zaznaczenie, ustaw pozostałe własności selectedIndex lub selectedItem stanowiące ten element.
+
+ +

 

+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ radioGroup
+
+ Typ: + + element radiogroup +
+
+ Zwraca zamkniętą grupę (radiogroup) tak, że element radio jest zawarty wewnątrz, który może być lub nie być jego bezpośrednim rodzicem.
+
+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
radiogroup, checkbox +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement, nsIDOMXULLabeledControlElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/radiogroup/index.html b/files/pl/mozilla/tech/xul/radiogroup/index.html new file mode 100644 index 0000000000..ec4489fc60 --- /dev/null +++ b/files/pl/mozilla/tech/xul/radiogroup/index.html @@ -0,0 +1,221 @@ +--- +title: radiogroup +slug: Mozilla/Tech/XUL/radiogroup +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/radiogroup +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Grupa przycisków opcji. Tylko jeden przycisk wewnątrz grupy może zostać zaznaczony w jednym czasie. Element przycisków radio możemy obie wersje bezpośrednich dzieci radiogroup lub potomków. Umieszczenie radiogroup wewnątrz groupbox, jeśli chcielibyśmy, tak jak obramowanie lub element caption dla tej samej grupy. Domyślnie radiogroup posiada orientację pionową. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
disabled, focused, preference, tabindex, value +
+
Własności
accessible, disabled, focusedItem, selectedIndex, selectedItem, tabIndex, value +
+
Metody +
appendItem, checkAdjacentElement, insertItemAt, removeItemAt +
+

Przykłady

+
grafika:XUL_ref_radios.png
+
<radiogroup>
+  <radio id="orange" label="Red"/>
+  <radio id="violet" label="Green" selected="true"/>
+  <radio id="yellow" label="Blue"/>
+</radiogroup>
+
+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
focused +
Typ: boolean +
Ten atrybut jest ustawiony na true, jeśli element jest aktywny (focused). +
+


+

+ + +
+
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ focusedItem
+
+ Typ: + + element radio +
+
+ Podtrzymuje bieżącą aktywną pozycję radiogroup, która może lub nie być tą samą zaznaczoną pozycją. Możemy zmienić aktywną pozycję poprzez ustawienie ten własności.
+
+
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+
+ selectedItem
+
+ Typ: + + element +
+
+ Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie null. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własność selectedIndex lub zmieniona będzie przez użytkownika.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
appendItem( label, value ) +
Zwraca typ: element +
Tworzy nową pozycję i dodaje ją na koniec istniejącej listy pozycji. Opcjonalnie posiada ustawioną wartość. Funkcja zwraca nowo utworzony element.
+
checkAdjacentElement( dir ) +
Zwraca typ: nie zwraca wartości +
Odznacza aktualnie zaznaczony przycisk radio w grupie i zaznacza przyległy. Jeśli argument dir jest true, to następny przycisk opcji jest zaznaczony. Jeśli jest false, to zostanie poprzedni przycisk opcji zaznaczony. +
+


+

+
insertItemAt( index, label, value ) +
Zwraca typ: element +
Ta metoda tworzy nowy element listy i umieszcza go w określonej pozycji. Opcjonalnie można ustawić jego wartość. Nowy element jest zwracany. +
+
removeItemAt( index ) +
Zwraca typ: element +
Usuwa pozycję potomną w elemencie o określonym indeksie. Metoda zwraca usuniętą pozycję. +
+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/resizer/index.html b/files/pl/mozilla/tech/xul/resizer/index.html new file mode 100644 index 0000000000..147d0af764 --- /dev/null +++ b/files/pl/mozilla/tech/xul/resizer/index.html @@ -0,0 +1,114 @@ +--- +title: resizer +slug: Mozilla/Tech/XUL/resizer +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/resizer +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element stosowany do zmiany rozmiaru okna. Możesz umieścić własny przycisk wewnątrz elementu resizer. Wówczas użytkownik będzie mógł zmienić rozmiar okna przeciągając za ten element. Element resizer wywoła zdarzenie command po każdej zmianie rozmiaru okna. +

+
Atrybuty +
dir +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ +
dir +
Typ: jedna z wartości poniżej +
Kierunek w którym zmienia się rozmiar okna.
+ + + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/richlistbox/index.html b/files/pl/mozilla/tech/xul/richlistbox/index.html new file mode 100644 index 0000000000..d4207fd6e5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/richlistbox/index.html @@ -0,0 +1,250 @@ +--- +title: richlistbox +slug: Mozilla/Tech/XUL/richlistbox +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/richlistbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+ +

Ten element jest stosowany do tworzenia listy pozycji, podobnie do element listbox, lecz jest projektowany do zastosowania wtedy, kiedy pozycje nie zawierają zawartości prostego tekstu. richlistbox obsługuje zaznaczenie pojedynczej pozycji w odpowiednim czasie.

+ +

Uwaga: In versions of Firefox prior to Firefox 3, rich list boxes support only single selection. Firefox 3 introduced multiple selection to rich list boxes.

+ +
+
Atrybuty
+
seltype, suppressonselect
+
+ +
+
Własności
+
accessible, children, scrollBoxObject, selectedIndex, selectedItem, selType, suppressOnSelect
+
+ +
+
Metody
+
clearSelection, ensureElementIsVisible, ensureSelectedElementIsVisible, getItemAtIndex, getRowCount, goDown, goUp
+
+ +

Przykłady

+ +

(potrzebny przykład)

+ +

Atrybuty

+ +

+ +
+ +
+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+

+ +

Własności

+ +

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+ children
+
+ Typ: + + tablica elementów +
+
+ Zwraca listę pozycji w richlistbox.
+
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+ selectedItem
+
+ Typ: + + element +
+
+ Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie null. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własność selectedIndex lub zmieniona będzie przez użytkownika.
+
+
+
+ selType <magic name="\"PAGENAME\"/"></magic>
+
+  
+
+ Type: string
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu seltype.
+
+

 

+

 

+ +

+
+
+ suppressOnSelect
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu suppressonselect.
+

+ +

Metody

+ +

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
clearSelection() +
Zwraca typ: nie zwraca wartości
Odznacza wszystkie pozycje. +
+


+

ensureElementIsVisible( element ) +
Zwraca typ: nie zwraca wartości +
Jeśli określony element nie jest aktualnie widziany przez użytkownika, to wyświetlane pozycje są przewijane, do momentu, aż będzie on widoczny. Jeśli pozycja jest już widoczna, przewijanie nie będzie miało miejsca. +
+


+

ensureSelectedElementIsVisible() +
Zwraca typ: nie zwraca wartości +
Jeśli aktualnie zaznaczony element w pudełku listy jest aktualnie nie widoczny dla użytkownika, to widok pudełka jest przewijany, aż się on pojawi. Jeśli pozycja jest widoczna, to nie pojawią się paski przewijania.
+


+

getItemAtIndex( index ) +
Zwraca typ: element +
Zwraca element, który jest o określonym indeksie. +
+


+

getRowCount() +
Zwraca typ: integer +
Zwraca ogólną liczbę wierszy w elemencie, nieważne ile wierszy jest wyświetlanych. +
+


+


+

+
+ goDown()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przenosi zaznaczenie w dół o jedną pozycje.
+
+
+ goUp()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przenosi zaznaczenie do góry o jedną pozycję.
+

+ +

Podobne

+ +
+
Interfejsy
+
nsIAccessibleProvider, nsIDOMXULSelectControlElement
+
diff --git a/files/pl/mozilla/tech/xul/richlistitem/index.html b/files/pl/mozilla/tech/xul/richlistitem/index.html new file mode 100644 index 0000000000..5bc9491c32 --- /dev/null +++ b/files/pl/mozilla/tech/xul/richlistitem/index.html @@ -0,0 +1,181 @@ +--- +title: richlistitem +slug: Mozilla/Tech/XUL/richlistitem +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/richlistitem +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Indywidualna pozycja richlistbox. +

+
Atrybuty +
disabled, selected, tabindex, value +
+
Własności +
accessible, control, disabled, label, selected, tabIndex, value +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
+
+ selected
+
+ Typ: + + boolean +
+
+ Sygnalizuje gdzie element jest zaznaczony lub nie. Ta wartość jest tylko do odczytu. Aby zmienić zaznaczenie, ustaw pozostałe własności selectedIndex lub selectedItem stanowiące ten element.
+
+ +

 

+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/row/index.html b/files/pl/mozilla/tech/xul/row/index.html new file mode 100644 index 0000000000..1b05df1351 --- /dev/null +++ b/files/pl/mozilla/tech/xul/row/index.html @@ -0,0 +1,96 @@ +--- +title: row +slug: Mozilla/Tech/XUL/row +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/row +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedynczy wiersz w elemencie rows. Każdy potomek elementu row jest umieszczony w każdej kolejnej komórce siatki. Wiersz z większą ilością elementów potomnych decyduje o liczbie kolumn w każdym wierszu. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykład

+

Zobacz grid dla przykładu. +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
grid, columns, column, rows. +
+
+
diff --git a/files/pl/mozilla/tech/xul/rows/index.html b/files/pl/mozilla/tech/xul/rows/index.html new file mode 100644 index 0000000000..1fdc3dd22b --- /dev/null +++ b/files/pl/mozilla/tech/xul/rows/index.html @@ -0,0 +1,96 @@ +--- +title: rows +slug: Mozilla/Tech/XUL/rows +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/rows +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Definiuje wiersze siatki. Każdy potomek elementu rows powinien być elementem row. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

Zobacz grid dla przykładu. +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
grid, columns, column, row. +
+
+
diff --git a/files/pl/mozilla/tech/xul/rule/index.html b/files/pl/mozilla/tech/xul/rule/index.html new file mode 100644 index 0000000000..0e15070ea5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/rule/index.html @@ -0,0 +1,56 @@ +--- +title: rule +slug: Mozilla/Tech/XUL/rule +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/rule +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Zasada wykorzystywana jest w szablonie (template). Dzieci rule wykorzystywane są do deklarowania warunków spełnienia zasady i generowania zawartości. Kiedy zawartość ma być wyświetlona, budowniczy szablonu (template builder) skanuje źródło danych RDF szukając wierzchołków które spełniają zasadę. Kiedy zasada jest spełniona, odpowiadająca jej zawartość jest generowana. +

Zasada zawiera dwie lub więcej elementów-dzieci. Element conditions używany jest do określenia warunków, na których zasoby mogą spełniać zasadę. Zasoby spełniające zasadę używane są do generowania zawartości. Zasoby niespełniające tych zasad nie posiadają żadnej zawartości dla nich stworzonej. Element action określ zawartości generowaną. Element bindings jest opcjonalny i może określać dodatkowe zmienne wiązania, które mają być zastosowane. +

Wszystkie troje dzieci mogą stosować zmienne w miejscu wartości atrybutów. Zmienne zapisuje jako znak zapytania i nazwa. Dla spełnionej zasady, każda zmienna stanie się referencją do wierzchołka zawartości RDF. Jeśli ta sama zmienna pojawi się kilkakrotnie, musi ona posiadać identyczną wartość za każdym razem. +

Zasada może używać uproszczonej składni do porównania, które obejmuje wstawianie dodatkowych atrybutów do elementu rule. Zasada spełni porównanie, jeśli dodany atrybut spełnia porównanie do zawartości RDF. Podczas porównania, atrybuty id, property oraz instanceOf są ignorowane. +

Każdy generowany element będzie dawał automatycznie wartość id. Wartość id będzie przesyłana do źródła id w bazie źródłowej. Możemy użyć to id w skryptach do badania źródła. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
iscontainer, isempty, parent, parsetype +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
+
+ +
+
+ +
+
+ +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/scale/index.html b/files/pl/mozilla/tech/xul/scale/index.html new file mode 100644 index 0000000000..a620cb7e69 --- /dev/null +++ b/files/pl/mozilla/tech/xul/scale/index.html @@ -0,0 +1,223 @@ +--- +title: scale +slug: Mozilla/Tech/XUL/scale +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/scale +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element scale pozwala użytkownikowi na wybranie wartości z zakresu. Pasek wyświetlany w pionie lub poziomie pozwala użytkownikowi na wybranie wartości poprzez przeciągnięcie uchwytu na pasku.

Zastosuj atrybut orient do określenia orientacji na skali. Domyślną wartości jest 'horizontal', która wyświetla poziomą skalę. Najmniejszą wartości są po lewej stronie, a najwyższe wartości są po prawej. Ustaw atrybut orientacji na 'vertical', aby zastosować skalę pionową. +

+
Atrybuty +
disabled, increment, max, min, pageincrement, tabindex, value +
+
Własności +
disabled, max, min, increment, pageIncrement, tabIndex, value,
+
Metody +
decrease, decreasePage, increase, increasePage, +
+

Przykłady

+

Pozioma skala: +

+
<scale min="1" max="10"/>
+
+

Grafika:Controlguide-scale.png +

Pionowa skala: +

+
<scale min="1" max="10" orient="vertical"/>
+
+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
+
+ increment
+
+ Typ: + + integer +
+
+ Wynosi tyle co wartość atrybutu curpos<magic name="\"PAGENAME\"/"> (dla pasków przewijania) lub value (dla pudełek liczbowych)</magic> zmienionego, gdy strzałka na pasku przewijania jest naciśnięta. Domyślnie posiada wartość równą 1.
+
+
+
+ +
min +
Typ: integer +
Wartość minimalna, która może być ustawiona na skali. Domyślną wartością jest 0.
+ + +
+
+ +
max +
Typ: integer +
Maksymalna wartość, która może być na skali. Domyślną wartość jest ustawiona na 100.
+ + +
+
+ +
pageincrement +
Typ: integer +
Wynosi tyle co wartość atrybutu curpos zmienionego, gdy powierzchnia paska przewijania jest kliknięta. Powierzchnia jest obszarem, w którym przytrzymany kursorem pasek przewijania jest przesuwany. Domyślną wartością jest 10. +
+ + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ increment
+
+ Typ: integer
+
+ Pobiera i ustawia wartość atrybutu increment.
+
+
+
min +
Typ: integer +
Pobiera i ustawia wartość atrybutu min.
+ +
+
+
max +
Typ: integer +
Pobiera i ustawia wartość atrybutu max.
+ +
+
+
pageIncrement +
Typ: integer +
Pobiera i ustawia wartość atrybutu pageincrement.
+ +
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+
decrease()
+
Zwraca typ: nie zwraca wartości +
Wartość zmniejszająca się skali poprzez przyrost. +
+


+


+

+
decreasePage()
+
Zwraca typ: nie zwraca wartości +
Wartość zmniejszająca się skali poprzez przyrost strony.
+


+


+

+
+
+ increase()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wartość wzrastająca na increment poprzez przyrost.
+
+
increasePage()
+
Zwraca typ: nie zwraca wartości +
Wartość wzrastająca na skali poprzez przyrost strony. +
+


+


+

+

+

Podobne

+
Interfejsy +
nsIDOMXULControlElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/script/index.html b/files/pl/mozilla/tech/xul/script/index.html new file mode 100644 index 0000000000..3a9f8ba183 --- /dev/null +++ b/files/pl/mozilla/tech/xul/script/index.html @@ -0,0 +1,126 @@ +--- +title: script +slug: Mozilla/Tech/XUL/script +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/script +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Bardzo podobny do elementu script z języka HTML. Stosujemy go do deklaracji skryptu, jaki chcemy zastosować w oknie XUL. Skrypt powinien zazwyczaj być deklarowany w oddzielnym pliku i być pobieranym poprzez odnośnik atrybutem src, lecz możemy także umieścić skrypt wewnątrz okna XUL, wystarczy tylko zastosować otwarty i zamknięty znacznik script.

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
src, type +
+

Przykłady

+
 <script src="test.js"/>
+ <script src="http://example.com/js/test.js"/>
+ <script>
+   function foo(){
+     // kod
+    }
+  </script>
+
+

Atrybuty

+

+ +
src +
Typ: URL +
Adres URL skryptu. +
+


+

+ + +
+
+ +
+
+ type
+
+ Typ: + + Typ zawartości językowej +
+
+ Język skryptu. Zazwyczaj, będziemy ustawiać go na application/x-javascript.
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
+
diff --git a/files/pl/mozilla/tech/xul/scrollbar/index.html b/files/pl/mozilla/tech/xul/scrollbar/index.html new file mode 100644 index 0000000000..239e1dcf47 --- /dev/null +++ b/files/pl/mozilla/tech/xul/scrollbar/index.html @@ -0,0 +1,85 @@ +--- +title: scrollbar +slug: Mozilla/Tech/XUL/scrollbar +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/scrollbar +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kiedy zawartość kontenera jest większa od rozmiaru w kontenerze, paski przesuwania mogą być umieszczone na krawędzi kontenera aby pozwolić użytkownikowi zobaczyć resztę zawartości. Paski przewijania mogą również być użyte niezależnie, kiedy wartość numeryczna lub procentowa musi być podana przez użytkownika. Użytkownik może zmieniać pozycję paska przewijania poprzez klikanie strzałek na jego końcach lub przesuwając suwak paska. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
curpos, increment, maxpos, pageincrement +
+

Przykłady

+
<scrollbar curpos="5" maxpos="50"/>
+
+

Atrybuty

+

+

+ +
curpos +
Typ: integer +
Aktualna pozycja paska przewijania (scrollbar), która posiada zakres od 0 do wartości atrybutu maxpos. Domyślną wartością jest 0. +
+


+

+ + +
+
+ +
+
+ increment
+
+ Typ: + + integer +
+
+ Wynosi tyle co wartość atrybutu curpos<magic name="\"PAGENAME\"/"> (dla pasków przewijania) lub value (dla pudełek liczbowych)</magic> zmienionego, gdy strzałka na pasku przewijania jest naciśnięta. Domyślnie posiada wartość równą 1.
+
+
+
+ +
maxpos +
Typ: integer +
Maksymalna pozycja elementu scrollbar. Domyślną wartością jest 100. +
+


+

+ + +
+
+ +
pageincrement +
Typ: integer +
Wynosi tyle co wartość atrybutu curpos zmienionego, gdy powierzchnia paska przewijania jest kliknięta. Powierzchnia jest obszarem, w którym przytrzymany kursorem pasek przewijania jest przesuwany. Domyślną wartością jest 10. +
+ + +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/scrollbox/index.html b/files/pl/mozilla/tech/xul/scrollbox/index.html new file mode 100644 index 0000000000..e5407a5ece --- /dev/null +++ b/files/pl/mozilla/tech/xul/scrollbox/index.html @@ -0,0 +1,105 @@ +--- +title: scrollbox +slug: Mozilla/Tech/XUL/scrollbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/scrollbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pudełko posiada dodatkowe funkcje, które możemy zastosować do przewijania treści. Zauważ, że element scrollbox nie powoduje wyświetlenia pasków przewijania. Jest stosowany, kiedy aplikacja sama dostosowuje przewijanie. Jeżeli chcesz po prostu wyświetlić paski przewijania, dodaj style='overflow: auto;'. Możemy także zastosować go z innymi kontenerami elementu. +

+

Przykłady

+

(potrzebne przykłady) +

+

Przewijanie elementu potomnego do podglądu

+

Spójrz na metodę scrollIntoView()? Nie istnieje w adresach URL. Zrób tak, zamiast: + +

+
   var xpcomInterface = scrollbox_element.boxObject.QueryInterface(
+       Components.interfaces.nsIScrollBoxObject);
+   xpcomInterface.ensureElementIsVisible(child_element_to_make_visible);
+
+

+

Zobacz nsIScrollBoxObject<code> API dla innych metod podobnych do scroll. +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/scrollcorner/index.html b/files/pl/mozilla/tech/xul/scrollcorner/index.html new file mode 100644 index 0000000000..62a05df225 --- /dev/null +++ b/files/pl/mozilla/tech/xul/scrollcorner/index.html @@ -0,0 +1,94 @@ +--- +title: scrollcorner +slug: Mozilla/Tech/XUL/scrollcorner +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/scrollcorner +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest stosowany dla małych pudełek, które są miejscem gdzie poziomy i pionowy pasek przewijania się spotykają. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/separator/index.html b/files/pl/mozilla/tech/xul/separator/index.html new file mode 100644 index 0000000000..a8a2c1651d --- /dev/null +++ b/files/pl/mozilla/tech/xul/separator/index.html @@ -0,0 +1,131 @@ +--- +title: separator +slug: Mozilla/Tech/XUL/separator +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/separator +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tworzy małe odstępy pomiędzy elementami. Ten typ separatorów powinien być zastosowany do oddzielania części okna dialogowego. Nie rysuje on żadnego widocznego paska, lecz jest małą przestrzenią. Funkcjonalność odpowiednia dla odstępu (spacer), to nie mniejsza niż domyślny jej rozmiar (zazwyczaj 1.5 em). +

+
Atrybuty +
orient +
+
Klasy stylów +
groove, groove-thin, thin +
+

Przykłady

+
<separator class="groove-thin"/>
+
+

Atrybuty

+

+ +
orient +
Typ: jedna z wartości poniżej +
Stosowany do określenia czy separator oddziela poziomo czy pionowo. Uważaj, niektóre wartości są odwrotnością tego, co mogłoby się wydawać niemożliwe. +
+ + + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika. +

groove +
Separator grooved. +
+


+

+
+
+ groove-thin
+
+ Cienki separator grooved.
+
+
thin +
Najcieńszy separator, który zazwyczaj ma 0.5 em. +
+

+

Podobne

+
Elementy +
spacer, splitter. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/spacer/index.html b/files/pl/mozilla/tech/xul/spacer/index.html new file mode 100644 index 0000000000..a052a9a18d --- /dev/null +++ b/files/pl/mozilla/tech/xul/spacer/index.html @@ -0,0 +1,103 @@ +--- +title: spacer +slug: Mozilla/Tech/XUL/spacer +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/spacer +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który zabiera miejsce, lecz nie wyświetla niczego. Jest zwykle używany do umieszczenia pustego miejsca wewnątrz kontenera. Jeśli nie podasz rozmiaru elementu lub nie podasz, że jest on elastyczny, nie będzie on zajmował żadnego miejsca. Jeśli potrzebujesz mniejszej luki, pomyśl o użyciu elementu separator. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+
<box>
+  <button label="Left"/>
+  <spacer flex="1"/>
+  <button label="Right"/>
+</box>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
separator, splitter +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/splitter/index.html b/files/pl/mozilla/tech/xul/splitter/index.html new file mode 100644 index 0000000000..9b8b9df01a --- /dev/null +++ b/files/pl/mozilla/tech/xul/splitter/index.html @@ -0,0 +1,146 @@ +--- +title: splitter +slug: Mozilla/Tech/XUL/splitter +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/splitter +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który powinien pojawić się przed lub za elementem wewnątrz kontenera. Kiedy rozdzielacz jest przeciągany, elementy sąsiednie rozdzielacza zmieniają rozmiar. Jeśli chwytak +(grippy) jest umieszczony wewnątrz rozdzielacza, jeden z elementów sąsiednich do rozdzielacza jest chowany, kiedy chwytak zostanie kliknięty. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
collapse, resizeafter, resizebefore, state, substate +
+
Klasy stylów +
tree-splitter +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+

+ +
+
+ collapse
+
+ Typ: + + jedna z wartości poniżej +
+
+ Określa, która strona rozdzielacza splitter jest zawinięta, kiedy jest kliknięty jego grippy. Jeśli ten atrybut nie jest określony, rozdzielacz nie będzie przypadkiem zawinięty. Powinieneś dodać element grippy wewnątrz rozdzielacza, kiedy chcesz użyć go do zawinięcia.
+
+ +
+
+ + +
+
resizeafter
+
+ +
+
Typ:jedna z poniższych wartości
+
Ten atrybut sygnalizuje, który element po prawej lub poniżej rozdzielacza (splitter) powinien zmienić rozmiar, kiedy rozdzielacz zmienia swoje położenie.
+
+ + + + +
+
+ +
+
+ resizebefore
+
+ Typ: + + jedna wartość z poniższych +
+
+ Ten atrybut sygnalizuje, który element po lewej lub powyżej rozdzielacza (splitter) powinien zmienić rozmiar, kiedy rozdzielacz zmienia swoje położenie.
+
+ +
+
+ +
state +
Typ: jedna z wartości poniżej +
Sygnalizuje gdzie splitter posiada zawiniętą zawartość lub nie. Ten atrybut będzie aktualizowany automatycznie jak rozdzielacz jest przenoszony i generalnie jest stosowany w arkuszu stylów, aby móc zastosować różne wyglądy dla każdego stanu. +
+ + + +
+
+ +
+
+ substate
+
+ Typ: + + jedna z wartości poniżej +
+
+ W rozdzielaczu, który posiada state="collapsed" i collapse="both", określa kierunek w którym rozdzielacz aktualnie zawijany. Cechą Gecko 1.9+ jest collapse="both" i nie będzie ona miała efektu we wcześniejszych wersjach.
+
+ + +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika. +

+
+ tree-splitter
+
+ Zastosowanie tego rozdzielacza jest zamierzone w kolumnach drzewa (pomiędzy elementami treecol). Rozdzielacz rysowany będzie bez szerokości, więc nie będzie on widoczny, jednakże, kolumny mogą wciąż zmieniać swoją szerokość.
+
+

+

Podobne

+

TBD +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/stack/index.html b/files/pl/mozilla/tech/xul/stack/index.html new file mode 100644 index 0000000000..0d3c9cfdf9 --- /dev/null +++ b/files/pl/mozilla/tech/xul/stack/index.html @@ -0,0 +1,96 @@ +--- +title: stack +slug: Mozilla/Tech/XUL/stack +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/stack +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który układa swoje dzieci jedno na drugim. Pierwszy element jest układany na dole i każdy następny potomek układany jest powyżej poprzedniego. Wszystkie elementy są wyświetlane na raz. Elementy potomne mogą również być umieszczane na absolutnych pozycjach wewnątrz stosu. +

Atrybuty left i top elementu potomnego stack określają pozycje tego elementu. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

deck +

+
+
diff --git a/files/pl/mozilla/tech/xul/statusbar/index.html b/files/pl/mozilla/tech/xul/statusbar/index.html new file mode 100644 index 0000000000..e6f2a31217 --- /dev/null +++ b/files/pl/mozilla/tech/xul/statusbar/index.html @@ -0,0 +1,120 @@ +--- +title: statusbar +slug: Mozilla/Tech/XUL/statusbar +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/statusbar +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element stosowany do tworzenia paska statusu, zazwyczaj umieszczony wzdłuż dołu okna. To jest wirtualny odpowiednik standardowego pudełka, lecz może być renderowany w inny sposób. +

+
Własności +
accessible +
+

Przykłady

+
<statusbar>
+	<statusbarpanel label="Left panel"/>
+	<spacer flex="1"/>
+	<progressmeter mode="determined" value="82"/>
+	<statusbarpanel label="Right panel"/>
+</statusbar>
+
+

grafika:XUL_ref_statusbar.png +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
statusbarpanel +
+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/statusbarpanel/index.html b/files/pl/mozilla/tech/xul/statusbarpanel/index.html new file mode 100644 index 0000000000..c8204fb920 --- /dev/null +++ b/files/pl/mozilla/tech/xul/statusbarpanel/index.html @@ -0,0 +1,127 @@ +--- +title: statusbarpanel +slug: Mozilla/Tech/XUL/statusbarpanel +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/statusbarpanel +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedynczy element statusbar. Jest to specjalny typ przycisku, który jest rysowany inaczej, niż zawsze. Nie jak normalne przyciski, statusbarpanel mogą mieć tylko etykietę albo obrazek, lecz nie oba na raz. Ten element jest często stosowany z krótkimi etykietami lub ikonami do pokazania statusu np. gdy użytkownik jest online lub kiedy są nowe wiadomości w skrzynce. +

+
Atrybuty +
crop, label, src +
+
Własności
label, src +
+
Klasy stylów +
statusbarpanel-iconic, statusbarpanel-menu-iconic
+

Przykłady

+
<statusbar>
+	<statusbarpanel label="Left panel"/>
+	<spacer flex="1"/>
+	<progressmeter mode="determined" value="82"/>
+	<statusbarpanel label="Right panel"/>
+</statusbar>
+
+

grafika:XUL_ref_statusbar.png +

+

Atrybuty

+

+

+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+

+

Własności

+

+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ src
+
+ Typ: + + URL +
+
+ Pobiera i ustawia wartość atrybutu src.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika. +

statusbarpanel-iconic +
Zastosuj ta klasę do pojawienia się obrazka na elemencie statusbarpanel. Obrazek określ stosując atrybut src. Obrazek pojawi się zamiast etykiety. +
+


+

+
+
+ statusbarpanel-menu-iconic
+
+ Zastosuj tą klasę do pojawienia się obrazka na elemencie statusbarpanel i także pozwól na menu wyskakujące. Określ obrazek stosując atrybut src i umieść element menupopup wewnątrz statusbarpanel. Obrazek pojawi się zamiast etykiety.
+
+

+

Podobne

+
Elementy +
statusbar +
+
+
diff --git a/files/pl/mozilla/tech/xul/stringbundle/index.html b/files/pl/mozilla/tech/xul/stringbundle/index.html new file mode 100644 index 0000000000..8fae486ca7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/stringbundle/index.html @@ -0,0 +1,177 @@ +--- +title: stringbundle +slug: Mozilla/Tech/XUL/stringbundle +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/stringbundle +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element, który może być stosowany do wczytania zasobów zlokalizowanych z plików własności. Stringbundles powinien być umieszczony wewnątrz elementu stringbundleset. +

Plik własności jest listą par własności klucz-wartość (każda oddzielona linią). Klucz i wartość są oddzielone znakiem równości. Na przykład, następująca definicja dwóch własności:

+
message.displayError=An error occured trying to display this message
+message.nameAlreadyUsed=The name %s is already being used by another account.
+
+

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty
src +
+
Własności
appLocale, src, stringBundle, strings +
+
Metody
getFormattedString, getString +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ +
+
+ src
+
+ Typ: URL
+
+ Adres URL zawartości do wyświetlenia w elemencie.
+
+ +

 

+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

+
+
+ appLocale
+
+ Typ: nsILocale
+
+ Zwraca obiekt XPCOM, który przechowuje informacje o lokalnych użytkownikach. To jest obiekt, który implementuje nsILocale.
+
+ + +
+
+
+
+ src
+
+ Typ: + + URL +
+
+ Pobiera i ustawia wartość atrybutu src.
+
+
+
+
+ stringBundle
+
+ Typ: + + nsIStringBundle +
+
+ Zwraca łańcuch znaków obiekt paczki XPCOM, który implementuje nsIStringBundle.
+
+
+
+
+ strings
+
+ Typ: + + nsISimpleEnumerator +
+
+ Wyliczenie wszystkich ciągów w paczce ciągów. Zawiera obiekty nsIPropertyElement.
+
+

+

Metody

+

+

+
+ getString( key )
+
+ Zwraca typ: + + string +
+
+ Zwraca łańcuch znaków z daną nazwą key z łańcucha znaków paczki (boundle).
+
+ +

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/stringbundleset/index.html b/files/pl/mozilla/tech/xul/stringbundleset/index.html new file mode 100644 index 0000000000..85d9f5e245 --- /dev/null +++ b/files/pl/mozilla/tech/xul/stringbundleset/index.html @@ -0,0 +1,94 @@ +--- +title: stringbundleset +slug: Mozilla/Tech/XUL/stringbundleset +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/stringbundleset +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener dla elementu stringbundle. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/styl/alert-icon/index.html b/files/pl/mozilla/tech/xul/styl/alert-icon/index.html new file mode 100644 index 0000000000..02476b5948 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/alert-icon/index.html @@ -0,0 +1,15 @@ +--- +title: alert-icon +slug: Mozilla/Tech/XUL/Styl/alert-icon +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/alert-icon +--- +
+ « Dokumentacja XUL
+
+
+ alert-icon
+
+ Klasa, która dodaje ikonę ostrzeżenia. Zazwyczaj wygląda jak znak wykrzyknika. Ta i inne klasy ikon może być zastosowana dla elementów image lub innych mogących zawierać obrazek.
+
diff --git a/files/pl/mozilla/tech/xul/styl/error-icon/index.html b/files/pl/mozilla/tech/xul/styl/error-icon/index.html new file mode 100644 index 0000000000..d5c9e19ad2 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/error-icon/index.html @@ -0,0 +1,15 @@ +--- +title: error-icon +slug: Mozilla/Tech/XUL/Styl/error-icon +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/error-icon +--- +
+ « Dokumentacja XUL
+
+
+ error-icon
+
+ Klasa, która dodaje ikonę błedu. Zazwyczaj będzie to czerwona ikona z "X".
+
diff --git a/files/pl/mozilla/tech/xul/styl/groove-thin/index.html b/files/pl/mozilla/tech/xul/styl/groove-thin/index.html new file mode 100644 index 0000000000..90d84475a6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/groove-thin/index.html @@ -0,0 +1,15 @@ +--- +title: groove-thin +slug: Mozilla/Tech/XUL/Styl/groove-thin +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/groove-thin +--- +
+ « Dokumentacja XUL
+
+
+ groove-thin
+
+ Cienki separator grooved.
+
diff --git a/files/pl/mozilla/tech/xul/styl/groove/index.html b/files/pl/mozilla/tech/xul/styl/groove/index.html new file mode 100644 index 0000000000..4cef11eb98 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/groove/index.html @@ -0,0 +1,15 @@ +--- +title: groove +slug: Mozilla/Tech/XUL/Styl/groove +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/groove +--- +
« Dokumentacja XUL
+
groove +
Separator grooved. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/styl/header/index.html b/files/pl/mozilla/tech/xul/styl/header/index.html new file mode 100644 index 0000000000..acbb35084d --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/header/index.html @@ -0,0 +1,15 @@ +--- +title: header +slug: Mozilla/Tech/XUL/Styl/header +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/header +--- +
+ « Dokumentacja XUL
+
+
+ header
+
+ Klasę stosujemy do nagłówków. Zazwyczaj będzie powodować, że tekst ukaże się pogrubiony.
+
diff --git a/files/pl/mozilla/tech/xul/styl/indent/index.html b/files/pl/mozilla/tech/xul/styl/indent/index.html new file mode 100644 index 0000000000..f0569b6395 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/indent/index.html @@ -0,0 +1,15 @@ +--- +title: indent +slug: Mozilla/Tech/XUL/Styl/indent +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/indent +--- +
+ « Dokumentacja XUL
+
+
+ indent
+
+ Klasa ta powoduje wcięcie z lewej strony tekstu.
+
diff --git a/files/pl/mozilla/tech/xul/styl/index.html b/files/pl/mozilla/tech/xul/styl/index.html new file mode 100644 index 0000000000..f30d4d661a --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/index.html @@ -0,0 +1,32 @@ +--- +title: Klasy stylów +slug: Mozilla/Tech/XUL/Styl +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style +--- +

« Dokumentacja XUL

+ +
+
diff --git a/files/pl/mozilla/tech/xul/styl/listcell-iconic/index.html b/files/pl/mozilla/tech/xul/styl/listcell-iconic/index.html new file mode 100644 index 0000000000..c8224ddba3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/listcell-iconic/index.html @@ -0,0 +1,15 @@ +--- +title: listcell-iconic +slug: Mozilla/Tech/XUL/Styl/listcell-iconic +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/listcell-iconic +--- +
+ « Dokumentacja XUL
+
+
+ listcell-iconic
+
+ Klasa ta pozwala na wyświetlenie obrazka w komórce listy. Obrazek należy określić przy pomocy atrybutu image.
+
diff --git a/files/pl/mozilla/tech/xul/styl/listitem-iconic/index.html b/files/pl/mozilla/tech/xul/styl/listitem-iconic/index.html new file mode 100644 index 0000000000..2ccc5087e1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/listitem-iconic/index.html @@ -0,0 +1,15 @@ +--- +title: listitem-iconic +slug: Mozilla/Tech/XUL/Styl/listitem-iconic +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/listitem-iconic +--- +
+ « Dokumentacja XUL
+
+
+ listitem-iconic
+
+ Zastosuj tą klasę, aby mieć wyświetlony obrazek na listitem. Określa obrazek za pomocą arybutu image.
+
diff --git a/files/pl/mozilla/tech/xul/styl/menuitem-iconic/index.html b/files/pl/mozilla/tech/xul/styl/menuitem-iconic/index.html new file mode 100644 index 0000000000..dae1cc537c --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/menuitem-iconic/index.html @@ -0,0 +1,15 @@ +--- +title: menuitem-iconic +slug: Mozilla/Tech/XUL/Styl/menuitem-iconic +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/menuitem-iconic +--- +
+ « Dokumentacja XUL
+
+
+ menuitem-iconic
+
+ Zastosuj tą klasę, aby mieć wyświetlony obrazek na menuitem. Określa obrazek za pomocą arybutu image.
+
diff --git a/files/pl/mozilla/tech/xul/styl/menuitem-non-iconic/index.html b/files/pl/mozilla/tech/xul/styl/menuitem-non-iconic/index.html new file mode 100644 index 0000000000..eee15855ea --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/menuitem-non-iconic/index.html @@ -0,0 +1,15 @@ +--- +title: menuitem-non-iconic +slug: Mozilla/Tech/XUL/Styl/menuitem-non-iconic +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/menuitem-non-iconic +--- +
+ « Dokumentacja XUL
+
+
+ menuitem-non-iconic
+
+ Normalnie, menuitem posiada margines z lewej strony na obrazek lub znak zaznaczenia. Ta klasa może zostać użyta do usunięcia tego marginesu, więc ta pozycja menu pojawi się z lewej strony brzegu menupopup.
+
diff --git a/files/pl/mozilla/tech/xul/styl/message-icon/index.html b/files/pl/mozilla/tech/xul/styl/message-icon/index.html new file mode 100644 index 0000000000..8bb6ed554b --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/message-icon/index.html @@ -0,0 +1,15 @@ +--- +title: message-icon +slug: Mozilla/Tech/XUL/Styl/message-icon +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/message-icon +--- +
+ « Dokumentacja XUL
+
+
+ message-icon
+
+ Klasa, która dodaje ikonę pudełka wiadomości.
+
diff --git a/files/pl/mozilla/tech/xul/styl/monospace/index.html b/files/pl/mozilla/tech/xul/styl/monospace/index.html new file mode 100644 index 0000000000..82bd0839fd --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/monospace/index.html @@ -0,0 +1,15 @@ +--- +title: monospace +slug: Mozilla/Tech/XUL/Styl/monospace +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/monospace +--- +
+ « Dokumentacja XUL
+
+
+ monospace
+
+ Klasa powoduje, że tekst będzie wyświetlany w czcionce o stałej szerokości znaków.
+
diff --git a/files/pl/mozilla/tech/xul/styl/plain/index.html b/files/pl/mozilla/tech/xul/styl/plain/index.html new file mode 100644 index 0000000000..e13aa66aa7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/plain/index.html @@ -0,0 +1,15 @@ +--- +title: plain +slug: Mozilla/Tech/XUL/Styl/plain +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/plain +--- +
+ « Dokumentacja XUL
+
+
+ plain
+
+ Ta klasa sprawia, że element będzie wyświetlony bez obramowania lub marginesu.
+
diff --git a/files/pl/mozilla/tech/xul/styl/question-icon/index.html b/files/pl/mozilla/tech/xul/styl/question-icon/index.html new file mode 100644 index 0000000000..1b172d877a --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/question-icon/index.html @@ -0,0 +1,15 @@ +--- +title: question-icon +slug: Mozilla/Tech/XUL/Styl/question-icon +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/question-icon +--- +
+ « Dokumentacja XUL
+
+
+ question-icon
+
+ Klasa dodaje ikonę pytania, która zazwyczaj wygląda jak znak zapytania.
+
diff --git a/files/pl/mozilla/tech/xul/styl/small-margin/index.html b/files/pl/mozilla/tech/xul/styl/small-margin/index.html new file mode 100644 index 0000000000..66f1063714 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/small-margin/index.html @@ -0,0 +1,15 @@ +--- +title: small-margin +slug: Mozilla/Tech/XUL/Styl/small-margin +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/small-margin +--- +
« Dokumentacja XUL
+
small-margin +
Ta klasa powoduje wyświetlenie tekstu z małym marginesem. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/styl/statusbarpanel-iconic/index.html b/files/pl/mozilla/tech/xul/styl/statusbarpanel-iconic/index.html new file mode 100644 index 0000000000..77590994c8 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/statusbarpanel-iconic/index.html @@ -0,0 +1,15 @@ +--- +title: statusbarpanel-iconic +slug: Mozilla/Tech/XUL/Styl/statusbarpanel-iconic +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/statusbarpanel-iconic +--- +
« Dokumentacja XUL
+
statusbarpanel-iconic +
Zastosuj ta klasę do pojawienia się obrazka na elemencie statusbarpanel. Obrazek określ stosując atrybut src. Obrazek pojawi się zamiast etykiety. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/styl/statusbarpanel-menu-iconic/index.html b/files/pl/mozilla/tech/xul/styl/statusbarpanel-menu-iconic/index.html new file mode 100644 index 0000000000..562011bddf --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/statusbarpanel-menu-iconic/index.html @@ -0,0 +1,15 @@ +--- +title: statusbarpanel-menu-iconic +slug: Mozilla/Tech/XUL/Styl/statusbarpanel-menu-iconic +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/statusbarpanel-menu-iconic +--- +
+ « Dokumentacja XUL
+
+
+ statusbarpanel-menu-iconic
+
+ Zastosuj tą klasę do pojawienia się obrazka na elemencie statusbarpanel i także pozwól na menu wyskakujące. Określ obrazek stosując atrybut src i umieść element menupopup wewnątrz statusbarpanel. Obrazek pojawi się zamiast etykiety.
+
diff --git a/files/pl/mozilla/tech/xul/styl/text-link/index.html b/files/pl/mozilla/tech/xul/styl/text-link/index.html new file mode 100644 index 0000000000..cee23e92ca --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/text-link/index.html @@ -0,0 +1,15 @@ +--- +title: text-link +slug: Mozilla/Tech/XUL/Styl/text-link +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/text-link +--- +
« Dokumentacja XUL
+
text-link +
Etykiety o tej klasie mogą być aktywne (focus), a funkcja obsługi zdarzenia kliknięcia zostanie wywołana zarówno dla kliknięcia myszą, jak i wciśnięcia klawisza Enter. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/styl/thin/index.html b/files/pl/mozilla/tech/xul/styl/thin/index.html new file mode 100644 index 0000000000..5bfc80c94d --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/thin/index.html @@ -0,0 +1,11 @@ +--- +title: thin +slug: Mozilla/Tech/XUL/Styl/thin +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/thin +--- +
« Dokumentacja XUL
+
thin +
Najcieńszy separator, który zazwyczaj ma 0.5 em. +
diff --git a/files/pl/mozilla/tech/xul/styl/tree-splitter/index.html b/files/pl/mozilla/tech/xul/styl/tree-splitter/index.html new file mode 100644 index 0000000000..ce9e148ff5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/tree-splitter/index.html @@ -0,0 +1,15 @@ +--- +title: tree-splitter +slug: Mozilla/Tech/XUL/Styl/tree-splitter +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/tree-splitter +--- +
+ « Dokumentacja XUL
+
+
+ tree-splitter
+
+ Zastosowanie tego rozdzielacza jest zamierzone w kolumnach drzewa (pomiędzy elementami treecol). Rozdzielacz rysowany będzie bez szerokości, więc nie będzie on widoczny, jednakże, kolumny mogą wciąż zmieniać swoją szerokość.
+
diff --git a/files/pl/mozilla/tech/xul/styl/treecol-image/index.html b/files/pl/mozilla/tech/xul/styl/treecol-image/index.html new file mode 100644 index 0000000000..0c24259641 --- /dev/null +++ b/files/pl/mozilla/tech/xul/styl/treecol-image/index.html @@ -0,0 +1,16 @@ +--- +title: treecol-image +slug: Mozilla/Tech/XUL/Styl/treecol-image +tags: + - Klasy_stylów_XUL +translation_of: Archive/Mozilla/XUL/Style/treecol-image +--- +
« Dokumentacja XUL
+
treecol-image +
Zastosuj tą klasę do posiadania obrazka, który pojawi się w nagłówku kolumny drzewa. Określ obrazek stosując atrybut src. +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/tab/index.html b/files/pl/mozilla/tech/xul/tab/index.html new file mode 100644 index 0000000000..44ac9b5b4c --- /dev/null +++ b/files/pl/mozilla/tech/xul/tab/index.html @@ -0,0 +1,247 @@ +--- +title: tab +slug: Mozilla/Tech/XUL/tab +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tab +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedyncza karta, która jest umieszczona wewnątrz elementu tabs. Użytkownik powinien kliknąć w kartę, którą chce przenieść na sam wierzch okna (tabbox). +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
accesskey, afterselected, beforeselected, crop, disabled, image, label, linkedpanel, oncommand, tab, validate +
+
Własności +
accessible, label, linkedPanel, selected, tabs +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
afterselected +
Typ: boolean +
Jest ustawiony na true, jeśli karta tuż po aktualnie zaznaczonej karcie. Ustawienie to jest automatycznie ustawiane i nie powinno się go ustawiać ręcznie. Początkowo znalazło swoją użyteczność w zastosowaniu motywów, tak, że możemy ręcznie dostosować ustawienia zaznaczonej karty. +
+ + +
+
+ +
beforeselected +
Typ: boolean +
Jest ustawiony na true, jeśli karta tuż przed aktualnie zaznaczoną kartą. Ustawienie to jest automatycznie ustawiane i nie powinno się go ustawiać ręcznie. Początkowo znalazło swoją użyteczność w zastosowaniu motywów, tak, że możemy ręcznie dostosować ustawienia zaznaczonej karty. +
+


+

+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ +
oncommand +
Typ: kod skrypt +
Ta funkcja obsługi zdarzenia jest wywołana w momencie aktywacji polecenia. Ma to miejsce, gdy użytkownik zaznaczy pozycję menu lub kiedy naciśnie skrót klawiaturowy przypisany do polecenia. +
+ + +
+
+ +
+
+ selected
+
+ Typ: + + boolean +
+
+ Ten atrybut ustawia true, jeśli karta jest zaznaczona domyślnie.
+
+ +

 

+
+
+ +
+
+ validate
+
+ Typ: + + jedna z poniższych wartości +
+
+ Atrybut ten określa, czy obrazek ma być wczytywany z pamięci podręcznej. Może być to przydatne, jeśli obrazki są wczytywane z serwera zdalnego, albo planowana jest częsta ich podmiana. Poniższe wartości są akceptowane; pominięcie tego atrybutu spowoduje zastosowanie wartości domyślnej.
+
+ +
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ linkedPanel
+
+ Typ: + + id elementu tabpanel +
+
+ Pobiera i ustawia wartość atrybutu linkedpanel.
+
+
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
+
+
+
+ tabs
+
+ Typ: + + element tabs +
+
+ Element tabs, w którym jest zawarty element tab.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Issues

+

Currently disabling of the tab fails. Whilst the tab is "greyed" out it does accept events. . +

Also "unhiding" a tab leads to unpredictable ordering of the tabs. See bugs , and +

+

Podobne

+
Elementy +
tabbox, tabs, tabpanels, tabpanel. +
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlItemElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/tabbox/index.html b/files/pl/mozilla/tech/xul/tabbox/index.html new file mode 100644 index 0000000000..210b2230a6 --- /dev/null +++ b/files/pl/mozilla/tech/xul/tabbox/index.html @@ -0,0 +1,168 @@ +--- +title: tabbox +slug: Mozilla/Tech/XUL/tabbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tabbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener stosuje się do wyświetlania elementów strony w karcie. Na tabbox powinny się składać dwa jego elementy potomne, pierwszy element tabs, który stanowi tab i drugi element tabpanels, który stanowi zawartość stron. Jest to typ pudełka, które domyślnie posiada orientację poziomą.

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
eventnode, handleCtrlPageUpDown, handleCtrlTab +
+
Własności +
accessible, eventNode, handleCtrlPageUpDown, handleCtrlTab, selectedIndex, selectedPanel, selectedTab +
+

Przykłady

+
<tabbox id="myTabList" selectedIndex="2">
+  <tabs>
+    <tab label="A First tab"/>
+    <tab label="Second tab"/>
+    <tab label="Another tab"/>
+    <tab label="Last tab"/>
+  </tabs>
+  <tabpanels>
+    <tabpanel><!-- tabpanel First elements go here --></tabpanel>
+    <tabpanel><!-- tabpanel Second elements go here --></tabpanel>
+    <tabpanel><button label="Click me"/></tabpanel>
+    <tabpanel><!-- tabpanel Fourth elements go here --></tabpanel>
+  </tabpanels>
+</tabbox>
+
+

grafika:XUL_REF_tabboxes.gif +

+

Atrybuty

+

+

+ +
eventnode +
Typ: jedna z wartości poniżej +
Sygnalizuje gdzie zdarzenia nawigacji klawiaturą są nasłuchiwane. Jeśli ten atrybut jest nieokreślony, zdarzenia są nasłuchiwane z tabbox. Tak więc, jeśli ten atrybut nie jest stosowany, tabbox lub element wewnątrz niego musi posiadać aktywną nawigację klawiatury do zastosowania. +
+ +


+

+ + +
+
+ +
handleCtrlPageUpDown +
Typ: boolean +
Jeśli jest ustawione na true lub opuszczone, to klawisze <tt>Control</tt> i <tt>Page Up</tt> lub <tt>Page Down</tt> mogą służyć do przełączania do następnej lub wcześniejszej karty. Jeśli ten atrybut jest ustawiony na false, te klawisze nie będą służyły do nawigacji pomiędzy kartami. +
+


+

+ + +
+
+ +
handleCtrlTab +
Typ: boolean +
Jeśli ustawiony na true lub zostanie opuszczony, tabbox będzie przełączany do następnej karty gdy naciśniemy klawisze <tt>Control</tt> i <tt>Tab</tt>. Jeśli klawisz <tt>Shift</tt> jest przytrzymany wciśnięty to zostanie wyświetlona wcześniejsza karta. Jeśli ten atrybut jest ustawiony na false, to te klawisze nie będą przenosiły pomiędzy kartami. +
+


+

+ + +
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+
+ handleCtrlPageUpDown
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu handleCtrlPageUpDown.
+
+
+
+
+ handleCtrlTab
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu handleCtrlTab.
+
+
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+
+ selectedPanel
+
+ Typ: + + element +
+
+ Trzyma odniesienie do aktualnie zaznaczonego panelu bez elementu <tabbox>. Przydziela wartość do tej własności, aby zmodyfikować zaznaczony panel. Zaznaczone zdarzenie będzie przesłane, kiedy zaznaczony panel jest zmieniany.
+
+
+
+
+ selectedTab
+
+ Typ: + + element tab +
+
+ Referencja do aktualnie zaznaczonej karty, która będzie zawsze jednym z elementów tab w elemencie tabs. Przydziela wartość do tej własności, aby modyfikować aktualnie zaznaczoną kartę.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
tabs, tab, tabpanels, tabpanel. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/tabbrowser/index.html b/files/pl/mozilla/tech/xul/tabbrowser/index.html new file mode 100644 index 0000000000..326cf655ff --- /dev/null +++ b/files/pl/mozilla/tech/xul/tabbrowser/index.html @@ -0,0 +1,602 @@ +--- +title: tabbrowser +slug: Mozilla/Tech/XUL/tabbrowser +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tabbrowser +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest stosowany dla podtrzymania ustawień tylko do odczytu przeglądania dokumentów sieciowych. Podobnym elementem jest browser, poza którym potrafi wyświetlić wiele dokumentów, każdy w osobnej karcie. Ten element jest zaimplementowany jako ustawienie przeglądarki wewnątrz elementu tabbox. +

+
Atrybuty +
autocompleteenabled, autocompletepopup, autoscroll, contentcontextmenu, contenttooltip, handleCtrlPageUpDown, onbookmarkgroup, onnewtab +
+
Własności +
browsers, canGoBack, canGoForward, contentDocument, contentTitle, contentViewerEdit, contentViewerFile, contentWindow, currentURI, docShell, documentCharsetInfo, homePage, markupDocumentViewer, securityUI, selectedBrowser, selectedTab, sessionHistory, tabContainer, webBrowserFind, webNavigation, webProgress +
+
Metody +
addProgressListener, addTab, appendGroup, getBrowserForDocument, getBrowserForTab, getNotificationBox, goBack, goBackGroup, goForward, goForwardGroup, goHome, gotoIndex, loadGroup, loadTabs, loadOneTab, loadURI, loadURIWithFlags, reload, reloadAllTabs, reloadTab, reloadWithFlags, removeAllTabsBut, removeCurrentTab, removeProgressListener, removeTab, replaceGroup, stop +
+

Przykłady

+

Kod XUL

+

Poniższy kod jest przykładem elementu tabbox z trzema kartami, gdzie każda zawiera element browser zamiast elementów tabpanel. Pierwsza karta jest wczytana z zawartością HTML, a pozostałe dwie karty są puste: +

+
<vbox>
+  <tabbox id="tabBrowser">
+    <tabs>
+      <tab label="Tab1"/>
+      <tab label="Tab2"/>
+      <tab label="Tab3"/>
+    </tabs>
+    <tabpanels width="500" height="500">
+      <browser id="browserTab1" src="http://www.mozilla.org"/>
+      <browser id="browserTab2"/>
+      <browser id="browserTab3"/>
+    </tabpanels>
+  </tabbox>
+  <hbox>
+    <button id="btnLoadBrowserContent"
+            label="Wczytaj URL" oncommand="loadURL(document.getElementById('browserTab2'),'http://developer.mozilla.org')"/>
+  </hbox>
+</vbox>
+
+

JavaScript

+

Poniższy kod ustawi atrybut src elementu browser z id="browserTab2" do adresu url http://developer.mozilla.org, kiedy zdarzenie oncommand zostanie odpalone po tym jak użytkownik naciśnie przycisk "Wczytaj URL". +

+
function loadURL(browserElem,pUrl) {
+    //modyfikuje atrybut src elementu browser
+    browserElem.setAttribute("src",pUrl);
+}
+
+

Atrybuty

+

+

+ +
autocompleteenabled +
Tylko Firefox +
Typ: boolean +
Wartość true włącza automatyczne uzupełnianie pól tekstowych. +
+


+

+ + +
+
+ +
autocompletepopup +
Typ: id elementu wyskakującego (popup) +
id elementu popup wykorzystywanego do przechowywania wyników automatycznego uzupełniania dla tego elementu. +
+


+

+ + +
+
+ +
autoscroll +
Tylko Firefox +
Typ: boolean +
Wartość false wyłącza automatyczne przewijanie dla danej przeglądarki. Jeśli atrybut jest ustawiony na true lub zostanie pominięty, automatyczne przewijanie zostanie włączone lub będzie zależne od wartości opcji general.autoScroll. +
+


+

+ + +
+
+ +
+
+ contentcontextmenu
+
+ Typ: + + id elementu menupopup +
+
+ Odniesienie do menu kontekstowego dla obszaru kontekstowego w tabbrowser.
+
+
+
+ +
+
+ contenttooltip
+
+ Typ: + + id elementu tooltip +
+
+ Odniesienie do elementu tooltip będącego w użyciu dla obszaru kontekstowego w tabbrowser.
+
+
+
+ +
handleCtrlPageUpDown +
Typ: boolean +
Jeśli jest ustawione na true lub opuszczone, to klawisze <tt>Control</tt> i <tt>Page Up</tt> lub <tt>Page Down</tt> mogą służyć do przełączania do następnej lub wcześniejszej karty. Jeśli ten atrybut jest ustawiony na false, te klawisze nie będą służyły do nawigacji pomiędzy kartami. +
+


+

+ + +
+
+ + +
+
onbookmarkgroup
+
Nie w Firefoksie
+
Typ:Kod skryptu
+
Ten kode zostanie wykony, kiedy użytkownik wybierze polecenie "Bookmark this Group of Tabs".
+
+
+
+ +
+
+ onnewtab
+
+ Nie w Firefoksie
+
+ Typ: + + kod skryptu +
+
+ Ten skrypt będzie wywołany, kiedy nowy przycisk zostanie naciśnięty.
+
+
+

+

Własności

+

+

+
+
+ browsers
+
+ Typ: + + lista (nodelist) elementu browser +
+
+ Przechowuje listę elementów browser wewnątrz tabbrowser.
+
+
+
canGoBack +
Typ: boolean +
Własność tylko do odczytu ma wartość true, jeśli istnieje strona w historii sesji, do której można się cofnąć, a przycisk 'Wstecz' powinien być dostępny. +
+ +
+
+
+
+ canGoForward
+
+ Typ: + + boolean +
+
+ Własność tylko do odczytu ma wartość true, jeśli istnieje strona w historii sesji, do której można przejść, a przycisk 'Do przodu' powinien być dostępny.
+
+
+
contentDocument +
Typ: document +
Własność tylko do odczytu zawierająca obiekt dokumentu w danym elemencie. +
+


+

+ +
+
+
contentTitle +
Typ: string +
Własność tylko do odczytu zawierająca tytuł obiektu dokumentu w przeglądarce. +
+


+

+ +
+
+
contentViewerEdit +
Typ: nsIContentViewerEdit +
Własność tylko do odczytu zawierająca nsIContentViewerEdit, który zajmuje się operacjami związanymi ze schowkiem w danym dokumencie. +
+


+

+ +
+
+
contentViewerFile +
Typ: nsIContentViewerFile +
Referencja do interfejsu nsIContentViewerFile dla dokumentu. +
+


+

+ +
+
+
+
+ contentWindow
+
+ Typ: window
+
+ Własność tylko do odczytu zawierająca obiekt okna w elemencie.
+
+

+
+
currentURI +
Typ: nsIURI +
Własność tylko do odczytu zawierająca aktualnie wczytany adres URL. Aby zmienić adres URL, należy zastosować metodę loadURI. +
+


+

+ +
+
+
docShell +
Typ: nsIDocShell +
Własność tylko do odczytu zawierająca obiekt nsIDocShell dla dokumentu. +
+ +
+
+
documentCharsetInfo +
Typ: nsIDocumentCharsetInfo +
Własność tylko do odczytu zawierająca obiekt nsIDocumentCharsetInfo dla dokumentu, stosowany do określenia, które kodowanie znaków powinno być zastosowane do wyświetlenia dokumentu. +
+


+

+ +
+
+
homePage +
Typ: tekstowy adres URL strony domowej +
Ta własność przechowuje adres strony startowej ustawionej przez użytkownika. +
+


+

+ +
+
+
markupDocumentViewer +
Typ: nsIMarkupDocumentViewer +
Własność tylko do odczytu zawierająca nsIMarkupDocumentViewer, który jest odpowiedzialny za rysowanie dokumentu. +
+


+

+ +
+
+
securityUI +
Typ: nsISecureBrowserUI +
Własność tylko do odczytu przechowująca obiekt, który może zostać użyty do określenia poziomu bezpieczeństwa we wczytanym dokumencie. +
+


+

+ +
+
+
+
+ selectedBrowser
+
+ Typ: + + element browser +
+
+ Ta własność jest tylko do odczytu i zwraca aktualnie wyświetlany element browser.
+
+
+
+
+ selectedTab
+
+ Typ: + + element tab +
+
+ Referencja do aktualnie zaznaczonej karty, która będzie zawsze jednym z elementów tab w elemencie tabs. Przydziela wartość do tej własności, aby modyfikować aktualnie zaznaczoną kartę.
+
+
+
sessionHistory +
Typ: nsISHistory +
Własność tylko do odczytu zawierająca obiekt nsISHistory, przechowujący historię sesji. +
+


+

+ +
+
+
+
+ tabContainer
+
+ Typ: + + element tabs +
+
+ Zwraca element tabs, który zawiera karty.
+
+
+
webBrowserFind +
Typ: nsIWebBrowserFind +
Własność tylko do odczytu zawierająca obiekt nsIWebBrowserFind, którego można użyć do szukania tekstu w dokumencie. +
+


+

+ +
+
+
webNavigation +
Typ: nsIWebNavigation +
Własność tylko do odczytu zawiera obiekt nsIWebNavigation dla dokumentu. Wiele z jego metod może być wywoływanych bezpośrednio na dokumencie; są to takie metody jak goBack i goForward. Zawiera także stałe wczytywania wykorzystywane przez reloadWithFlags i loadURIWithFlags. +
+


+

+ +
+
+
webProgress +
Typ: nsIWebProgress +
Własność tylko do odczytu zawierająca obiekt nsIWebProgress, który jest stosowany do monitorowania postępu podczas ładowania dokumentu. +
+


+

+ +
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
+
+ addProgressListener( listener )
+
+ Zwraca typ: nie zwraca wartości
+
+ Dodaje do przeglądarki element nasłuchujący postęp, który będzie monitorował wczytywane dokumenty. Element nasłuchujący powinien implementować interfejs nsIWebProgressListener.
+
+
addTab( URL, referrerURI, charset, postData, owner, allowThirdPartyFixup ) +
Zwraca typ: element tab +
Otwiera nową kartę, która ładuje stronę o określonym adresie URL. Pozostałe parametry są opcjonalne. Pasek kart pojawi się, jeśli to potrzebne. +
Zobacz przykład: Fragmenty kodu:Przeglądanie w kartach. +
+


+

+
appendGroup( group ) +
Zwraca typ: nie zwraca wartości +
Nie w Firefoksie +
Dodaje kilka nowych kart na koniec istniejących kart. Argument powinien być tablicą obiektów, jeden dla każdego dokumentu do wczytania. Obiekty mogą być definiowane w skrypcie i stanowić mogą własności URI dla adresu URL strony do wczytania. Własność referrerURI może także być opcjonalnie zastosowana do ustawienia odniesienia się do strony. +
+


+

+
+
+ getBrowserForDocument( document )
+
+ Typ: + + element browser +
+
+ Zwraca browser dla określonego dokumentu.
+
+
getBrowserForTab( tab ) +
Typ: element browser +
Zwraca browser dla określonego elementu tab. +
+


+

+
+
+ getNotificationBox( browser )
+
+ Typ: + + element notificationbox +
+
+ Zwraca notificationbox dla określonego elementu browser.
+
+
goBack() +
Zwraca typ: nie zwraca wartości +
Przejście o jedną stronę wstecz w historii. +
+


+

+
+
+ goBackGroup()
+
+ Nie w Firefoksie
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zwraca poprzednią grupę kart.
+
+
goForward() +
Zwraca typ: nie zwraca wartości +
Przejście o jedną stronę do przodu w historii. +
+


+

+
+
+ goForwardGroup()
+
+ Nie w Firefoksie
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Idzie dalej do następnej grupy kart.
+
+
goHome() +
Zwraca typ: nie zwraca wartości +
Wczytuje stronę startową użytkownika do przeglądarki. +
+


+

+
gotoIndex( index ) +
Zwraca typ: nie zwraca wartości +
Przechodzi do strony o podanym indeksie w historii. Użyj wartości dodatniej, by przejść w przód, a ujemnej by w tył. +
+


+

+ +
+
+ loadOneTab( URL, referrerURI, charset, postData, loadInBackground, allowThirdPartyFixup )
+
+ Zwraca typ: + + element tab +
+
+ Otwiera nową kartę, która ładuje stronę o określonym adresie URL. Pozostałe parametry są opcjonalne. Pasek kart pojawi się, jeśli to potrzebne. Metoda ta działa tak samo, jak addTab z tą różnicą, że posiada parametr loadInBackground, który pozwala wybrać, czy otworzyć nową kartę w tle lub na pierwszym planie. Nie ma również parametru owner, jako że karta-właściciel zostanie określona automatycznie.
+
+
+
+ loadTabs( uris, loadInBackground, replace )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wczytuje ustawienia URI, określone przez tablicę <tt>uris</tt>, w kartach. Jeśli <tt>loadInBackground</tt> jest true, karty są wczytywane w tle i jeśli <tt>replace</tt> jest typu true, aktualnie wyświetlane karty są zastąpione przez określone URI zamiast dodawania nowych kart.
+
+
loadURI( uri, adres-odsyłający, kodowanie-znaków ) +
Zwraca typ: nie zwraca wartości +
Wczytuje dokument spod danego adresu URL, z danym kodowaniem i adresem odsyłającym. +
+


+

+
loadURIWithFlags( uri, flagi, adres-odsyłający, kodowanie-znaków, postData ) +
Zwraca typ: nie zwraca wartości +
Wczytuje adres URL do dokumentu z określonymi flagami wczytywania, pozwala określić adres odsyłający, kodowanie znaków oraz dane przesyłane metodą POST. Poza flagami dozwolonymi dla metody reloadWithFlags, dostępne są także: +
+ +


+

+
reload() +
Zwraca typ: nie zwraca wartości +
Wczytuje ponownie dokument w przeglądarce. +
+


+

+
+
+ reloadAllTabs()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wczytuje ponownie zawartość wszystkich kart.
+
+
+
+ reloadTab( tab )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wczytuje ponownie określona kartę.
+
+
reloadWithFlags( flags ) +
Zwraca typ: nie zwraca wartości +
Wczytuje ponownie dokument w przeglądarce z danymi flagami wczytywania. Można użyć poniższych flag; wszystkie one są stałymi własności webNavigation (lub interfejsu nsIWebNavigation). Flagi te można łączyć przy użyciu symbolu ( | ). +
+ +


+

+
+
+ removeAllTabsBut( tabElement )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Usuwa wszystkie panele kart oprócz jednego przesyłanego do określonej karty. Jeśli tylko jedna strona karta jest wyświetlana, to ta metoda nie robi nic.
+
+
+
+ removeCurrentTab()
+
+ Zwraca typ: + + element tab +
+
+ Usuwa bieżącą kartę wyświetlonej strony. Jeśli jest to jedyna wyświetlona karta ze stroną, metoda ta nie zostanie wykonana.
+
+
removeProgressListener( listener ) +
Zwraca typ: nie zwraca wartości +
Usuwa element nasłuchujący postęp wczytywania z przeglądarki. +
+


+

+ +
+
replaceGroup( group )
+
Nie w Firefoksie
+
Zwraca typ:tablica obiektów historii sesji
+
Zastępuje istniejące karty nowymi ustawieniami. Jeśli tutaj było więcej kart przedtem, dodatkowe karty nie zostaną usunięte. Możemy zastosować metodę removeTab, aby usunąć istniejące pierwsze karty, jeśli if that is desired. The argument should be an array of objects, one for each document to load. The objects may be defined in script and contain a URI property for the URL of the page to load. A referrerURI property may also be optionally used to set the referrer page. This method returns an array of the session history objects for the tabs that were removed.
+
+
stop() +
Zwraca typ: nie zwraca wartości +
Odpowiednik naciśnięcia przycisku Zatrzymaj. Metoda ta zatrzymuje wczytywanie bieżącego dokumentu. +
+


+


+

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/tabpanel/index.html b/files/pl/mozilla/tech/xul/tabpanel/index.html new file mode 100644 index 0000000000..dea61849d7 --- /dev/null +++ b/files/pl/mozilla/tech/xul/tabpanel/index.html @@ -0,0 +1,96 @@ +--- +title: tabpanel +slug: Mozilla/Tech/XUL/tabpanel +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tabpanel +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Indywidualny panel w elemencie tabpanels. Ten element jest opcjonalny i możemy tylko stosować inne kontenery poprzez umieszczenie ich w tym panelu. +

Dodatkowe informacje są dostępne w kursie XUL. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
tabbox, tabs, tab, tabpanels. +
+
+
diff --git a/files/pl/mozilla/tech/xul/tabpanels/index.html b/files/pl/mozilla/tech/xul/tabpanels/index.html new file mode 100644 index 0000000000..ce96d43bda --- /dev/null +++ b/files/pl/mozilla/tech/xul/tabpanels/index.html @@ -0,0 +1,155 @@ +--- +title: tabpanels +slug: Mozilla/Tech/XUL/tabpanels +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tabpanels +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener do podtrzymania ustawień stron w tabbox. Element tabpanels powinien być umieszczony w tabbox. Dziecko elementu tabpanels zostaje panelami tabbox. Zazwyczaj, dzieci są elementami tabpanel. Poprzez kliknięcie pierwszej karty, pierwszy panel zostanie wyświetlony. Poprzez kliknięcie drugiej karty, drugi panel zostanie wyświetlony i tak dalej. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
selectedIndex +
+
Własności +
accessible, selectedIndex, selectedPanel +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ +
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia indeks aktualnie zaznaczonego panelu. Pierwsza pozycja jest w indeksie jako 0.
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+
+ selectedPanel
+
+ Typ: + + element +
+
+ Trzyma odniesienie do aktualnie zaznaczonego panelu bez elementu <tabbox>. Przydziela wartość do tej własności, aby zmodyfikować zaznaczony panel. Zaznaczone zdarzenie będzie przesłane, kiedy zaznaczony panel jest zmieniany.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
tabbox, tabs, tab, tabpanel. +
Interfejsy +
nsIAccessibleProvider +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/tabs/index.html b/files/pl/mozilla/tech/xul/tabs/index.html new file mode 100644 index 0000000000..3bed86f1e9 --- /dev/null +++ b/files/pl/mozilla/tech/xul/tabs/index.html @@ -0,0 +1,211 @@ +--- +title: tabs +slug: Mozilla/Tech/XUL/tabs +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tabs +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Wiersz karty. Element tabs powinien zostać umieszczony wewnątrz tabbox i powinien zawierać elementy tab. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
closebutton, disableclose, first-tab, last-tab, onclosetab, onnewtab, onselect, setfocus, tooltiptextnew +
+
Własności +
selectedIndex, selectedItem +
+
Metody +
advanceSelectedTab, appendItem, insertItemAt, removeItemAt +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
closebutton +
Typ: boolean +
Jeśli ten atrybut jest ustawiony na true, to wiersz tabs będzie miał przycisk "Nowa karta" i przycisk "Zamknij" na swoim końcu. Ta cecha jest stosowana przez element tabbrowser, aby dostarczyć ułatwienie dla dodania lub zamykania kart. Możemy jej ustawić (przypisać) obrazek do 'Nowej karty' i przycisku 'Zamknij' poprzez zaimplementowanie ich do poszczególnych klas tabs-newbutton i tabs-closebutton. +
+


+

+ + +
+
+ +
disableclose +
Typ: boolean +
Jeśli ten atrybut jest ustawiony na true, to przycisk zamknięcia będzie wyłączony. +
+


+

+ + +
+
+ +
first-tab +
Typ: boolean +
Ten atrybut będzie ustawiony na true, dla pierwszej karty. Ten atrybut nie powinien być ustawiany ręcznie, lecz wtedy, gdy jest stosowany w motywie, a jeśli jest pierwszą kartą, to powinna mieć ona inny sposób nadania stylu. +
+


+

+ + +
+
+ +
last-tab +
Typ: boolean +
Ten atrybut będzie ustawiony na true, dla ostatniej karty. Ten atrybut nie powinien być ustawiany ręcznie, lecz wtedy, gdy jest stosowany w motywie, a jeśli jest ostatnią kartą, to powinna mieć inny sposób nadania stylu. +
+


+

+ + +
+
+ +
+
+ onclosetab
+
+ Typ: + + kod skryptu +
+
+ Ten skrypt będzie wywoływany, kiedy przycisk zamknięcia karty jest naciśnięty.
+
+
+
+ +
+
+ onnewtab
+
+ Nie w Firefoksie
+
+ Typ: + + kod skryptu +
+
+ Ten skrypt będzie wywołany, kiedy nowy przycisk zostanie naciśnięty.
+
+
+
+ +
+
+ onselect
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest przesyłane do elementu tabs, kiedy ta karta jest zmieniana.
+
+ +

 

+
+
+ +
+
+ +
+
+ tooltiptextnew
+
+ Nie w Firefoksie
+
+ Typ: + + string +
+
+ Stosuje się do ustawienia tekstu, który przydzielony jest do podpowiedzi, kiedy użytkownik przesunie kursor myszki nad nowym przyciskiem w wierszu karty.
+
+
+

+

Własności

+

+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
+
+
+
+ selectedItem
+
+ Typ: + + element +
+
+ Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie null. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własność selectedIndex lub zmieniona będzie przez użytkownika.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
advanceSelectedTab( dir, wrap ) +
Zwraca typ: nie zwraca wartości +
Jeśli argument dir jest ustawiony na 1, aktualnie zaznaczona karta zmieni się w następnej karcie. Jeśli argument dir jest ustawiony na -1, aktualnie zaznaczona karta zmienia się w kartę poprzednią. Jeśli argument wrap jest true, będzie regulowało przewijaniem w koło, kiedy pierwsza lub ostatnia karta zostanie osiągnięta. +
+


+

+
appendItem( label, value ) +
Zwraca typ: element +
Tworzy nową pozycję i dodaje ją na koniec istniejącej listy pozycji. Opcjonalnie posiada ustawioną wartość. Funkcja zwraca nowo utworzony element.
+
insertItemAt( index, label, value ) +
Zwraca typ: element +
Ta metoda tworzy nowy element listy i umieszcza go w określonej pozycji. Opcjonalnie można ustawić jego wartość. Nowy element jest zwracany. +
+
removeItemAt( index ) +
Zwraca typ: element +
Usuwa pozycję potomną w elemencie o określonym indeksie. Metoda zwraca usuniętą pozycję. +
+

+

Podobne

+
Elementy +
tabbox, tab, tabpanels, tabpanel. +
Interfejsy +
nsIAccessibleProvider, nsIDOMXULSelectControlElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/template/index.html b/files/pl/mozilla/tech/xul/template/index.html new file mode 100644 index 0000000000..6a84b59a23 --- /dev/null +++ b/files/pl/mozilla/tech/xul/template/index.html @@ -0,0 +1,115 @@ +--- +title: template +slug: Mozilla/Tech/XUL/template +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/template +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Stosowany do deklaracji szablonu dla konstrukcji elementu opartej na regułach. Elementy są konstruowane z danych źródłowych. Aby dowiedzieć się więcej na ten temat, przeczytaj o elemencie rule. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
container, member +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ +
+
+ container
+
+ Typ: + + string +
+
+ Opcjonalnie może być ustawiony na zmienną do zastosowania jako kontener lub odniesienie do zmiennej. Jeśli nie jest określony, zmienna określa w atrybucie uri użycie znacznika zawartości w pierwszej zasadzie szablonów.
+
+
+
+ +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/textbox/index.html b/files/pl/mozilla/tech/xul/textbox/index.html new file mode 100644 index 0000000000..bef7b36083 --- /dev/null +++ b/files/pl/mozilla/tech/xul/textbox/index.html @@ -0,0 +1,538 @@ +--- +title: textbox +slug: Mozilla/Tech/XUL/textbox +tags: + - Dokumentacja_XUL + - Elementy_XUL + - Strony_wymagające_dopracowania +translation_of: Archive/Mozilla/XUL/textbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +
+ +

Pole wejściowe, gdzie użytkownik może wprowadzić tekst. Jest ono podobne do elementu języka HTML input. Domyślnie wyświetlana jest tylko jedna linia tekstu. Atrybutem multiline możemy określić do wyświetlenia pole wielowierszowe.

+ +

Dodatkowe informacji są dostępne w kursie XUL.

+ +
+
Atrybuty
+
cols, decimalplaces, disabled, hidespinbuttons, increment, max, maxlength, min, multiline, onchange, oninput, preference, readonly, rows, size, spellcheck, tabindex, timeout, type, value, wrap, wraparound
+
+ +
+
Własności
+
accessible, clickSelectsAll, decimalPlaces, defaultSymbol, defaultValue, disabled, editor, increment, inputField, max, maxLength, min, readOnly, selectionEnd, selectionStart, size, spinButtons, tabIndex, textLength, timeout, type, value, valueNumber, wrapAround,
+
+ +
+
Metody
+
decrease, increase, reset, select, setSelectionRange
+
+ +
+
Klasy stylów
+
plain
+
+ +

Przykłady

+ +
grafika:XUL_ref_textbox.png
+ +
<vbox>
+<label control="your-name" value="Enter your name:"/>
+<textbox id="your-name" value="John"/>
+</vbox>
+
+ +

Atrybuty

+ +

+ +
+
+ cols
+
+ Typ: + + integer +
+
+ Liczba kolumn w polu tekstowym.
+
+
+ +
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+ +
+ +
+
+ increment
+
+ Typ: + + integer +
+
+ Wynosi tyle co wartość atrybutu curpos<magic name="\"PAGENAME\"/"> (dla pasków przewijania) lub value (dla pudełek liczbowych)</magic> zmienionego, gdy strzałka na pasku przewijania jest naciśnięta. Domyślnie posiada wartość równą 1.
+
+
+ +
max +
Typ: integer +
Maksymalna wartość, która może być na skali. Domyślną wartość jest ustawiona na 100.
+ + +
+ +
+
+ maxlength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków, które można wpisać w pole tekstowe.
+
+
+ +
min +
Typ: integer +
Wartość minimalna, która może być ustawiona na skali. Domyślną wartością jest 0.
+ + +
+ +
+
+ multiline
+
+ Typ: + + boolean +
+
+ Jeśli true, pole tekstowe wyświetla się w kilku liniach. Jeśli użytkownik naciśnie Enter, to zostanie przeniesiony do nowej lini. Jeśli false to pole tekstowe pozwala wpisać tekst tylko jedną linie.
+
+
+ +
+
+ onchange
+
+ Typ: + + kod skryptu +
+
+ Kod w atrybucie onchange jest wywołany, kiedy wartość elementu jest zmieniona.
+
+
+ +
oninput +
Typ: kod skryptu +
To zdarzenie jest wysyłane, kiedy użytkownik wpisuje tekst w textbox. To zdarzenie jest tylko wywoływane, kiedy wyświetlany tekst zostanie zmieniony, tak więc nie jest wykonywany kiedy użytkownik naciśnie nie możliwy do wyświetlenia klawisz.
+ + +
+ +
preference +
Typ: id elementu +
Łączy dany element z odpowiadającym mu elementem preference. Atrybut ten ma skutek tylko wewnątrz okna prefwindow. Wartość opcji (z elementu preference) zostanie zaktualizowana zgodnie z wartością własności value tego elementu. +
+


+


+

+ + +
+ +
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+ + +
+ +
+
+ rows
+
+ Typ: + + integer +
+
+ Liczba wierszy do wyświetlenia w elemencie. Jeśli w elemencie znajduje się więcej niż ta liczba wierszy, pojawi się pasek przewijania, który użytkownik może zastosować do przewijania do innych wierszy. Aby pobrać aktualną liczbę wierszy w elemencie, zastosuj metodę getRowCount.
+
+
+ +
+
+ size
+
+ Typ: + + integer +
+
+ Liczba znaków, które mogą zostać wyświetlone w polu tekstowym.
+
+
+ +
+
+ spellcheck
+
+ Typ: + + boolean +
+
+ Nowość od wersji Firefoksa 2.0.0.2
+
+ Jeśli true, sprawdzanie pisowni jest włączone domyślnie dla pól tekstowych; jeśli false, sprawdzanie pisowni jest wyłączone domyślnie.
+
+ Jeśli nie jest określone, to domyślnie jest false
+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+ +
+ + +
+
type
+
Typ:jedna z wartości poniżej
+
Możemy ustawić typ tego atrybutu na jedną z poniższych wartości dla bardziej specjalistycznych typów pola tekstowego. Nie ustawiaj tego typu, jeśli chcesz zastosować regularne pole tekstowe.
+
+ + + + +
+ +
+
+ value
+
+ Typ: + + string +
+
+ Wartość domyślna wpisywana w pole tekstowe. Atrybut tylko podtrzymuje domyślną wartość i nie zostanie ona nigdy zmodyfikowana, kiedy użytkownik wpisze tekst. Aby pobrać zaktualizowaną wartość, zastosuj własność value.
+
+ +

 

+
+ +
wrap +
Typ: string +
Ustawia wartość atrybutu na off, aby wyłączyć zawijanie linii w polu tekstowym. Jeśli atrybut nie jest podany, zawijanie linii jest włączone. +
+


+

+ + +
+ +

+ +

Własności

+ +

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
clickSelectsAll +
Typ: boolean +
Jeśli jest ustawiony na true zawartość pola tekstowego zostanie zaznaczona kiedy stanie się on aktywny, inaczej kursor pozostanie niezmieniony. +
+


+

+ +
+
decimalPlaces +
Typ: integer +
Pobiera i ustawia wartość atrybutu decimalplaces. +
+


+

+ +
+
defaultValue +
Typ: string +
Pobiera i ustawia domyślną wartość pola tekstowego.
+


+


+

+ +
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+ editor
+
+ Typ: + + nsIEditor +
+
+ Odwołanie do nsIEditor dla edytowanego tekstu. Własność tylko do odczytu.
+
+
+
+ increment
+
+ Typ: integer
+
+ Pobiera i ustawia wartość atrybutu increment.
+
+
+
+ inputField
+
+ Typ: + + element textbox +
+
+ W Mozilli, pole tekstowe w języku XUL jest zaimplementowane jako otoczenie wokół elementów kontrolek formularza (input) języka HTML. Ta własność tylko do odczytu podtrzymuje odniesienie do wewnętrznego elementu input.
+
+
max +
Typ: integer +
Pobiera i ustawia wartość atrybutu max.
+ +
+
+
+ maxLength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków w polu tekstowym, jaką można wpisać.
+
+
min +
Typ: integer +
Pobiera i ustawia wartość atrybutu min.
+ +
+
+
+ readonly
+
+ Typ: + + boolean +
+
+ Jeśli jest ustawiony na true, to użytkownik nie może zmieniać wartości elementu. Jest to odpowiednia własności do użytku textbox zamiast własności readonly.
+
+
+
+ selectionEnd
+
+ Typ: + + integer +
+
+ Pobiera i ustawia koniec zaznaczonej części pola tekstu. Stosujemy ze sprzężeniem z własnością selectionStart. Wartość określa indeks znaku za zaznaczeniem. Jeśli ta wartość jest równa sumie wartości własności selectionStart, to żaden tekst nie jest zaznaczony, lecz wartość sygnalizuje pozycję wstawki (kursora) wewnątrz pola tekstowego.
+
+
+
+ selectionStart
+
+ Typ: + + integer +
+
+ Pobiera lub ustawia początek zaznaczonej części pola tekstu. Stosujemy w sprzężeniu z własnością selectionEnd. Wartość określa indeks pierwszego zaznaczonego znaku.
+
+
+
+ size
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu size.
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+ textLength
+
+ Typ: + + integer +
+
+ Podtrzymuje długość wprowadzanego tekstu w polu tekstowym. Ta własność jest tylko do odczytu.
+
+
+
+ timeout
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu timeout.
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+
wrapAround +
Typ: boolean +
Pobiera i ustawia wartość atrybutu wraparound. +
+


+

+ +

+ +

Metody

+ +

decrease()
+
Zwraca typ: nie zwraca wartości +
Wartość zmniejszająca się skali poprzez przyrost. +
+


+


+

+
+ increase()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wartość wzrastająca na increment poprzez przyrost.
+
+
+ reset()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przywraca preferencje do domyślnej wartości.
+
+ Dla elementu textbox jest także wykorzystane do czyszczenia list transakcji (Gecko1.9).
+
+
+ select()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza cały tekst w polu tekstowym.
+
setSelectionRange( start, end ) +
Zwraca typ: nie zwraca wartości +
Ustawia zaznaczoną porcję pola tekstowego, gdzie argumentem początkowym start jest pierwszy zaznaczony znak i argument końcowym end jest indeks znaku po zaznaczeniu. Ustawiając oba argumenty na tę samą wartość, pozwoli nam na przesunięcie kursora do przesłanej pozycji bez zaznaczenia tekstu. +
+


+


+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +

Klasy stylów

+ +

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika.

+ +

+
+ plain
+
+ Ta klasa sprawia, że element będzie wyświetlony bez obramowania lub marginesu.
+

+ +

Podobne

+ +
+
Interfejsy
+
nsIAccessibleProvider, nsIDOMXULTextboxElement
+
diff --git "a/files/pl/mozilla/tech/xul/textbox_(firefox_-_automatyczne_uzupe\305\202nianie)/index.html" "b/files/pl/mozilla/tech/xul/textbox_(firefox_-_automatyczne_uzupe\305\202nianie)/index.html" new file mode 100644 index 0000000000..375618190f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/textbox_(firefox_-_automatyczne_uzupe\305\202nianie)/index.html" @@ -0,0 +1,866 @@ +--- +title: textbox (Firefox - automatyczne uzupełnianie) +slug: Mozilla/Tech/XUL/textbox_(Firefox_-_automatyczne_uzupełnianie) +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/Textbox_(Toolkit_autocomplete) +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest tworzony poprzez ustawienie atrybutu type elementu textbox na autocomplete. Jest używany do utworzenia elementu textbox z wyskakującym okienkiem zawierającym listę możliwych uzupełnień tego, co użytkownik zaczął wpisywać. +

Firefox używa innego mechanizmu automatycznego uzupełnienia niż przeglądarka Mozilla Suite. Przykład poniżej stworzy textbox z auto uzupełnianiem, który będzie przeszukiwał historię użytkownika. +

+
Atrybuty +
accesskey, autocompletepopup, autocompletesearch, autocompletesearchparam, completedefaultindex, crop, disableautocomplete, disabled, disablekeynavigation, enablehistory, focused, forcecomplete, ignoreblurwhilesearching, inputtooltiptext, label, maxlength, maxrows, minresultsforpopup, nomatch, onchange, oninput, onsearchcomplete, ontextentered, ontextreverted, open, readonly, showcommentcolumn, size, tabindex, tabscrolling, timeout, type, value +
+
Własności +
accessible, completeDefaultIndex, controller, crop, disableAutoComplete, disableKeyNavigation, disabled, editable, focused, forceComplete, ignoreBlurWhileSearching, inputField, label, maxLength, maxRows, minResultsForPopup, open, popup, popupOpen, searchCount, searchParam, selectionEnd, selectionStart, showCommentColumn, size, tabIndex, tabScrolling, textLength, textValue, timeout, textbox.type, value +
+
Metody +
getSearchAt, onSearchComplete, onTextEntered, onTextReverted, select, setSelectionRange +
+

Przykłady

+
<textbox type="autocomplete" autocompletesearch="history"/>
+
+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
autocompletepopup +
Typ: id elementu wyskakującego (popup) +
id elementu popup wykorzystywanego do przechowywania wyników automatycznego uzupełniania dla tego elementu. +
+


+

+ + +
+
+ +
autocompletesearch +
Typ: lista wartości oddzielonych spacją +
Lista szukanych nazw komponentów oddzielona spacją, który każdy implementuje interfejs nsIAutoCompleteSearch. Komponenty są tworzone za pomocą nazwy @mozilla.org/autocomplete/search;1?name=, gdzie: name jest listą w tym atrybucie. +
+ +


+

+ + +
+
+
« Dokumentacja XUL
+ +
+
+ autocompletesearchparam Nowość w Thunderbird 2 Requires SeaMonkey 1.1
+
+ Typ: string
+
+ Łańcuch znaków, który jest komponentem poszukiwania.
+
+
+
+ +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disableAutocomplete +
Typ: boolean +
Jeśli true, zachowanie automatyczne zostanie wyłączone. Możesz użyć skryptu do zmiany do zmiany tego atrybutu. Jeśli false, domyślnie, autouzupełnianie jest włączone. +
+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
disablekeynavigation +
Typ: boolean +
Jeśli atrybut ten nie jest użyty, użytkownik może przechodzić do określonych pozycji listy poprzez naciśnięcie pierwszej litery etykiety danej pozycji. Odbywa się to przyrostowo, dlatego przyciśnięcie dodatkowych klawiszy spowoduje zaznaczenie lepiej określonych pozycji. Opcja ta może zostać wyłączona poprzez ustawienie wartości atrybutu jako true. +
+


+

+ + +
+
+ +
enablehistory +
Typ: boolean +
Jeśli jest true, przycisk strzałki pokaże się na końcu pola tekstowego, a w momencie naciśnięcia go otworzy rozwijane menu wszystkich dostępnych rezultatów. +
+


+

+ + +
+
+ +
focused +
Typ: boolean +
Ten atrybut jest ustawiony na true, jeśli element jest aktywny (focused). +
+


+

+ + +
+
+ +
+
+ +
ignoreblurwhilesearching
Typ: boolean
Jeśli true, zdarzenia blur są ignorowane podczas szukania, co znaczy, że automatyczne wyskakujące okienka nie znikną.
+ +

+
+
+ +
inputtooltiptext +
Typ: string +
Tekst podpowiedzi dla pudełka tekstu. +
+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ maxlength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków, które można wpisać w pole tekstowe.
+
+
+
+ +
+
+ maxrows
+
+ Typ: + + integer +
+
+ Liczba wierszy do pokazania na liście rezultatów w czasie. Pasek przewijania będzie wyświetlony więc użytkownik może przewijać poprzez remaining items.
+
+
+
+ +
+
+ minresultsforpopup
+
+ Typ: + + integer +
+
+ Minimalna liczba wyniku, która musi być zwrócona dla wyświetlonego okienka pop-up.
+
+
+
+ +
+
+ nomatch
+
+ Typ: + + boolean +
+
+ Ten atrybut będzie ustawiony na true, jeśli ostatni rezultat szukania nie jest dopasowany.
+
+
+
+ +
onchange +
Typ: kod skryptu +
Kod w atrybucie onchange jest wywołany, kiedy wartość elementu jest zmieniana. +
+


+


+

+ + +
+
+ +
oninput +
Typ: kod skryptu +
To zdarzenie jest wysyłane, kiedy użytkownik wpisuje tekst w textbox. To zdarzenie jest tylko wywoływane, kiedy wyświetlany tekst zostanie zmieniony, tak więc nie jest wykonywany kiedy użytkownik naciśnie nie możliwy do wyświetlenia klawisz.
+ + +
+
+ +
onsearchcomplete +
Typ: Kod skryptu +
Ten uchwyt zdarzenia jest wywołany, kiedy zakończone zostało automatyczne wyszukiwanie, a wyniki są dostępne. +
+


+

+ + +
+
+ +
+
+ ontextentered
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia jest wywoływany, kiedy wynik jest zaznaczony dla pola tekstowego.
+
+
+
+ +
+
+ ontextreverted
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia jest wywołany, gdy użytkownik naciśnie Escape aby przywrócić pole tekstowe do jego oryginalnej niekompletnej wartości.
+
+
+
+ +
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ + +
+
+ +
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+ + +
+
+ +
+
+ showCommentColumn
+
+ Typ: + + boolean +
+
+ Jeśli true, kolumna komentarza pojawi się w okienku wyskakującym. Dla historii adresów URL, kolumnę komentarzy będzie stanowić tytuł strony połączony z każdym adresem URL. Jeśli ten atrybut nie jest określony, kolumna komentarza nie pojawi się.
+
+
+
+ +
+
+ size
+
+ Typ: + + integer +
+
+ Liczba znaków, które mogą zostać wyświetlone w polu tekstowym.
+
+
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ +
+
+ + +
+
type
+
Typ:jedna z wartości poniżej
+
Możemy ustawić typ tego atrybutu na jedną z poniższych wartości dla bardziej specjalistycznych typów pola tekstowego. Nie ustawiaj tego typu, jeśli chcesz zastosować regularne pole tekstowe.
+
+ + + + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ completeDefaultIndex
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu completedefaultindex.
+
+
+
+
+ controller
+
+ Typ: + + nsIAutoCompleteController +
+
+ Zwraca kontener dla automatycznego uzupełnienia elementu.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ disableAutoComplete
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disableautocomplete.
+
+
+
+
+ disableKeyNavigation
+
+ Typ: + + boolean +
+
+ Pobiera lub ustawia wartość atrybutu disableKeyNavigation.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ editable
+
+ Typ: + + boolean +
+
+ Pola automatycznie uzupełniane są edytowalne, więc ta własność zwróci true.
+
+
+
focused +
Typ: boolean +
Pobiera i ustawia wartość atrybutu focused. +
+


+

+ +
+
+
+
+ forceComplete
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu forcecomplete.
+
+
+
ignoreBlurWhileSearching +
Typ: boolean +
Pobiera i ustawia wartość atrybutu ignoreblurwhilesearching. +
+ +
+
+
+
+ inputField
+
+ Typ: + + element textbox +
+
+ W Mozilli, pole tekstowe w języku XUL jest zaimplementowane jako otoczenie wokół elementów kontrolek formularza (input) języka HTML. Ta własność tylko do odczytu podtrzymuje odniesienie do wewnętrznego elementu input.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ maxLength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków w polu tekstowym, jaką można wpisać.
+
+
+
+
+ maxRows
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu maxrows.
+
+
+
+
+ minResultsForPopup
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu minresultsforpopup.
+
+
+
+
+ open
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu open.
+
+ +
+
popupOpen +
Typ: boolean +
Wskazuje gdzie jest otwierane (lub nieotwierane) okienko popup. Ustaw tą własność do otwarcia lub zamknięcia popup. +
+ +
+
+
+
+ searchCount
+
+ Typ: + + integer +
+
+ Zwraca liczbę użytych komponentów. Ta własność jest tylko do odczytu.
+
+
+
+
+ searchParam
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu autocompletesearchparam.
+
+
+
+
+ selectionEnd
+
+ Typ: + + integer +
+
+ Pobiera i ustawia koniec zaznaczonej części pola tekstu. Stosujemy ze sprzężeniem z własnością selectionStart. Wartość określa indeks znaku za zaznaczeniem. Jeśli ta wartość jest równa sumie wartości własności selectionStart, to żaden tekst nie jest zaznaczony, lecz wartość sygnalizuje pozycję wstawki (kursora) wewnątrz pola tekstowego.
+
+
+
+
+ selectionStart
+
+ Typ: + + integer +
+
+ Pobiera lub ustawia początek zaznaczonej części pola tekstu. Stosujemy w sprzężeniu z własnością selectionEnd. Wartość określa indeks pierwszego zaznaczonego znaku.
+
+
+
+
+ showCommentColumn
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu showcommentcolumn.
+
+
+
+
+ size
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu size.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ tabScrolling
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu tabscrolling.
+
+
+
+
+ textLength
+
+ Typ: + + integer +
+
+ Podtrzymuje długość wprowadzanego tekstu w polu tekstowym. Ta własność jest tylko do odczytu.
+
+
+
+
+ textValue
+
+ Typ: + + string +
+
+ Zwraca treść pola tekstowego. Odpowiednikiem jest własność value.
+
+
+
+
+ timeout
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu timeout.
+
+
+
+
+ type
+
+ Typ: '
+
+ Ustawia wartość autocomplete, aby mieć samo uzupełniające się pole tekstowe.
+
+ +

 

+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
+
+ getSearchAt( index )
+
+ Zwraca typ: + + string +
+
+ Zwraca komponent szukania z danym indeksem. Komponenty są ustawiane z atrybutem autocompletesearch.
+
+
+
+ onSearchComplete()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wywołuje uchwyt zdarzenia onsearchcomplete. Nie powinieneś wywoływać tej metody samej w sobie.
+
+
+
+ onTextEntered()
+
+ Zwraca typ: + + rezultat zdarzenia +
+
+ Wywołujemy uchwyt zdarzenia ontextentered. Nie powinieneś wywoływać tej metody samej w sobie.
+
+
+
+ onTextReverted()
+
+ Zwraca typ: + + rezultat zdarzenia +
+
+ Wywołujemy uchwyt zdarzenia ontextreverted. Nie powinieneś wywoływać tej metody samej w sobie.
+
+
+
+ select()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza cały tekst w polu tekstowym.
+
+
setSelectionRange( start, end ) +
Zwraca typ: nie zwraca wartości +
Ustawia zaznaczoną porcję pola tekstowego, gdzie argumentem początkowym start jest pierwszy zaznaczony znak i argument końcowym end jest indeks znaku po zaznaczeniu. Ustawiając oba argumenty na tę samą wartość, pozwoli nam na przesunięcie kursora do przesłanej pozycji bez zaznaczenia tekstu. +
+


+


+

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIAutoCompleteInput, nsIDOMXULMenuListElement +
+
+
diff --git "a/files/pl/mozilla/tech/xul/textbox_(mozilla_-_automatyczne_uzupe\305\202nianie)/index.html" "b/files/pl/mozilla/tech/xul/textbox_(mozilla_-_automatyczne_uzupe\305\202nianie)/index.html" new file mode 100644 index 0000000000..8572f04a7e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/textbox_(mozilla_-_automatyczne_uzupe\305\202nianie)/index.html" @@ -0,0 +1,936 @@ +--- +title: textbox (Mozilla - automatyczne uzupełnianie) +slug: Mozilla/Tech/XUL/textbox_(Mozilla_-_automatyczne_uzupełnianie) +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/Textbox_(XPFE_autocomplete) +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest tworzony poprzez ustawienie atrybutu type elementu textbox na autocomplete. Jest używany do utworzenia elementu textbox z wyskakującym okienkiem zawierającym listę możliwych uzupełnień tego, co użytkownik zaczął wpisywać. +

Funkcjonalność automatycznego uzupełniania jest podtrzymana poprzez jeden lub więcej obiektów sesji, każdy z tych obiektów może zwracać zbiór wyników dla podanej wartości elementu textbox. Sesje mogą być ustawiane za pomocą atrybutu searchSessions lub poprzez wywołanie metody addSession. +

+
Atrybuty +
alwaysopenpopup, autoFill, autoFillAfterMatch, crop, disableAutocomplete, disabled, disablehistory, focused, forceComplete, ignoreBlurWhileSearching, inputtooltiptext, label, maxlength, maxrows, minResultsForPopup, nomatch, onerrorcommand, ontextcommand, ontextrevert, open, searchSessions, showCommentColumn, showpopup, size, tabScrolling, tabindex, timeout, type, userAction, value +
+
Własności +
accessible, alwaysOpenPopup, autoFill, autoFillAfterMatch, crop, disableAutocomplete, disabled, editable, focused, forceComplete, ignoreBlurWhileSearching, inputField, isSearching, isWaiting, label, maxLength, maxRows, minResultsForPopup, noMatch, open, resultsPopup, searchSessions, selectionEnd, selectionStart, sessionCount, showCommentColumn, showPopup, size, tabIndex, tabScrolling, textLength, timeout, type, userAction, value +
+
Metody +
addSession, clearResults, getDefaultSession, getResultAt, getResultCount, getResultValueAt, getSession, getSessionByName, getSessionResultAt, getSessionStatusAt, getSessionValueAt, removeSession, select, setSelectionRange, syncSessions +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
alwaysopenpopup +
Typ: boolean +
Jeśli true, auto kompletowanie wyskakującego okienka zostanie wyświetlone zdarzenie, kiedy tam nie będzie dopasowany. Jeśli false, domyślna wartością będzie ukrycie okienka wyskakujące. +
+


+

+ + +
+
+ +
+
+ autofill Nowość w Thunderbird 3 Requires SeaMonkey 2.0
+
+ Typ: boolean
+
+ Jeśli ustawiony jest na true, najlepsze dopasowanie będzie wybierane w polu tekstowym jako typ użytkownika. Jeśli false, domyślna wartość nie będzie wybrana do momentu aż użytkownik nie zaznaczy pozycji.
+
+
+
+ +
autoFillAfterMatch +
Typ: boolean +
Jeśli zwracana jest wartość true cały tekst najlepszego trafienia zostanie wyświetlony na końcu wejścia. Jeśli wartość false tylko wartość, która nie została wyświetlona zostanie wpisana. Atrybut autoFill musi zostać ustawiony na wartość true, by móc korzystać z powyższej własności. +
+


+

+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
disableAutocomplete +
Typ: boolean +
Jeśli true, zachowanie automatyczne zostanie wyłączone. Możesz użyć skryptu do zmiany do zmiany tego atrybutu. Jeśli false, domyślnie, autouzupełnianie jest włączone. +
+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
disablehistory +
Typ: boolean +
Jeśli atrybut ma wartość false, przycisk ze strzałką wyświetli się na końcu pola tekstowego, które otworzy menu rozwijane wszystkich dostępnych wyników. Domyślna wartością jest true, ukrywające przycisk rozwijania. +
+


+

+ + +
+
+ +
focused +
Typ: boolean +
Ten atrybut jest ustawiony na true, jeśli element jest aktywny (focused). +
+


+

+ + +
+
+ +
+
+ +
ignoreblurwhilesearching
Typ: boolean
Jeśli true, zdarzenia blur są ignorowane podczas szukania, co znaczy, że automatyczne wyskakujące okienka nie znikną.
+ +

+
+
+ +
inputtooltiptext +
Typ: string +
Tekst podpowiedzi dla pudełka tekstu. +
+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ maxlength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków, które można wpisać w pole tekstowe.
+
+
+
+ +
+
+ maxrows
+
+ Typ: + + integer +
+
+ Liczba wierszy do pokazania na liście rezultatów w czasie. Pasek przewijania będzie wyświetlony więc użytkownik może przewijać poprzez remaining items.
+
+
+
+ +
+
+ minresultsforpopup
+
+ Typ: + + integer +
+
+ Minimalna liczba wyniku, która musi być zwrócona dla wyświetlonego okienka pop-up.
+
+
+
+ +
+
+ nomatch
+
+ Typ: + + boolean +
+
+ Ten atrybut będzie ustawiony na true, jeśli ostatni rezultat szukania nie jest dopasowany.
+
+
+
+ +
+
+ onerrorcommand
+
+ Typ: + + kod skryptu +
+
+ Ten uchwyt zdarzenia jest wywołany kiedy ma miejsce błąd, kiedy zaznaczymy wynik z okienka dialogowego.
+
+
+
+ +
+
+ ontextcommand
+
+ Typ: + + Kod skryptu +
+
+ Ten uchwyt zdarzeń jest wywołany kiedy wynik jest zaznaczony w polu tekstowym.
+
+
+
+ +
+
+ +
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ + +
+
+ +
+
+ searchSessions
+
+ Typ: + + lista nazw sesji rozdzielona spacją +
+
+ Ustawia słowo kluczowe sygnalizując jakiego typu dane są szukane dla autouzupełnienia. Możemy ustawić wiele typów poprzez rozdzielenie ich nazw spacją. Następujące wartości są możliwe, mimo że komponenty użytkownika mogą być zainstalowane, które dodają inne.
+
+ +
+
+ +
+
+ showCommentColumn
+
+ Typ: + + boolean +
+
+ Jeśli true, kolumna komentarza pojawi się w okienku wyskakującym. Dla historii adresów URL, kolumnę komentarzy będzie stanowić tytuł strony połączony z każdym adresem URL. Jeśli ten atrybut nie jest określony, kolumna komentarza nie pojawi się.
+
+
+
+ +
+
+ +
+
+ size
+
+ Typ: + + integer +
+
+ Liczba znaków, które mogą zostać wyświetlone w polu tekstowym.
+
+
+
+ +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ + +
+
type
+
Typ:jedna z wartości poniżej
+
Możemy ustawić typ tego atrybutu na jedną z poniższych wartości dla bardziej specjalistycznych typów pola tekstowego. Nie ustawiaj tego typu, jeśli chcesz zastosować regularne pole tekstowe.
+
+ + + + +
+
+ +
+
+ userAction
+
+ Typ: + + jedna z wartości poniżej +
+
+ Ten atrybut ustawia akcje wykonywane aktualnie przez użytkownika. Możliwe wartości:
+
+ +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ alwaysOpenPopup
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu alwaysopenpopup.
+
+
+
+
+ autoFill
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoFill.
+
+
+
+
+ autoFillAfterMatch
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoFillAfterMatch.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ disableAutoComplete
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disableautocomplete.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ editable
+
+ Typ: + + boolean +
+
+ Pola automatycznie uzupełniane są edytowalne, więc ta własność zwróci true.
+
+
+
focused +
Typ: boolean +
Pobiera i ustawia wartość atrybutu focused. +
+


+

+ +
+
+
+
+ forceComplete
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu forcecomplete.
+
+
+
ignoreBlurWhileSearching +
Typ: boolean +
Pobiera i ustawia wartość atrybutu ignoreblurwhilesearching. +
+ +
+
+
+
+ inputField
+
+ Typ: + + element textbox +
+
+ W Mozilli, pole tekstowe w języku XUL jest zaimplementowane jako otoczenie wokół elementów kontrolek formularza (input) języka HTML. Ta własność tylko do odczytu podtrzymuje odniesienie do wewnętrznego elementu input.
+
+
+
+
+ isSearching
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true podczas, gdy szukanie jest wykonywane.
+
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ maxLength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków w polu tekstowym, jaką można wpisać.
+
+
+
+
+ maxRows
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu maxrows.
+
+
+
+
+ minResultsForPopup
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu minresultsforpopup.
+
+
+
+
+ noMatch
+
+ Typ: + + boolean +
+
+ Ta własność będzie ustawiona na true, jeśli ostatni rezultat szukania nie zawierał żadnych pozycji.
+
+
+
+
+ open
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu open.
+
+
+
+
+ resultsPopup
+
+ Typ: + + element wyskakujący +
+
+ Ta własność jest ustawiona jako element wyskakujący, który wyświetla wyniki (rezultaty).
+
+
+
+
+ searchSessions
+
+ Typ: + + lista nazw sesji rozdzielona spacją +
+
+ Ustawia słowo kluczowe sygnalizując jakiego typu dane są szukane dla autouzupełnienia. Możemy ustawić wiele typów poprzez rozdzielenie ich nazw spacją. Następujące wartości są możliwe, mimo że komponenty użytkownika mogą być zainstalowane, które dodają inne.
+
+
+
+
+
+ selectionEnd
+
+ Typ: + + integer +
+
+ Pobiera i ustawia koniec zaznaczonej części pola tekstu. Stosujemy ze sprzężeniem z własnością selectionStart. Wartość określa indeks znaku za zaznaczeniem. Jeśli ta wartość jest równa sumie wartości własności selectionStart, to żaden tekst nie jest zaznaczony, lecz wartość sygnalizuje pozycję wstawki (kursora) wewnątrz pola tekstowego.
+
+
+
+
+ selectionStart
+
+ Typ: + + integer +
+
+ Pobiera lub ustawia początek zaznaczonej części pola tekstu. Stosujemy w sprzężeniu z własnością selectionEnd. Wartość określa indeks pierwszego zaznaczonego znaku.
+
+
+
+
+ sessionCount
+
+ Typ: + + integer +
+
+ Podtrzymuje liczbę sesji.
+
+
+
+
+ showCommentColumn
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu showcommentcolumn.
+
+
+
+
+ showPopup
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu showpopup.
+
+
+
+
+ size
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu size.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ tabScrolling
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu tabscrolling.
+
+
+
+
+ textLength
+
+ Typ: + + integer +
+
+ Podtrzymuje długość wprowadzanego tekstu w polu tekstowym. Ta własność jest tylko do odczytu.
+
+
+
+
+ timeout
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu timeout.
+
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+
+
+
+ userAction
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu userAction.
+
+
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
addSession( session ) +
Zwraca typ: nsIAutoCompleteSession +
Dodaje obiekt nowej sesji do widgetu autouzupełnienia. Ten możemy zastosować do utworzenia autouzupełnienia listy rezultatów dostosowanej do naszych wymagań. Argument powinien być obiektem, który implementuje interfejs nsIAutoCompleteSession. Ta metoda zwraca pasujący obiekt. +
+


+

+
clearResults() +
Zwraca typ: ??? +
Czyści listę z wynikiem. +
+


+

+
getDefaultSession +
Zwraca typ: nazwa sesji +
Zwraca nazwę pierwszej sesji z dostępnych rezultatów. +
+


+

+
getResultAt( index ) +
Zwraca typ: nsIAutoCompleteItem +
Zwraca wynik pozycji w określonym indeksie. Pozycja będzie wartością typu nsIAutoCompleteItem. +
+


+

+
getResultCount( session ) +
Zwraca typ:: ??? +
Zwraca liczbę rezultatów (Argument session jest is obecnie ignorowany). +
+


+

+
+
+ getResultValueAt( index )
+
+ Zwraca typ: + + wartość wyniku +
+
+ Zwraca wartość wyniku w określonym indeksie. Pozycja będzie przesłana do tekstu tej pozycji, która pojawi się w okienku wyskakującym (popup).
+
+
+
+ getSession( session )
+
+ Zwraca typ: + + nsIAutoCompleteSession +
+
+ Zwraca obiekt sesji z danym indeksem. Będzie zwrócony obiekt typu nsIAutoCompleteSession.
+
+
+
+ getSessionByName( name )
+
+ Zwraca typ: + + nsIAutoCompleteSession +
+
+ Zwraca obiekt sesji wraz z daną nazwą. Będzie zwracał obiekt typu nsIAutoCompleteSession.
+
+
+
+ getSessionResultAt( session, index )
+
+ Zwraca typ: + + pozycja wyniku +
+
+ Zwraca pozycję wyniku w określonym index dla określonej session.
+
+
+
+ getSessionStatusAt( index )
+
+ Zwraca typ: + + ??? +
+
+ Zwraca status dla obiektu sesji z danego indeksu.
+
+
+
+ getSessionValueAt( session, index )
+
+ Zwraca typ: + + wartość wyniku/rezultatu +
+
+ Zwraca wartość rezultatu w określonym index dla określonej session.
+
+
+
+ removeSession( session )
+
+ Zwraca typ: + + ??? +
+
+ Usuwa obiekt sesji z widgetu autouzupełniania. Argument powinien być obiektem, który implementuje interfejs nsIAutoCompleteSession.
+
+
+
+ select()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Zaznacza cały tekst w polu tekstowym.
+
+
setSelectionRange( start, end ) +
Zwraca typ: nie zwraca wartości +
Ustawia zaznaczoną porcję pola tekstowego, gdzie argumentem początkowym start jest pierwszy zaznaczony znak i argument końcowym end jest indeks znaku po zaznaczeniu. Ustawiając oba argumenty na tę samą wartość, pozwoli nam na przesunięcie kursora do przesłanej pozycji bez zaznaczenia tekstu. +
+


+


+

+
syncSessions( autoCompleteElement ) +
Zwraca typ: ??? +
Kopiuje sesje z kolejnego elementu autouzupełnienia. +
+


+


+

+

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULMenuListElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/textnode/index.html b/files/pl/mozilla/tech/xul/textnode/index.html new file mode 100644 index 0000000000..7a5b372a9d --- /dev/null +++ b/files/pl/mozilla/tech/xul/textnode/index.html @@ -0,0 +1,106 @@ +--- +title: textnode +slug: Mozilla/Tech/XUL/textnode +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/textnode +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Zwykle, podczas podstawiania zasobów RDF w zasadach szablonu, podajesz nazwę właściwości RDF wewnątrz wartości atrybutu, poprzedzone tekstem rdf:. W przypadku elementu textnode, cały węzeł jest zastępowany tekstem odpowiadającym wynikową wartością atrybutu. +

Jest to przydatne, jeśli chcesz użyć elementu html lub innych elementów które zawierają tekst w sobie zamiast w atrybutach. Ten element nie robi nic, gdy użyty poza szablonem. +

+
Atrybuty
value +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ +
value +
Typ: adres URL predykatu RDF +
Wartość tekstowa do wyświetlenia. Ta wartość powinna być własnością RDF. +
+ + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/timepicker/index.html b/files/pl/mozilla/tech/xul/timepicker/index.html new file mode 100644 index 0000000000..598c7a22cf --- /dev/null +++ b/files/pl/mozilla/tech/xul/timepicker/index.html @@ -0,0 +1,263 @@ +--- +title: timepicker +slug: Mozilla/Tech/XUL/timepicker +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/timepicker +--- +

+

+
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element timepicker jest stosowany, aby pozwolić użytkownikowi na wprowadzenie czasu. Stanowi trzy pola do wpisania godziny, minuty i sekundy. Przyciski strzałek obok pól pozwalają dostosować wartości za pomocą myszki. Czwarty pole tekstowe wyświetlane jest dla zegarów dwunastogodzinnych, które pozwala na wybranie pomiędzy AM lub PM. +

Określa wstępne zastosowane wartości atrybutu ustawione w jeden ze sposobów, czyli HH:MM:SS lub HH:MM. Wartość może być odzyskiwana i zmieniana stosując własność value lub własność dateValue. Ten poprzedni określił czas jako łańcuch znaków w formie HH:MM:SS, gdzie drugi określa czas jako obiekt Date. Dodatkowo własności godziny, minuty i sekundy mogą być stosowane do wyszukania i zmodyfikowania każdego komponentu oddzielającego czas. +


+

+
Atrybuty +
disabled, hideseconds, increment, readonly, tabindex, value +
+
Własności
amIndicator, dateValue, disabled, hideSeconds, hour, hourLeadingZero, increment, is24HourClock, isPM, minute, minuteLeadingZero, pmIndicator, readOnly, second, secondLeadingZero, tabIndex, value +
+

Przykłady

+
<timepicker value="12:05"/>
+
+

Grafika:Controlguide-timepicker.png +

+

Atrybuty

+

+

+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
+
+ hideseconds
+
+ Typ: boolean
+
+ Sygnalizuje gdzie pokazać pole sekund.
+
+
+
+ +
readonly +
Typ: boolean +
Jeśli ustawiony jest na true, to użytkownik nie będzie mógł zmienić wartości elementu. Jednakże wartość wciąż może zostać zmodyfikowana poprzez skrypt. +
+ + +
+
+ +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ value
+
+ Typ: string
+
+ Początkowa wartość elementu timepicker w obu formach, czyli HH:MM:SS lub HH:MM.
+
+
+

+

Własności

+

+

+
amIndicator +
Typ: string +
Wartość łańcucha znaków wyświetlana dla godzin pomiędzy północą a południem, domyślnie jest to AM. Ta wartość określa się w zależności od czasu lokalnego użytkownika.
+ +
+
+
+
+ dateValue
+
+ Typ: Date
+
+ Data, która jest aktualnie wprowadzana lub zaznaczona w datepicker jako obiekt Date.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ hideSeconds
+
+ Typ: boolean
+
+ Sygnalizuje gdzie pole sekund jest widoczne lub nie.
+
+
+
+
+ hour
+
+ Typ: integer
+
+ Aktualnie zaznaczona godzina z przedziału od 0 do 23. Ustaw tą własność, aby zmienić zaznaczoną godzinę.
+
+
+
+
+ hourLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed godziną zanim jest ona mniejsza niż 10.
+
+
+
+
+ increment
+
+ Typ: integer
+
+ Pobiera i ustawia wartość atrybutu increment.
+
+
+
+
+ is24HourClock
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie jest stosowany 12-godzinny, a gdzie 24-godzinny czas wyświetlania. Z 12-godzinnym czasem zegara, dodatkowe pole pozwala użytkownikowi na wybranie pomiędzy AM i PM.
+
+
+
+
+ isPM
+
+ Typ: boolean
+
+ Jeśli false, godzina jest pomiędzy 0 i 11, a jeśli true to godzina jest 12 lub większa.
+
+
+
+
+ minute
+
+ Typ: integer
+
+ Aktualnie zaznaczona minuta z przedziału od 0 do 59. Ustaw tą własność, aby zmienić zaznaczoną minutę.
+
+
+
+
+ minuteLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed minutą zanim jest ona mniejsza niż 10.
+
+
+
+
+ pmIndicator
+
+ Typ: string
+
+ Wyświetlana wartość łańcucha znaków dla godzin pomiędzy południem a północą, domyślnie jest to PM. Ta wartość jest określana dla użytkownika lokalnie.
+
+
+
+
+ readonly
+
+ Typ: + + boolean +
+
+ Jeśli jest ustawiony na true, to użytkownik nie może zmieniać wartości elementu. Jest to odpowiednia własności do użytku textbox zamiast własności readonly.
+
+
+
+
+ second
+
+ Typ: integer
+
+ Aktualnie zaznaczone sekundy z przedziału od 0 do 59. Ustaw tą własność, aby zmienić zaznaczone sekundy.
+
+
+
+
+ secondLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed sekundą zanim jest ona mniejsza niż 10.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ value
+
+ Typ: string
+
+ Aktualnie wprowadzony czas w formie HH:MM:SS. Ustaw tą własność, aby zmienić czas.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Interfejsy +
nsIDOMXULControlElement +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/titlebar/index.html b/files/pl/mozilla/tech/xul/titlebar/index.html new file mode 100644 index 0000000000..390f3f3350 --- /dev/null +++ b/files/pl/mozilla/tech/xul/titlebar/index.html @@ -0,0 +1,94 @@ +--- +title: titlebar +slug: Mozilla/Tech/XUL/titlebar +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/titlebar +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Stosowany do reprezentacji paska tytułu. Ten element jest stosowany utworzenia paska tytułu użytkownika poprzez umieszczenie w nim treści jako dziecko elementu wewnątrz tego paska. Kiedy pasek tytułu jest klikany lub przeciągany, okno jest przesuwane wraz z nim. Elementy wewnątrz paska tytułu nie przyjmują zdarzeń. Pasek tytułu wysyła polecenie zdarzenia dopiero po tym jak zostanie zmieniony rozmiar okna. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/toolbar/index.html b/files/pl/mozilla/tech/xul/toolbar/index.html new file mode 100644 index 0000000000..9bcc581a1b --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbar/index.html @@ -0,0 +1,239 @@ +--- +title: toolbar +slug: Mozilla/Tech/XUL/toolbar +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbar +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener, który zazwyczaj składa się z wiersza przycisków. Jest to typ pudełka, które domyślnie posiada orientację poziomą swych elementów. Może zostać zwinięty za pomocą grippy, kiedy toolbar jest umieszczony wewnątrz toolbox. Pasek narzędzi powinien zawsze posiadać atrybut id. Firefox obsługuje paski narzędzi użytkownika, natomiast przeglądarka Mozilla już tego nie potrafi. +

Dodatkowe informacje są dostępne w kursie XUL.

+
Atrybuty +
currentset, customindex, customizable, defaultset, grippyhidden, grippytooltiptext, toolbarname +
+
Własności +
accesible, currentSet, firstPermanentChild, lastPermanentChild, toolbarName +
+
Metody +
insertItem +
+

Przykłady

+
grafika:XUL_ref_toolbar.png
+
<toolbox>
+  <toolbar id="nav-toolbar">
+    <toolbarbutton id="nav-users"  accesskey="U" label="Users"/>
+    <toolbarbutton id="nav-groups" accesskey="p" label="Groups"/>
+    <toolbarbutton id="nav-events" accesskey="E" label="Events" disabled="true"/>
+  </toolbar>
+</toolbox>
+
+

Atrybuty

+

+ +
+
+ currentset
+
+ Tylko Firefox
+
+ Typ: + + łańcuch znaków oddzielony przecinkiem +
+
+ Aktualne ustawienia wyświetlanych pozycji na toolbar. Będą modyfikowane, gdy użytkownik przystosuje do własnych ustawień pasek narzędzi. Wartość tego atrybutu powinna być listą pozycji ID z toolbarpalette oddzielonych przecinkiem lub dodatkowo w następujący sposób: "separator", "spring", "spacer".
+
+
+
+ +
+
+ customindex
+
+ Tylko Firefox
+
+ Typ: + + integer +
+
+ Ta wartość jest indeksem paska narzędzi toolbar w dostosowanej liście paska narzędzi. Ta wartość jest aktualizowana automatycznie przez okno dialogowe dostosowujące pasek narzędzi.
+
+
+
+ +
+
+ customizable
+
+ Tylko Firefox
+
+ Typ: + + boolean +
+
+ Ustawia ten atrybut na true w paskach narzędzi (toolbar), które mogą zostać dostosowane. Te ustawienie przycisków powoduje bycie trwałymi podczas sesji.
+
+
+
+ +
defaultset +
Tylko Firefox +
Typ: lista pozycji id oddzielona przecinkiem +
Domyślne ustawienie wyświetlanych pozycji na toolbar. To powinno być ustawione na listę pozycji ID oddzieloną przecinkiem pochodzącą z toolbarpalette. Na przykład, back-button,forward-button,print-button. +
+


+

+ + +
+
+ +
grippyhidden +
Nie w Firefoksie +
Typ: boolean +
Kiedy ustawiamy na true, grippy będzie ukryty. Kiedy ustawienie będzie na false, domyślnie, grippy będzie wyświetlony. +
+


+

+ + +
+
+ +
grippytooltiptext +
Nie w Firefoksie +
Typ: string +
Tekst do wyświetlenia w poradzie dla grippy paska narzędzi (toolbar), w momencie gdy pasek narzędzi jest zwinięty. Zostanie on zastosowany do etykiety grippy, więc użytkownik wie, który pasek narzędzi jest reprezentowany. +
+


+

+ + +
+
+ +
+
+ toolbarname
+
+ Tylko w Firefoksie
+
+ Typ: + + string +
+
+ Nazwa paska narzędzi toolbar, który jest na liście pasków narzędzi w menu, aby użyć paska zaznacz Pokaż/Ukryj.
+
+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ currentSet
+
+ Tylko w Firefoksie
+
+ Typ: + + lista łańcuchów znaków oddzielona przecinkami +
+
+ Trzyma aktualną listę ID pozycji oddzielonych przecinkiem na pasku narzędzi. Dla pustych przestrzeni, separatorów i elastycznych pustych przestrzeni stosowane są zamiast nich łańcuchy znaków będące unikalnymi identyfikatorami ID: "spacer", "separator", "spring". Pusty pasek narzędzi posiada wartość currentSet jaką jest "__empty".
+
+
+
+ Możemy zmienić aktualne ustawienia pozycji przez ustawienie własności. Bądź ostrożny, jak ustawiasz tą własność to automatycznie nie jest aktualizowany atrybut currentset.
+
+
+
+
+
+ firstPermanentChild
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ Pierwszy trwały element potomny paska narzędzi toolbar. Trwały potomek jest jedynym, który nie jest zdolny, aby się dostosować i zostać na pasku narzędzi. Pozycje, które są umieszczone bezpośrednio wewnątrz paska narzędzi bez bycia w elemencie toolbarpalette są trwałe.
+
+
+
+
+ lastPermanentChild
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ Ostatni trwały element potomny paska narzędzi. Trwały potomek jest jedynym, który nie jest zdolny, aby się dostosować i zostać na pasku narzędzi. Pozycje, które są umieszczone bezpośrednio wewnątrz paska narzędzi bez bycia w elemencie toolbarpalette są trwałe.
+
+
+
toolbarName +
Tylko Firefox +
Typ: string +
Nazwa paska narzędzi. +
+


+

+ +
+

+

Metody

+

+
insertItem( id, beforeNode, wrapper, beforePermanent )
+
Tylko Firefox
+
Zwraca typ:element
+
Dodaje pozycję z danym id do paska narzędzi toolbar. Nowa pozycja jest dodawana tuż przed pozycja daną przez drugi argument. Jeśli drugi argument jest null, lecz argument beforePermanent jest true, to pozycja jest dodawana na początku paska narzędzi przed pierwszą stałą pozycję paska. Inaczej, jeśli argument beforePermanent jest false, nowa pozycja jest dodawana na koniec paska narzędzi. Trzeci argument możemy zastosować do wrap nowej pozycji w kolejnym elemencie. Zazwyczaj ostatni argument będzie typu null jako jego główny argument do zastosowania w oknie użytkownika.
+
+ +

id powinno być dopasowane do elementu na pasku narzędzi toolbarpalette. Kilka określonych id mogą być stosowane do tworzenia specjalnych przestrzeni dla pozycji paska:

+ + + +

Metoda zwraca element DOM dla tworzonej pozycji.

+ +

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox +
+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbarbutton/index.html b/files/pl/mozilla/tech/xul/toolbarbutton/index.html new file mode 100644 index 0000000000..48964b14f4 --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbarbutton/index.html @@ -0,0 +1,474 @@ +--- +title: toolbarbutton +slug: Mozilla/Tech/XUL/toolbarbutton +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbarbutton +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Przycisk, który będzie wyświetlony na toolbar. To jest odpowiednik prawidłowego przycisku (button) poza, którym może być renderowany bardzo różnie. Zazwyczaj, oczekuje się, że będzie posiadał obrazek. +

Dodatkowe informacje są dostępne w kursie XUL. +

+ +
Istotne wskazówki dostępności +
  • Cała funkcjonalność paska narzędzi powinna być skopiowana gdzieś w aplikacji +
    • Gdzie jest możliwe, dostarczenie alternatywnej klawiatury.
    • Gdzie jest możliwe, skopiowanie funkcjonalności do pozycji menu lub menu kontekstowego. +
    • Gdzie nie jest możliwe, make all toolbarbuttons focusable by -moz-user-focus: normal.
Atrybuty +
accesskey, autoCheck, checkState, checked, command, crop, dir, disabled, dlgType, group, image, label, open, orient, tabindex, type, validate +
+
Własności
accessKey, accessible, autoCheck, checkState, checked, command, crop, dir, disabled, dlgType, group, image, label, open, orient, tabIndex, type +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+

+ +
accesskey
+
Typ: znak +
Powinien być ustawiony na literę, która zostanie zastosowana jako klawisz dostępu. Litera ta powinna być jedną z liter, które są wyświetlane w etykiecie tekstowej (label) dla elementu.
+


+

+

Przykład

+
grafika:XUL_ref_accesskey_attr.png
+
<vbox>
+  <label value="Enter Name" accesskey="e" control="myName"/>
+  <textbox id="myName"/>
+  <button label="Cancel" accesskey="n"/>
+  <button label="Ok" accesskey="O"/>
+</vbox>
+
+

Zobacz także

+

Atrybut label, atrybut acceltext +


+


+

+ + +
+
+ +
autoCheck +
Typ: boolean +
Gdy atrybut ten ma wartość true lub nie jest ustawiony, stan zaznaczenia przycisku będzie przełączany przy każdym jego naciśnięciu. Gdy wartość została ustawiona na false, stan zaznaczenia musi być dopasowany ręcznie. +
+


+

+ + +
+
+ +
checkState +
Typ: integer, wartość 0, 1 lub 2 +
Ten atrybut może być użyty do utworzenia przycisków trójstanowych, ponumerowanych 0, 1 i 2. W stanie 0 lub 1 naciśnięcie przycisku spowoduje przełączenie go do stanu przeciwnego. To znaczy, że przycisk działa podobnie jak pole wyboru, z wyjątkiem tym, że jest tu także stan trzeci, który musi być ustawiony ręcznie poprzez dostosowanie stanu zaznaczenia. Jeśli chcemy dostosować różne zachowania stanu przycisku, musimy ustawić atrybut autoCheck na false i dostosować stany przycisku za pomocą skryptu. Atrybut type musi być ustawiony na checkbox dla przycisków ze stanem zaznaczenia. Stałe dla dostępnych wartości dla tego atrybutu znajdują się w interfejsie nsIDOMXULButtonElement. +
+


+

+ + +
+
+ +
checked +
Typ: boolean +
Określa, czy przycisk jest zaznaczony. Konieczne jest ustawienie atrybutu type na checkbox lub radio, aby zmiana atrybutu checked mogła odnosić jakiekolwiek skutki. +
+


+

+ + +
+
+ +
command +
Typ: id elementu +
Ustawiony na wartość atrybutu id elementu command, obserwowanego przez ten element. +
+ + +
+
+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
dir +
Typ: jedna z wartości poniżej +
Kierunek, w którym umieszczane są elementy potomne danego elementu.
+ + + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
dlgType +
Typ: jedna z wartości poniżej +
Typ dialogowy używany jest tylko, kiedy przycisk znajduje się w oknie dialogowym. Dzięki temu można zastąpić standardowe przyciski okna dialogowego własnymi przyciskami, z tym że metody obsługi zdarzeń okna dialogowego nadal będą funkcjonować. Przykładowo, jeśli dlgType ma wartość accept, przycisk zastąpi przycisk akceptujący okna dialogowego, zwykle mający etykietę OK. Stosowanie tego atrybutu na przycisku nie znajdującym się w oknie dialogowym nie odniesie żadnego skutku. Poniżej przedstawiono możliwe wartości tego atrybutu: +
+ +


+


+

+ + +
+
+ +
+
+ group
+
+ Typ: + + nazwa grupy jako łańcuch znaków + <magic name="\"PAGENAME\"/"></magic>
+
+ Przyciski z tą samą wartością atrybutu group należą do tej samej grupy. Tylko jeden przycisk z grupy może być zaznaczony w danej chwili. Jeśli użytkownik zaznaczy jeden z przycisków, inne z tej grupy zostaną odznaczone.
+
+
+
+ +
image +
Typ: adres URL obrazka +
Adres URL obrazka do wyświetlenia na elemencie. Jeśli ten atrybut zostanie opuszczony, to żaden obrazek nie zostanie wyświetlony. Pozycja obrazka jest określona przez atrybuty dir i orient. +
+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ + +
+
+ +
orient +
Typ: jedna z wartości poniżej +
Wykorzystywany do określenia, czy elementy potomne danego elementu zorientowane są poziomo czy pionowo. Domyślna wartość zależy od danego elementu. Można także skorzystać z własności stylu -moz-box-orient. +
+ + + +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+
+ +
+
+ type
+
+ Typ: + + string +
+
+ Typ przycisku. Jeśli ten atrybut nie jest prezentowany, tworzony jest normalny przycisk. Możemy użyć tego atrybutu do wartości menu, aby tworzyć przyciski wyskakującego menu. To będzie typowy przypadek przycisku wyświetlanego w inny sposób.
+
+ + +

 

+
+
+ +
+
+ validate
+
+ Typ: + + jedna z poniższych wartości +
+
+ Atrybut ten określa, czy obrazek ma być wczytywany z pamięci podręcznej. Może być to przydatne, jeśli obrazki są wczytywane z serwera zdalnego, albo planowana jest częsta ich podmiana. Poniższe wartości są akceptowane; pominięcie tego atrybutu spowoduje zastosowanie wartości domyślnej.
+
+ +
+

+

Własności

+

+

+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
+
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ autoCheck
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoCheck.
+
+
+
checkState +
Typ: integer, wartości 0, 1 lub 2 +
Pobiera i ustawia wartość atrybutu checkState. +
+


+

+ +
+
+
checked +
Typ: boolean +
Pobiera i ustawia wartość atrybutu checked. +
+


+

+ +
+
+
+
+ command
+
+ Typ: + + element id +
+
+ Pobiera i ustawia wartość atrybutu command.
+
+
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
+
+
+
+ dir
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu dir.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+ dlgType
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu dlgType.
+
+
+
+
+ group
+
+ Typ: + + tekstowa nazwa grupy +
+
+ Pobiera i ustawia wartość atrybutu group.
+
+
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
+
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ open
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu open.
+
+
+
+
+ orient
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu orient.
+
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+ +

 

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox +
+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULButtonElement +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbargrippy/index.html b/files/pl/mozilla/tech/xul/toolbargrippy/index.html new file mode 100644 index 0000000000..f58feba66c --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbargrippy/index.html @@ -0,0 +1,113 @@ +--- +title: toolbargrippy +slug: Mozilla/Tech/XUL/toolbargrippy +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbargrippy +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Nie w Firefoksie +

Wcięcie na stronie zawierającej pasek narzędzi (toolbar), który może być użyty do zawinięcia i rozwinięcia tegoż paska. Ten element często jest stosowany wewnętrznie poprzez pasek narzędzi i powinien być tylko stosowany, kiedy bezpośrednio wpływa on na wygląd motywu podczas modyfikacji. +

Dodatkowe informacje są dostępne w kursie XUL.

+
Własności
accessible +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox +
+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbaritem/index.html b/files/pl/mozilla/tech/xul/toolbaritem/index.html new file mode 100644 index 0000000000..50733a88d3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbaritem/index.html @@ -0,0 +1,96 @@ +--- +title: toolbaritem +slug: Mozilla/Tech/XUL/toolbaritem +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbaritem +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tylko Firefox +

Pozycja wyświetlana na toolbar. Ten element powinien zawijać wszystkie pozycje, które nie są przyciskami, jakie będą utworzone, zamiast przy użyciu elementu toolbarbutton. Element jest stosowany do na przykład; podtrzymania pozycji pasków textbox w Firefoksie. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbarpalette/index.html b/files/pl/mozilla/tech/xul/toolbarpalette/index.html new file mode 100644 index 0000000000..2dc905a7ec --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbarpalette/index.html @@ -0,0 +1,97 @@ +--- +title: toolbarpalette +slug: Mozilla/Tech/XUL/toolbarpalette +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbarpalette +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tylko Firefox +

Ten element jest paleta dostępnych elementów toolbar. Nie jest on wyświetlany, ale jest stosowany przez okno dialogowe dostosowywania paska narzędzi do wyświetlenia listy elementów. Dziecko musi być kompletną listą elementów toolbarbutton oraz toolbaritem, które mogą być dodane do paska. Nie dodawaj żadnych separatorów, jako że są one dodawane automatycznie. +

Możesz dodawać swoje własne przyciski do przeglądarki Firefox używając elementu overlay, który nakłada się na toolbarpalette id BrowserToolbarPalette. +

+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbarseparator/index.html b/files/pl/mozilla/tech/xul/toolbarseparator/index.html new file mode 100644 index 0000000000..2713769415 --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbarseparator/index.html @@ -0,0 +1,115 @@ +--- +title: toolbarseparator +slug: Mozilla/Tech/XUL/toolbarseparator +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbarseparator +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tworzy separator pomiędzy grupami pozycji paska narzędzi. Pod względem funkcjonalności jest równoważny do normalnego elementu separator, lecz kilka motywów może zastosować inny wygląd. +

+
Własności
accessible +
+

Przykłady

+
<toolbox>
+    <toolbar>
+          <toolbarbutton label="Button 1" />
+          <toolbarseparator />
+          <toolbarbutton label="Button 2" />
+    </toolbar>
+</toolbox>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarset, toolbarspacer, toolbarspring, toolbox +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbarset/index.html b/files/pl/mozilla/tech/xul/toolbarset/index.html new file mode 100644 index 0000000000..2399ff0cae --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbarset/index.html @@ -0,0 +1,96 @@ +--- +title: toolbarset +slug: Mozilla/Tech/XUL/toolbarset +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbarset +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tylko Firefox +

Ten element jest stosowany jako kontener dla pasków narzędzi użytkownika, które są dodane w oknie dialogowym toolbar przez użytkownika. +

+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarspacer, toolbox +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbarspacer/index.html b/files/pl/mozilla/tech/xul/toolbarspacer/index.html new file mode 100644 index 0000000000..45986d349e --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbarspacer/index.html @@ -0,0 +1,113 @@ +--- +title: toolbarspacer +slug: Mozilla/Tech/XUL/toolbarspacer +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbarspacer +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tylko Firefox +

Przestrzeń pomiędzy pozycjami paska narzędzi (toolbar). +

+
Własności
accessible +
+

Przykłady

+

(potrzeba przykładu) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspring, toolbox +
+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbarspring/index.html b/files/pl/mozilla/tech/xul/toolbarspring/index.html new file mode 100644 index 0000000000..b55f64704c --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbarspring/index.html @@ -0,0 +1,113 @@ +--- +title: toolbarspring +slug: Mozilla/Tech/XUL/toolbarspring +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbarspring +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Tylko Firefox +

Elastyczna przestrzeń pomiędzy pozycjami toolbar. +

+
Własności
accessible +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbox +
+
Interfejsy +
nsIAccessibleProvider +
+
+
diff --git a/files/pl/mozilla/tech/xul/toolbox/index.html b/files/pl/mozilla/tech/xul/toolbox/index.html new file mode 100644 index 0000000000..d35d0da85a --- /dev/null +++ b/files/pl/mozilla/tech/xul/toolbox/index.html @@ -0,0 +1,186 @@ +--- +title: toolbox +slug: Mozilla/Tech/XUL/toolbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/toolbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener dla toolbar. Jest to typ pudełka, które domyślnie posiada pionową orientację elementów. Jeśli toolbar jest umieszczony wewnątrz toolbox, to grippy jest wyświetlany po lewej stronie lub u góry na samym brzegu. Użytkownik może kliknąć grippy, aby zwinąć pasek narzędzi (toolbar). Jeśli wiele pasków narzędzi jest umieszczonych w tym samym toolbox, to zostaną one wszystkie zawinięte do tego samego wiersza. Firefox nie posiada grippy, więc paski narzędzi nie mogą być zawinięte i rozwinięte.

Dodatkowe informacje są dostępne w kursie XUL.

+
Własności
accessible, customToolbarCount, palette, toolbarset +
+
Metody
appendCustomToolbar, collapseToolbar, expandToolbar +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ customToolbarCount
+
+ Tylko Firefox
+
+ Typ: + + integer +
+
+ Liczba pasków narzędzi (toolbar) użytkownika aktualnie znajdująca się wewnątrz toolbox.
+
+
+
+
+ palette
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ toolbarpalette wewnątrz toolbox.
+
+
+
+
+ toolbarset
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ toolbarset wewnątrz toolbox.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
appendCustomToolbar( name, currentset ) +
Tylko w Firefoksie +
Zwraca typ: element +
Dodaje własny pasek narzędzi (toolbar) do toolbox z daną name. Możemy dostarczyć listę argumentów id pozycji paska narzędzi oddzieloną przecinkiem jako drugi argument, aby dodać domyślnie kilka pozycji. Metoda zwraca element DOM dla tworzonego paska narzędzi.
+


+

+
collapseToolbar( toolbar ) +
Nie w Firefoksie +
Zwraca typ: nie zwraca wartości +
Zawija dany toolbar, który powinien być zawarty wewnątrz toolbox. +
+


+

+
expandToolbar( toolbar ) +
Nie w Firefoksie +
Zwraca typ: nie zwraca wartości +
Rozwija dany toolbar, który powinien być zawarty w toolbox. +
+


+

+

+

Podobne

+
Elementy +
toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring +
+
Interfejsy +
nsIAccessibleProvider +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/tooltip/index.html b/files/pl/mozilla/tech/xul/tooltip/index.html new file mode 100644 index 0000000000..5cdf4eb08b --- /dev/null +++ b/files/pl/mozilla/tech/xul/tooltip/index.html @@ -0,0 +1,230 @@ +--- +title: tooltip +slug: Mozilla/Tech/XUL/tooltip +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tooltip +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest stosowany do wyskakujących podpowiedzi. Dla podpowiedzi tekstowych, to ten element nie musi być zastosowany, zamiast niego możesz dodać tylko atrybut tooltiptext do elementu.

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty
crop, default, label, noautohide, onpopuphidden, onpopuphiding, onpopupshowing, onpopupshown, position +
+
Własności +
label, popupBoxObject, position +
+
Metody +
hidePopup, moveTo, showPopup, sizeTo +
+

Przykłady

+
grafika:XUL_ref_tooltip.png
+
<tooltip id="moretip" orient="vertical" style="background-color: #33DD00;">
+  <label value="Click here to see more information"/>
+  <label value="Really!" style="color: red;"/>
+</tooltip>
+
+<vbox>
+  <button label="Simple" tooltiptext="A simple popup"/>
+  <button label="More" tooltip="moretip"/>
+</vbox>
+
+

Atrybuty

+

+

+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
default +
Typ: boolean +
Jeśli true, element tooltip jest stosowany jako domyślne wyskakujące okienko do wyświetlenia podpowiedzi w okienku. +
+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
noautohide +
Typ: boolean +
Jeśli ten atrybut jest ustawiony na false lub zostanie opuszczony, Element tooltip będzie automatycznie wyświetlony po kilku sekundach. Jeśli jego atrybut jest ustawiony na true, to nic nie będzie się działo i porada będzie ukryta podczas przesunięcia kursora myszki nad kolejny element. +
+ + +
+
+ +
+
+ onpopuphidden
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest wysyłane do okienka popup po tym jak zostało ukryte.
+
+
+
+ +
+
+ onpopuphiding
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest wysyłane do okienka popup, kiedy jest ono ukrywane.
+
+
+
+ +
+
+ onpopupshowing
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie wysyła do okienka popup tylko przed jego otwarciem. Uchwyt zazwyczaj jest stosowany do ustawień dynamicznych zawartości, kiedy użytkownik wnioskuje o jego wyświetlenie. Zwraca false z tego uchwytu zdarzenia zapobiegając okienko popup przed pojawieniem się.
+
+
+
+ +
+
+ onpopupshown
+
+ Typ: + + kod skryptu +
+
+ To jest zdarzenie wysyłane do okienka popup, po tym jak zostało otwarte, bardzo podobne do zdarzenia onload wysyłanego do okna, kiedy jest otwierane.
+
+
+
+ +
+

+

Własności

+

+

+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+ +
+
+
+
+ popupBoxObject
+
+ Typ: + + nsIPopupBoxObject +
+
+ To jest własność tylko do odczytu podtrzymująca nsIPopupBoxObject, który implementuje popup. Normalnie, ta własność nie jest nam potrzebna do użycia jak są dostępne wszystkie jej funkcje via popup.
+
+
+
+
+ position
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu position.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
hidePopup()
+
Zwraca typ: nie zwraca wartości +
Natychmiast zamyka wyskakujące okienko. +
+


+


+


+

+
+
+ moveTo( x, y )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Przenosi wyskakujące okienko do nowej lokalizacji.
+
+ +
sizeTo( width, height ) +
Zwraca typ: nie zwraca wartości +
Zmienia aktualny rozmiar wyskakującego okienka, zostaje nadana nowa szerokość (width) oraz wysokość (height). +
+


+


+

+

+

Podobne

+

TBD +


+

+
+
diff --git a/files/pl/mozilla/tech/xul/tree/index.html b/files/pl/mozilla/tech/xul/tree/index.html new file mode 100644 index 0000000000..a57e19f0a9 --- /dev/null +++ b/files/pl/mozilla/tech/xul/tree/index.html @@ -0,0 +1,372 @@ +--- +title: tree +slug: Mozilla/Tech/XUL/tree +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/tree +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener, który może zostać zastosowany do przechowywania tabelarycznego lub hierarchicznego zestawu rzędów elementów. Element tree może zawierać jakąkolwiek ilość rzędów oraz jakąkolwiek ilość kolumn. Każdy rząd drzewa może zawierać rzędy-dzieci, które wyświetlane są z wciętego rodzica. Inaczej, niż inne elementy, dane do wyświetlenia w drzewie nie są podawane za pomocą znaczników, ale są ustalane z obiektu widoku. Obiekt widoku implementuje interfejs nsITreeView. Widok jest kolejkowany, aby dane pojawiły się w drzewie. Istnieją różne sposoby, w których drzewa są zastosowane, jak podano poniżej. Druga kolumna listuje interfejsy dostępne poprzez właściwość view drzewa. Trzecia kolumna wskazuje czy element treeitem jest zastosowany. +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Typ drzewaInterfejsy widokuPosiada węzły DOM?Opis
Drzewo zawartościnsITreeView, nsITreeContentViewTakTo drzewo posiada elementy treeitem umieszczone wewnątrz elementu treechildren. W tej sytuacji, widok zawartości (implementujący interfejs nsITreeContentView), który jest bardziej wyspecjalizowanym typem widoku, używa elementów treeitem i ich potomków w celu stwierdzenia danych do wyświetlenia w drzewie. Jednakże, widok zawartości zaktualizuje się automatycznie, jeśli elementy treeitem zostaną zmienione.
Drzewo RDFnsITreeView, nsIXULTreeBuilderNieTo drzewo jest generowane ze źródła danych (datasource) RDF. Zastosowywane jest gdy drzewo posiada atrybut datasources i zawiera dont-build-content w atrybucie flags. Dla tego drzewa, dane pochodzą bezpośrednio ze źródła danych RDF. Elementy DOM treeitem nie są tworzone. Mimo, iż szablon stosuje elementy treeitem do definiowania zawartości, węzły DOM tych elementów nie są tworzone. Jest to typ drzewa, który powinien być stosowany dla drzew wygenerowanych przez RDF w dużą ilością rzędów.
Drzewo zawartości RDFnsITreeView, nsIXULTreeBuilder, nsITreeContentViewTakTo drzewo jest generowane ze źródła danych RDF. Jest podobne do poprzedniego typu drzewa, lecz jest stosowane, kiedy drzewo nie zawiera dont-build-content w atrybucie flags. Elementy DOM treeitem są tworzone, więc możesz uzyskać dostęp do danych za pomocą funkcji RDF lub funkcji DOM. Ten typ jest dobry do drzew generowanych za pomocą RDF z niewielką ilością rzędów.
Własny widok drzewansITreeViewNieDla tego drzewa możesz sam zaimplementować interfejs nsITreeView. Dane drzewa są pobierane z tego widoku własnego. Widok własny powinien być dołączony do drzewa poprzez ustawienie własności view drzewa.
+

Dodatkowe informacje są dostępne w kursie XUL oraz w Tree Widget Changes. +

+
Atrybuty +
disableKeyNavigation, disabled, enableColumnDrag, flags, hidecolumnpicker, #a-tree.onselect, rows, seltype, statedatasource, tabindex +
+
Własności +
accessible, builderView, columns, contentView, currentIndex, disableKeyNavigation, disabled, editingColumn, editingRow, enableColumnDrag, firstOrdinalColumn, selType, selstyle, tabIndex, treeBoxObject, view +
+

Przykłady

+
Image:trees1.png
+
<tree flex="1">
+
+  <treecols>
+    <treecol id="sender" label="Sender" flex="1"/>
+    <treecol id="subject" label="Subject" flex="2"/>
+  </treecols>
+
+  <treechildren>
+    <treeitem>
+      <treerow>
+        <treecell label="joe@somewhere.com"/>
+        <treecell label="Ściśle tajne plany"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="mel@whereever.com"/>
+        <treecell label="Zróbmy obiad"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+
+</tree>
+
+

Atrybuty

+

+

+ +
disablekeynavigation +
Typ: boolean +
Jeśli atrybut ten nie jest użyty, użytkownik może przechodzić do określonych pozycji listy poprzez naciśnięcie pierwszej litery etykiety danej pozycji. Odbywa się to przyrostowo, dlatego przyciśnięcie dodatkowych klawiszy spowoduje zaznaczenie lepiej określonych pozycji. Opcja ta może zostać wyłączona poprzez ustawienie wartości atrybutu jako true. +
+


+

+ + +
+
+ +
disabled +
Typ: boolean +
Określa, czy element jest wyłączony. Jeśli atrybut ten ma wartość true, to element będzie wyłączony. Wyłączone elementy zazwyczaj są wyszarzone. Jeśli element jest wyłączony, nie odpowiada na czynności użytkownika, nie może zostać na niego ustawiony focus, a zdarzenie command nie zostanie wywołane.
+
grafika:XUL_ref_attr_disabled.png
+
<!-- Pole wyboru włącza/wyłącza przycisk -->
+<checkbox label="Enable button"
+    onclick="document.getElementById('buttRemove').disabled = this.checked"/>
+<button id="buttRemove" label="Remove All" disabled="true"/>
+
+
+
+ +
enableColumnDrag +
Typ: boolean +
Kiedy ustawimy na true, użytkownik ma możliwość przesunięcia nagłówków kolumny, aby zmienić kolejność w jakiej są one wyświetlane. +
+


+

+ + +
+
+ +
flags +
Typ: lista wartości znajdujących się poniżej oddzielonych spacją +
Ustawia flagi użyte dla różnych celów. Dwie flagi są definiowane, które mogą być wartościami tego atrybutu.
+ +


+


+

+ + +
+
+ +
hidecolumnpicker +
Typ: boolean +
Kiedy ustawiony na false, to dostępne będzie rozwijane menu w prawym górnym rogu drzewa (tree), które użytkownik może zastosować do pokazania lub ukrycia kolumn. Kiedy jest ustawiony na true, to column picker będzie ukryty. Domyślną wartością jest false. +
+


+

+ + +
+
+ +
+
+ onselect
+
+ Typ: + + kod skryptu +
+
+ To zdarzenie jest wysyłane do tree, kiedy zostanie zaznaczony wiersz lub kiedykolwiek zostanie zmienione zaznaczenie. Użytkownik może zaznaczyć wiele wierszy poprzez przytrzymanie klawisza Shift lub Control i klikanie kursorem myszki w wiersze, które chce zaznaczyć. Zdarzenie onselect będzie przesyłane dla każdej pozycji która zostanie zaznaczona lub odznaczona.
+
+ +
+
+ +
+
+ rows
+
+ Typ: + + integer +
+
+ Liczba wierszy do wyświetlenia w elemencie. Jeśli w elemencie znajduje się więcej niż ta liczba wierszy, pojawi się pasek przewijania, który użytkownik może zastosować do przewijania do innych wierszy. Aby pobrać aktualną liczbę wierszy w elemencie, zastosuj metodę getRowCount.
+
+
+
+ +
+
+ +
+
+ +
tabindex +
Typ: integer +
Porządek dla przełączania elementów klawiszem Tab. Elementy o wyższym tabindex umieszczane są w dalszej części sekwencji przełączania. +
+ + +
+

+

Własności

+

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+
+
+
+ builderView
+
+ Typ: + + nsIXULTreeBuilder +
+
+ Referencja do budowniczego drzewa, który konstruuje dane tree. Budowniczy dostarcza dostęp do źródeł RDF dla każdego wiersza w drzewie i pozwala sortować danymi w kolumnie. W nowszej wersji Mozilli, własność builderView jest aktualnie synonimem dla własności view, od dwóch interfejsów są spłaszczone razem aż do pojedynczego interfejsu w JavaScript. Ta własność jest tylko do odczytu.
+
+
+
+
+ columns
+
+ Typ: + + nsITreeColumns +
+
+ Zwraca kolumny dla drzewa jako obiekt nsITreeColumns.
+
+
+
+
currentIndex +
Typ: integer +
Ustawia indeks bieżącego aktywnego wiersza w tree (drzewie). Jeśli jest brak aktywnego wiersza, wartość będzie -1. Dla wielu zaznaczeń drzew, bieżącym indeksem jest ostatnio zaznaczony wiersz. Nie stosuj tej własności do zmiany zaznaczenia. Zamiast stosować metody obiektu nsITreeSelection dostępnego przez tree.view.selection. +
+ +
+
+
+
+ disableKeyNavigation
+
+ Typ: + + boolean +
+
+ Pobiera lub ustawia wartość atrybutu disableKeyNavigation.
+
+
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
+
+
+
+
+
+ enableColumnDrag
+
+ Typ: + + boolean +
+
+ Kiedy ustawimy na true, użytkownik przesunie nagłówki kolumny, aby zmienić kolejność w jakiej są one wyświetlane.
+
+
+
+
+ firstOrdinalColumn
+
+ Typ: + + element treecol +
+
+ Referencja do elementu treecol, który nie musi być pierwszą kolumną wyświetlaną w drzewie.
+
+
+
+
+ selType <magic name="\"PAGENAME\"/"></magic>
+
+  
+
+ Type: string
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu seltype.
+
+

 

+

 

+ +

+
+
selstyle +
Typ: string +
Jeśli jest ustawiona na wartość primary, to tylko etykieta głównej kolumny będzie podświetlona, w momencie gdy pozycja drzewa jest zaznaczona. Inaczej, cały wiersz będzie podświetlony. Aby zobaczyć różnice, porównaj styl zaznaczenia na liście folderów i liście wiadomości w programie pocztowym Mozilli. +
+


+

+ +
+
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
+
+
+ +
+
view
+
Typ: nsITreeView
+
Widok dla tree, który jest obiektem generującym dane do wyświetlenia. Do tej własności możesz przypisać obiekt implementujący interfejs nsITreeView. Drzewa zbudowane z RDF-a, albo takie, które bezpośrednio używają elementów treeitem, będą już miały widok. Funkcje dostępne w widoku pozwalają na pobieranie danych z komórek i pozwalają na stwierdzenie, które wiersze są zagnieżdżone w innych. Aby zobaczyć kompletną listę funkcji, obejrzyj interfejs nsITreeView.
+
+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ + +

+

Podobne

+
Interfejsy +
nsIAccessibleProvider, nsIDOMXULTreeElement, nsIDOMXULMultiSelectControlElement +
+

Notatki dodane przez użytkowników

+

Tworzenie przemiennych kolorów dla każdego wiersza może być zrobione w arkuszu stylów, oto przykład. pma at daffodil dot uk dot com +

+
treechildren::-moz-tree-row(selected) { background-color: #FFFFAA; }
+treechildren::-moz-tree-row(odd) { background-color: #EEEEEE; }
+treechildren::-moz-tree-row(odd, selected) { background-color: #FFFFAA; }
+treechildren::-moz-tree-cell-text(selected) { color: #000000; }
+treechildren::-moz-tree-cell-text(odd, selected) { color: #000000; }
+
+

Aby uzyskać numery ID wszystkich zaznaczonych wierszy w drzewie: tcooper_mont at yahoo dot com +

+
var rangeCount = this.tree.view.selection.getRangeCount();
+for(var i=0; i<rangeCount; i++)
+{
+   var start = {};
+   var end = {};
+   tree.view.selection.getRangeAt(i,start,end);
+   for(var c=start.value; c<=end.value; c++)
+   {
+      idList.push(this.tree.view.getItemAtIndex(c).firstChild.id);
+   }
+}
+
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treecell/index.html b/files/pl/mozilla/tech/xul/treecell/index.html new file mode 100644 index 0000000000..49efde9fb3 --- /dev/null +++ b/files/pl/mozilla/tech/xul/treecell/index.html @@ -0,0 +1,117 @@ +--- +title: treecell +slug: Mozilla/Tech/XUL/treecell +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treecell +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedyncza komórka w tree. Ten element powinien być umieszczony wewnątrz treerow. Możemy ustawić tekst dla komórki za pomocą atrybutu label. +

Dodatkowo informacje są dostępne w kursie XUL. +

+
Atrybuty +
label, mode, properties, ref, src, value +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+

+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ mode
+
+ Typ: + + jedna z poniższych wartości +
+
+ Dla kolumn, które są paskami postępu, typu określonego paska postępu w użyciu:
+
+ +
+
+ +
+
+ properties
+
+ Typ: + + lista własności nazwy oddzielona separatorem +
+
+ Ustawia własności elementu, który stosujemy do stylu elementu.
+
+
+
+ + +
+
ref
+
Typ:URI źródła RDF
+
Dla szablonowo generowanych elementów, ten atrybut jest stosowany do określenia korzenia (węzła głównego) RDF, gdzie rozpoczyna się generowanie zawartości. Będzie ona przesyłana do wartości. This will correspond to the value of an about attribute on an RDF container. This attribute should be placed alongside the datasources attribute.
+
+
+
+ +
src +
Typ: adres URL obrazka +
Ustawia ten adres URL obrazka do wyświetlenia w komórce drzewa. Jeśli ten atrybut jest opuszczony, to żaden obrazek się nie wyświetli. Możemy posiadać oba obrazki i etykiety.
+ + +
+
+ +
+
+ value
+
+ Typ: + + string +
+
+ Atrybut łańcucha znaków pozwalający na współpracę wartości danych z elementem. Nie jest stosowany dla określenia jakiegoś konkretnego celu, lecz można go wykorzystać w skrypcie do własnego użytku.
+
+ +

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
tree treecols, treecol, treechildren, treeitem, treerow i treeseparator. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treechildren/index.html b/files/pl/mozilla/tech/xul/treechildren/index.html new file mode 100644 index 0000000000..9368e658a5 --- /dev/null +++ b/files/pl/mozilla/tech/xul/treechildren/index.html @@ -0,0 +1,111 @@ +--- +title: treechildren +slug: Mozilla/Tech/XUL/treechildren +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treechildren +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element jest ciałem tree. Dla zawartości drzewa, treść będzie umieszczona wewnątrz tego elementu. Ten element jest także stosowany do zdefiniowania kontenerów wierszy w drzewie. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
alternatingbackground +
+

Przykłady

+

(potrzeba przykładu)

+

Atrybuty

+

+ +
alternatingbackground +
Typ: boolean +
Jeśli true, tło wierszy w drzewach (tree) będzie się zmieniać pomiędzy dwoma kolorami. +
+


+

+ + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobny

+
Elementy +
tree, treecols, treecol, treeitem, treerow, treecell i treeseparator. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treecol/index.html b/files/pl/mozilla/tech/xul/treecol/index.html new file mode 100644 index 0000000000..dc160bce75 --- /dev/null +++ b/files/pl/mozilla/tech/xul/treecol/index.html @@ -0,0 +1,249 @@ +--- +title: treecol +slug: Mozilla/Tech/XUL/treecol +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treecol +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kolumna drzewa (tree). Wyświetla kolumnę nagłówka i utrzymuje rozmiar oraz inne informacje o kolumnie. Możemy także umieścić element splitter pomiędzy kolumnami, aby pozwolić na zmianę rozmiaru kolumny. Zawsze powinniśmy umieszczać atrybut id w elemencie treecol do zapewnienia, że pozycjonowanie kolumny jest własnością utrzymywaną. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
crop, cycler, dragging, fixed, hidden, hideheader, ignorecolumnpicker, label, primary, sort, sortActive, sortDirection, src, type +
+
Własności +
accessible +
+
Klasy stylów +
treecol-image +
+

Przykłady

+
Grafika:Xul_tree_col_checked.png
+

Ten przykład pokazuje nam pole wyboru w pierwszej kolumnie, żądając poniżej stylu.

+
<tree flex="1">
+
+  <treecols>
+    <treecol label="Active" type="checkbox" editable="true"/>
+    <treecol label="Name" flex="1" />
+  </treecols>
+
+  <treechildren>
+    <treeitem>
+      <treerow>
+      	<treecell value="true"/>
+        <treecell label="Alice"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell value="false"/>
+        <treecell label="Bob"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+
+</tree>
+
+

Aby zrobić widoczne pole wyboru, potrzebujemy dodać następujący styl do arkusza stylów (zobacz treecol.type). +

+
treechildren::-moz-tree-checkbox(checked){
+    /* css dla zaznaczonej komórki*/
+    list-style-image: url("chrome://global/skin/checkbox/cbox-check.gif");
+}
+
+

Atrybuty

+

+

+ +
crop +
Typ: jedna z poniższych wartości +
Jeśli etykieta elementu jest zbyt duża by zmieścić się w danym miejscu, to jej tekst zostanie skrócony po stronie określonej przy pomocy atrybutu crop. Wycięty fragment tekstu zostanie zastąpiony wielokropkiem. Jeśli kierunek pudełka jest określony w lewą stronę, to skrócenie tekstu nastąpi w tym samym kierunku (czyli z lewej strony): +
+ +
 menupopup > menuitem, menupopup > menu { max-width: none; }
+
+


+


+

+ + +
+
+ +
+
+ +
dragging +
Typ: boolean +
Ten atrybut będzie ustawiony na true, jeśli kolumna będzie przesuwana. Ten atrybut jest ustawiony automatycznie, więc nie powinniśmy go przestawiać ręcznie. +
+


+

+ + +
+
+ +
+
+ +
hidden +
Typ: boolean +
Jeśli jest ustawiony na true, element jest nie wyświetlane. Jest to podobne do ustawienia wyświetlania własności CSS na none. +
+


+

+ + +
+
+ +
hideheader +
Typ: boolean +
Ustaw atrybut na true, aby wskazać, który nagłówek kolumny drzewa powinien być wyświetlony bez stylu nagłówka kolumny. +
+


+

+ + +
+
+ +
ignoreincolumnpicker +
Typ: boolean +
Jeśli true, kolumna nie zostanie wyświetlona w zbiorze kolumn.
+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
+
+ +
+
+ +
+
+ sortActive
+
+ Typ: + + boolean +
+
+ Powinien być ustawiony na true, dla kolumn, które powinny być domyślnie sortowane.
+
+
+
+ +
+
+ sortDirection
+
+ Typ: + + jedna z wartości poniżej +
+
+ Ustaw ten atrybut na ustawienie kierunku, w którym zawartość szablonów została wygenerowana i posortowana. Zastosuj atrybut sortResource, aby określić klucz sortowania.
+
+ +
+
+ +
src +
Typ: adres URL obrazka +
Ustaw ten atrybut aby posiadać element obrazka w nagłówku treecol zamiast etykiety (label). Ustaw adres URL obrazka, który zostanie wyświetlony w nagłówku kolumny drzewa. Jeśli ten atrybut zostanie opuszczony, to nie pojawi się żaden obrazek i zamiast niego użyta zostanie etykieta. Klasa treecol-image musi być zastosowana na elemencie treecol dla obrazka do wyświetlenia. Nie możemy mieć obu (obrazka i etykiety) pokazanych w jednym momencie. +
+ + +
+
+ +
+
+ type
+
+ Typ: + + jedna z wartości poniżej +
+
+ Typ kolumny drzewa. Domyślnie jest to kolumna tekstowa, która wyświetla zawartość jako tekst.
+
+ + +

 

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Klasy stylów

+

Następujące klasy możemy zastosować do nadania stylu temu elementowi. Należy korzystać z tych klas zamiast nadawać styl bezpośrednio w danym elemencie - dzięki temu będą bardziej pasować do motywu wybranego przez użytkownika. +

treecol-image +
Zastosuj tą klasę do posiadania obrazka, który pojawi się w nagłówku kolumny drzewa. Określ obrazek stosując atrybut src. +
+


+


+

+

+

Podobne

+
Elementy +
tree, treecols, treechildren, treeitem, treerow, treecell i treeseparator. +
Interfejsy +
nsIAccessibleProvider +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treecols/index.html b/files/pl/mozilla/tech/xul/treecols/index.html new file mode 100644 index 0000000000..8f2dae7a1c --- /dev/null +++ b/files/pl/mozilla/tech/xul/treecols/index.html @@ -0,0 +1,127 @@ +--- +title: treecols +slug: Mozilla/Tech/XUL/treecols +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treecols +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Grupa elementów treecol. Powinien być jeden i tylko jeden element treecols w drzewie (tree). +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
pickertooltiptext
+
Własności
accessible +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ +
pickertooltiptext +
Typ: string +
Tekst podpowiedzi zebrany w kolumnie. +
+


+

+ + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
tree, treecol, treechildren, treeitem, treerow, treecell i treeseparator. +
Interfejsy +
nsIAccessibleProvider +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treeitem/index.html b/files/pl/mozilla/tech/xul/treeitem/index.html new file mode 100644 index 0000000000..80ff3e3c98 --- /dev/null +++ b/files/pl/mozilla/tech/xul/treeitem/index.html @@ -0,0 +1,93 @@ +--- +title: treeitem +slug: Mozilla/Tech/XUL/treeitem +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treeitem +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Obiekt treeitem powinien być umieszczany wewnątrz elementu treechildren i powinien zawierać elementy treerow. treeitem może być kliknięty przez użytkownika aby zaznaczyć wiersz drzewa. treeitem zawiera pojedynczy wiersz i wszystko co po stronie użytkownika jest potomkiem tego wiersza. +

W warunkach szablonu, powinieneś zastosować treeitem zamiast elementu content, kiedy flaga dont-build-content jest zastosowana. Ustaw atrybut uri do nazwy zmiennej, aby podwiązać się (bind) do wiązania zawartości podczas porównania. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
container, empty, label, open, uri +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+

+ +
+
+ container
+
+ Typ: + + boolean +
+
+ Ustaw na true, jeśli element spełnia funkcję jako kontener, który posiada elementy potomne. Będzie ustawiony jako potrzebny w kreatorze szablonów.
+
+
+
+ +
empty +
Typ: boolean +
Ustawia true, jeśli element jest kontenerem bez elementu potomnego. Zostanie ustawiony poprzez kreator szablonów jako potrzebny. +
+


+


+

+ + +
+
+ +
label +
Typ: string +
Dla elementów tree z pojedynczą kolumną, etykieta może być umieszczona bezpośrednio na elemencie treeitem bez potrzebnych elementów treerow i treecell wewnątrz. +
+ + +
+
+ +
open +
Typ: boolean +
Dla przycisków o type ustawionym na menu, atrybut open jest ustawiany na true, kiedy menu jest otwarte. Atrybut open nie jest obecny, jeśli menu jest zamknięte. +
+


+


+

+ + +
+
+ +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy 
tree, treecols, treecol, treechildren, treerow, treecell i treeseparator. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treerow/index.html b/files/pl/mozilla/tech/xul/treerow/index.html new file mode 100644 index 0000000000..0a8e462871 --- /dev/null +++ b/files/pl/mozilla/tech/xul/treerow/index.html @@ -0,0 +1,114 @@ +--- +title: treerow +slug: Mozilla/Tech/XUL/treerow +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treerow +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Pojedynczy wiersz w tree. Powinien być umieszczony wewnątrz elementu treeitem. Potomek treerow powinny być elementy treecell. Jeśli potomek wierszy są konieczne, powinny być umieszczone w elemencie treechildren wewnątrz rodzica treeitem. +

Dodatkowe informacji są dostępne w kursie XUL. +

+
Atrybuty +
properties +
+

Przykłady

+

(potrzebne przykłady) +

+

Atrybuty

+

+ +
+
+ properties
+
+ Typ: + + lista własności nazwy oddzielona separatorem +
+
+ Ustawia własności elementu, który stosujemy do stylu elementu.
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy 
tree, treecols, treecol, treechildren, treeitem, treecell i treeseparator. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/treeseparator/index.html b/files/pl/mozilla/tech/xul/treeseparator/index.html new file mode 100644 index 0000000000..8c30ebe9c1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/treeseparator/index.html @@ -0,0 +1,114 @@ +--- +title: treeseparator +slug: Mozilla/Tech/XUL/treeseparator +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/treeseparator +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Stosowany do umieszczenia separatora wiersza w tree. +

+
Atrybuty +
properties +
+

Przykłady

+

(potrzeny przykład) +

+

Atrybuty

+

+ +
+
+ properties
+
+ Typ: + + lista własności nazwy oddzielona separatorem +
+
+ Ustawia własności elementu, który stosujemy do stylu elementu.
+
+
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
tree, treecols, treecol, treechildren, treeitem, treerow i treecell. +
+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/triple/index.html b/files/pl/mozilla/tech/xul/triple/index.html new file mode 100644 index 0000000000..cfc56e59d1 --- /dev/null +++ b/files/pl/mozilla/tech/xul/triple/index.html @@ -0,0 +1,128 @@ +--- +title: triple +slug: Mozilla/Tech/XUL/triple +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/triple +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Element triple może zostać zawarty wewnątrz elementu rule elementu conditions. Jest on stosowany w celu stwierdzenia zapewnienia (ang. assertion) wewnątrz diagramu (ang. graph). Jeśli takie zapewnienie istnieje, zasada może zostać spełniona, zakładając że wszystkie warunki są spełnione. Jeśli zapewnienie nie istnieje, zasada nie zostanie spełniona. Zarówno atrybut subject oraz object mogą być zmiennymi. +

subject elementu triple jest źródłem RDF. Będzie to zazwyczaj element opisu RDF w pliku RDF. Atrybut predicate (predykat) będzie elementem-dzieckiem lub własnością. Dla przykładu, dla źródła zakładek, nazwa i URL mogą być predykatami. Powinny być określone w formie pełnych URI. Atrybut object jest wartością własności RDF. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
object, predicate, subject +
+

Przykłady

+

(potrzebny przykład) +

+

Atrybuty

+

+ +
object +
Obiekt elementu. Może być to odwołanie się do zmiennej i URI źródła RDF lub wartość literalna RDF. +
+


+

+ + +
+
+ +
predicate +
Predykat własności do dopasowania. Musi być to URI własności.
+


+

+ + +
+
+ +
subject +
Temat elementu. Może być odwołaniem się do zmiennej lub URI źródła RDF. +
+


+

+ + +
+ + + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

TBD +

+
+
diff --git a/files/pl/mozilla/tech/xul/vbox/index.html b/files/pl/mozilla/tech/xul/vbox/index.html new file mode 100644 index 0000000000..472efa1771 --- /dev/null +++ b/files/pl/mozilla/tech/xul/vbox/index.html @@ -0,0 +1,101 @@ +--- +title: vbox +slug: Mozilla/Tech/XUL/vbox +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/vbox +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Kontener mogący zawierać wiele elementów potomnych. Równoważny z elementem box, z wyjątkiem domyślnie ustawionej orientacji pionowej.

Dodatkowe informacje są dostępne w kursie XUL.

+

Przykłady

+
<!-- Dwie etykiety umieszczone poniżej -->
+<vbox>
+  <spacer flex="1"/>
+  <label value="Jedna"/>
+  <label value="Druga"/>
+
+

Atrybuty

+

+ + + + + +

Dziedziczy z elementu XUL
+align, +allowevents, +allownegativeassertions, +class, +coalesceduplicatearcs, +collapsed, +container, +containment, +context, +contextmenu, +datasources, +dir, +empty, +equalsize, +flags, +flex, +height, +hidden, +id, +insertafter, +insertbefore, +left, +maxheight, +maxwidth, +menu, +minheight, +minwidth, +mousethrough, +observes, +ordinal, +orient, +pack, +persist, +popup, +position, +preference-editable, +querytype, +ref, +removeelement, +sortDirection, +sortResource, +sortResource2, +statustext, +style, +template, +tooltip, +tooltiptext, +top, +uri, +wait-cursor, +width

+
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+
Elementy +
box, hbox +
+


+


+

+
+
diff --git a/files/pl/mozilla/tech/xul/window/index.html b/files/pl/mozilla/tech/xul/window/index.html new file mode 100644 index 0000000000..59c25fbe8c --- /dev/null +++ b/files/pl/mozilla/tech/xul/window/index.html @@ -0,0 +1,203 @@ +--- +title: window +slug: Mozilla/Tech/XUL/window +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/window +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Opisuje strukturę okna najwyższego poziomu. Jest to węzeł główny dokumentu XUL. Domyślnie jest zorientowanym pionowo pudełkiem. Jako że jest pudełkiem, wszystkie atrybuty okna mogą być zastosowane. Domyślnie dookoła okna znajdować się będzie odpowiednia dla platformy ramka. +

Aby ustawić ikonę dla okna, utwórz odpowiedni dla platformy plik ikony <windowid>.ico i/lub <windowid>.xpm i umieść lub zainstaluj te pliki w katalogu <mozilla-directory>/chrome/icons/default/. <windowid> jest wartością atrybutu id okna. Pozwala to na zastosowanie różnych ikon dla każdego okna. +

Zobacz XUL Window, aby dowiedzieć się więcej na temat własności i metod obiektu. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
height, hidechrome, id, screenX, screenY, sizemode, title, width, windowtype +
+

Przykłady

+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<window id="rootWnd" title="Rejestracja online!" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+  <vbox>
+    <hbox>
+      <image src="application_form.png"/>
+      <description>Rejestracja online!</description>
+    </hbox>
+    <groupbox align="start">
+      <caption label="Twoje dane"/>
+      <radiogroup>
+        <vbox>
+          <hbox>
+            <label control="your-fname" value="Wpisz imię:"/>
+            <textbox id="your-fname" value="Johan"/>
+          </hbox>
+          <hbox>
+            <label control="your-lname" value="Wpisz nazwisko:"/>
+            <textbox id="your-lname" value="Hernandez"/>
+          </hbox>
+          <hbox>
+            <button oncommand="alert('save!')">
+              <description>Zapisz</description>
+            </button>
+          </hbox>
+        </vbox>
+      </radiogroup>
+    </groupbox>
+  </vbox>
+</window>
+
+

Atrybuty

+

+

+ +
height +
Typ: string (reprezentujący integer) +
Wysokość elementu w pikselach. Zalecane jest stosowanie zamiast wysokości - własność wysokości CSS. +
+


+

+ + +
+
+ +
hidechrome +
Typ: boolean +
Ustawia ten atrybut na true do posiadanego chrome, włączając ukryty pasek tytułu. +
+


+

+ + +
+
+ +
id +
Typ: id elementu, musi być unikatowym identyfikatorem w oknie +
Unikatowy identyfikator, który będzie identyfikował się z elementem. Możemy go zastosować jako parametr do getElementById() i innych funkcji DOM oraz jako odniesienie do elementu w arkuszach stylu.
+ + +
+
+ +
+
+ screenX
+
+ Typ: + + integer +
+
+ Pozioma pozycja, w którym miejscu pojawi się w oknie na ekranie.
+
+
+
+ +
screenY +
Typ: integer +
Pionowe położenie, w którym pojawia się okno na ekranie. +
+


+


+

+ + +
+
+ +
+
+ sizemode
+
+ Typ: + + jedna z wartości poniżej +
+
+ Stan okna (window). Następujące wartości mogą zostać zastosowane:
+
+ +
+
+ +
title +
Typ: string +
Tekst wyświetlony na pasku tytułu w oknie dialogowym. +
+


+


+

+ + +
+
+ +
+
+ width
+
+ Typ: + + string + (reprezentujący integer)
+
+ Szerokość elementu w pikselach. Zwykle jednak powinno stosować się własność width w arkuszu stylów.
+
+
+
+ +
windowtype +
Typ: string +
Ustawia wartość atrybutu na łańcuch znaków, który będzie identyfikował typ okna. Może być wykorzystany, na przykład, do odróżnienia okna przeglądarki i okna edytora. Część funkcji obsługi okien w Mozilli stosuje ten atrybut do grupowania razem okien tego samego typu. +
+


+


+

+ + +
+

+

Własności

+

+

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Uwagi

+

Wiadomość błędu "XML Parsing Error: undefined entity...<window" może być spowodowana brakującym lub nieosiągalnym plikiem DTD, do którego odnosi się plik XUL. Nazwa pliku następująca po słowie kluczowym SYSTEM w deklaracji DOCTYPE może się błędnie wczytać, a jedyną wiadomością błędu będzie błąd niezdefiniowanej encji w następnym elemencie XUL. +

+

Podobne

+
Elementy +
dialog, dialogheader +
+


+

+

Uwagi użytkownika

+

Aby zmienić ikonę paska tytułu okna przejrzyj stronę Ikony okna. +

Aby dodać favicon (favikonę) do paska adresu i karty przeglądarki (ie dialog is not a popup) zastosuj następujący fragment kodu używający przestrzeni nazw html i znacznik link. +

+
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+	xmlns:html="http://www.w3.org/1999/xhtml">
+
+<!-- Ikona z chrome -->
+<html:link rel="icon" href="chrome://myExtension/content/path/to/favicon.png"/>
+
+<!-- Ze zdalnej strony -->
+<html:link rel="icon" href="http://www.mozilla.org/favicon.ico"/>
+
+
+
diff --git a/files/pl/mozilla/tech/xul/wizard/index.html b/files/pl/mozilla/tech/xul/wizard/index.html new file mode 100644 index 0000000000..3485784dee --- /dev/null +++ b/files/pl/mozilla/tech/xul/wizard/index.html @@ -0,0 +1,367 @@ +--- +title: wizard +slug: Mozilla/Tech/XUL/wizard +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/wizard +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element powinien być stosowany do tworzenia kreatorów krok-po-kroku, jaki znajduje się w różnych aplikacjach aby przeprowadzić użytkownika przez jakieś zadanie. Jest to okno z kilkoma krokami znajdującymi się na kilku stronach. Element wizard tworzy okno i dostarcza nagłówek oraz przyciski wzdłuż dolnej krawędzi i obsługuje nawigację pomiędzy stronami. Każda strona powinna być tworzona używając elementu wizardpage. Strony wyświetlane są w takiej kolejności w jakiej zostały umieszczone wewnątrz elementu wizard, chyba że użyjesz atrybutów next i pageid stron by zmienić sekwencję. Kreator zostanie wyświetlony w sposób odpowiedni dla platformy i motywu użytkownika. W nowszych wersjach Mozilli, element statusbar może zostać umieszczony bezpośrednio wewnątrz elementu wizard i będzie współdzielony przez wszystkie strony. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
firstpage, lastpage, onextra1, onextra2, onwizardback, onwizardcancel, onwizardfinish, onwizardnext, pagestep, title +
+
Własności +
canAdvance, canRewind, currentPage, onFirstPage, onLastPage, pageCount, pageIndex, pageStep, title, wizardPages +
+
Metody +
advance, cancel, extra1, extra2, getButton, getPageById, goTo, rewind +
+

Przykłady

+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<wizard id="theWizard" title="Secret Code Wizard"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<script>
+function checkCode(){
+  document.getElementById('theWizard').canAdvance = (document.getElementById('secretCode').value == "cabbage");
+}
+</script>
+
+  <wizardpage onpageshow="checkCode();">
+       <label value="Enter the secret code:"/>
+       <textbox id="secretCode" onkeyup="checkCode();"/>
+  </wizardpage>
+
+  <wizardpage>
+       <label value="That is the correct secret code."/>
+  </wizardpage>
+
+</wizard>
+
+

Atrybuty

+

+

+ +
firstpage +
Typ: boolean +
Ustawiony na true, jeśli wizard jest na pierwszej stronie. +
+


+

+ + +
+
+ +
lastpage +
Typ: boolean +
Ustawiony na true, jeśli wizard jest na ostatniej stronie. +
+


+

+ + +
+
+ +
onextra1 +
Typ: kod skryptu +
Ten atrybut powinien być ustawiony w kodzie, który wywołany bedzie kiedy użytkownik naciśnie dodatkowy przycisk (<tt>extra1</tt>). +
+


+

+ + +
+
+ +
onextra2 +
Typ: kod skryptu +
Ten atrybut powinien być ustawiony w kodzie, który wywołany bedzie kiedy użytkownik naciśnie dodatkowy przycisk (<tt>extra2</tt>). +
+


+

+ + +
+
+ +
+
+ onwizardback
+
+ Typ: + + kod skryptu +
+
+ Powinien być ustawiony kod, który jest wywołany kiedy użytkownik naciśnie przycisk Wstecz. Zwraca true, aby pozwolić na to by wyświetlić wcześniejszą stronę i false, aby nie pozwolić na powrót do wcześniejszej strony. Zastosuj własność canRewind, aby zasygnalizować użytkownikowi (przez odłączenie przycisku Wstecz), że on nie może wrócić do poprzedniej strony.
+
+
+
+ +
+
+ onwizardcancel
+
+ Typ: + + kod skryptu +
+
+ Powinien być ustawiony kod, który jest wywołany, kiedy użytkownik naciśnie przycisk Anuluj. Zwraca true, aby pozwolić kreatorowi zostać anulowanym i zamkniętym lub zwróci false, aby chronić kreator przed anulowaniem. Use the canCancel property to indicate to the user (by disabling the Cancel button) that they cannot cancel.
+
+

 

+ +

+
+
+ +
+
+ onwizardfinish
+
+ Typ: + + kod skryptu +
+
+ Powinien być ustawiać kod, który jest wywoływany kiedy użytkownik naciśnie przycisk Zakończ, który pojawi się przycisk Dalej na ostatniej stronie kreatora. Zwraca true pozwalając kreatorowi na zamknięcie się lub zwraca false, zapobiega przejście do następnej strony. Zastosuj własność canAdvance, aby zasygnalizować użytkownikowi (poprzez wyłączenie przycisku Zakończ), że nie ma on końca.
+
+
+
+ +
+
+ onwizardnext
+
+ Typ: + + kod skryptu +
+
+ Powinien być ustawiać kod, który jest wywoływany kiedy użytkownik naciśnie przycisk Dalej, podczas pobytu na bieżącej stronie. Zwraca true pozwalając następnej stronie na wyświetlenie sie i zwraca false nie pozwalając na przejście do następnej strony. Zastosuj własność canAdvance aby zasygnalizować użytkownikowi (poprzez wyłączenie przycisku Dalej), że nie może on przejść do następnej strony.
+
+
+
+ +
+
+ pagestep
+
+ Typ: + + integer +
+
+ Indeks bieżącej strony.
+
+
+
+ +
title +
Typ: string +
Tekst wyświetlony na pasku tytułu w oknie dialogowym. +
+


+


+

+ + +
+

+

Własności

+

+

+
+
+ canAdvance
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true, jeśli użytkownik naciśnie przycisk 'Dalej', aby przejść do następnej strony. Jeśli ta własność jest ustawiona na false, użytkownik nie może przejść do następnej strony. Ustaw tą własność na true, aby zasygnalizować, że użytkownik może przejść do następnej strony. Ustawiając własność na false, przejście do następnej strony zostanie odrzucone (zabronione). Możemy to zobaczyć poprzez włączony lub wyłączony przycisk 'Dalej' lub na ostatniej stronie kreatora będzie umieszczony przycisk 'Zakończ'.
+
+
+
canRewind +
Typ: boolean +
Ta własność jest ustawiona na true, jeśli użytkownik może nacisnąć przycisk Wstecz, aby przejść do poprzedniej strony. Jeśli własność jest false, użytkownik nie będzie mógł przejść do poprzedniej strony. Ustaw tą własność na true, aby zasygnalizować, że użytkownik może przejść do poprzedniej strony. Ustaw na false, aby nie pozwolić na przeniesienie do poprzedniej strony. Posiada efekt włączonego lub wyłączonego przycisku Wstecz. +
+ +
+
+
+
+ currentPage
+
+ Typ: + + element wizardpage +
+
+ Wartość zwraca element kreatora (wizardpage), który jest aktualnie wyświetlany. Możemy modyfikować tą wartość, aby zmienić aktualną stronę.
+
+
+
+
+ onFirstPage
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true, jeśli użytkownik jest na pierwszej stronie, która może być lub nie być pierwsza w indeksie.
+
+
+
+
+ onLastPage
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true, jeśli użytkownik jest na ostatniej stronie kreatora.
+
+
+
pageCount +
Typ: integer +
Ta własność trzyma liczbę stron w kreatorze (wizard). +
+


+

+ +
+
+
+
+ pageIndex
+
+ Typ: + + integer +
+
+ Ta własność zwraca indeks aktualnie zaznaczonej strony. Możemy zmienić zaznaczenie strony poprzez modyfikacje tej własności.
+
+
+
+
+
+
+ title
+
+ Typ: + + string +
+
+ Tytuł, który pojawia się na górze kreatora (wizard). Jest przesłaniany przez atrybut label na indywidualnych stronach.
+
+
+
+
+ wizardPages
+
+ Typ: + + DOM NodeList elementów wizardpage +
+
+ Ta własność podtrzymuje listę elementów wizardpage w wizard.
+
+

+

Metody

+

+ + + + + +
+

Dziedziczy z elementu XUL
+ blur, click, doCommand, focus, getElementsByAttribute getElementsByAttributeNS

Dziedziczy z elementu DOM
+ addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+ +
+
+
+ advance( pageID )
+
+ Zwraca typ: nie zwraca wartości
+
+ Wywołaj tą metodę, aby przejść stronę dalej. Jest równoważna naciśnięciu przycisku Dalej. Własność canAdvance musi być ustawiona na true dla strony, która będzie zmieniona. Kod w atrybucie onwizardnext jest wywołany przed zmianą strony. Argument pageID pozwala nam określić indeks strony do której mamy przejść. Dostarcza null jako argument przejścia do strony dalej w pewnej kolejności.
+
+
cancel() +
Zwraca typ: nie zwraca wartości +
Wywołuje tą metodę do anulowania i zamknięcia kreatora. Kod w atrybucie onwizardcancel jest wywołany zanim okno kreatora zostanie anulowane. +
+


+

+
extra1() +
Zwraca typ: nie zwraca wartości +
Wywołanie tej metody symuluje naciśnięcie dodatkowego przycisku (<tt>extra1</tt>). Kod w atrybucie onextra1 zostanie wywołany. +
+


+

+
extra2() +
Zwraca typ: nie zwraca wartości +
Wywołanie tej metody symuluje naciśnięcie dodatkowego przycisku (<tt>extra2</tt>). Kod w atrybucie onextra2 zostanie wywołany. +
+


+

+
getButton( typ ) +
Zwraca typ: element button +
Zwraca element button o zadanym typie, znajdujący się w okienku dialogowym. +
+


+

+
getPageById( pageID ) +
Zwraca typ: element wizardpage +
Zwraca element wizardpage przesyłając go do określonej pageID. +
+


+

+
+
+ goTo( pageID )
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Ta metoda jest stosowana do zmiany, która strona jest aktualnie wyświetlana, określona poprzez argument pageID. Strona będzie zmieniona niezależnie od własności canAdvance lub canRewind. Atrybuty onwizardback i onwizardnext nie są wywoływane podczas użycia tej metody.
+
+
+
+ rewind()
+
+ Zwraca typ: + + nie zwraca wartości +
+
+ Wywołaj tą metodę, aby przejść wstecz na stronie. Jest równoważna naciśnięciu przycisku Wstecz. Własność canRewind musi być ustawiona na true dla strony, która będzie zmieniona. Kod w atrybucie onwizardback jest wywołany przed zmianą strony.
+
+

+

Podobne

+

wizardpage +

+
+
diff --git a/files/pl/mozilla/tech/xul/wizardpage/index.html b/files/pl/mozilla/tech/xul/wizardpage/index.html new file mode 100644 index 0000000000..c6d87b2267 --- /dev/null +++ b/files/pl/mozilla/tech/xul/wizardpage/index.html @@ -0,0 +1,185 @@ +--- +title: wizardpage +slug: Mozilla/Tech/XUL/wizardpage +tags: + - Dokumentacja_XUL + - Elementy_XUL +translation_of: Archive/Mozilla/XUL/wizardpage +--- +
+ « Dokumentacja XUL [ + Przykłady | + Atrybuty | + Własności | + Metody | + Podobne ] +

Ten element definiuje stronę w elemencie wizard. Zawartość strony powinna być umieszczona wewnątrz elementu wizardpage. +

Dodatkowe informacje są dostępne w kursie XUL. +

+
Atrybuty +
description, label, next, onpageadvanced, onpagehide, onpagerewound, onpageshow, pageid +
+
Własności +
next, pageid +
+

Przykłady

+
<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<wizard id="theWizard" title="Secret Code Wizard"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+<script>
+function checkCode(){
+  document.getElementById('theWizard').canAdvance = (document.getElementById('secretCode').value == "cabbage");
+}
+</script>
+
+  <wizardpage onpageshow="checkCode();">
+       <label value="Enter the secret code:"/>
+       <textbox id="secretCode" onkeyup="checkCode();"/>
+  </wizardpage>
+
+  <wizardpage>
+       <label value="That is the correct secret code."/>
+  </wizardpage>
+
+</wizard>
+
+

Atrybuty

+

+

+ +
description +
Typ: string +
Tekst opisowy do wyświetlenia w dodatku do tytułu okienka dialogowego. +
+


+

+ + +
+
+ +
label +
Typ: string +
Etykieta, która zostanie wyświetlona na elemencie. Jeśli zostanie on usunięty, to żaden tekst nie zostanie wyświetlony.
+ + +
+
+ +
next +
Typ: id łańcucha znaków wizardpage +
Ustawia atrybut pageid następnej strony. Kiedy ustawia stronę z tym pageID to jest wyświetlana, kiedy przycisk <tt>Dalej</tt> zostanie naciśnięty. Może być stosowany do tworzenia kreatorów, które nie mają liniową kolejność. Jeśli jedna ze stron posiada atrybut next, wszystkie strony powinny mieć jeden taki atrybut, oprócz strony ostatniej. +
+


+

+ + +
+
+ +
+
+ onpageadvanced
+
+ Typ: + + kod skryptu +
+
+ Powinien być ustawiać kod, który jest wywoływany kiedy użytkownik naciśnie przycisk Dalej, podczas pobytu na bieżącej stronie. Zwraca true pozwalając następnej stronie na wyświetlenie sie i zwraca false nie pozwalając na przejście do następnej strony.
+
+
+
+ +
onpagehide +
Typ: kod skryptu +
Kod w tym atrybucie jest wywołany kiedy strona jest ukryta, tak jak w momencie przenoszenia do kolejnej strony. Zwraca true, aby zaakceptować zmiany na stronie i false, aby zapobiec zmianom na stronie. Kod jest wywoływany zanim wizard wywoła funkcję onwizardnext lub powiązaną. +
+


+

+ + +
+
+ +
+
+ onpagerewound
+
+ Typ: + + kod skryptu +
+
+ Powinien być ustawiony na kod, który wywołany jest, kiedy użytkownik naciśnie przycisk Wstecz na aktualnie przeglądanej stronie. Zwraca true, aby pozwolić poprzedniej stronie na wyświetlenie się i false, aby odrzucić przejście do następnej strony.
+
+
+
+ +
+
+ onpageshow
+
+ Typ: + + kod skryptu +
+
+ Kod w tym atrybucie jest wywoływany, kiedy strona jest pokazywana.
+
+
+
+ +
+
+ pageid
+
+ Typ: + + id łańcucha znaków wizardpage +
+
+ Atrybut powinien być ustawiony na łańcuch znaków, który identyfikuje identyfikator stron w kreatorze ( wizard). Stosowany z atrybutem next. Kreator zawsze zaczyna z wizardpage, który pojawia się pierwszy w kreatorze na liście potomnych.
+
+
+

+

Własności

+

+
+
+ next
+
+ Typ: + + id łańcucha znaków wizardpage +
+
+ Ustawia pageid następnej strony znajdującą się zaraz po tej. Kiedy ustawimy stronę z własnością pageID jest ona wyświetlona kiedy przycisk Dalej jest naciśnięty. Może być użyty do tworzenia kreatorów, które nie posiadają liniowej kolejności. Jeśli jedna ze stron posiada atrybut next, to będą posiadały go także wszystkie pozostałe oprócz ostatniej strony.
+
+
+
+
+ pageid
+
+ Typ: + + id łańcucha znaków wizardpage +
+
+ Ten atrybut powinien być ustawiony na łańcuch znaków, który identyfikuje strony identyfikatorem wizard. Jest stosowany z atrybutem next. Kreator zawsze startuje z wizardpage, który pojawia się pierwszy na liście potomnych kreatora.
+
+ +

Dziedziczy z elementu XUL
align, , allowEvents, , boxObject, builder, , , , className, , , , , collapsed, contextMenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxHeight, maxWidth, menu, minHeight, minWidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statusText, style, ,, tooltip, tooltipText, top, width

+

+

Metody

+

+

Dziedziczy z elementu XUL
blur, click, doCommand, focus, getElementsByAttribute

Dziedziczy z elementu DOM
addEventListener(), appendChild(), dispatchEvent(), getAttribute(), getAttributeNode(), getAttributeNodeNS(), getAttributeNS(), getElementsByTagName(), getElementsByTagNameNS(), hasAttribute(), hasAttributeNS(), hasAttributes(), hasChildNodes(), insertBefore(), isSupported(), normalize(), removeAttribute(), removeAttributeNode(), removeAttributeNS(), removeChild(), removeEventListener(), replaceChild(), setAttribute(), setAttributeNode(), setAttributeNodeNS(), setAttributeNS()

+

+

Podobne

+

wizard +

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accessible/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accessible/index.html" new file mode 100644 index 0000000000..cc58a76cab --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accessible/index.html" @@ -0,0 +1,20 @@ +--- +title: accessible +slug: Mozilla/Tech/XUL/Własność/accessible +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/accessible +--- +
+ « Dokumentacja XUL
+
+
+ accessible
+
+ Typ: + + nsIAccessible +
+
+ Zwraca obiekt dostępności dla elementu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accesskey/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accesskey/index.html" new file mode 100644 index 0000000000..fa4ff0a3b3 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/accesskey/index.html" @@ -0,0 +1,20 @@ +--- +title: accessKey +slug: Mozilla/Tech/XUL/Własność/accessKey +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/accessKey +--- +
+ « Dokumentacja XUL
+
+
+ accessKey
+
+ Typ: + + znak +
+
+ Pobiera i ustawia wartość atrybutu accesskey.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/align/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/align/index.html" new file mode 100644 index 0000000000..8db38eb9af --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/align/index.html" @@ -0,0 +1,20 @@ +--- +title: align +slug: Mozilla/Tech/XUL/Własność/align +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/align +--- +
+ « Dokumentacja XUL
+
+
+ align
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu align.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/allowevents/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/allowevents/index.html" new file mode 100644 index 0000000000..b3ab5c7671 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/allowevents/index.html" @@ -0,0 +1,20 @@ +--- +title: allowEvents +slug: Mozilla/Tech/XUL/Własność/allowEvents +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/allowEvents +--- +
+ « Dokumentacja XUL
+
+
+ allowEvents
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu allowevents.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/alwaysopenpopup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/alwaysopenpopup/index.html" new file mode 100644 index 0000000000..68a0ec17ac --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/alwaysopenpopup/index.html" @@ -0,0 +1,20 @@ +--- +title: alwaysOpenPopup +slug: Mozilla/Tech/XUL/Własność/alwaysOpenPopup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/alwaysOpenPopup +--- +
+ « Dokumentacja XUL
+
+
+ alwaysOpenPopup
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu alwaysopenpopup.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/amindicator/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/amindicator/index.html" new file mode 100644 index 0000000000..edf2ecf66b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/amindicator/index.html" @@ -0,0 +1,13 @@ +--- +title: amIndicator +slug: Mozilla/Tech/XUL/Własność/amIndicator +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/amIndicator +--- +
« Dokumentacja XUL
+
amIndicator +
Typ: string +
Wartość łańcucha znaków wyświetlana dla godzin pomiędzy północą a południem, domyślnie jest to AM. Ta wartość określa się w zależności od czasu lokalnego użytkownika.
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/applocale/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/applocale/index.html" new file mode 100644 index 0000000000..81a5214ff3 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/applocale/index.html" @@ -0,0 +1,25 @@ +--- +title: appLocale +slug: Mozilla/Tech/XUL/Własność/appLocale +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/appLocale +--- +
+ « Dokumentacja XUL
+
+
+ appLocale
+
+ Typ: nsILocale
+
+ Zwraca obiekt XPCOM, który przechowuje informacje o lokalnych użytkownikach. To jest obiekt, który implementuje nsILocale.
+
+ + +
+

+
Gecko 1.9.1 note
+
This property was removed in Gecko 1.9.1.
+

+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autocheck/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autocheck/index.html" new file mode 100644 index 0000000000..6ba8093107 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autocheck/index.html" @@ -0,0 +1,20 @@ +--- +title: autoCheck +slug: Mozilla/Tech/XUL/Własność/autoCheck +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/autoCheck +--- +
+ « Dokumentacja XUL
+
+
+ autoCheck
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoCheck.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofill/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofill/index.html" new file mode 100644 index 0000000000..8c742f9cff --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofill/index.html" @@ -0,0 +1,20 @@ +--- +title: autoFill +slug: Mozilla/Tech/XUL/Własność/autoFill +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/autoFill +--- +
+ « Dokumentacja XUL
+
+
+ autoFill
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoFill.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofillaftermatch/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofillaftermatch/index.html" new file mode 100644 index 0000000000..195fa2dd3e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/autofillaftermatch/index.html" @@ -0,0 +1,20 @@ +--- +title: autoFillAfterMatch +slug: Mozilla/Tech/XUL/Własność/autoFillAfterMatch +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/autoFillAfterMatch +--- +
+ « Dokumentacja XUL
+
+
+ autoFillAfterMatch
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu autoFillAfterMatch.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browser.preferences/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browser.preferences/index.html" new file mode 100644 index 0000000000..751f2f2c51 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browser.preferences/index.html" @@ -0,0 +1,16 @@ +--- +title: browser.preferences +slug: Mozilla/Tech/XUL/Własność/browser.preferences +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/browser.preferences +--- +
« Dokumentacja XUL
+
preferences +
Typ: nsIPrefService +
Własność tylko do odczytu zawierająca obiekt nsIPref służący do pobierania i ustawiania właściwości użytkownika. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browsers/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browsers/index.html" new file mode 100644 index 0000000000..59c70ecd42 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/browsers/index.html" @@ -0,0 +1,20 @@ +--- +title: browsers +slug: Mozilla/Tech/XUL/Własność/browsers +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/browsers +--- +
+ « Dokumentacja XUL
+
+
+ browsers
+
+ Typ: + + lista (nodelist) elementu browser +
+
+ Przechowuje listę elementów browser wewnątrz tabbrowser.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/builderview/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/builderview/index.html" new file mode 100644 index 0000000000..ba77e41544 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/builderview/index.html" @@ -0,0 +1,20 @@ +--- +title: builderView +slug: Mozilla/Tech/XUL/Własność/builderView +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/builderView +--- +
+ « Dokumentacja XUL
+
+
+ builderView
+
+ Typ: + + nsIXULTreeBuilder +
+
+ Referencja do budowniczego drzewa, który konstruuje dane tree. Budowniczy dostarcza dostęp do źródeł RDF dla każdego wiersza w drzewie i pozwala sortować danymi w kolumnie. W nowszej wersji Mozilli, własność builderView jest aktualnie synonimem dla własności view, od dwóch interfejsów są spłaszczone razem aż do pojedynczego interfejsu w JavaScript. Ta własność jest tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/buttons/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/buttons/index.html" new file mode 100644 index 0000000000..065063d36c --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/buttons/index.html" @@ -0,0 +1,22 @@ +--- +title: buttons +slug: Mozilla/Tech/XUL/Własność/buttons +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/buttons +--- +
« Dokumentacja XUL
+
buttons +
Typ: rozdzielona przecinkami lista poniższych wartości +
Rozdzielona przecinkami lista przycisków do wyświetlenia w okienku dialogowym. Przyciski zostaną umieszczone w odpowiednim miejscu w zależności od platformy systemowej użytkownika, a podstawowa obsługa zdarzeń zostanie wykonana automatycznie. Następujące wartości mogą zostać użyte w tej liście: +
+ +


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canadvance/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canadvance/index.html" new file mode 100644 index 0000000000..b197f35829 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canadvance/index.html" @@ -0,0 +1,20 @@ +--- +title: canAdvance +slug: Mozilla/Tech/XUL/Własność/canAdvance +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/canAdvance +--- +
+ « Dokumentacja XUL
+
+
+ canAdvance
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true, jeśli użytkownik naciśnie przycisk 'Dalej', aby przejść do następnej strony. Jeśli ta własność jest ustawiona na false, użytkownik nie może przejść do następnej strony. Ustaw tą własność na true, aby zasygnalizować, że użytkownik może przejść do następnej strony. Ustawiając własność na false, przejście do następnej strony zostanie odrzucone (zabronione). Możemy to zobaczyć poprzez włączony lub wyłączony przycisk 'Dalej' lub na ostatniej stronie kreatora będzie umieszczony przycisk 'Zakończ'.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoback/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoback/index.html" new file mode 100644 index 0000000000..0e0741fc01 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoback/index.html" @@ -0,0 +1,14 @@ +--- +title: canGoBack +slug: Mozilla/Tech/XUL/Własność/canGoBack +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/canGoBack +--- +
« Dokumentacja XUL
+
canGoBack +
Typ: boolean +
Własność tylko do odczytu ma wartość true, jeśli istnieje strona w historii sesji, do której można się cofnąć, a przycisk 'Wstecz' powinien być dostępny. +
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoforward/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoforward/index.html" new file mode 100644 index 0000000000..b98dd04cd9 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/cangoforward/index.html" @@ -0,0 +1,20 @@ +--- +title: canGoForward +slug: Mozilla/Tech/XUL/Własność/canGoForward +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/canGoForward +--- +
+ « Dokumentacja XUL
+
+
+ canGoForward
+
+ Typ: + + boolean +
+
+ Własność tylko do odczytu ma wartość true, jeśli istnieje strona w historii sesji, do której można przejść, a przycisk 'Do przodu' powinien być dostępny.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canrewind/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canrewind/index.html" new file mode 100644 index 0000000000..f02fb7fdba --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/canrewind/index.html" @@ -0,0 +1,14 @@ +--- +title: canRewind +slug: Mozilla/Tech/XUL/Własność/canRewind +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/canRewind +--- +
« Dokumentacja XUL
+
canRewind +
Typ: boolean +
Ta własność jest ustawiona na true, jeśli użytkownik może nacisnąć przycisk Wstecz, aby przejść do poprzedniej strony. Jeśli własność jest false, użytkownik nie będzie mógł przejść do poprzedniej strony. Ustaw tą własność na true, aby zasygnalizować, że użytkownik może przejść do poprzedniej strony. Ustaw na false, aby nie pozwolić na przeniesienie do poprzedniej strony. Posiada efekt włączonego lub wyłączonego przycisku Wstecz. +
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checked/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checked/index.html" new file mode 100644 index 0000000000..8e7364ee81 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checked/index.html" @@ -0,0 +1,16 @@ +--- +title: checked +slug: Mozilla/Tech/XUL/Własność/checked +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/checked +--- +
« Dokumentacja XUL
+
checked +
Typ: boolean +
Pobiera i ustawia wartość atrybutu checked. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checkstate/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checkstate/index.html" new file mode 100644 index 0000000000..76771c9479 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/checkstate/index.html" @@ -0,0 +1,16 @@ +--- +title: checkState +slug: Mozilla/Tech/XUL/Własność/checkState +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/checkState +--- +
« Dokumentacja XUL
+
checkState +
Typ: integer, wartości 0, 1 lub 2 +
Pobiera i ustawia wartość atrybutu checkState. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/child/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/child/index.html" new file mode 100644 index 0000000000..655237b6c1 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/child/index.html" @@ -0,0 +1,16 @@ +--- +title: child +slug: Mozilla/Tech/XUL/Własność/child +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/child +--- +
« Dokumentacja XUL
+
child +
Typ: ? +
Zmienna odwołująca się do węzła, który jest oczekiwanym elementem potomnym, który jest kierowany poprzez element kontenera. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/children/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/children/index.html" new file mode 100644 index 0000000000..24d74ba15b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/children/index.html" @@ -0,0 +1,20 @@ +--- +title: children +slug: Mozilla/Tech/XUL/Własność/children +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/children +--- +
+ « Dokumentacja XUL
+
+
+ children
+
+ Typ: + + tablica elementów +
+
+ Zwraca listę pozycji w richlistbox.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/classname/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/classname/index.html" new file mode 100644 index 0000000000..25ff08f698 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/classname/index.html" @@ -0,0 +1,20 @@ +--- +title: className +slug: Mozilla/Tech/XUL/Własność/className +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/className +--- +
+ « Dokumentacja XUL
+
+
+ className
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu class.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/clickselectsall/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/clickselectsall/index.html" new file mode 100644 index 0000000000..24c64b4f79 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/clickselectsall/index.html" @@ -0,0 +1,16 @@ +--- +title: clickSelectsAll +slug: Mozilla/Tech/XUL/Własność/clickSelectsAll +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/clickSelectsAll +--- +
« Dokumentacja XUL
+
clickSelectsAll +
Typ: boolean +
Jeśli jest ustawiony na true zawartość pola tekstowego zostanie zaznaczona kiedy stanie się on aktywny, inaczej kursor pozostanie niezmieniony. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/collapsed/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/collapsed/index.html" new file mode 100644 index 0000000000..9d7906a2a0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/collapsed/index.html" @@ -0,0 +1,20 @@ +--- +title: collapsed +slug: Mozilla/Tech/XUL/Własność/collapsed +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/collapsed +--- +
+ « Dokumentacja XUL
+
+
+ collapsed
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu collapsed.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/color/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/color/index.html" new file mode 100644 index 0000000000..c9a3065c51 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/color/index.html" @@ -0,0 +1,20 @@ +--- +title: color +slug: Mozilla/Tech/XUL/Własność/color +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/color +--- +
+ « Dokumentacja XUL
+
+
+ color
+
+ Typ: + + kolor jako łańcuch znaków +
+
+ Aktualnie wybrany kolor. Ulega modyfikacji kiedy użytkownik zaznaczy inną wartość koloru. Łańcuch znaków koloru przydzielamy w formie #RRGGBB do tej własności, aby zmienić wybrany kolor.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/columns/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/columns/index.html" new file mode 100644 index 0000000000..20536f3769 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/columns/index.html" @@ -0,0 +1,20 @@ +--- +title: columns +slug: Mozilla/Tech/XUL/Własność/columns +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/columns +--- +
+ « Dokumentacja XUL
+
+
+ columns
+
+ Typ: + + nsITreeColumns +
+
+ Zwraca kolumny dla drzewa jako obiekt nsITreeColumns.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/command/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/command/index.html" new file mode 100644 index 0000000000..8786e56113 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/command/index.html" @@ -0,0 +1,20 @@ +--- +title: command +slug: Mozilla/Tech/XUL/Własność/command +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/command +--- +
+ « Dokumentacja XUL
+
+
+ command
+
+ Typ: + + element id +
+
+ Pobiera i ustawia wartość atrybutu command.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/commandmanager/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/commandmanager/index.html" new file mode 100644 index 0000000000..f37683afa4 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/commandmanager/index.html" @@ -0,0 +1,20 @@ +--- +title: commandManager +slug: Mozilla/Tech/XUL/Własność/commandManager +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/commandManager +--- +
+ « Dokumentacja XUL
+
+
+ commandManager
+
+ Typ: + + nsICommandManager +
+
+ Menedżer poleceń pozwalający na dokonywanie operacji w edytorze.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/completedefaultindex/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/completedefaultindex/index.html" new file mode 100644 index 0000000000..1fe8d0ce20 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/completedefaultindex/index.html" @@ -0,0 +1,20 @@ +--- +title: completeDefaultIndex +slug: Mozilla/Tech/XUL/Własność/completeDefaultIndex +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/completeDefaultIndex +--- +
+ « Dokumentacja XUL
+
+
+ completeDefaultIndex
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu completedefaultindex.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentdocument/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentdocument/index.html" new file mode 100644 index 0000000000..db0db1b764 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentdocument/index.html" @@ -0,0 +1,16 @@ +--- +title: contentDocument +slug: Mozilla/Tech/XUL/Własność/contentDocument +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/contentDocument +--- +
« Dokumentacja XUL
+
contentDocument +
Typ: document +
Własność tylko do odczytu zawierająca obiekt dokumentu w danym elemencie. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contenttitle/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contenttitle/index.html" new file mode 100644 index 0000000000..445434ee7b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contenttitle/index.html" @@ -0,0 +1,16 @@ +--- +title: contentTitle +slug: Mozilla/Tech/XUL/Własność/contentTitle +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/contentTitle +--- +
« Dokumentacja XUL
+
contentTitle +
Typ: string +
Własność tylko do odczytu zawierająca tytuł obiektu dokumentu w przeglądarce. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentvieweredit/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentvieweredit/index.html" new file mode 100644 index 0000000000..8546b92003 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentvieweredit/index.html" @@ -0,0 +1,16 @@ +--- +title: contentViewerEdit +slug: Mozilla/Tech/XUL/Własność/contentViewerEdit +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/contentViewerEdit +--- +
« Dokumentacja XUL
+
contentViewerEdit +
Typ: nsIContentViewerEdit +
Własność tylko do odczytu zawierająca nsIContentViewerEdit, który zajmuje się operacjami związanymi ze schowkiem w danym dokumencie. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentviewerfile/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentviewerfile/index.html" new file mode 100644 index 0000000000..62404bd566 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentviewerfile/index.html" @@ -0,0 +1,16 @@ +--- +title: contentViewerFile +slug: Mozilla/Tech/XUL/Własność/contentViewerFile +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/contentViewerFile +--- +
« Dokumentacja XUL
+
contentViewerFile +
Typ: nsIContentViewerFile +
Referencja do interfejsu nsIContentViewerFile dla dokumentu. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentwindow/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentwindow/index.html" new file mode 100644 index 0000000000..751e00915d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contentwindow/index.html" @@ -0,0 +1,18 @@ +--- +title: contentWindow +slug: Mozilla/Tech/XUL/Własność/contentWindow +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/contentWindow +--- +
+ « Dokumentacja XUL
+
+
+ contentWindow
+
+ Typ: window
+
+ Własność tylko do odczytu zawierająca obiekt okna w elemencie.
+
+

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contextmenu/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contextmenu/index.html" new file mode 100644 index 0000000000..487cece972 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/contextmenu/index.html" @@ -0,0 +1,17 @@ +--- +title: contextMenu +slug: Mozilla/Tech/XUL/Własność/contextMenu +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/contextMenu +--- +
« Dokumentacja XUL
+
contextMenu +
Typ: id elementu popup +
Pobiera i ustawia wartość atrybutu contextmenu. +
+


+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/control/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/control/index.html" new file mode 100644 index 0000000000..c94de49ed6 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/control/index.html" @@ -0,0 +1,23 @@ +--- +title: control +slug: Mozilla/Tech/XUL/Własność/control +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/control +--- +
+ « Dokumentacja XUL
+
+
+ control<magic name="\"PAGENAME\"/"></magic>
+
+

+
+
+ Typ: + + id elementu +
+
+ Pobiera i ustawia wartość atrybutu control.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/controller/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/controller/index.html" new file mode 100644 index 0000000000..9ff02a89f7 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/controller/index.html" @@ -0,0 +1,20 @@ +--- +title: controller +slug: Mozilla/Tech/XUL/Własność/controller +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/controller +--- +
+ « Dokumentacja XUL
+
+
+ controller
+
+ Typ: + + nsIAutoCompleteController +
+
+ Zwraca kontener dla automatycznego uzupełnienia elementu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/crop/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/crop/index.html" new file mode 100644 index 0000000000..c2791ed34f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/crop/index.html" @@ -0,0 +1,20 @@ +--- +title: crop +slug: Mozilla/Tech/XUL/Własność/crop +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/crop +--- +
+ « Dokumentacja XUL
+
+
+ crop
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu crop.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/current/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/current/index.html" new file mode 100644 index 0000000000..ad28afc641 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/current/index.html" @@ -0,0 +1,20 @@ +--- +title: current +slug: Mozilla/Tech/XUL/Własność/current +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/current +--- +
+ « Dokumentacja XUL
+
+
+ current
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu current.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentindex/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentindex/index.html" new file mode 100644 index 0000000000..5aaab3d796 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentindex/index.html" @@ -0,0 +1,44 @@ +--- +title: currentIndex +slug: Mozilla/Tech/XUL/Własność/currentIndex +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentIndex +--- +
« Dokumentacja XUL
+
currentIndex +
Typ: integer +
Ustawia indeks bieżącego aktywnego wiersza w tree (drzewie). Jeśli jest brak aktywnego wiersza, wartość będzie -1. Dla wielu zaznaczeń drzew, bieżącym indeksem jest ostatnio zaznaczony wiersz. Nie stosuj tej własności do zmiany zaznaczenia. Zamiast stosować metody obiektu nsITreeSelection dostępnego przez tree.view.selection. +
+
+
// One way of retrieving the text of a cell.
+<script language ="javascript">
+function treeRowClicked(){
+    var tree = Id("my-tree");
+    var selection = tree.contentView.getItemAtIndex( tree.currentIndex );
+    var foo = selection.firstChild.firstChild.getAttribute("label");
+    alert(foo);
+}
+</script>
+
+<tree id="my-tree" seltype="single" onselect="treeRowClicked()">
+  <treecols>
+    <treecol label="Title" flex="1"/><treecol label="URL" flex="1"/>
+  </treecols>
+  <treechildren>
+    <treeitem>
+      <treerow>
+        <treecell label="joe@somewhere.com"/>
+        <treecell label="Ściśle tajne plany"/>
+      </treerow>
+    </treeitem>
+    <treeitem>
+      <treerow>
+        <treecell label="mel@whereever.com"/>
+        <treecell label="Zróbmy obiad"/>
+      </treerow>
+    </treeitem>
+  </treechildren>
+</tree>
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentitem/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentitem/index.html" new file mode 100644 index 0000000000..0afddb6096 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentitem/index.html" @@ -0,0 +1,20 @@ +--- +title: currentItem +slug: Mozilla/Tech/XUL/Własność/currentItem +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentItem +--- +
+ « Dokumentacja XUL
+
+
+ currentItem
+
+ Typ: + + element listitem +
+
+ Zwraca ostatnią zaznaczona pozycję na liście, która jest użyteczna w listach wielokrotnego zaznaczenia.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentnotification/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentnotification/index.html" new file mode 100644 index 0000000000..fc6c10d121 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentnotification/index.html" @@ -0,0 +1,20 @@ +--- +title: currentNotification +slug: Mozilla/Tech/XUL/Własność/currentNotification +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentNotification +--- +
+ « Dokumentacja XUL
+
+
+ currentNotification
+
+ Typ: + + element powiadomienia +
+
+ Aktualnie wyświetlany element notification lub null. Własność tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpage/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpage/index.html" new file mode 100644 index 0000000000..ec74cd8e94 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpage/index.html" @@ -0,0 +1,20 @@ +--- +title: currentPage +slug: Mozilla/Tech/XUL/Własność/currentPage +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentPage +--- +
+ « Dokumentacja XUL
+
+
+ currentPage
+
+ Typ: + + element wizardpage +
+
+ Wartość zwraca element kreatora (wizardpage), który jest aktualnie wyświetlany. Możemy modyfikować tą wartość, aby zmienić aktualną stronę.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpane/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpane/index.html" new file mode 100644 index 0000000000..820aa46848 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentpane/index.html" @@ -0,0 +1,16 @@ +--- +title: currentPane +slug: Mozilla/Tech/XUL/Własność/currentPane +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentPane +--- +
« Dokumentacja XUL
+
currentPane +
Typ: element prefpane +
Odniesienie do aktualnie wyświetlanego okna. Aby zmienić bieżące okno zastosuj metodę showPane. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentset/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentset/index.html" new file mode 100644 index 0000000000..65a3ec83b6 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currentset/index.html" @@ -0,0 +1,28 @@ +--- +title: currentSet +slug: Mozilla/Tech/XUL/Własność/currentSet +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentSet +--- +
+ « Dokumentacja XUL
+
+
+ currentSet
+
+ Tylko w Firefoksie
+
+ Typ: + + lista łańcuchów znaków oddzielona przecinkami +
+
+ Trzyma aktualną listę ID pozycji oddzielonych przecinkiem na pasku narzędzi. Dla pustych przestrzeni, separatorów i elastycznych pustych przestrzeni stosowane są zamiast nich łańcuchy znaków będące unikalnymi identyfikatorami ID: "spacer", "separator", "spring". Pusty pasek narzędzi posiada wartość currentSet jaką jest "__empty".
+
+
+
+ Możemy zmienić aktualne ustawienia pozycji przez ustawienie własności. Bądź ostrożny, jak ustawiasz tą własność to automatycznie nie jest aktualizowany atrybut currentset.
+
+
+  
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currenturi/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currenturi/index.html" new file mode 100644 index 0000000000..72453ca0fd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/currenturi/index.html" @@ -0,0 +1,16 @@ +--- +title: currentURI +slug: Mozilla/Tech/XUL/Własność/currentURI +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/currentURI +--- +
« Dokumentacja XUL
+
currentURI +
Typ: nsIURI +
Własność tylko do odczytu zawierająca aktualnie wczytany adres URL. Aby zmienić adres URL, należy zastosować metodę loadURI. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/customtoolbarcount/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/customtoolbarcount/index.html" new file mode 100644 index 0000000000..01486d5bfd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/customtoolbarcount/index.html" @@ -0,0 +1,22 @@ +--- +title: customToolbarCount +slug: Mozilla/Tech/XUL/Własność/customToolbarCount +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/customToolbarCount +--- +
+ « Dokumentacja XUL
+
+
+ customToolbarCount
+
+ Tylko Firefox
+
+ Typ: + + integer +
+
+ Liczba pasków narzędzi (toolbar) użytkownika aktualnie znajdująca się wewnątrz toolbox.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/date/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/date/index.html" new file mode 100644 index 0000000000..67daa827bd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/date/index.html" @@ -0,0 +1,17 @@ +--- +title: date +slug: Mozilla/Tech/XUL/Własność/date +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/date +--- +
+ « Dokumentacja XUL
+
+
+ date
+
+ Typ: integer
+
+ Aktualnie zaznaczona data dnia miesiąca od 1 do 31. Ustaw tą własność do zmiany zaznaczonej daty.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dateleadingzero/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dateleadingzero/index.html" new file mode 100644 index 0000000000..cb90fb8130 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dateleadingzero/index.html" @@ -0,0 +1,17 @@ +--- +title: dateLeadingZero +slug: Mozilla/Tech/XUL/Własność/dateLeadingZero +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/dateLeadingZero +--- +
+ « Dokumentacja XUL
+
+
+ dateLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed datą zanim jest ona mniejsza niż 10.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/datevalue/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/datevalue/index.html" new file mode 100644 index 0000000000..ae3e276431 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/datevalue/index.html" @@ -0,0 +1,17 @@ +--- +title: dateValue +slug: Mozilla/Tech/XUL/Własność/dateValue +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/dateValue +--- +
+ « Dokumentacja XUL
+
+
+ dateValue
+
+ Typ: Date
+
+ Data, która jest aktualnie wprowadzana lub zaznaczona w datepicker jako obiekt Date.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/decimalplaces/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/decimalplaces/index.html" new file mode 100644 index 0000000000..c02a1212d0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/decimalplaces/index.html" @@ -0,0 +1,16 @@ +--- +title: decimalPlaces +slug: Mozilla/Tech/XUL/Własność/decimalPlaces +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/decimalPlaces +--- +
« Dokumentacja XUL
+
decimalPlaces +
Typ: integer +
Pobiera i ustawia wartość atrybutu decimalplaces. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/deck.selectedpanel/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/deck.selectedpanel/index.html" new file mode 100644 index 0000000000..76c904c387 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/deck.selectedpanel/index.html" @@ -0,0 +1,16 @@ +--- +title: deck.selectedPanel +slug: Mozilla/Tech/XUL/Własność/deck.selectedPanel +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/deck.selectedPanel +--- +
« Dokumentacja XUL
+
selectedPanel +
Typ: element +
Przechowuje referencję do aktualnie zaznaczonego panelu wewnątrz elementu <deck>. Przypisanie wartości do tej własności zmienia zaznaczony panel. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultbutton/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultbutton/index.html" new file mode 100644 index 0000000000..250acdedc5 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultbutton/index.html" @@ -0,0 +1,20 @@ +--- +title: defaultButton +slug: Mozilla/Tech/XUL/Własność/defaultButton +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/defaultButton +--- +
+ « Dokumentacja XUL
+
+
+ defaultButton
+
+ Typ: + + string +
+
+ Zwykle nie powinno się ustawiać tej własności. Określa ona domyślny przycisk w oknie dialogowym. Zazwyczaj oznacza to, że przycisk zostanie aktywowany po naciśnięciu klawisza Enter. Własności tej powinna być przypisana jedna z wartości używanych przez atrybut buttons.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultvalue/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultvalue/index.html" new file mode 100644 index 0000000000..3d6cddbc4e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/defaultvalue/index.html" @@ -0,0 +1,16 @@ +--- +title: defaultValue +slug: Mozilla/Tech/XUL/Własność/defaultValue +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/defaultValue +--- +
« Dokumentacja XUL
+
defaultValue +
Typ: string +
Pobiera i ustawia domyślną wartość pola tekstowego.
+


+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/description/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/description/index.html" new file mode 100644 index 0000000000..7800567b01 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/description/index.html" @@ -0,0 +1,20 @@ +--- +title: description +slug: Mozilla/Tech/XUL/Własność/description +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/description +--- +
+ « Dokumentacja XUL
+
+
+ description
+
+ Typ: + + string +
+
+ Ustawia opis aktualnie zaznaczonej pozycji menuitem.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dir/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dir/index.html" new file mode 100644 index 0000000000..05295f2bea --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dir/index.html" @@ -0,0 +1,20 @@ +--- +title: dir +slug: Mozilla/Tech/XUL/Własność/dir +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/dir +--- +
+ « Dokumentacja XUL
+
+
+ dir
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu dir.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautocomplete/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautocomplete/index.html" new file mode 100644 index 0000000000..ee610b9a35 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautocomplete/index.html" @@ -0,0 +1,20 @@ +--- +title: disableAutoComplete +slug: Mozilla/Tech/XUL/Własność/disableAutoComplete +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/disableAutocomplete +--- +
+ « Dokumentacja XUL
+
+
+ disableAutoComplete
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disableautocomplete.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautoselect/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautoselect/index.html" new file mode 100644 index 0000000000..4c6af95b31 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disableautoselect/index.html" @@ -0,0 +1,20 @@ +--- +title: disableautoselect +slug: Mozilla/Tech/XUL/Własność/disableautoselect +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/disableautoselect +--- +
+ « Dokumentacja XUL
+
+
+ disableautoselect
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disableautoselect.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disabled/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disabled/index.html" new file mode 100644 index 0000000000..5e3148bb87 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disabled/index.html" @@ -0,0 +1,20 @@ +--- +title: disabled +slug: Mozilla/Tech/XUL/Własność/disabled +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/disabled +--- +
+ « Dokumentacja XUL
+
+
+ disabled
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu disabled.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disablekeynavigation/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disablekeynavigation/index.html" new file mode 100644 index 0000000000..1f005f4c3b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/disablekeynavigation/index.html" @@ -0,0 +1,20 @@ +--- +title: disableKeyNavigation +slug: Mozilla/Tech/XUL/Własność/disableKeyNavigation +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/disableKeyNavigation +--- +
+ « Dokumentacja XUL
+
+
+ disableKeyNavigation
+
+ Typ: + + boolean +
+
+ Pobiera lub ustawia wartość atrybutu disableKeyNavigation.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dlgtype/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dlgtype/index.html" new file mode 100644 index 0000000000..8034e511e1 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/dlgtype/index.html" @@ -0,0 +1,20 @@ +--- +title: dlgType +slug: Mozilla/Tech/XUL/Własność/dlgType +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/dlgType +--- +
+ « Dokumentacja XUL
+
+
+ dlgType
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu dlgType.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/docshell/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/docshell/index.html" new file mode 100644 index 0000000000..a86c099297 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/docshell/index.html" @@ -0,0 +1,14 @@ +--- +title: docShell +slug: Mozilla/Tech/XUL/Własność/docShell +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/docShell +--- +
« Dokumentacja XUL
+
docShell +
Typ: nsIDocShell +
Własność tylko do odczytu zawierająca obiekt nsIDocShell dla dokumentu. +
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/documentcharsetinfo/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/documentcharsetinfo/index.html" new file mode 100644 index 0000000000..33768adb73 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/documentcharsetinfo/index.html" @@ -0,0 +1,16 @@ +--- +title: documentCharsetInfo +slug: Mozilla/Tech/XUL/Własność/documentCharsetInfo +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/documentCharsetInfo +--- +
« Dokumentacja XUL
+
documentCharsetInfo +
Typ: nsIDocumentCharsetInfo +
Własność tylko do odczytu zawierająca obiekt nsIDocumentCharsetInfo dla dokumentu, stosowany do określenia, które kodowanie znaków powinno być zastosowane do wyświetlenia dokumentu. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editable/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editable/index.html" new file mode 100644 index 0000000000..98823dc757 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editable/index.html" @@ -0,0 +1,20 @@ +--- +title: editable +slug: Mozilla/Tech/XUL/Własność/editable +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/editable +--- +
+ « Dokumentacja XUL
+
+
+ editable
+
+ Typ: + + boolean +
+
+ Pola automatycznie uzupełniane są edytowalne, więc ta własność zwróci true.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editingsession/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editingsession/index.html" new file mode 100644 index 0000000000..6b8c0e35be --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editingsession/index.html" @@ -0,0 +1,16 @@ +--- +title: editingSession +slug: Mozilla/Tech/XUL/Własność/editingSession +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/editingSession +--- +
« Dokumentacja XUL
+
editingSession +
Typ: nsIEditingSession +
Sesja edycji dla edytora, używana do zainicjowania edytora. Zazwyczaj korzystanie z tej własności nie jest konieczne. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editor/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editor/index.html" new file mode 100644 index 0000000000..07d7431f88 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editor/index.html" @@ -0,0 +1,20 @@ +--- +title: editor +slug: Mozilla/Tech/XUL/Własność/editor +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/editor +--- +
+ « Dokumentacja XUL
+
+
+ editor
+
+ Typ: + + nsIEditor +
+
+ Odwołanie do nsIEditor dla edytowanego tekstu. Własność tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editortype/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editortype/index.html" new file mode 100644 index 0000000000..d085365eec --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/editortype/index.html" @@ -0,0 +1,19 @@ +--- +title: editortype +slug: Mozilla/Tech/XUL/Własność/editortype +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/editortype +--- +
« Dokumentacja XUL
+
editortype +
Typ: jedna z wartości poniżej +
Typ edytora do zastosowania. Ta wartość będzie przesłonięta w zależności od typu dokumentu załadowanego w edytorze. +
+ +


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/enablecolumndrag/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/enablecolumndrag/index.html" new file mode 100644 index 0000000000..74ea0c1c99 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/enablecolumndrag/index.html" @@ -0,0 +1,20 @@ +--- +title: enableColumnDrag +slug: Mozilla/Tech/XUL/Własność/enableColumnDrag +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/enableColumnDrag +--- +
+ « Dokumentacja XUL
+
+
+ enableColumnDrag
+
+ Typ: + + boolean +
+
+ Kiedy ustawimy na true, użytkownik przesunie nagłówki kolumny, aby zmienić kolejność w jakiej są one wyświetlane.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstordinalcolumn/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstordinalcolumn/index.html" new file mode 100644 index 0000000000..fbbf225b5d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstordinalcolumn/index.html" @@ -0,0 +1,20 @@ +--- +title: firstOrdinalColumn +slug: Mozilla/Tech/XUL/Własność/firstOrdinalColumn +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/firstOrdinalColumn +--- +
+ « Dokumentacja XUL
+
+
+ firstOrdinalColumn
+
+ Typ: + + element treecol +
+
+ Referencja do elementu treecol, który nie musi być pierwszą kolumną wyświetlaną w drzewie.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstpermanentchild/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstpermanentchild/index.html" new file mode 100644 index 0000000000..afe22dc51b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/firstpermanentchild/index.html" @@ -0,0 +1,22 @@ +--- +title: firstPermanentChild +slug: Mozilla/Tech/XUL/Własność/firstPermanentChild +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/firstPermanentChild +--- +
+ « Dokumentacja XUL
+
+
+ firstPermanentChild
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ Pierwszy trwały element potomny paska narzędzi toolbar. Trwały potomek jest jedynym, który nie jest zdolny, aby się dostosować i zostać na pasku narzędzi. Pozycje, które są umieszczone bezpośrednio wewnątrz paska narzędzi bez bycia w elemencie toolbarpalette są trwałe.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/flex/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/flex/index.html" new file mode 100644 index 0000000000..a0f190b980 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/flex/index.html" @@ -0,0 +1,20 @@ +--- +title: flex +slug: Mozilla/Tech/XUL/Własność/flex +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/flex +--- +
+ « Dokumentacja XUL
+
+
+ flex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu flex.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focused/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focused/index.html" new file mode 100644 index 0000000000..24d1d4dab2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focused/index.html" @@ -0,0 +1,16 @@ +--- +title: focused +slug: Mozilla/Tech/XUL/Własność/focused +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/focused +--- +
« Dokumentacja XUL
+
focused +
Typ: boolean +
Pobiera i ustawia wartość atrybutu focused. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focuseditem/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focuseditem/index.html" new file mode 100644 index 0000000000..61ff3000a0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/focuseditem/index.html" @@ -0,0 +1,20 @@ +--- +title: focusedItem +slug: Mozilla/Tech/XUL/Własność/focusedItem +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/focusedItem +--- +
+ « Dokumentacja XUL
+
+
+ focusedItem
+
+ Typ: + + element radio +
+
+ Podtrzymuje bieżącą aktywną pozycję radiogroup, która może lub nie być tą samą zaznaczoną pozycją. Możemy zmienić aktywną pozycję poprzez ustawienie ten własności.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/forcecomplete/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/forcecomplete/index.html" new file mode 100644 index 0000000000..90baa77312 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/forcecomplete/index.html" @@ -0,0 +1,20 @@ +--- +title: forceComplete +slug: Mozilla/Tech/XUL/Własność/forceComplete +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/forceComplete +--- +
+ « Dokumentacja XUL
+
+
+ forceComplete
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu forcecomplete.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/group/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/group/index.html" new file mode 100644 index 0000000000..3b221efc67 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/group/index.html" @@ -0,0 +1,20 @@ +--- +title: group +slug: Mozilla/Tech/XUL/Własność/group +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/group +--- +
+ « Dokumentacja XUL
+
+
+ group
+
+ Typ: + + tekstowa nazwa grupy +
+
+ Pobiera i ustawia wartość atrybutu group.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrlpageupdown/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrlpageupdown/index.html" new file mode 100644 index 0000000000..67f19be58a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrlpageupdown/index.html" @@ -0,0 +1,20 @@ +--- +title: handleCtrlPageUpDown +slug: Mozilla/Tech/XUL/Własność/handleCtrlPageUpDown +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/handleCtrlPageUpDown +--- +
+ « Dokumentacja XUL
+
+
+ handleCtrlPageUpDown
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu handleCtrlPageUpDown.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrltab/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrltab/index.html" new file mode 100644 index 0000000000..aea40fb364 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/handlectrltab/index.html" @@ -0,0 +1,20 @@ +--- +title: handleCtrlTab +slug: Mozilla/Tech/XUL/Własność/handleCtrlTab +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/handleCtrlTab +--- +
+ « Dokumentacja XUL
+
+
+ handleCtrlTab
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu handleCtrlTab.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/height/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/height/index.html" new file mode 100644 index 0000000000..5819c10486 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/height/index.html" @@ -0,0 +1,20 @@ +--- +title: height +slug: Mozilla/Tech/XUL/Własność/height +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/height +--- +
+ « Dokumentacja XUL
+
+
+ height
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu height.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hidden/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hidden/index.html" new file mode 100644 index 0000000000..ff632b8d92 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hidden/index.html" @@ -0,0 +1,20 @@ +--- +title: hidden +slug: Mozilla/Tech/XUL/Własność/hidden +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/hidden +--- +
+ « Dokumentacja XUL
+
+
+ hidden
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu hidden.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hideseconds/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hideseconds/index.html" new file mode 100644 index 0000000000..c4b6e99b2f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hideseconds/index.html" @@ -0,0 +1,17 @@ +--- +title: hideSeconds +slug: Mozilla/Tech/XUL/Własność/hideSeconds +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/hideSeconds +--- +
+ « Dokumentacja XUL
+
+
+ hideSeconds
+
+ Typ: boolean
+
+ Sygnalizuje gdzie pole sekund jest widoczne lub nie.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/homepage/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/homepage/index.html" new file mode 100644 index 0000000000..49e30146b4 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/homepage/index.html" @@ -0,0 +1,16 @@ +--- +title: homePage +slug: Mozilla/Tech/XUL/Własność/homePage +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/homePage +--- +
« Dokumentacja XUL
+
homePage +
Typ: tekstowy adres URL strony domowej +
Ta własność przechowuje adres strony startowej ustawionej przez użytkownika. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hour/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hour/index.html" new file mode 100644 index 0000000000..c133eea37b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hour/index.html" @@ -0,0 +1,17 @@ +--- +title: hour +slug: Mozilla/Tech/XUL/Własność/hour +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/hour +--- +
+ « Dokumentacja XUL
+
+
+ hour
+
+ Typ: integer
+
+ Aktualnie zaznaczona godzina z przedziału od 0 do 23. Ustaw tą własność, aby zmienić zaznaczoną godzinę.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hourleadingzero/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hourleadingzero/index.html" new file mode 100644 index 0000000000..29370b3da2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/hourleadingzero/index.html" @@ -0,0 +1,17 @@ +--- +title: hourLeadingZero +slug: Mozilla/Tech/XUL/Własność/hourLeadingZero +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/hourLeadingZero +--- +
+ « Dokumentacja XUL
+
+
+ hourLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed godziną zanim jest ona mniejsza niż 10.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/id/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/id/index.html" new file mode 100644 index 0000000000..f3a6827f27 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/id/index.html" @@ -0,0 +1,20 @@ +--- +title: id +slug: Mozilla/Tech/XUL/Własność/id +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/id +--- +
+ « Dokumentacja XUL
+
+
+ id
+
+ Typ: + + element id, musi mieć unikatową nazwę w oknie +
+
+ Pobiera i ustawia wartość atrybutu id.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ignoreblurwhilesearching/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ignoreblurwhilesearching/index.html" new file mode 100644 index 0000000000..5ada16bef0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ignoreblurwhilesearching/index.html" @@ -0,0 +1,14 @@ +--- +title: ignoreBlurWhileSearching +slug: Mozilla/Tech/XUL/Własność/ignoreBlurWhileSearching +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/ignoreBlurWhileSearching +--- +
« Dokumentacja XUL
+
ignoreBlurWhileSearching +
Typ: boolean +
Pobiera i ustawia wartość atrybutu ignoreblurwhilesearching. +
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/image/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/image/index.html" new file mode 100644 index 0000000000..c2ddc08cdd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/image/index.html" @@ -0,0 +1,20 @@ +--- +title: image +slug: Mozilla/Tech/XUL/Własność/image +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/image +--- +
+ « Dokumentacja XUL
+
+
+ image
+
+ Typ: + + adres URL obrazka +
+
+ Pobiera i ustawia wartość atrybutu image.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/increment/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/increment/index.html" new file mode 100644 index 0000000000..0ac43f0cf0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/increment/index.html" @@ -0,0 +1,17 @@ +--- +title: increment +slug: Mozilla/Tech/XUL/Własność/increment +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/increment +--- +
+ « Dokumentacja XUL
+
+
+ increment
+
+ Typ: integer
+
+ Pobiera i ustawia wartość atrybutu increment.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/index.html" new file mode 100644 index 0000000000..f9d15636d8 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/index.html" @@ -0,0 +1,219 @@ +--- +title: Własność +slug: Mozilla/Tech/XUL/Własność +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property +--- +

« Dokumentacja XUL +

+ +

Powiązane własności elementu DOM

+ +
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inputfield/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inputfield/index.html" new file mode 100644 index 0000000000..b7ce623947 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inputfield/index.html" @@ -0,0 +1,20 @@ +--- +title: inputField +slug: Mozilla/Tech/XUL/Własność/inputField +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/inputField +--- +
+ « Dokumentacja XUL
+
+
+ inputField
+
+ Typ: + + element textbox +
+
+ W Mozilli, pole tekstowe w języku XUL jest zaimplementowane jako otoczenie wokół elementów kontrolek formularza (input) języka HTML. Ta własność tylko do odczytu podtrzymuje odniesienie do wewnętrznego elementu input.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inverted/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inverted/index.html" new file mode 100644 index 0000000000..d01082b893 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/inverted/index.html" @@ -0,0 +1,20 @@ +--- +title: inverted +slug: Mozilla/Tech/XUL/Własność/inverted +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/inverted +--- +
+ « Dokumentacja XUL
+
+
+ inverted
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu inverted.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/is24hourclock/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/is24hourclock/index.html" new file mode 100644 index 0000000000..173d6b6d5f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/is24hourclock/index.html" @@ -0,0 +1,17 @@ +--- +title: is24HourClock +slug: Mozilla/Tech/XUL/Własność/is24HourClock +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/is24HourClock +--- +
+ « Dokumentacja XUL
+
+
+ is24HourClock
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie jest stosowany 12-godzinny, a gdzie 24-godzinny czas wyświetlania. Z 12-godzinnym czasem zegara, dodatkowe pole pozwala użytkownikowi na wybranie pomiędzy AM i PM.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ispm/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ispm/index.html" new file mode 100644 index 0000000000..958fc6dc53 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ispm/index.html" @@ -0,0 +1,17 @@ +--- +title: isPM +slug: Mozilla/Tech/XUL/Własność/isPM +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/isPM +--- +
+ « Dokumentacja XUL
+
+
+ isPM
+
+ Typ: boolean
+
+ Jeśli false, godzina jest pomiędzy 0 i 11, a jeśli true to godzina jest 12 lub większa.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/issearching/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/issearching/index.html" new file mode 100644 index 0000000000..a221b269af --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/issearching/index.html" @@ -0,0 +1,20 @@ +--- +title: isSearching +slug: Mozilla/Tech/XUL/Własność/isSearching +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/isSearching +--- +
+ « Dokumentacja XUL
+
+
+ isSearching
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true podczas, gdy szukanie jest wykonywane.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/label/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/label/index.html" new file mode 100644 index 0000000000..c216910b49 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/label/index.html" @@ -0,0 +1,16 @@ +--- +title: label +slug: Mozilla/Tech/XUL/Własność/label +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/label +--- +
« Dokumentacja XUL
+
label +
Typ: string +
Pobiera i ustawia wartość atrybutu label. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastpermanentchild/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastpermanentchild/index.html" new file mode 100644 index 0000000000..c8c3eedfde --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastpermanentchild/index.html" @@ -0,0 +1,22 @@ +--- +title: lastPermanentChild +slug: Mozilla/Tech/XUL/Własność/lastPermanentChild +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/lastPermanentChild +--- +
+ « Dokumentacja XUL
+
+
+ lastPermanentChild
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ Ostatni trwały element potomny paska narzędzi. Trwały potomek jest jedynym, który nie jest zdolny, aby się dostosować i zostać na pasku narzędzi. Pozycje, które są umieszczone bezpośrednio wewnątrz paska narzędzi bez bycia w elemencie toolbarpalette są trwałe.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastselected/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastselected/index.html" new file mode 100644 index 0000000000..2bd792472c --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/lastselected/index.html" @@ -0,0 +1,20 @@ +--- +title: lastSelected +slug: Mozilla/Tech/XUL/Własność/lastSelected +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/lastSelected +--- +
+ « Dokumentacja XUL
+
+
+ lastSelected
+
+ Typ: + + string +
+
+ Ustawia to na id ostatniego zaznaczonego okna. Będzie otwarte domyślnie następnym razem, kiedy zostanie otwarte okno preferencji.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/left/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/left/index.html" new file mode 100644 index 0000000000..5cd3a29632 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/left/index.html" @@ -0,0 +1,20 @@ +--- +title: left +slug: Mozilla/Tech/XUL/Własność/left +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/left +--- +
+ « Dokumentacja XUL
+
+
+ left
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu left.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/linkedpanel/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/linkedpanel/index.html" new file mode 100644 index 0000000000..30bf9fd53d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/linkedpanel/index.html" @@ -0,0 +1,20 @@ +--- +title: linkedPanel +slug: Mozilla/Tech/XUL/Własność/linkedPanel +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/linkedPanel +--- +
+ « Dokumentacja XUL
+
+
+ linkedPanel
+
+ Typ: + + id elementu tabpanel +
+
+ Pobiera i ustawia wartość atrybutu linkedpanel.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/locked/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/locked/index.html" new file mode 100644 index 0000000000..d5e73acbe3 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/locked/index.html" @@ -0,0 +1,20 @@ +--- +title: locked +slug: Mozilla/Tech/XUL/Własność/locked +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/locked +--- +
+ « Dokumentacja XUL
+
+
+ locked
+
+ Typ: + + boolean +
+
+ Jeśli true, to preferencje zostaną zabezpieczone i wyłączone z konfiguracji systemu, zabezpieczając zawartość przed zmianami. Własność jest tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/markupdocumentviewer/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/markupdocumentviewer/index.html" new file mode 100644 index 0000000000..71d16f0854 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/markupdocumentviewer/index.html" @@ -0,0 +1,16 @@ +--- +title: markupDocumentViewer +slug: Mozilla/Tech/XUL/Własność/markupDocumentViewer +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/markupDocumentViewer +--- +
« Dokumentacja XUL
+
markupDocumentViewer +
Typ: nsIMarkupDocumentViewer +
Własność tylko do odczytu zawierająca nsIMarkupDocumentViewer, który jest odpowiedzialny za rysowanie dokumentu. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/max/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/max/index.html" new file mode 100644 index 0000000000..91d6a12d1f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/max/index.html" @@ -0,0 +1,13 @@ +--- +title: max +slug: Mozilla/Tech/XUL/Własność/max +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/max +--- +
« Dokumentacja XUL
+
max +
Typ: integer +
Pobiera i ustawia wartość atrybutu max.
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxheight/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxheight/index.html" new file mode 100644 index 0000000000..b36247398f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxheight/index.html" @@ -0,0 +1,20 @@ +--- +title: maxHeight +slug: Mozilla/Tech/XUL/Własność/maxHeight +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/maxHeight +--- +
+ « Dokumentacja XUL
+
+
+ maxHeight
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu maxheight.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxlength/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxlength/index.html" new file mode 100644 index 0000000000..e845abcb1a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxlength/index.html" @@ -0,0 +1,20 @@ +--- +title: maxLength +slug: Mozilla/Tech/XUL/Własność/maxLength +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/maxLength +--- +
+ « Dokumentacja XUL
+
+
+ maxLength
+
+ Typ: + + integer +
+
+ Maksymalna liczba znaków w polu tekstowym, jaką można wpisać.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxrows/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxrows/index.html" new file mode 100644 index 0000000000..5cf0bcc029 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxrows/index.html" @@ -0,0 +1,20 @@ +--- +title: maxRows +slug: Mozilla/Tech/XUL/Własność/maxRows +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/maxRows +--- +
+ « Dokumentacja XUL
+
+
+ maxRows
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu maxrows.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxwidth/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxwidth/index.html" new file mode 100644 index 0000000000..b553c59a3f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/maxwidth/index.html" @@ -0,0 +1,17 @@ +--- +title: maxWidth +slug: Mozilla/Tech/XUL/Własność/maxWidth +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/maxWidth +--- +
« Dokumentacja XUL
+
maxWidth +
Typ: integer +
Pobiera i ustawia wartość atrybutu maxwidth. +
+


+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menu/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menu/index.html" new file mode 100644 index 0000000000..c995bd2524 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menu/index.html" @@ -0,0 +1,20 @@ +--- +title: menu +slug: Mozilla/Tech/XUL/Własność/menu +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/menu +--- +
+ « Dokumentacja XUL
+
+
+ menu
+
+ Typ: + + id elementu popup +
+
+ Pobiera i ustawia wartość atrybutu menu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menuboxobject/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menuboxobject/index.html" new file mode 100644 index 0000000000..b35c93ddc9 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menuboxobject/index.html" @@ -0,0 +1,20 @@ +--- +title: menuBoxObject +slug: Mozilla/Tech/XUL/Własność/menuBoxObject +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/menuBoxObject +--- +
+ « Dokumentacja XUL
+
+
+ menuBoxObject
+
+ Typ: + + nsIMenuBoxObject +
+
+ Referencja do nsIMenuBoxObject, który implementuje menu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menulist.inputfield/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menulist.inputfield/index.html" new file mode 100644 index 0000000000..3594e504b9 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menulist.inputfield/index.html" @@ -0,0 +1,27 @@ +--- +title: menulist.inputField +slug: Mozilla/Tech/XUL/Własność/menulist.inputField +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/menulist.inputField +--- +
+ « Dokumentacja XUL
+
+
+ inputField
+
+ Typ: + + element textbox +
+
+ Odniesienie elementu textbox stosuje się dla list edycji menu. Ta własność jest tylko do odczytu i nakłada się tylko do montażu w menulist.
+
+
+

Zobacz także

+ +
+

 

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menupopup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menupopup/index.html" new file mode 100644 index 0000000000..af11dea0be --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/menupopup/index.html" @@ -0,0 +1,20 @@ +--- +title: menupopup +slug: Mozilla/Tech/XUL/Własność/menupopup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/menupopup +--- +
+ « Dokumentacja XUL
+
+
+ menupopup
+
+ Typ: + + element menupopup +
+
+ Referencja do menupopup stosowany przez menulist. Własność ta jest tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/min/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/min/index.html" new file mode 100644 index 0000000000..8d172dd6a2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/min/index.html" @@ -0,0 +1,13 @@ +--- +title: min +slug: Mozilla/Tech/XUL/Własność/min +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/min +--- +
« Dokumentacja XUL
+
min +
Typ: integer +
Pobiera i ustawia wartość atrybutu min.
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minheight/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minheight/index.html" new file mode 100644 index 0000000000..81c9f51619 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minheight/index.html" @@ -0,0 +1,20 @@ +--- +title: minHeight +slug: Mozilla/Tech/XUL/Własność/minHeight +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/minHeight +--- +
+ « Dokumentacja XUL
+
+
+ minHeight
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu minheight.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minresultsforpopup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minresultsforpopup/index.html" new file mode 100644 index 0000000000..eb63b43c34 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minresultsforpopup/index.html" @@ -0,0 +1,20 @@ +--- +title: minResultsForPopup +slug: Mozilla/Tech/XUL/Własność/minResultsForPopup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/minResultsForPopup +--- +
+ « Dokumentacja XUL
+
+
+ minResultsForPopup
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu minresultsforpopup.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minute/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minute/index.html" new file mode 100644 index 0000000000..46f644d0d2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minute/index.html" @@ -0,0 +1,17 @@ +--- +title: minute +slug: Mozilla/Tech/XUL/Własność/minute +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/minute +--- +
+ « Dokumentacja XUL
+
+
+ minute
+
+ Typ: integer
+
+ Aktualnie zaznaczona minuta z przedziału od 0 do 59. Ustaw tą własność, aby zmienić zaznaczoną minutę.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minuteleadingzero/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minuteleadingzero/index.html" new file mode 100644 index 0000000000..6217fda451 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minuteleadingzero/index.html" @@ -0,0 +1,17 @@ +--- +title: minuteLeadingZero +slug: Mozilla/Tech/XUL/Własność/minuteLeadingZero +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/minuteLeadingZero +--- +
+ « Dokumentacja XUL
+
+
+ minuteLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed minutą zanim jest ona mniejsza niż 10.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minwidth/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minwidth/index.html" new file mode 100644 index 0000000000..81e9e4589e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/minwidth/index.html" @@ -0,0 +1,20 @@ +--- +title: minWidth +slug: Mozilla/Tech/XUL/Własność/minWidth +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/minWidth +--- +
+ « Dokumentacja XUL
+
+
+ minWidth
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu minwidth.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/mode/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/mode/index.html" new file mode 100644 index 0000000000..2974ef161a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/mode/index.html" @@ -0,0 +1,20 @@ +--- +title: mode +slug: Mozilla/Tech/XUL/Własność/mode +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/mode +--- +
+ « Dokumentacja XUL
+
+
+ mode
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu mode.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/month/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/month/index.html" new file mode 100644 index 0000000000..f5f74ceece --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/month/index.html" @@ -0,0 +1,17 @@ +--- +title: month +slug: Mozilla/Tech/XUL/Własność/month +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/month +--- +
+ « Dokumentacja XUL
+
+
+ month
+
+ Typ: integer
+
+ Aktualnie zaznaczony miesiąc z przedziału od 0 do 11. Ustaw tą własność, aby zmienić zaznaczony miesiąc.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/monthleadingzero/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/monthleadingzero/index.html" new file mode 100644 index 0000000000..53f15d82a2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/monthleadingzero/index.html" @@ -0,0 +1,17 @@ +--- +title: monthLeadingZero +slug: Mozilla/Tech/XUL/Własność/monthLeadingZero +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/monthLeadingZero +--- +
+ « Dokumentacja XUL
+
+
+ monthLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed miesiącem zanim jest on mniejszy niż 10.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/name/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/name/index.html" new file mode 100644 index 0000000000..a9dd5d6adb --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/name/index.html" @@ -0,0 +1,20 @@ +--- +title: name +slug: Mozilla/Tech/XUL/Własność/name +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/name +--- +
+ « Dokumentacja XUL
+
+
+ name
+
+ Typ: + + string +
+
+ Nazwa preference do zmiany. Na przykład, strona startowa przeglądarki jest ustawiona z preferencją browser.startup.homepage.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/next/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/next/index.html" new file mode 100644 index 0000000000..6a3863985a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/next/index.html" @@ -0,0 +1,20 @@ +--- +title: next +slug: Mozilla/Tech/XUL/Własność/next +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/next +--- +
+ « Dokumentacja XUL
+
+
+ next
+
+ Typ: + + id łańcucha znaków wizardpage +
+
+ Ustawia pageid następnej strony znajdującą się zaraz po tej. Kiedy ustawimy stronę z własnością pageID jest ona wyświetlona kiedy przycisk Dalej jest naciśnięty. Może być użyty do tworzenia kreatorów, które nie posiadają liniowej kolejności. Jeśli jedna ze stron posiada atrybut next, to będą posiadały go także wszystkie pozostałe oprócz ostatniej strony.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/nomatch/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/nomatch/index.html" new file mode 100644 index 0000000000..998610d7d0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/nomatch/index.html" @@ -0,0 +1,20 @@ +--- +title: noMatch +slug: Mozilla/Tech/XUL/Własność/noMatch +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/noMatch +--- +
+ « Dokumentacja XUL
+
+
+ noMatch
+
+ Typ: + + boolean +
+
+ Ta własność będzie ustawiona na true, jeśli ostatni rezultat szukania nie zawierał żadnych pozycji.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/object/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/object/index.html" new file mode 100644 index 0000000000..5e9251335a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/object/index.html" @@ -0,0 +1,15 @@ +--- +title: object +slug: Mozilla/Tech/XUL/Własność/object +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/object +--- +
+ « Dokumentacja XUL
+
+
+ object
+
+ Obiekt elementu. Może być referencją zmiennej, URI źródła RDF lub wartością literalną RDF.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/observes/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/observes/index.html" new file mode 100644 index 0000000000..297744cb92 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/observes/index.html" @@ -0,0 +1,20 @@ +--- +title: observes +slug: Mozilla/Tech/XUL/Własność/observes +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/observes +--- +
+ « Dokumentacja XUL
+
+
+ observes
+
+ Typ: + + id elementu broadcaster +
+
+ Pobiera i ustawia wartość atrybutu observes.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onfirstpage/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onfirstpage/index.html" new file mode 100644 index 0000000000..7654ddbd3a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onfirstpage/index.html" @@ -0,0 +1,20 @@ +--- +title: onFirstPage +slug: Mozilla/Tech/XUL/Własność/onFirstPage +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/onFirstPage +--- +
+ « Dokumentacja XUL
+
+
+ onFirstPage
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true, jeśli użytkownik jest na pierwszej stronie, która może być lub nie być pierwsza w indeksie.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onlastpage/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onlastpage/index.html" new file mode 100644 index 0000000000..03ab61e399 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/onlastpage/index.html" @@ -0,0 +1,20 @@ +--- +title: onLastPage +slug: Mozilla/Tech/XUL/Własność/onLastPage +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/onLastPage +--- +
+ « Dokumentacja XUL
+
+
+ onLastPage
+
+ Typ: + + boolean +
+
+ Ta własność jest ustawiona na true, jeśli użytkownik jest na ostatniej stronie kreatora.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/open/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/open/index.html" new file mode 100644 index 0000000000..c25868f991 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/open/index.html" @@ -0,0 +1,20 @@ +--- +title: open +slug: Mozilla/Tech/XUL/Własność/open +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/open +--- +
+ « Dokumentacja XUL
+
+
+ open
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu open.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ordinal/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ordinal/index.html" new file mode 100644 index 0000000000..c7845eac72 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ordinal/index.html" @@ -0,0 +1,20 @@ +--- +title: ordinal +slug: Mozilla/Tech/XUL/Własność/ordinal +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/ordinal +--- +
+ « Dokumentacja XUL
+
+
+ ordinal
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu ordinal.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/orient/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/orient/index.html" new file mode 100644 index 0000000000..90ce7bda15 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/orient/index.html" @@ -0,0 +1,20 @@ +--- +title: orient +slug: Mozilla/Tech/XUL/Własność/orient +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/orient +--- +
+ « Dokumentacja XUL
+
+
+ orient
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu orient.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pack/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pack/index.html" new file mode 100644 index 0000000000..f86b018d45 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pack/index.html" @@ -0,0 +1,20 @@ +--- +title: pack +slug: Mozilla/Tech/XUL/Własność/pack +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/pack +--- +
+ « Dokumentacja XUL
+
+
+ pack
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu pack.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pagecount/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pagecount/index.html" new file mode 100644 index 0000000000..14eb3372f1 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pagecount/index.html" @@ -0,0 +1,16 @@ +--- +title: pageCount +slug: Mozilla/Tech/XUL/Własność/pageCount +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/pageCount +--- +
« Dokumentacja XUL
+
pageCount +
Typ: integer +
Ta własność trzyma liczbę stron w kreatorze (wizard). +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageid/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageid/index.html" new file mode 100644 index 0000000000..dd54adbb63 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageid/index.html" @@ -0,0 +1,20 @@ +--- +title: pageid +slug: Mozilla/Tech/XUL/Własność/pageid +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/pageid +--- +
+ « Dokumentacja XUL
+
+
+ pageid
+
+ Typ: + + id łańcucha znaków wizardpage +
+
+ Ten atrybut powinien być ustawiony na łańcuch znaków, który identyfikuje strony identyfikatorem wizard. Jest stosowany z atrybutem next. Kreator zawsze startuje z wizardpage, który pojawia się pierwszy na liście potomnych kreatora.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageincrement/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageincrement/index.html" new file mode 100644 index 0000000000..71d86a1a96 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageincrement/index.html" @@ -0,0 +1,13 @@ +--- +title: pageIncrement +slug: Mozilla/Tech/XUL/Własność/pageIncrement +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/pageIncrement +--- +
« Dokumentacja XUL
+
pageIncrement +
Typ: integer +
Pobiera i ustawia wartość atrybutu pageincrement.
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageindex/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageindex/index.html" new file mode 100644 index 0000000000..52385b7a0a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pageindex/index.html" @@ -0,0 +1,22 @@ +--- +title: pageIndex +slug: Mozilla/Tech/XUL/Własność/pageIndex +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/pageIndex +--- +
+ « Dokumentacja XUL
+
+
+ pageIndex
+
+ Typ: + + integer +
+
+ Ta własność zwraca indeks aktualnie zaznaczonej strony. Możemy zmienić zaznaczenie strony poprzez modyfikacje tej własności.
+
+
+  
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/palette/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/palette/index.html" new file mode 100644 index 0000000000..8eba89536a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/palette/index.html" @@ -0,0 +1,22 @@ +--- +title: palette +slug: Mozilla/Tech/XUL/Własność/palette +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/palette +--- +
+ « Dokumentacja XUL
+
+
+ palette
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ toolbarpalette wewnątrz toolbox.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/persist/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/persist/index.html" new file mode 100644 index 0000000000..65ef2ba5f1 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/persist/index.html" @@ -0,0 +1,20 @@ +--- +title: persist +slug: Mozilla/Tech/XUL/Własność/persist +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/persist +--- +
+ « Dokumentacja XUL
+
+
+ persist
+
+ Typ: + + lista nazw atrybutów oddzielona spacją +
+
+ Pobiera i ustawia wartość atrybutu persist.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pmindicator/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pmindicator/index.html" new file mode 100644 index 0000000000..8c28ac9476 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/pmindicator/index.html" @@ -0,0 +1,17 @@ +--- +title: pmIndicator +slug: Mozilla/Tech/XUL/Własność/pmIndicator +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/pmIndicator +--- +
+ « Dokumentacja XUL
+
+
+ pmIndicator
+
+ Typ: string
+
+ Wyświetlana wartość łańcucha znaków dla godzin pomiędzy południem a północą, domyślnie jest to PM. Ta wartość jest określana dla użytkownika lokalnie.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popup/index.html" new file mode 100644 index 0000000000..66ca1777c0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popup/index.html" @@ -0,0 +1,20 @@ +--- +title: popup +slug: Mozilla/Tech/XUL/Własność/popup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/popup +--- +
+ « Dokumentacja XUL
+
+
+ popup
+
+ Typ: + + id elementu wyskakującego +
+
+ Powinna być ustawiona wartość id elementu popup, który powinien zostać podświetlony, kiedy użytkownik kliknie w pole tekstowe.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupboxobject/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupboxobject/index.html" new file mode 100644 index 0000000000..3e3c196578 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupboxobject/index.html" @@ -0,0 +1,20 @@ +--- +title: popupBoxObject +slug: Mozilla/Tech/XUL/Własność/popupBoxObject +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/popupBoxObject +--- +
+ « Dokumentacja XUL
+
+
+ popupBoxObject
+
+ Typ: + + nsIPopupBoxObject +
+
+ To jest własność tylko do odczytu podtrzymująca nsIPopupBoxObject, który implementuje popup. Normalnie, ta własność nie jest nam potrzebna do użycia jak są dostępne wszystkie jej funkcje via popup.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupopen/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupopen/index.html" new file mode 100644 index 0000000000..e0bbcfae86 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/popupopen/index.html" @@ -0,0 +1,14 @@ +--- +title: popupOpen +slug: Mozilla/Tech/XUL/Własność/popupOpen +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/popupOpen +--- +
« Dokumentacja XUL
+
popupOpen +
Typ: boolean +
Wskazuje gdzie jest otwierane (lub nieotwierane) okienko popup. Ustaw tą własność do otwarcia lub zamknięcia popup. +
+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/position/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/position/index.html" new file mode 100644 index 0000000000..f556b31aeb --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/position/index.html" @@ -0,0 +1,20 @@ +--- +title: position +slug: Mozilla/Tech/XUL/Własność/position +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/position +--- +
+ « Dokumentacja XUL
+
+
+ position
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu position.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/predicate/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/predicate/index.html" new file mode 100644 index 0000000000..9cc46d4baf --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/predicate/index.html" @@ -0,0 +1,15 @@ +--- +title: predicate +slug: Mozilla/Tech/XUL/Własność/predicate +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/predicate +--- +
+ « Dokumentacja XUL
+
+
+ predicate
+
+ Predykat lub własność do dopasowania. Musi być adresem URI własności.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preference.preferences/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preference.preferences/index.html" new file mode 100644 index 0000000000..26ece2a250 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preference.preferences/index.html" @@ -0,0 +1,20 @@ +--- +title: preference.preferences +slug: Mozilla/Tech/XUL/Własność/preference.preferences +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/preference.preferences +--- +
+ « Dokumentacja XUL
+
+
+ preferences
+
+ Typ: + + element +
+
+ Odwołanie się do elementu zawierającego preferences.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferenceelements/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferenceelements/index.html" new file mode 100644 index 0000000000..1671adc85a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferenceelements/index.html" @@ -0,0 +1,20 @@ +--- +title: preferenceElements +slug: Mozilla/Tech/XUL/Własność/preferenceElements +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/preferenceElements +--- +
+ « Dokumentacja XUL
+
+
+ preferenceElements
+
+ Typ: + + DOM Nodelist +
+
+ Podtrzymuje listę elementów UI w oknie, które są dołączone do preferencji.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferencepanes/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferencepanes/index.html" new file mode 100644 index 0000000000..1d74b5bcb0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferencepanes/index.html" @@ -0,0 +1,20 @@ +--- +title: preferencePanes +slug: Mozilla/Tech/XUL/Własność/preferencePanes +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/preferencePanes +--- +
+ « Dokumentacja XUL
+
+
+ preferencePanes
+
+ Typ: + + DOM NodeList +
+
+ Podtrzymuje listę wszystkich elementów prefpane w oknie.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferences/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferences/index.html" new file mode 100644 index 0000000000..d63d2f50a4 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/preferences/index.html" @@ -0,0 +1,17 @@ +--- +title: preferences +slug: Mozilla/Tech/XUL/Własność/preferences +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/preferences +--- +
+ « Dokumentacja XUL +

Zobacz także

+ +
+

 

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/radiogroup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/radiogroup/index.html" new file mode 100644 index 0000000000..63322050be --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/radiogroup/index.html" @@ -0,0 +1,20 @@ +--- +title: radioGroup +slug: Mozilla/Tech/XUL/Własność/radioGroup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/radioGroup +--- +
+ « Dokumentacja XUL
+
+
+ radioGroup
+
+ Typ: + + element radiogroup +
+
+ Zwraca zamkniętą grupę (radiogroup) tak, że element radio jest zawarty wewnątrz, który może być lub nie być jego bezpośrednim rodzicem.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/readonly/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/readonly/index.html" new file mode 100644 index 0000000000..0bc372ec19 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/readonly/index.html" @@ -0,0 +1,20 @@ +--- +title: readonly +slug: Mozilla/Tech/XUL/Własność/readonly +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/readOnly +--- +
+ « Dokumentacja XUL
+
+
+ readonly
+
+ Typ: + + boolean +
+
+ Jeśli jest ustawiony na true, to użytkownik nie może zmieniać wartości elementu. Jest to odpowiednia własności do użytku textbox zamiast własności readonly.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ref/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ref/index.html" new file mode 100644 index 0000000000..659e9468d4 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/ref/index.html" @@ -0,0 +1,20 @@ +--- +title: ref +slug: Mozilla/Tech/XUL/Własność/ref +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/ref +--- +
+ « Dokumentacja XUL
+
+
+ ref
+
+ Typ: + + URI źródła RDF +
+
+ Pobiera i ustawia wartość atrybutu ref.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resource/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resource/index.html" new file mode 100644 index 0000000000..4cc7f05023 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resource/index.html" @@ -0,0 +1,17 @@ +--- +title: resource +slug: Mozilla/Tech/XUL/Własność/resource +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/resource +--- +
« Dokumentacja XUL
+
resource +
Typ: nsIRDFResource +
Zwraca źródło RDF z wartością atrybutu elementów ref. Jeśli atrybut ref nie jest określony, to w zamian stosujemy atrybut id. +
+


+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resultspopup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resultspopup/index.html" new file mode 100644 index 0000000000..4c050cabdf --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/resultspopup/index.html" @@ -0,0 +1,20 @@ +--- +title: resultsPopup +slug: Mozilla/Tech/XUL/Własność/resultsPopup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/resultsPopup +--- +
+ « Dokumentacja XUL
+
+
+ resultsPopup
+
+ Typ: + + element wyskakujący +
+
+ Ta własność jest ustawiona jako element wyskakujący, który wyświetla wyniki (rezultaty).
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/scrollincrement/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/scrollincrement/index.html" new file mode 100644 index 0000000000..058e09be5d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/scrollincrement/index.html" @@ -0,0 +1,15 @@ +--- +title: scrollIncrement +slug: Mozilla/Tech/XUL/Własność/scrollIncrement +tags: + - Strony_wymagające_dopracowania + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/scrollIncrement +--- +
« Dokumentacja XUL
+ +
+
scrollIncrement
+
Typ:integer
+
Własność tylko do odczytu, która chce odebrać liczbę pikseli which scrolling will occur when the arrowscrollbox is clicked.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchcount/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchcount/index.html" new file mode 100644 index 0000000000..3d26abc43b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchcount/index.html" @@ -0,0 +1,20 @@ +--- +title: searchCount +slug: Mozilla/Tech/XUL/Własność/searchCount +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/searchCount +--- +
+ « Dokumentacja XUL
+
+
+ searchCount
+
+ Typ: + + integer +
+
+ Zwraca liczbę użytych komponentów. Ta własność jest tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchparam/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchparam/index.html" new file mode 100644 index 0000000000..3887df0db7 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchparam/index.html" @@ -0,0 +1,20 @@ +--- +title: searchParam +slug: Mozilla/Tech/XUL/Własność/searchParam +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/searchParam +--- +
+ « Dokumentacja XUL
+
+
+ searchParam
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu autocompletesearchparam.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchsessions/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchsessions/index.html" new file mode 100644 index 0000000000..d5ab241c9b --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/searchsessions/index.html" @@ -0,0 +1,25 @@ +--- +title: searchSessions +slug: Mozilla/Tech/XUL/Własność/searchSessions +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/searchSessions +--- +
+ « Dokumentacja XUL
+
+
+ searchSessions
+
+ Typ: + + lista nazw sesji rozdzielona spacją +
+
+ Ustawia słowo kluczowe sygnalizując jakiego typu dane są szukane dla autouzupełnienia. Możemy ustawić wiele typów poprzez rozdzielenie ich nazw spacją. Następujące wartości są możliwe, mimo że komponenty użytkownika mogą być zainstalowane, które dodają inne.
+
+ diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/second/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/second/index.html" new file mode 100644 index 0000000000..08ae2a05f3 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/second/index.html" @@ -0,0 +1,17 @@ +--- +title: second +slug: Mozilla/Tech/XUL/Własność/second +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/second +--- +
+ « Dokumentacja XUL
+
+
+ second
+
+ Typ: integer
+
+ Aktualnie zaznaczone sekundy z przedziału od 0 do 59. Ustaw tą własność, aby zmienić zaznaczone sekundy.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/secondleadingzero/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/secondleadingzero/index.html" new file mode 100644 index 0000000000..b4a4dbeb49 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/secondleadingzero/index.html" @@ -0,0 +1,17 @@ +--- +title: secondLeadingZero +slug: Mozilla/Tech/XUL/Własność/secondLeadingZero +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/secondLeadingZero +--- +
+ « Dokumentacja XUL
+
+
+ secondLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed sekundą zanim jest ona mniejsza niż 10.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/securityui/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/securityui/index.html" new file mode 100644 index 0000000000..e5d2b11b1e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/securityui/index.html" @@ -0,0 +1,16 @@ +--- +title: securityUI +slug: Mozilla/Tech/XUL/Własność/securityUI +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/securityUI +--- +
« Dokumentacja XUL
+
securityUI +
Typ: nsISecureBrowserUI +
Własność tylko do odczytu przechowująca obiekt, który może zostać użyty do określenia poziomu bezpieczeństwa we wczytanym dokumencie. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selected/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selected/index.html" new file mode 100644 index 0000000000..c5a14f6a65 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selected/index.html" @@ -0,0 +1,20 @@ +--- +title: selected +slug: Mozilla/Tech/XUL/Własność/selected +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selected +--- +
+ « Dokumentacja XUL
+
+
+ selected
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu selected.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedbrowser/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedbrowser/index.html" new file mode 100644 index 0000000000..0a0d69d46d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedbrowser/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedBrowser +slug: Mozilla/Tech/XUL/Własność/selectedBrowser +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedBrowser +--- +
+ « Dokumentacja XUL
+
+
+ selectedBrowser
+
+ Typ: + + element browser +
+
+ Ta własność jest tylko do odczytu i zwraca aktualnie wyświetlany element browser.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedcount/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedcount/index.html" new file mode 100644 index 0000000000..17cf764f1e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedcount/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedCount +slug: Mozilla/Tech/XUL/Własność/selectedCount +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedCount +--- +
+ « Dokumentacja XUL
+
+
+ selectedCount
+
+ Typ: + + integer +
+
+ Zwraca liczbę pozycji, która jest aktualnie zaznaczona.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedindex/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedindex/index.html" new file mode 100644 index 0000000000..3aa4b25211 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedindex/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedIndex +slug: Mozilla/Tech/XUL/Własność/selectedIndex +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedIndex +--- +
+ « Dokumentacja XUL
+
+
+ selectedIndex
+
+ Typ: + + integer +
+
+ Zwraca indeks aktualnie zaznaczonej pozycji. Można zaznaczyć pozycję przypisując jej numer indeksu do własności. Przydzielając -1 do tej własności, wszystkie pozycje zostaną odznaczone.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditem/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditem/index.html" new file mode 100644 index 0000000000..97c7ca73bf --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditem/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedItem +slug: Mozilla/Tech/XUL/Własność/selectedItem +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedItem +--- +
+ « Dokumentacja XUL
+
+
+ selectedItem
+
+ Typ: + + element +
+
+ Podtrzymuje aktualnie zaznaczoną pozycję. Jeśli nie ma zaznaczonych aktualnie pozycji, to jej wartość równa będzie null. Możemy zaznaczyć pozycję poprzez ustawienie tej wartości. Zmiana zdarzenia będzie przesyłana do zaznaczonej pozycji, kiedy zmieniona zostanie jedna z tych własności, własność selectedIndex lub zmieniona będzie przez użytkownika.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditems/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditems/index.html" new file mode 100644 index 0000000000..0bbc221f20 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selecteditems/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedItems +slug: Mozilla/Tech/XUL/Własność/selectedItems +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedItems +--- +
+ « Dokumentacja XUL
+
+
+ selectedItems
+
+ Typ: + + tablica z listą pozycji +
+
+ Zwraca tablicę zaznaczonych pozycji na liście.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedpanel/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedpanel/index.html" new file mode 100644 index 0000000000..192ea18264 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedpanel/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedPanel +slug: Mozilla/Tech/XUL/Własność/selectedPanel +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedPanel +--- +
+ « Dokumentacja XUL
+
+
+ selectedPanel
+
+ Typ: + + element +
+
+ Trzyma odniesienie do aktualnie zaznaczonego panelu bez elementu <tabbox>. Przydziela wartość do tej własności, aby zmodyfikować zaznaczony panel. Zaznaczone zdarzenie będzie przesłane, kiedy zaznaczony panel jest zmieniany.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedtab/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedtab/index.html" new file mode 100644 index 0000000000..019000e788 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectedtab/index.html" @@ -0,0 +1,20 @@ +--- +title: selectedTab +slug: Mozilla/Tech/XUL/Własność/selectedTab +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectedTab +--- +
+ « Dokumentacja XUL
+
+
+ selectedTab
+
+ Typ: + + element tab +
+
+ Referencja do aktualnie zaznaczonej karty, która będzie zawsze jednym z elementów tab w elemencie tabs. Przydziela wartość do tej własności, aby modyfikować aktualnie zaznaczoną kartę.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionend/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionend/index.html" new file mode 100644 index 0000000000..6207698f89 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionend/index.html" @@ -0,0 +1,20 @@ +--- +title: selectionEnd +slug: Mozilla/Tech/XUL/Własność/selectionEnd +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectionEnd +--- +
+ « Dokumentacja XUL
+
+
+ selectionEnd
+
+ Typ: + + integer +
+
+ Pobiera i ustawia koniec zaznaczonej części pola tekstu. Stosujemy ze sprzężeniem z własnością selectionStart. Wartość określa indeks znaku za zaznaczeniem. Jeśli ta wartość jest równa sumie wartości własności selectionStart, to żaden tekst nie jest zaznaczony, lecz wartość sygnalizuje pozycję wstawki (kursora) wewnątrz pola tekstowego.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionstart/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionstart/index.html" new file mode 100644 index 0000000000..ee111bc9b5 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selectionstart/index.html" @@ -0,0 +1,20 @@ +--- +title: selectionStart +slug: Mozilla/Tech/XUL/Własność/selectionStart +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selectionStart +--- +
+ « Dokumentacja XUL
+
+
+ selectionStart
+
+ Typ: + + integer +
+
+ Pobiera lub ustawia początek zaznaczonej części pola tekstu. Stosujemy w sprzężeniu z własnością selectionEnd. Wartość określa indeks pierwszego zaznaczonego znaku.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selstyle/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selstyle/index.html" new file mode 100644 index 0000000000..dc56c116f0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/selstyle/index.html" @@ -0,0 +1,16 @@ +--- +title: selstyle +slug: Mozilla/Tech/XUL/Własność/selstyle +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selstyle +--- +
« Dokumentacja XUL
+
selstyle +
Typ: string +
Jeśli jest ustawiona na wartość primary, to tylko etykieta głównej kolumny będzie podświetlona, w momencie gdy pozycja drzewa jest zaznaczona. Inaczej, cały wiersz będzie podświetlony. Aby zobaczyć różnice, porównaj styl zaznaczenia na liście folderów i liście wiadomości w programie pocztowym Mozilli. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/seltype/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/seltype/index.html" new file mode 100644 index 0000000000..7ba16d4373 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/seltype/index.html" @@ -0,0 +1,29 @@ +--- +title: selType +slug: Mozilla/Tech/XUL/Własność/selType +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/selType +--- +
+ « Dokumentacja XUL
+
+
+ selType <magic name="\"PAGENAME\"/"></magic>
+
+  
+
+ Type: string
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu seltype.
+
+

 

+

 

+
+  
+

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessioncount/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessioncount/index.html" new file mode 100644 index 0000000000..689fac4950 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessioncount/index.html" @@ -0,0 +1,20 @@ +--- +title: sessionCount +slug: Mozilla/Tech/XUL/Własność/sessionCount +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/sessionCount +--- +
+ « Dokumentacja XUL
+
+
+ sessionCount
+
+ Typ: + + integer +
+
+ Podtrzymuje liczbę sesji.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessionhistory/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessionhistory/index.html" new file mode 100644 index 0000000000..fdbf52cbd0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/sessionhistory/index.html" @@ -0,0 +1,16 @@ +--- +title: sessionHistory +slug: Mozilla/Tech/XUL/Własność/sessionHistory +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/sessionHistory +--- +
« Dokumentacja XUL
+
sessionHistory +
Typ: nsISHistory +
Własność tylko do odczytu zawierająca obiekt nsISHistory, przechowujący historię sesji. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showcommentcolumn/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showcommentcolumn/index.html" new file mode 100644 index 0000000000..feb71156bd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showcommentcolumn/index.html" @@ -0,0 +1,20 @@ +--- +title: showCommentColumn +slug: Mozilla/Tech/XUL/Własność/showCommentColumn +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/showCommentColumn +--- +
+ « Dokumentacja XUL
+
+
+ showCommentColumn
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu showcommentcolumn.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showpopup/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showpopup/index.html" new file mode 100644 index 0000000000..593759bb99 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/showpopup/index.html" @@ -0,0 +1,20 @@ +--- +title: showPopup +slug: Mozilla/Tech/XUL/Własność/showPopup +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/showPopup +--- +
+ « Dokumentacja XUL
+
+
+ showPopup
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu showpopup.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/size/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/size/index.html" new file mode 100644 index 0000000000..c5203cf925 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/size/index.html" @@ -0,0 +1,20 @@ +--- +title: size +slug: Mozilla/Tech/XUL/Własność/size +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/size +--- +
+ « Dokumentacja XUL
+
+
+ size
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu size.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/src/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/src/index.html" new file mode 100644 index 0000000000..67be0bca8a --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/src/index.html" @@ -0,0 +1,20 @@ +--- +title: src +slug: Mozilla/Tech/XUL/Własność/src +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/src +--- +
+ « Dokumentacja XUL
+
+
+ src
+
+ Typ: + + URL +
+
+ Pobiera i ustawia wartość atrybutu src.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statusbar/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statusbar/index.html" new file mode 100644 index 0000000000..47c75796b8 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statusbar/index.html" @@ -0,0 +1,20 @@ +--- +title: statusbar +slug: Mozilla/Tech/XUL/Własność/statusbar +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/statusbar +--- +
+ « Dokumentacja XUL
+
+
+ statusbar
+
+ Typ: + + id elementu paska stanu +
+
+ Pobiera i ustawia wartość atrybutu statusbar.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statustext/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statustext/index.html" new file mode 100644 index 0000000000..d7e410d7dd --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/statustext/index.html" @@ -0,0 +1,20 @@ +--- +title: statusText +slug: Mozilla/Tech/XUL/Własność/statusText +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/statusText +--- +
+ « Dokumentacja XUL
+
+
+ statusText
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu statustext.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/stringbundle/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/stringbundle/index.html" new file mode 100644 index 0000000000..57af9775c5 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/stringbundle/index.html" @@ -0,0 +1,20 @@ +--- +title: stringBundle +slug: Mozilla/Tech/XUL/Własność/stringBundle +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/stringBundle +--- +
+ « Dokumentacja XUL
+
+
+ stringBundle
+
+ Typ: + + nsIStringBundle +
+
+ Zwraca łańcuch znaków obiekt paczki XPCOM, który implementuje nsIStringBundle.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/strings/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/strings/index.html" new file mode 100644 index 0000000000..77a2e5d670 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/strings/index.html" @@ -0,0 +1,20 @@ +--- +title: strings +slug: Mozilla/Tech/XUL/Własność/strings +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/strings +--- +
+ « Dokumentacja XUL
+
+
+ strings
+
+ Typ: + + nsISimpleEnumerator +
+
+ Wyliczenie wszystkich ciągów w paczce ciągów. Zawiera obiekty nsIPropertyElement.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/style/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/style/index.html" new file mode 100644 index 0000000000..56bef22521 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/style/index.html" @@ -0,0 +1,20 @@ +--- +title: style +slug: Mozilla/Tech/XUL/Własność/style +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/style +--- +
+ « Dokumentacja XUL
+
+
+ style
+
+ Typ: + + styl CSS inline +
+
+ Pobiera i ustawia wartość atrybutu style.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/subject/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/subject/index.html" new file mode 100644 index 0000000000..db36ee335d --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/subject/index.html" @@ -0,0 +1,15 @@ +--- +title: subject +slug: Mozilla/Tech/XUL/Własność/subject +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/subject +--- +
+ « Dokumentacja XUL
+
+
+ subject
+
+ Element tematu. Potrafi być odniesieniem zmiennej lub źródłem RDF adresu URI.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/suppressonselect/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/suppressonselect/index.html" new file mode 100644 index 0000000000..6e15dcc5a9 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/suppressonselect/index.html" @@ -0,0 +1,20 @@ +--- +title: suppressOnSelect +slug: Mozilla/Tech/XUL/Własność/suppressOnSelect +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/suppressOnSelect +--- +
+ « Dokumentacja XUL
+
+
+ suppressOnSelect
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu suppressonselect.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabcontainer/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabcontainer/index.html" new file mode 100644 index 0000000000..7f6b4feb26 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabcontainer/index.html" @@ -0,0 +1,20 @@ +--- +title: tabContainer +slug: Mozilla/Tech/XUL/Własność/tabContainer +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/tabContainer +--- +
+ « Dokumentacja XUL
+
+
+ tabContainer
+
+ Typ: + + element tabs +
+
+ Zwraca element tabs, który zawiera karty.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabindex/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabindex/index.html" new file mode 100644 index 0000000000..a15be273f6 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabindex/index.html" @@ -0,0 +1,20 @@ +--- +title: tabIndex +slug: Mozilla/Tech/XUL/Własność/tabIndex +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/tabIndex +--- +
+ « Dokumentacja XUL
+
+
+ tabIndex
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu tabindex.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabs/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabs/index.html" new file mode 100644 index 0000000000..175d9b3321 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabs/index.html" @@ -0,0 +1,20 @@ +--- +title: tabs +slug: Mozilla/Tech/XUL/Własność/tabs +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/tabs +--- +
+ « Dokumentacja XUL
+
+
+ tabs
+
+ Typ: + + element tabs +
+
+ Element tabs, w którym jest zawarty element tab.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabscrolling/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabscrolling/index.html" new file mode 100644 index 0000000000..0e4f1a3eaa --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tabscrolling/index.html" @@ -0,0 +1,20 @@ +--- +title: tabScrolling +slug: Mozilla/Tech/XUL/Własność/tabScrolling +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/tabScrolling +--- +
+ « Dokumentacja XUL
+
+
+ tabScrolling
+
+ Typ: + + boolean +
+
+ Pobiera i ustawia wartość atrybutu tabscrolling.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textbox.type/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textbox.type/index.html" new file mode 100644 index 0000000000..fede706397 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textbox.type/index.html" @@ -0,0 +1,24 @@ +--- +title: textbox.type +slug: Mozilla/Tech/XUL/Własność/textbox.type +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/textbox.type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: '
+
+ Ustawia wartość autocomplete, aby mieć samo uzupełniające się pole tekstowe.
+
+
+

Zobacz także

+ +
+

 

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textlength/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textlength/index.html" new file mode 100644 index 0000000000..9bfcc79511 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textlength/index.html" @@ -0,0 +1,20 @@ +--- +title: textLength +slug: Mozilla/Tech/XUL/Własność/textLength +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/textLength +--- +
+ « Dokumentacja XUL
+
+
+ textLength
+
+ Typ: + + integer +
+
+ Podtrzymuje długość wprowadzanego tekstu w polu tekstowym. Ta własność jest tylko do odczytu.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textvalue/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textvalue/index.html" new file mode 100644 index 0000000000..49424ffa8e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/textvalue/index.html" @@ -0,0 +1,20 @@ +--- +title: textValue +slug: Mozilla/Tech/XUL/Własność/textValue +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/textValue +--- +
+ « Dokumentacja XUL
+
+
+ textValue
+
+ Typ: + + string +
+
+ Zwraca treść pola tekstowego. Odpowiednikiem jest własność value.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timeout/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timeout/index.html" new file mode 100644 index 0000000000..f0ba9af0b0 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timeout/index.html" @@ -0,0 +1,20 @@ +--- +title: timeout +slug: Mozilla/Tech/XUL/Własność/timeout +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/timeout +--- +
+ « Dokumentacja XUL
+
+
+ timeout
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu timeout.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timepicker.value/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timepicker.value/index.html" new file mode 100644 index 0000000000..a5c0e84f45 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/timepicker.value/index.html" @@ -0,0 +1,17 @@ +--- +title: timepicker.value +slug: Mozilla/Tech/XUL/Własność/timepicker.value +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/timepicker.value +--- +
+ « Dokumentacja XUL
+
+
+ value
+
+ Typ: string
+
+ Aktualnie wprowadzony czas w formie HH:MM:SS. Ustaw tą własność, aby zmienić czas.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/title/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/title/index.html" new file mode 100644 index 0000000000..a4f86b2597 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/title/index.html" @@ -0,0 +1,20 @@ +--- +title: title +slug: Mozilla/Tech/XUL/Własność/title +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/title +--- +
+ « Dokumentacja XUL
+
+
+ title
+
+ Typ: + + string +
+
+ Tytuł, który pojawia się na górze kreatora (wizard). Jest przesłaniany przez atrybut label na indywidualnych stronach.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarname/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarname/index.html" new file mode 100644 index 0000000000..2c18cb27cc --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarname/index.html" @@ -0,0 +1,17 @@ +--- +title: toolbarName +slug: Mozilla/Tech/XUL/Własność/toolbarName +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/toolbarName +--- +
« Dokumentacja XUL
+
toolbarName +
Tylko Firefox +
Typ: string +
Nazwa paska narzędzi. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarset/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarset/index.html" new file mode 100644 index 0000000000..9dfa5b9b4e --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/toolbarset/index.html" @@ -0,0 +1,22 @@ +--- +title: toolbarset +slug: Mozilla/Tech/XUL/Własność/toolbarset +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/toolbarset +--- +
+ « Dokumentacja XUL
+
+
+ toolbarset
+
+ Tylko Firefox
+
+ Typ: + + element +
+
+ toolbarset wewnątrz toolbox.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltip/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltip/index.html" new file mode 100644 index 0000000000..4239de568f --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltip/index.html" @@ -0,0 +1,20 @@ +--- +title: tooltip +slug: Mozilla/Tech/XUL/Własność/tooltip +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/tooltip +--- +
+ « Dokumentacja XUL
+
+
+ tooltip
+
+ Typ: + + id elementu tooltip +
+
+ Pobiera i ustawia wartość atrybutu tooltip.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltiptext/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltiptext/index.html" new file mode 100644 index 0000000000..b841834ee2 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/tooltiptext/index.html" @@ -0,0 +1,24 @@ +--- +title: tooltipText +slug: Mozilla/Tech/XUL/Własność/tooltipText +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/tooltipText +--- +
+ « Dokumentacja XUL
+
+
+ tooltipText
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu tooltiptext.
+
+

 

+
+  
+

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/top/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/top/index.html" new file mode 100644 index 0000000000..3884a73c60 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/top/index.html" @@ -0,0 +1,20 @@ +--- +title: top +slug: Mozilla/Tech/XUL/Własność/top +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/top +--- +
+ « Dokumentacja XUL
+
+
+ top
+
+ Typ: + + integer +
+
+ Pobiera i ustawia wartość atrybutu top.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/type/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/type/index.html" new file mode 100644 index 0000000000..f92d1a4a74 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/type/index.html" @@ -0,0 +1,27 @@ +--- +title: type +slug: Mozilla/Tech/XUL/Własność/type +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/type +--- +
+ « Dokumentacja XUL
+
+
+ type
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu type.
+
+
+

Zobacz także

+ +
+

 

diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/useraction/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/useraction/index.html" new file mode 100644 index 0000000000..9dbcd177df --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/useraction/index.html" @@ -0,0 +1,20 @@ +--- +title: userAction +slug: Mozilla/Tech/XUL/Własność/userAction +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/userAction +--- +
+ « Dokumentacja XUL
+
+
+ userAction
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu userAction.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/value/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/value/index.html" new file mode 100644 index 0000000000..082e95f22c --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/value/index.html" @@ -0,0 +1,20 @@ +--- +title: value +slug: Mozilla/Tech/XUL/Własność/value +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/value +--- +
+ « Dokumentacja XUL
+
+
+ value
+
+ Typ: + + string +
+
+ Pobiera i ustawia wartość atrybutu value.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/view/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/view/index.html" new file mode 100644 index 0000000000..bb90e343e5 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/view/index.html" @@ -0,0 +1,15 @@ +--- +title: view +slug: Mozilla/Tech/XUL/Własność/view +tags: + - Strony_wymagające_dopracowania + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/view +--- +
« Dokumentacja XUL
+ +
+
view
+
Typ: nsITreeView
+
Widok dla tree, który jest obiektem generującym dane do wyświetlenia. Do tej własności możesz przypisać obiekt implementujący interfejs nsITreeView. Drzewa zbudowane z RDF-a, albo takie, które bezpośrednio używają elementów treeitem, będą już miały widok. Funkcje dostępne w widoku pozwalają na pobieranie danych z komórek i pozwalają na stwierdzenie, które wiersze są zagnieżdżone w innych. Aby zobaczyć kompletną listę funkcji, obejrzyj interfejs nsITreeView.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webbrowserfind/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webbrowserfind/index.html" new file mode 100644 index 0000000000..d18725b7ff --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webbrowserfind/index.html" @@ -0,0 +1,16 @@ +--- +title: webBrowserFind +slug: Mozilla/Tech/XUL/Własność/webBrowserFind +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/webBrowserFind +--- +
« Dokumentacja XUL
+
webBrowserFind +
Typ: nsIWebBrowserFind +
Własność tylko do odczytu zawierająca obiekt nsIWebBrowserFind, którego można użyć do szukania tekstu w dokumencie. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webnavigation/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webnavigation/index.html" new file mode 100644 index 0000000000..b382e37bb1 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webnavigation/index.html" @@ -0,0 +1,16 @@ +--- +title: webNavigation +slug: Mozilla/Tech/XUL/Własność/webNavigation +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/webNavigation +--- +
« Dokumentacja XUL
+
webNavigation +
Typ: nsIWebNavigation +
Własność tylko do odczytu zawiera obiekt nsIWebNavigation dla dokumentu. Wiele z jego metod może być wywoływanych bezpośrednio na dokumencie; są to takie metody jak goBack i goForward. Zawiera także stałe wczytywania wykorzystywane przez reloadWithFlags i loadURIWithFlags. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webprogress/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webprogress/index.html" new file mode 100644 index 0000000000..6fd5c056a8 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/webprogress/index.html" @@ -0,0 +1,16 @@ +--- +title: webProgress +slug: Mozilla/Tech/XUL/Własność/webProgress +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/webProgress +--- +
« Dokumentacja XUL
+
webProgress +
Typ: nsIWebProgress +
Własność tylko do odczytu zawierająca obiekt nsIWebProgress, który jest stosowany do monitorowania postępu podczas ładowania dokumentu. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/width/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/width/index.html" new file mode 100644 index 0000000000..5c236e6925 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/width/index.html" @@ -0,0 +1,20 @@ +--- +title: width +slug: Mozilla/Tech/XUL/Własność/width +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/width +--- +
+ « Dokumentacja XUL
+
+
+ width
+
+ Typ: + + integer +
+
+ Długość elementu w pikselach. Zamiast stosowania tej własności polecamy stosowanie własności CSS width.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wizardpages/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wizardpages/index.html" new file mode 100644 index 0000000000..5244a60bad --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wizardpages/index.html" @@ -0,0 +1,20 @@ +--- +title: wizardPages +slug: Mozilla/Tech/XUL/Własność/wizardPages +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/wizardPages +--- +
+ « Dokumentacja XUL
+
+
+ wizardPages
+
+ Typ: + + DOM NodeList elementów wizardpage +
+
+ Ta własność podtrzymuje listę elementów wizardpage w wizard.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wraparound/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wraparound/index.html" new file mode 100644 index 0000000000..b056079486 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/wraparound/index.html" @@ -0,0 +1,16 @@ +--- +title: wrapAround +slug: Mozilla/Tech/XUL/Własność/wrapAround +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/wrapAround +--- +
« Dokumentacja XUL
+
wrapAround +
Typ: boolean +
Pobiera i ustawia wartość atrybutu wraparound. +
+


+

+
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/year/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/year/index.html" new file mode 100644 index 0000000000..b46c4eae40 --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/year/index.html" @@ -0,0 +1,17 @@ +--- +title: year +slug: Mozilla/Tech/XUL/Własność/year +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/year +--- +
+ « Dokumentacja XUL
+
+
+ year
+
+ Typ: integer
+
+ Aktualnie zaznaczony rok z przedziału od 1 do 9999. Ustaw tą własność, aby zmienić zaznaczony rok.
+
diff --git "a/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/yearleadingzero/index.html" "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/yearleadingzero/index.html" new file mode 100644 index 0000000000..cf6914d74c --- /dev/null +++ "b/files/pl/mozilla/tech/xul/w\305\202asno\305\233\304\207/yearleadingzero/index.html" @@ -0,0 +1,17 @@ +--- +title: yearLeadingZero +slug: Mozilla/Tech/XUL/Własność/yearLeadingZero +tags: + - Własności_XUL +translation_of: Archive/Mozilla/XUL/Property/yearLeadingZero +--- +
+ « Dokumentacja XUL
+
+
+ yearLeadingZero
+
+ Typ: boolean
+
+ Wartość tylko do odczytu sygnalizująca gdzie wiodące zero powinno być wyświetlone przed rokiem zanim jest on mniejszy niż 1000.
+
diff --git a/files/pl/mozilla/tech/xul/xul_school/index.html b/files/pl/mozilla/tech/xul/xul_school/index.html new file mode 100644 index 0000000000..b7b400a3ba --- /dev/null +++ b/files/pl/mozilla/tech/xul/xul_school/index.html @@ -0,0 +1,70 @@ +--- +title: XUL School Tutorial +slug: Mozilla/Tech/XUL/XUL_School +translation_of: Archive/Add-ons/Overlay_Extensions/XUL_School +--- +

Szkoła XUL to wszechstronny tutorial programowania rozszerzeń koncentrujący się na programowaniu rozszerzeń dla Firefoksa. Zalecane jest abyś przeczytał go przynajmniej raz. Podczas gdy Firefox zmienia się dość często, zawartość tego tutoriala powinna być aktualna i poprawna.

+
+
+ Wprowadzenie
+
+ +
+
+ Podstawowa funkcjonalność
+
+ +
+
+ Intermediate functionality
+
+ +
+
+ Zaawansowane tematy
+
+ +
+
+ Załączniki
+
+ +
+
+

The XUL School project was developed by Appcoast (formerly Glaxstar). The project is now published here following its sharing licenses. Its contents have been modified from the original source as necessary.

+
+

+
+

 

diff --git a/files/pl/mozmill/using_the_driver/index.html b/files/pl/mozmill/using_the_driver/index.html new file mode 100644 index 0000000000..4c4d5df5f0 --- /dev/null +++ b/files/pl/mozmill/using_the_driver/index.html @@ -0,0 +1,132 @@ +--- +title: Using The Driver +slug: Mozmill/Using_The_Driver +translation_of: Mozilla/Projects/Mozmill/Using_The_Driver +--- +

The goal of this article is to teach you how to isolate Mozmill's driver from Mozmill's test harness, and drop it into your own extension allowing you to perform automation.

+

Mozmill is very feature rich. It can automate mostly any part of Firefox's UI which makes it an invaluable tool for anyone looking into Firefox automation. Unfortunately, Mozmill's test harness side is very bloated and unwieldy. The browser gets restarted between each test, plus a lot of other setup and teardown happens as well, which means that disguising a Mozmill test as a means to drive Firefox is not a very good or pleasant experience. Fortunately, it is possible to ignore all of the test harness bits and use only Mozmill's driver, which is lightweight and pure javascript (no python).

+

Isolating the Driver

+

Luckily some work has been done to make this pretty easy, though there is still a fair amount of work to be done to make this process even easier.

+
    +
  1. Clone the Mozmill repo at https://github.com/mozilla/mozmill somewhere on your file system.
  2. +
  3. Create a Mozmill resource directory (in your extension's root folder, create a 'resource/mozmill' folder).
  4. +
  5. Copy and paste the 'driver' and 'stdlib' folders from the 'path_to_mozmill_repo/mozmill/mozmill/extension/resource' directory into your 'resource/mozmill' directory.
  6. +
  7. Edit your extension's chrome.manifest file and add the line 'resource mozmill resource/mozmill/' (don't forget the trailing slash)
  8. +
  9. Mozmill's driver is now ready to be imported and used by any chrome scoped JS in your extension.
  10. +
+

Listening for Messages

+

Now that you can use Mozmill's driver, it's time to register a listener for Mozmill events. These events will tell your extension whether the various Mozmill actions pass or fail, as well as pass along other information such as screen shot info. Place this code anywhere in your extension (preferably before you start calling Mozmill functions):

+
let broker = {}; Components.utils.import('resource://mozmill/driver/msgbroker.js', broker);
+let mozmillListener = {
+  'pass': function(obj) { dump('PASS ' + obj + '\n'); },
+  'fail': function(obj) { dump('FAIL ' + obj + '\n'); },
+  'log': function(obj) { dump('LOG ' + obj + '\n'); },
+};
+// Note: You can also add event listener individually with broker.addListener(eventType, listener).
+//       Of course, each eventType can also have as many listeners as you wish.
+broker.addObject(mozmillListener);
+
+

Other Event Types

+

Pass, fail and log are the most common event types, but other ones exist too. Many of these others are specific to the Mozmill test harness and probably won't be relevant to your extension, but the full list is:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EventTypeObjFired When
pass +

Varies, but often:

+

{ 'function': function_name }

+
An action in Mozmill passes
failVariesAn action in Mozmill fails
logVariesMisc. log message
persistNone???
endTestNoneTest is finished (i.e stopApplication or restartApplication was called)
userShutdown +
+ {
+
+   'user': boolean,
+
+   'restart': boolean,
+
+   'next': next_test_to_run,
+
+   'resetProfile': boolean
+
+ }
+
Once when userShutdown() is initiated, once again when timeout for shutdown occurs or shutdown occurs.
firePythonCallback +

{
+   'filename': filename,
+   'method': method,
+   'args': args,
+   'kwargs': kwargs,
+ }

+
Python callback is invoked
screenShot +
+ {
+
+   'filepath': filepath,
+
+   'dataURL': dataURL,
+
+   'name': name,
+
+   'timestamp': timestamp,
+
+ }
+
controller.screenShot() is called
+

Using the Driver

+

Now that your listener is setup, here is an example of how your extension might actually use Mozmill's driver.

+
// Import mozmill and initialize a controller object
+Components.utils.import('resource://mozmill/driver/mozmill.js');
+let controller = getBrowserController();
+
+// Open google
+controller.open('http://www.google.com');
+controller.waitForPageLoad();
+
+// Type in the search box
+let textbox = findElement.ID(controller.tabs.activeTab, 'lst-ib');
+let button = findElement.Name(controller.tabs.activeTab, 'btnK');
+textbox.sendKeys('foobar');
+button.click();
+
+

For more information regarding using Mozmill's driver, see the Mozmill Reference Desk

diff --git "a/files/pl/narz\304\231dzia/about_colon_debugging/index.html" "b/files/pl/narz\304\231dzia/about_colon_debugging/index.html" new file mode 100644 index 0000000000..8ed93e0d15 --- /dev/null +++ "b/files/pl/narz\304\231dzia/about_colon_debugging/index.html" @@ -0,0 +1,207 @@ +--- +title: 'about:debugging' +slug: 'Narzędzia/about:debugging' +translation_of: 'Tools/about:debugging' +--- +

Zakładka about:debugging gromadzi narzędzia developerskie Firefoxa i pozwala używać ich do testowania i debugowania wielu celów (dodatków). Na chwilę obecną wspiera trzy główne rodzaje celów: dodatki niewymagające restartu przeglądarki, karty (zakładki) i workersy (zadania w tle).

+ +

Otwieranie zakładki about:debugging

+ +

Zakładkę about:debugging można otworzyć na kilka sposobów:

+ + + +

Gdy otworzy się zakładka about:debugging, po lewej stronie zobaczysz sidebara umożliwiającego przełączanie pomiędzy dwoma widokami: jednym dla dodatków, drugim dla zadań w tle (Workers).

+ +

Dodatki

+ +
+

Sekcja Dodatki w zakładce about:debugging obsługuje tylko dodatki niewymagające restartu przeglądarki, w tym basic bootstrapped extensions (niewspierane od FF > 57) , Add-on SDK Add-ons i WebExtensions (jedyne wspierane od FF > 57) .

+
+ +

Ta sekcja pozwala zrobić dwie rzeczy:

+ + + +

+ +

Podłączanie Add-on Debuggera

+ +
+

Należy zauważyć, że obecnie do debugowania WebExtensions zaleca się korzystanie z Narzędzi Przeglądarki (Browser Toolbox) zamiast Add-on Debuggera. Szczegóły są opisane w artykule Debugowanie WebExtensions.

+
+ +

Sekcja Dodatki w zakładce about:debugging wyświetla wszystkie zainstalowane dodatki niewymagające restartu przeglądarki (lista może zawierać dodatki preinstalowane razem z Firefoxem). Przy każdym wyświetlonym dodatku znajduje się przycisk z etykietą "Debuguj".

+ +

Jeżeli ww. przycisk jest nieaktywny należy zaznaczyć checkboxa "Debugowanie dodatków." na górze sekcji.

+ +

Gdy klikniesz w przycisk "Debuguj" zobaczysz okno dialogowe z pytaniem o akceptację przychodzących połączeń. Kliknij "OK", a Add-on Debugger włączy się w oddzielnym oknie. Czasami okno debuggera może być schowane za głównym oknem Firefoxa.

+ +

{{EmbedYouTube("tGGcA3bT3VA")}}

+ +

By zobaczyć co możesz zrobić z Add-on Debuggerem zajrzyj do artykułu Add-on Debugger.

+ +
+

Przycisk "Włącz debugowanie" zmienia wartości ustawień devtools.chrome.enabled i devtools.debugger.remote-enabled. Obie opcje muszą mieć wartość true, żeby debugowanie było dostępne. Zaznaczenie checkboxa ustawia obie wartości na true, odznaczenie go ustawia obie wartości na false.

+ +

Można również zmodyfikować ustawienia bezpośrednio w about:config lub zaznaczając „Narzędzia debugowania chrome przeglądarki i dodatków” i „Debugowanie zdalne” w Ustawieniach Narzędzia dla programistów .

+
+ +

Ładowanie dodatku tymczasowego

+ +

Przycisk "Wczytaj tymczasowy dodatek" pozwala wczytać jakikolwiek dodatek (niewymagający restartu) z katalogu na dysku. Wystarczy kliknąć przycisk, wybrać folder zawierający pliki dodatku i zaznaczyć dowolny plik w tym katalogu. Dodatek tymczasowy będzie wyświetlany pod etykietą "Tymczaowe rozszerzenia".

+ +

Nie musisz pakować ani podpisywać dodatku. Będzie on zainstalowany do następnego restartu Firefoxa.

+ +

{{EmbedYouTube("sAM78GU4P34")}}

+ +

Największymi zaletami tej metody w porównaniu z instalacją dodatku z XPI są:

+ + + +

Aktualizacja dodatku tymczasowego

+ +

Co się dzieje jeśli zainstalujesz dodatek tym sposobem i zaktualizujesz jego pliki?

+ +

Przed Firefoxem 48

+ + + +
+

Należy pamiętać, że przed Firefox 48, ładowanie dodatek ponownie naciskając przycisk „Załaduj Temporary add-on” bez ponownego uruchamiania Firefox nie działa .

+
+ +

Firefox 48 r

+ + + +

Firefox 48 z roku:

+ + + +
+

Zauważ, że w Firefoksie 49 r, przycisk Odśwież jest dostępna tylko dla tymczasowych dodatków. zostanie ona wyłączona dla wszystkich innych dodatków.

+
+ +

Tabs

+ +

Firefox 49 roku, strona jest dostępna w Tabs about:debugging- to zapewnia pełną listę wszystkich debuggable otwartych kart w bieżącej instancji Firefox.

+ +

+ +

Każdy wpis ma zakładka Debug przycisk obok niego - po kliknięciu, to otworzy się zestaw narzędzi specyficznych dla tej zakładki, co pozwala na debugowanie że zawartość Tab.

+ +

+ +
+

Zauważ, że ta funkcja nie jest bezpośrednio przydatna do debugowania kart pulpitu - można otworzyć zestaw narzędzi do debugowania kartę już dosyć łatwo - ale to będzie znacznie bardziej przydatna, gdy about:debuggingzacznie obsługiwać zdalne debugowanie, a ta strona może zacząć notować kartach do debugowania na urządzeniu mobilnym przeglądarek symulatorów itp Zobacz {{bug (1212802)}} za ostatni na tej pracy.

+
+ +

Pracownicy

+ +

Strona Pracownicy pokazuje swoim pracownikom, podzielone w następujący sposób:

+ + + +

Można podłączyć narzędzi programistycznych do każdego pracownika, a także wysyłać powiadomień push do pracowników usług.

+ +

+ +

Pracownik serwisu stan

+ +

Z Firefoksa 52, lista pracowników służby pokazuje stan pracownika serwisu w jego cyklu życia . Trzy stany wyróżnia się:

+ + + +

+ +
+

Ta sekcja używa prostego ServiceWorker demo, którego gospodarzem w https://serviceworke.rs/push-simple/ .

+
+ +

pracownicy debugowania

+ +

Dla pracownika serwisu, jeśli jest już uruchomiony, zobaczysz dwa przyciski obok niej, oznaczony „Debug” i „push”. Jeśli nie jest już uruchomiony, zobaczysz jeden przycisk, oznaczony „Start”: Kliknij, aby rozpocząć pracownika serwisu.

+ +

Kliknięcie „Debug” łączy debugger JavaScript i konsolę do tego pracownika. Można ustawić punkty przerwania, krok za pomocą kodu, obserwować zmienne, ocenić kod i tak dalej:

+ +

{{EmbedYouTube("Z8ax79sHWDU")}}

+ +

pracownicy rejestrowanie

+ +

Po pierwsze, nie będzie widać żadnych pracowników wymienionych poniżej pracownicy usług lub udostępnionych Pracowników . Tak szybko, jak pracownik jest zarejestrowany, wykaz jest aktualizowany:

+ +

{{EmbedYouTube("wy4kyWFhFF4")}}

+ +
+

Przed Firefox 47, pracownicy usług zostały pokazane tylko wtedy, gdy zostały one faktycznie działa.

+
+ +

pracownicy usług Wyrejestrowywanie

+ +
+

Nowy Firefox 48.

+
+ +

Uruchamianie w Firefoksie 48, zobaczysz link o nazwie „wyrejestrować” obok każdego zarejestrowanego pracownika serwisu:

+ +

+ +

Kliknij link, aby wyrejestrować pracownika serwisu.

+ +

Wysyłanie zdarzeń wypychania do pracowników usług

+ +
+

Wysyłanie zdarzeń wypychania w about: debugowanie jest nowego w Firefoksie 47.

+
+ +

Do debugowania powiadomień Push, można ustawić punkt przerwania w wydarzeniu Push słuchacza. Jednakże, można również debugować powiadomienia push lokalnie, bez potrzeby serwera. Wystarczy kliknąć przycisk „push”, aby wysłać zdarzenie Push pracownikowi serwisu:

+ +

{{EmbedYouTube ( "62SkLyA-ZnO")}}

+ +

pracownicy usług nie są kompatybilne

+ +
+

Firefox 49+ komunikat ostrzegawczy zostanie wyświetlony w sekcji Obsługa Pracowników strony pracowników, jeżeli pracownicy usług są niezgodne z bieżącej konfiguracji przeglądarki, a zatem nie mogą być używane lub pozbawione błędów.

+ +

+
+ +

pracownicy usług mogą być niedostępne z kilku powodów:

+ + diff --git "a/files/pl/narz\304\231dzia/browser_toolbox/index.html" "b/files/pl/narz\304\231dzia/browser_toolbox/index.html" new file mode 100644 index 0000000000..b5a4fa88ce --- /dev/null +++ "b/files/pl/narz\304\231dzia/browser_toolbox/index.html" @@ -0,0 +1,40 @@ +--- +title: Browser Toolbox +slug: Narzędzia/Browser_Toolbox +translation_of: Tools/Browser_Toolbox +--- +

The Browser Toolbox enables you to debug add-ons and the browser's own JavaScript code rather than just web pages like the normal Toolbox.  The Browser Toolbox's context is the whole browser rather than just single page on a single tab.

+ +

Note:  If you want to debug a specific add-on that is restartless or SDK-based then try the Add-on Debugger.  Use the Browser Toolbox for add-ons that are neither.

+ +

Enabling the Browser Toolbox 

+ +
+

The Browser Toolbox is not enabled by default.  To enable it you need to check the settings "Enable chrome and addon debugging" and "Enable remote debugging".

+ +

To do this, open the Developer Tools Toolbox's Settings, go to the section "Advanced Settings", and check the settings "Enable chrome and addon debugging" and "Enable remote debugging".

+
+ +

Opening the Browser Toolbox

+ +

Open the Browser Toolbox through the menu button new fx menu and the menu items "Developer" then "Browser Toolbox". 

+ +

Click the menu item and you'll be presented with a dialog like this (this can be removed by setting the devtools.debugger.prompt-connection property to false):

+ +

Click OK, and the Browser Toolbox will open in its own window:

+ +

You'll see, and be able to debug, all the JavaScript files loaded by the browser itself and by any add-ons that are running. Altogether you will have access to the following developer tools:

+ + + +

Debugging chrome: and about: pages

+ +

From Firefox 37 onwards, you can debug chrome: and about: pages using the normal Debugger, just as if they were ordinary content pages.

diff --git "a/files/pl/narz\304\231dzia/debugger/how_to/index.html" "b/files/pl/narz\304\231dzia/debugger/how_to/index.html" new file mode 100644 index 0000000000..0ee1b834a1 --- /dev/null +++ "b/files/pl/narz\304\231dzia/debugger/how_to/index.html" @@ -0,0 +1,11 @@ +--- +title: How to +slug: Narzędzia/Debugger/How_to +tags: + - NeedsTranslation + - TopicStub +translation_of: Tools/Debugger/How_to +--- +

These articles describe how to use the debugger.

+ +

{{ ListSubpages () }}

diff --git "a/files/pl/narz\304\231dzia/debugger/index.html" "b/files/pl/narz\304\231dzia/debugger/index.html" new file mode 100644 index 0000000000..b81218619f --- /dev/null +++ "b/files/pl/narz\304\231dzia/debugger/index.html" @@ -0,0 +1,81 @@ +--- +title: Debugger +slug: Narzędzia/Debugger +translation_of: Tools/Debugger +--- +

 JavaScript Debugger pozwala przejść przez kod JavaScript i spawdzić lub zmienić jego stan, aby pomóc wyśledzić błędy.

+ +

Można go używać do debugowania kodu. Działa lokalnie w Firefoksie lub pracuje zdalnie, na przykład w urządzeniu Firefox OS lub w przeglądarce Firefox na Androida. Zobacz zdalne debugowanie by nauczyć się jak przełączyć debuggera do trybu zdalnego.

+ +

{{EmbedYouTube("sK8KU8oiF8s")}}

+ +
+

Użytkownik interfejsu Tour

+ +

Aby odnaleźc drogę debuggera, oto szybkie zwiedzanie UI.

+ +
+

Jak to zrobić?

+ +

Aby dowiedzieć się co można zrobić z użyciem debuggera, zobacz nastepujacy przewodnik:

+ +
+ + + +
+ +
+

Referencje

+ +
+
+
+
Keyboard shortcuts
+
 
+
+
+ +
+
+
Settings
+
 
+
+
+
+ +

 

diff --git "a/files/pl/narz\304\231dzia/index.html" "b/files/pl/narz\304\231dzia/index.html" new file mode 100644 index 0000000000..8f9560929a --- /dev/null +++ "b/files/pl/narz\304\231dzia/index.html" @@ -0,0 +1,211 @@ +--- +title: Narzędzia dla programistów Firefox +slug: Narzędzia +tags: + - Narzędzia +translation_of: Tools +--- +
{{ToolsSidebar}}
+ +

Examine, edit, and debug HTML, CSS, and JavaScript on the desktop and on mobile.

+ +

If you are looking for information on using the web developer tools available in Firefox, you've come to the right place — this page provides links to detailed information on all of the core tools and additional tools, and further information such as how to connect to and debug Firefox for Android, how to extend the devtools, and how to debug the browser as a whole.

+ +

Please explore the links found in the sidebar, and further down the page. If you have any feedback or questions about the devtools, send us messages on our mailing list or IRC channel (see the community links near the bottom of the page). If you have any feedback or questions specifically about the documentation, the MDN discourse is a good place to post.

+ +
+

Note: If you are just getting started with web development and using developer tools, our learning web development docs will help you — see Getting started with the Web and What are browser developer tools? for good starting points.

+
+ +

The Core Tools

+ +

You can open the Firefox Developer Tools from the menu by selecting Tools > Web Developer > Toggle Tools or use the keyboard shortcut Ctrl + Shift + I or F12 on Windows and Linux, or Cmd + Opt + I on macOS.

+ +

The ellipsis menu on the right-hand side of Developer Tools, contains several commands that let you perform actions or change tool settings.

+ +

+ + + + + + + + + + + + + + + + + + + + + + + + +
This button only appears when there are multiple iframes on a page. Click it to display a list of the iframes on the current page and select the one with which you want to work.
Click this button to take a screenshot of the current page. (Note: This feature is not turned on by default and must be enabled in settings before the icon will appear.)
Toggles Responsive Design Mode.
Opens the menu that includes docking options, the ability to show or hide the split console, and Developer Tools settings. The menu also includes links to the documentation for Firefox Web Tools and the Mozilla Community.
Closes the Developer Tools
+ +
+
+

Page Inspector

+ +

The all-new Inspector panel in Firefox 57.

+ +

View and edit page content and layout. Visualise many aspects of the page including the box model, animations, and grid layouts.

+
+ +
+

Web Console

+ +

The all-new Console in Firefox 57.

+ +

See messages logged by a web page and interact with the page using JavaScript.

+
+
+ +
+
+

JavaScript Debugger

+ +

The all-new Firefox 57 Debugger.html

+ +

Stop, step through, examine, and modify the JavaScript running in a page.

+
+ +
+

Network Monitor

+ +

The Network panel in Firefox 57 DevTools.

+ +

See the network requests made when a page is loaded.

+
+
+ +
+
+

Performance Tools

+ +

Performance Tools in Firefox 57 Developer Tools

+ +

Analyze your site's general responsiveness, JavaScript, and layout performance.

+
+ +
+

Responsive Design Mode

+ +

Responsive Design mode in Firefox 57.

+ +

See how your website or app will look and behave on different devices and network types.

+
+
+ +
+
+

Accessibility inspector

+ +

Performance Tools in Firefox 57 Developer Tools

+ +

Provides a means to access the page's accessibility tree, allowing you to check what's missing or otherwise needs attention.

+
+ +
+
+ +
+

Note: The collective term for the UI inside which the DevTools all live is the Toolbox.

+
+ +

More Tools

+ +

These developer tools are also built into Firefox. Unlike the "Core Tools" above, you might not use them every day.

+ +
+
+
Memory
+
Figure out which objects are keeping memory in use.
+
Storage Inspector
+
Inspect cookies, local storage, indexedDB, and session storage present in a page.
+
DOM Property Viewer
+
Inspect the page's DOM properties, functions, etc.
+
Eyedropper
+
Select a color from the page.
+
Scratchpad
+
A text editor built into Firefox that lets you write and execute JavaScript.
+
Style Editor
+
View and edit CSS styles for the current page.
+
Taking screenshots
+
Take a screenshot of the entire page or of a single element.
+
Measure a portion of the page
+
Measure a specific area of a web page.
+
Rulers
+
Overlay horizontal and vertical rulers on a web page
+
+
+ +
+
+

+ +

For the latest developer tools and features, try Firefox Developer Edition.

+ +

Download Firefox Developer Edition

+
+ +
+
+ +

Connecting the Developer Tools

+ +

If you open the developer tools using keyboard shortcuts or the equivalent menu items, they'll target the document hosted by the currently active tab. But you can attach the tools to a variety of other targets, too, both within the current browser and in different browsers or even different devices.

+ +
+
+
about:debugging
+
Debug add-ons, content tabs, and workers running in the browser.
+
Connecting to Firefox for Android
+
Connect the developer tools to an instance of Firefox running on an Android device.
+
Connecting to iframes
+
Connect the developer tools to a specific iframe in the current page.
+
Connecting to other browsers
+
Connect the developer tools to Chrome on Android and Safari on iOS.
+
+
+ +

Debugging the browser

+ +

By default, the developer tools are attached to a web page or web app. But you can also connect them to the browser as a whole. This is useful for browser and add-on development.

+ +
+
+
Browser Console
+
See messages logged by the browser itself and by add-ons, and run JavaScript code in the browser's scope.
+
Browser Toolbox
+
Attach the Developer Tools to the browser itself.
+
+
+ +

Extending the devtools

+ +

For information on extending the Firefox DevTools, see Extending the developer tools over in the Browser Extensions section of MDN.

+ +

Migrating from Firebug

+ +

Firebug has come to the end of its lifespan (see Firebug lives on in Firefox DevTools for details of why), and we appreciate that some people will find migrating to another less familiar set of DevTools to be challenging. To ease a transition from Firebug to the Firefox developer tools, we have written a handy guide — Migrating from Firebug.

+ +

Contribute

+ +

If you want to help improve the developer tools, these resources will get you started.

+ +
+
+
Get Involved
+
Our developer documentation explains how to get involved.
+
bugs.firefox-dev.tools
+
A tool helping to find bugs to work on.
+
+
diff --git "a/files/pl/narz\304\231dzia/page_inspector/how_to/index.html" "b/files/pl/narz\304\231dzia/page_inspector/how_to/index.html" new file mode 100644 index 0000000000..29373ef1b7 --- /dev/null +++ "b/files/pl/narz\304\231dzia/page_inspector/how_to/index.html" @@ -0,0 +1,13 @@ +--- +title: How to +slug: Narzędzia/Page_Inspector/How_to +tags: + - NeedsTranslation + - TopicStub +translation_of: Tools/Page_Inspector/How_to +--- +

Links for various HOW TO's can be found here. These links describe in depth the HOW TO techniques.

+ +

{{ ListSubpages () }}

+ +

 

diff --git "a/files/pl/narz\304\231dzia/page_inspector/how_to/open_the_inspector/index.html" "b/files/pl/narz\304\231dzia/page_inspector/how_to/open_the_inspector/index.html" new file mode 100644 index 0000000000..4d4b025c45 --- /dev/null +++ "b/files/pl/narz\304\231dzia/page_inspector/how_to/open_the_inspector/index.html" @@ -0,0 +1,15 @@ +--- +title: Otwórz Inspektora +slug: Narzędzia/Page_Inspector/How_to/Open_the_Inspector +translation_of: Tools/Page_Inspector/How_to/Open_the_Inspector +--- +

Istnieją dwie główne ścieżki do otworzenia Inspektora:

+ + + +

Inspektor pojawi się w oknie przeglądarki:

+ +

Aby odnaleźć się w Inspektorze, zobacz Podróż przez UI.

diff --git "a/files/pl/narz\304\231dzia/page_inspector/index.html" "b/files/pl/narz\304\231dzia/page_inspector/index.html" new file mode 100644 index 0000000000..336489b782 --- /dev/null +++ "b/files/pl/narz\304\231dzia/page_inspector/index.html" @@ -0,0 +1,58 @@ +--- +title: Inspektor Stron +slug: Narzędzia/Page_Inspector +translation_of: Tools/Page_Inspector +--- +
+

Użyj Inspektora Stron, aby badać i modyfikować HTML i CSS na stronie.

+ +

Możesz badać strony załadowane w lokalnej kopii programu Firefox oraz za pomocą zdalnego obiektu - takiego jak urządzenie z Firefox OS, bądź też program Firefox dla Androida. Zobacz zdalne debugowanie, by dowiedzieć się, jak połączyć narzędzia deweloperskie ze zdalnym obiektem.

+ +
+

Podróż przez Interfejs Użytkownika

+ +

Aby odnaleźć się w Inspektorze, zobacz szybką podróż przez UI.

+ +
+

How-to

+ +

Aby dowiedzieć się, co możesz robić za pomocą Inspektora, zobacz następujące przewodniki:

+ + + +
+

Odniesienie

+ + +
+ +
+
+
+
 
+
 
+
+
+
diff --git "a/files/pl/narz\304\231dzia/page_inspector/przewodnik_przez_ui/index.html" "b/files/pl/narz\304\231dzia/page_inspector/przewodnik_przez_ui/index.html" new file mode 100644 index 0000000000..c3c2375155 --- /dev/null +++ "b/files/pl/narz\304\231dzia/page_inspector/przewodnik_przez_ui/index.html" @@ -0,0 +1,108 @@ +--- +title: Przewodnik przez UI +slug: Narzędzia/Page_Inspector/Przewodnik_przez_UI +tags: + - Inspektor + - Narzędzia + - Przewodnik +translation_of: Tools/Page_Inspector/UI_Tour +--- +

Ten artykuł jest szybkim wprowadzeniem do głównych sekcji Interfejsu Użytkownika (UI) Inspektora Stron.

+ +

Obejmuje on trzy komponenty najwyższego poziomu UI Inspektora:

+ + + +

Ten przewodnik jest celowo tak krótki, jak to możliwe. Odnosi się on do różnych innych przewodników How-To dla szczegółów, jak pracować z Inspektorem.

+ +

Przycisk "Zaznacz element"

+ +

Inspektor podaje Ci dokładne informacje o aktualnie zaznaczonym elemencie. Przycisk "Zaznacz element" jest jedną z możliwości, które pozwalają zaznaczyć element do sprawdzenia:

+ +

+ +

Pamiętaj, że jest to część tzw. main toolbox toolbar, więc przycisk ten jest dostępny z dowolnego narzędzia, nie tylko z Inspektora.

+ +

Aby dowiedzieć się, jak zaznaczyć element, zobacz przewodnik o zaznaczaniu elementu.

+ +

Sekcja HTML

+ +

Inspektor jest podzielony na dwie części. Lewa część Inspektora to sekcja HTML (na obrazku: HTML pane)

+ +

+ +

Aby dowiedzieć się więcej o budowie sekcji HTML, zobacz przewodnik o badaniu i edytowaniu HTML.

+ +

Sekcja CSS

+ +

Prawa część Inspektora to sekcja CSS (na obrazku: CSS pane):

+ +

Sekcja CSS jest podzielona 5 perspektyw:

+ + + +

Użyj zakładek w górnej części sekcji CSS, aby przełączać się pomiędzy różnymi widokami.

+ +

Widok Reguł

+ +

Widok Reguł wyświetla wszystkie reguły pasujące do zaznaczonego elementu, w kolejności od najbardziej do najmniej specyficznych:

+ +

+ +

Zobacz Badaj i edytuj CSS dla dalszych szczegółów.

+ +

Widok Wyliczony

+ +

Widok Wyliczony pokazuje całe wyliczone CSS dla zaznaczonego elementu.

+ +

+ +

Zobacz Badaj i edytuj CSS dla dalszych szczegółów.

+ +

Widok Czcionek

+ +
+

Zaczynając od Firefoksa 47, widok Czcionek jest domyślnie wyłączony. Pracujemy nad bardziej funkcjonalnym zamiennikiem.

+ +

Na tą chwilę, jeśli chcesz zobaczyć widok Czcionek, odwiedź about:config, znajdź preferencję devtools.fontinspector.enabled i ustaw ją na true.

+
+ +

Widok Czcionek pokazuje wszystkie czcionki na stronie wraz z przykładami ich użycia, które można edytować.

+ +

+ +

Odwiedź stronę Zobacz Czcionki dla dalszych szczegółów.

+ +

Widok Modelu Pudełkowego

+ +

Widok Modelu Pudełkowego pokazuje edytowalny widok modelu pudełkowego zaznaczonego elementu.

+ +

+ +

Zabacz Badaj i edytuj model pudełkowy dla dalszych szczegółów.

+ +

Widok Animacji

+ +

Widok Animacji pozwala zobaczyć szczegóły dowolnej animacji zastosowanej w zaznaczonym elemencie, oraz udostępnia kontroler do ich wstrzymania:

+ +

 

+ +

+ +

Zobacz Pracuj z animacjami dla dalszych szczegółów.

+ +

Pokaż/ukryj sekcję CSS

+ +

Począwszy od Firefoksa 40 w pasku narzędzi istnieje przycisk, za pomocą którego możesz pokazać lub ukryć sekcję CSS:

+ +

diff --git "a/files/pl/narz\304\231dzia/performance/flame_chart/index.html" "b/files/pl/narz\304\231dzia/performance/flame_chart/index.html" new file mode 100644 index 0000000000..1edebd4d01 --- /dev/null +++ "b/files/pl/narz\304\231dzia/performance/flame_chart/index.html" @@ -0,0 +1,103 @@ +--- +title: Flame Chart +slug: Narzędzia/Performance/Flame_Chart +translation_of: Tools/Performance/Flame_Chart +--- +
+

The Flame Chart shows you the state of the JavaScript stack for your code at every millisecond during the performance profile.

+ +

This gives you a way to know exactly which function was executing at any point during the recording, how long it ran for, and where it was called from.

+
+ +

The Call Tree and the Flame Chart are both used to analyze your site's JavaScript, and they both use the same data: a sample of the JavaScript engine's stack, taken periodically during the recording.

+ +

But while the Call Tree organizes this data to show you where your program is spending most time in aggregate across the recording, the Flame Chart uses it to show you when in the recording particular functions are executing. Essentially it shows you the state of the call stack at any given point during the recording.

+ +

Here's a screenshot showing the Flame Chart for a section of a profile:

+ +

+ +

First of all, you'll see that, in the recording overview pane, we've selected a small slice of the recording to view in the Flame Chart. The Flame Chart displays a lot of data, so to get readable results, it's usually necessary to zoom in.

+ +

In the Flame Chart view itself, along the X-axis is time. The screenshot above covers the period from 1435ms to a little past 1465ms. Along the Y-axis are the functions on the call stack at that point in time, with the top-level at the top, and the leaf function at the bottom. Functions are color-coded to make them easier to distinguish.

+ +

This gives you a way to know exactly which function was executing at any point during the recording, how long it ran for, and where it was called from.

+ +

Zooming and panning

+ +

To work effectively with the Flame Chart, you'll need to be able to navigate it. There are two main controls you can use to navigate the Flame Chart:

+ + + + + + + + + + + + +
Zoom: increase/decrease the selected portion of the complete profile that's displayed in the Flame Chart +

1) Mouse wheel up/down in the Flame Chart.

+ +

2) Trackpad 2 fingers up/down in the Flame Chart.

+
Pan: move the selected portion of the complete profile left and right +

1) Click and drag the selected portion in the recording overview pane.

+ +

2) Click and drag anywhere in the Flame Chart.

+
+ +

{{EmbedYouTube("BzfkBRFucp8")}}

+ +

An example

+ +

To see how the Flame Chart can reveal the behavior of your program, we'll look at a simple example. We'll use the same example as in the Call Tree page: a program that compares three different sorting algorithms. There's a separate page that gives an overview of this program's structure.

+ +

We'll use the same profile file as that used in the Call Tree page. In the call tree page, we figured out that the program call graph in that profile, and the associated sample count, looked like this:

+ +
sortAll()                         //    8
+
+    -> sort()                     //   37
+
+        -> bubbleSort()           // 1345
+
+            -> swap()             //  252
+
+        -> selectionSort()        //  190
+
+            -> swap()             //    1
+
+        -> quickSort()            //  103
+
+            -> partition()        //   12
+ +

First, we'll just select the whole section in which the program was active:

+ +

+ +

At the top, colored purple, is the sortAll() call, running throughout the program from start to finish. Underneath that, colored olive-green, are the calls it's making to sort(). Underneath that, like the teeth of a comb, are all the calls being made to each sorting algorithm.

+ +

Let's zoom in:

+ +

+ +

This slice is about 140 ms long, and shows us more details of the functions being called by sort(). The sort() code is just this:

+ +
function sort(unsorted) {
+  console.log(bubbleSort(unsorted));
+  console.log(selectionSort(unsorted));
+  console.log(quickSort(unsorted));
+}
+ +

The markers labeled "bubb..." and colored olive-green are presumably bubbleSort(). The ones colored plain green are presumably the other sort functions. Even at a glance, we can see that the bubble sort blocks are much wider (of a longer duration) than the others.

+ +

We can also see some functions being called from bubbleSort(), colored purple.

+ +

Let's zoom in one more time:

+ +

+ +

This slice is about 20ms long. We can see that the purple markers underneath bubbleSort() are the calls to swap(). If you counted them all, the Call Tree view tells us that you'd see 253 of them. All the ones in this zoom are underneath bubbleSort(), but according to the Call Tree view, the profile does contain one under selectionSort().

+ +

We can also see that two of the green markers are for selectionSort() and quickSort(), but we're also seeing calls to platform (Gecko) code in between our calls to the sorting functions. It seems very likely that this is from the console.log() calls in sort().

diff --git "a/files/pl/narz\304\231dzia/performance/index.html" "b/files/pl/narz\304\231dzia/performance/index.html" new file mode 100644 index 0000000000..346399027f --- /dev/null +++ "b/files/pl/narz\304\231dzia/performance/index.html" @@ -0,0 +1,97 @@ +--- +title: Performance +slug: Narzędzia/Performance +tags: + - NeedsTranslation + - TopicStub +translation_of: Tools/Performance +--- +

The Performance tool gives you insight into your site's general responsiveness, JavaScript and layout performance. With the Performance tool you create a recording, or profile, of your site over a period of time. The tool then shows you an overview of the things the browser was doing to render your site over the profile, and a graph of the frame rate over the profile.

+ +

You get four sub-tools to examine aspects of the profile in more detail:

+ + + +

{{EmbedYouTube("WBmttwfA_k8")}}

+ +
+

Getting started

+ +
+
+
+
UI Tour
+
+

To find your way around the Performance tool, here's a quick tour of the UI.

+
+
+
+ +
+
+
How to
+
Basic tasks: open the tool, create, save, load, and configure recordings
+
+
+
+ +
+

Components of the Performance tool

+ +
+
+
+
Frame rate
+
Understand your site's overall responsiveness.
+
Call Tree
+
Find bottlenecks in your site's JavaScript.
+
Allocations
+
See the allocations made by your code over the course of the recording.
+
+
+ +
+
+
Waterfall
+
Understand the work the browser's doing as the user interacts with your site.
+
Flame Chart
+
See which JavaScript functions are executing, and when, over the course of the recording.
+
 
+
+
+
+ +
+

Scenarios

+ +
+
+
+
Animating CSS properties
+
Uses the Waterfall to understand how the browser updates a page, and how animating different CSS properties can affect performance.
+
 
+
+
+ +
+
+
Intensive JavaScript
+
Uses the frame rate and Waterfall tools to highlight performance problems caused by long-running JavaScript, and how using workers can help in this situation.
+
+
+
+ +

 

+ +
+
+
 
+
+
+ +

 

diff --git "a/files/pl/narz\304\231dzia/profiler/index.html" "b/files/pl/narz\304\231dzia/profiler/index.html" new file mode 100644 index 0000000000..be68c3b552 --- /dev/null +++ "b/files/pl/narz\304\231dzia/profiler/index.html" @@ -0,0 +1,95 @@ +--- +title: JavaScript Profiler +slug: Narzędzia/Profiler +translation_of: Tools/Performance +--- +

Use the Profiler tool to find bottlenecks in your JavaScript code. The Profiler periodically samples the current JavaScript call stack and compiles statistics about the samples.

+

You can launch the Profiler by selecting "Profiler" from the "Web Developer" menu. You'll find the "Web Developer" menu under the "Tools" menu on Linux and OS X, and directly under the "Firefox" menu on Windows.

+

The Toolbox will open, with the Profiler selected.

+

Sampling Profilers

+

The JavaScript profiler is a sampling profiler. This means that it periodically samples the state of the JavaScript engine, and records the stack for the code executing at the time the sample was taken. Statistically, the number of samples taken in which we were executing a particular function corresponds to the amount of time the browser is spending executing it, so you can identify bottlenecks in your code.
+
+ For example, consider a program like this:

+
function doSomething() {
+  var x = getTheValue();
+  x = x + 1;                   // -> sample A
+  logTheValue(x);
+}
+
+function getTheValue() {
+  return 5;
+}
+
+function logTheValue(x) {
+ console.log(x);               // -> sample B, sample C
+}
+
+doSomething();
+

Suppose we run this program with the profiler active, and in the time it takes to run, the profiler takes three samples, as indicated in the inline comments above.

+

They're all taken from inside doSomething(), but the second two are inside the logTheValue() function called by doSomething(). So the profile would consist of three stack traces, like this:

+
Sample A: doSomething()
+Sample B: doSomething() > logTheValue()
+Sample C: doSomething() > logTheValue()
+

This obviously isn't enough data to tell us anything, but with a lot more samples we might be able to conclude that logTheValue() is the bottleneck in our code.

+

Creating a profile

+

Click the stopwatch button in the Profiler to start recording samples. When Profiler is recording, the stopwatch button will be highlighted. Click on it again to stop recording and save the new profile:

+

+

Once you've clicked "Stop", the new profile will open automatically:

+

+

This pane's divided into two parts:

+ +

Analyzing a profile

+

The profile is split into two parts:

+ +

Profile timeline

+

The profile timeline occupies the top part of the profile display:

+

The horizontal axis is time, and the vertical axis is call stack size at that sample. Call stack represents the amount of active functions at the time when the sample was taken.

+

Red samples along the chart indicate the browser was unresponsive during that time, and a user would notice pauses in animations and responsiveness. If a profile has red samples, consider breaking this code up into several events, and look into using requestAnimationFrame and Workers.

+

You can examine a specific range within the profile by clicking and dragging inside the timeline:

+

+

A new button then appears above the timeline labeled "Sample Range [AAA, BBB]". Clicking that button zooms the profile, and the details view underneath it, to that timeslice:

+


+

+

Profile details

+

The profile details occupy the bottom part of the profile display:

+

When you first open a new sample, the sample pane contains a single row labeled "(total)", as in the screenshot above. If you click the arrow next to "(total)", you'll see a list of all the top-level functions which appear in a sample.

+

+

Running time shows the total number of samples in which this function appeared1, followed by the percentage of all samples in the profile in which this function appeared. The first row above shows that there were 2021 samples in the entire profile, and the second row shows that 1914, or 94.7%, of them were inside the detectImage() function.

+

Self shows the number of samples in which the sample was taken while executing this function itself, and not a function it was calling. In the simple example above, doSomething() would have a Running time of 3 (samples A, B, and C), but a Self value of 1 (sample A).

+

The third column gives the name of the function along with the filename and line number (for local functions) or basename and domain name (for remote functions). Functions in gray are built-in browser functions: functions in black represent JavaScript loaded by the page. If you hover the mouse over a row you'll see an arrow to the right of the function's identifier: click the arrow and you'll be taken to the function source.

+

Expanding the call tree

+

In a given row, if there are any samples taken while we were in a function called by this function (that is, if Running Time is greater than Self for a given row) then an arrow appears to the left of the function's name, enabling you to expand the call tree.

+

In the simple example above, the fully-expanded call tree would look like this:

+ + + + + + + + + + + + + + + + + + +
Running TimeSelf 
3            100%1doSomething()
2              67%2logTheValue()
+

To take a more realistic example: in the screenshot below, looking at the second row we can see that 1914 samples were taken inside the detectImage() function. But all of them were taken in functions called by detectImage() (the Self cell is zero). We can expand the call tree to find out which functions were actually running when most of the samples were taken:

+

+

This tells us that 6 samples were taken when we were actually executing detectAtScale(), 12 when we were executing getRect() and so on.

+

Footnotes

+
    +
  1. If the function is called multiple times from different sources, it will be represented multiple times in the Profiler output. So generic functions like forEach will appear multiple times in the call tree.
  2. +
+

 

diff --git "a/files/pl/narz\304\231dzia/storage_inspector/index.html" "b/files/pl/narz\304\231dzia/storage_inspector/index.html" new file mode 100644 index 0000000000..1638fcd918 --- /dev/null +++ "b/files/pl/narz\304\231dzia/storage_inspector/index.html" @@ -0,0 +1,206 @@ +--- +title: Storage Inspector +slug: Narzędzia/Storage_Inspector +translation_of: Tools/Storage_Inspector +--- +
{{ToolsSidebar}}
+ +

The Storage Inspector enables you to inspect various types of storage that a web page can use. Currently it can be used to inspect the following storage types:

+ + + +

For the time being, the Storage Inspector only gives you a read-only view of storage. But we're working to let you edit storage contents in future releases.

+ +

Opening the Storage Inspector

+ +

You can open the Storage Inspector by selecting "Storage Inspector" from the Web Developer submenu in the Firefox Menu Panel (or Tools menu if you display the menu bar or are on macOS), or by pressing its Shift + F9 keyboard shortcut.

+ +

The Toolbox will appear at the bottom of the browser window, with the Storage Inspector activated. It's just called "Storage" in the Developer Toolbox.

+ +

+ +

Storage Inspector User Interface

+ +

The Storage Inspector UI is split into three main components:

+ + + +

+ +

Storage tree

+ +

The storage tree lists all the storage types that the Storage Inspector can inspect:

+ +

+ +

Under each type, objects are organized by origin. For cookies, the protocol does not differentiate the origin. For Indexed DB or local storage an origin is a combination of protocol + hostname. For example, "http://mozilla.org" and "https://mozilla.org" are two different origins so local storage items cannot be shared between them.

+ +

Under "Cache Storage", objects are organized by origin and then by the name of the cache:

+ +

+ +

IndexedDB objects are organized by origin, then by database name, then by object store name:

+ +

+ +

With the Cookies, Local Storage, and Session Storage types, there's only one level in the hierarchy, so stored items are listed directly under each origin:

+ +

+ +

You can click on each item in the tree to expand or collapse its children. The tree is live, so if a new origin gets added (by adding an iframe, for example), it will be added to each storage type automatically.

+ +

Clicking on a tree item will display detailed information about that item in the Table Widget on the right. For example, clicking on an origin which is a child of the Cookies storage type will show all the cookies belonging to that domain.

+ +

Table Widget

+ +

The table widget displays a list of all the items corresponding to the selected tree item (be it an origin, or database) are listed. Depending on the storage type and tree item, the number of columns in the table might differ.

+ +

All the columns in a Table Widget are resizable. You can hide and show columns by context-clicking on the table header and selecting the columns you want to see:

+ +

+ + + +

There's a search box at the top of the Table Widget:

+ +

+ +

This filters the table to show only items which match the search term. Items match the search term if any of their fields (including fields whose columns you have hidden) contain the search term.

+ +

You can use Ctrl + F (Cmd + F on a Mac) to focus the search box.

+ +

Add and refresh storage

+ +

You'll also have buttons available to add a new storage entry or refresh the view of the currently viewed storage type where applicable (you can't add new entries to IndexedDB or Cache):

+ +

+ + + +

When you select any row in the Storage table widget, the sidebar is shown with details about that row. If a cookie is selected, it will list all the details about that cookie.

+ +

The sidebar can parse the value of the cookie or local storage item or an IndexedDB item and convert it into a meaningful object instead of just a string. For example:

+ + + +

The shown values can also be filtered using the search box at the top of the sidebar.

+ +

Cache Storage

+ +

Under the Cache Storage type you can see the contents of any DOM caches created using the Cache API. If you select a cache, you'll see a list of the resources it contains. For each resource, you'll see:

+ + + +

+ +

Cookies

+ +

When you select an origin inside the Cookies storage type from the storage tree, all the cookies present for that origin will be listed in the table widget. The cookies table has the following columns:

+ + + +
+

Note: Some of the columns are not shown by default — to change the column display, right-click on the existing table headings and use the resulting context menu to show/hide the columns.

+
+ +

You can edit cookies by double-clicking inside cells in the Table Widget and editing the values they contain, and add new cookies by clicking the "Plus" (+) button and then editing the resulting new row to the value you want.

+ +

Context menu

+ +

The context menu for each cookie includes the following commands:

+ + + +

+ +

Local storage / Session storage

+ +

When an origin corresponding to local storage or session storage is selected, the table will list the name and value of all the items corresponding to local storage or session storage.

+ +

You can edit local and session storage items by double-clicking inside cells in the Table Widget and editing the values they contain:

+ +

{{EmbedYouTube("UKLgBBUi11c")}}

+ +

You can delete local storage and session storage entries using the context menu:

+ +

+ +

In Firefox 68 and later, you can also delete local and session storage entries by selecting the item and pressing the backspace key.

+ +

Finally, you can add new storage items by clicking the "Plus" (+) button and then editing the resulting new row to the value you want.

+ +

IndexedDB

+ +

When you select an origin inside the Indexed DB storage type in the storage tree, the table lists the details of all the databases present for that origin.

+ +
+

Note: The data shown in an IndexedDB database is a snapshot of the data as it was when you opened the Storage Inspector tool.

+
+ +

Databases have the following details:

+ + + +

When an IndexedDB database is selected in the storage tree, details about all the object stores are listed in the table. Any object store has the following details:

+ + + +

+ +

When an object store is selected in the storage tree, all the items in that object store are listed in the table. All items have a key and a value associated with them.

+ +

You can delete an IndexedDB database using the context menu in the Storage tree view:

+ +

+ +

If the database cannot be deleted (most commonly because there are still active connections to the database), a warning message will be displayed in the Storage Inspector:

+ +

You can use the context menu in the table widget to delete all items in an object store, or a particular item:

+ +

diff --git "a/files/pl/narz\304\231dzia/tools_toolbox/index.html" "b/files/pl/narz\304\231dzia/tools_toolbox/index.html" new file mode 100644 index 0000000000..02001ef0a8 --- /dev/null +++ "b/files/pl/narz\304\231dzia/tools_toolbox/index.html" @@ -0,0 +1,113 @@ +--- +title: Toolbox +slug: Narzędzia/Tools_Toolbox +translation_of: Tools/Tools_Toolbox +--- +

The Toolbox provides a single home for most of the developer tools that are built into Firefox. You can open it by selecting "Toggle Tools" from the Web Developer menu (under "Tools" on OS X and Linux, or "Firefox" on Windows), or by activating any tool hosted in it (for example, the JavaScript Debugger or the Page Inspector). Alternatively you can press Ctrl + Shift + I on Windows and Linux, or Cmd + Opt + I on OS X.

+

By default, the window appears docked to the bottom side of the Firefox window, but you can detach it if you like. This is what it looks like when it's docked:

+

The window itself is split into two parts: a toolbar along the top, and a main pane underneath:

+

+

Toolbar

+

The toolbar contains controls to activate a particular tool, to dock/float the window, and to close the window.

+

+

Node picker

+

On the far left there's a button to activate the node picker. This lets you select a page element for inspection. See "Selecting elements".

+

Toolbox-hosted tools

+

Then there is an array of labeled buttons which enables you to switch between the different tools hosted by the Toolbox. The array may include the following tools:

+ +

Note that not all the hosted tools are always listed here: only the tools actually available in this context are shown (for example, not all tools support remote debugging yet, so if the debugging target is not the Firefox instance that launched the window, not all the hosted tools will be shown).

+

Extra tools

+

Next there's an array of buttons that can be added or removed in the developer tool settings. By default this array includes:

+ +

The following tools are not included in the toolbar by default, but you can add them in the settings:

+ +

Toolbox controls

+

Finally there's a row of buttons to:

+ +

Settings

+

Clicking the "Settings" button () gives you access to settings for the Toolbox itself and for the tools it hosts:

+

+

Default Firefox Developer Tools

+

This group of checkboxes determines which tools are enabled in the toolbox. New tools are often included in Firefox but not enabled by default.

+

Available Toolbox Buttons

+

This group of checkboxes determines which "standalone tools" get buttons in the toolbar. This defaults to the node picker, the split console, and responsive design mode.

+

Firefox 32 adds a button to take a screenshot of the complete web page, which is unchecked by default.

+

Choose DevTools theme

+

This enables you to switch between a light and a dark theme:

+

+

Common preferences

+

Settings that apply to more than one tool. There's just one of these:

+ +

Inspector

+ +

Web Console

+ +

Style Editor

+ +

JavaScript Profiler

+ +

Editor Preferences

+

Preferences for the CodeMirror source editor, which is included in Firefox and used by several developer tools, including Scratchpad and the Style Editor.

+ +

Advanced settings

+ +

Main Pane

+

The content of the main pane in the window is entirely controlled by, and specific to, the hosted tool currently selected.

diff --git "a/files/pl/narz\304\231dzia/view_source/index.html" "b/files/pl/narz\304\231dzia/view_source/index.html" new file mode 100644 index 0000000000..5781415e73 --- /dev/null +++ "b/files/pl/narz\304\231dzia/view_source/index.html" @@ -0,0 +1,82 @@ +--- +title: View Source +slug: Narzędzia/View_source +translation_of: Tools/View_source +--- +
{{ToolsSidebar}}
+ +

View Source lets you look at the HTML or XML source for the page you're viewing. To activate View Source:

+ + + +

The command opens a new tab with the source for the current page.

+ +

View Source features

+ +

View Source has three additional features, which can be accessed from the context menu in the View Source tab:

+ +

+ +
+
Go to Line
+
Scrolls to the specified line. If the number is higher than the lines in a file, you receive an error message.
+
Wrap Long Lines (toggle)
+
Wraps long lines to the width of the page.
+
Syntax Highlighting (toggle)
+
Applies syntax highlighting to the code.When syntax highlighting is on, View Source also highlights parsing errors in red. Hovering your mouse over errors displays a tooltip explaining the error.
+
+ +

+ +

This feature is useful when you're looking for HTML errors.

+ +

To access Go to Line from the keyboard, press Control + Option + L on macOS, or Alt + Shift + L on Windows or Linux.

+ + + +

It is possible to link to a particular line, by adding the #lineNNN anchor to the url the browser will jump to the NNN line.

+ +

For example view-source:https://www.mozilla.org/#line100

+ +

View Selection Source

+ +

If you select part of a web page and conext-click, you'll see a context menu item labeled "View Selection Source", that behaves just like "View Page Source", except you only see the source for the selection.

+ +

View MathML Source

+ +

If you context-click while the mouse is over some MathML, you'll see a context menu item labeled "View MathML Source": click it to see the MathML source.

+ +

Limitations of View Source

+ +

There are limitations to what View Source does for you that you need to be aware of.

+ +

Error reporter ≠ validator

+ +

View Source only reports parsing errors, not HTML validity errors. For example, putting a {{ HTMLElement("div") }} element as a child of a {{ HTMLElement("ul") }} element isn't a parse error, but it is not valid HTML. Therefore, this error will not be flagged in View Source. If you want to check that HTML is valid, you should use an HTML validator, such as the one offered by W3C.

+ +

Not all parse errors are reported

+ +

Even though all the reported errors are parse errors according to the HTML specification, not all parse errors are reported by View Source. Among the errors that don't get reported:

+ + + +

XML syntax highlighting

+ +

View Source uses the HTML tokenizer when highlighting XML source. While the tokenizer has support for processing instructions when highlighting XML source, that's the only XML-specific capability provided. Because of this, doctypes that have an internal subset are not highlighted correctly, and entity references to custom entities are also not highlighted correctly.

+ +

This mishighlighting can be seen by viewing the source of Firefox chrome files (such as XUL documents). However, this shouldn't be a problem in practice when viewing typical XML files.

+ +

See also

+ + diff --git "a/files/pl/narz\304\231dzia/walidatory/index.html" "b/files/pl/narz\304\231dzia/walidatory/index.html" new file mode 100644 index 0000000000..ee649caa20 --- /dev/null +++ "b/files/pl/narz\304\231dzia/walidatory/index.html" @@ -0,0 +1,45 @@ +--- +title: Walidatory +slug: Narzędzia/Walidatory +tags: + - Narzędzia +translation_of: Tools/Validators +--- +

 

+
Karty paneli bocznych nie są dostępne w tej chwili.
+Tune-up wizard odsyła z powrotem do devedge
+
+

Jeśli piszesz nowy kod, który nie waliduje się od razu, zobacz zgodne ze standardami narzędzia autorskie i developerskie.

+

Rozszerzenia Firefoksa - Walidatory

+

Quick Reference Sidebar Tabs

+

Zainstaluj DevEdge Toolbox Sidebars, by uzyskać szybki dostęp do odwołań sieciowych.

+

Checky

+

Checky dodaje podmenu do menu kontekstowego przeglądarek Netscape lub Mozilla, umożliwiając poddanie strony, którą aktualnie przeglądasz, osiemnastu różnym usługom walidacji i analizy.

+

Aplikacje i serwisy

+

DevEdge Web Tune-Up Wizard

+

Ten interfejs do serwisów W3C prowadzi autorów stron (od początkujących do średniozaawansowanych) przez proces aktualizacji zawartości, w celu obsługi przez Netscape 7.x, Mozilli i innych przeglądarek wspierających standardy W3C.

+

W3C HTML Validator

+

W3C HTML Validator podda walidacji każdą stronę WWW pod kątem zgodności ze standardami W3C HTML. Jest bardzo użyteczny przy wykrywaniu właściwego jak i nieprawidłowego użycia HTML.

+

W3C CSS Validator

+

W3C CSS Validator podda walidacji arkusz CSS w ramach strony internetowej lub zewnętrznego pliku pod kątem zgodności ze standardami W3C CSS.

+

W3C RDF Validator

+

RDF Validator podda walidacji pliki RDF/XML.

+ +

Narzędzie to sprawdzi odnośniki na podanej stronie.

+

HTML Tidy

+

HTML Tidy jest narzędziem, które może być wykorzystane do zgłaszania błędów na stronach HTML oraz do formatowania kodu stron internetowych w celu zwiększenia jego czytelności (część oprogramowania do tworzenia stron, jak HTML-Kit, zawiera wbudowany HTML Tidy, co czyni walidację prostą i szybką).

+

Serwisy w zakresie dostępności

+

Lynx Viewer

+

Sprawdza stronę internetową, używając wizualizacji Lynksa, umożliwia również walidację dostępności.

+

Bobby Accessibility Check

+

Usługa podda walidacji strony internetowe używając wytycznych dostępności, takich jak U.S. Section 508 i inne.

+
+

Informacje o dokumencie

+ +
+
+  
+

{{ languages( { "en": "en/Tools/Validators", "fr": "fr/Outils/Validateurs", "it": "it/Strumenti/Validatori" } ) }}

diff --git "a/files/pl/narz\304\231dzia/webide/index.html" "b/files/pl/narz\304\231dzia/webide/index.html" new file mode 100644 index 0000000000..0598fae682 --- /dev/null +++ "b/files/pl/narz\304\231dzia/webide/index.html" @@ -0,0 +1,467 @@ +--- +title: WebIDE +slug: Narzędzia/WebIDE +tags: + - Apps + - B2G + - Debugging + - Firefox OS + - NeedsTranslation + - TopicStub + - WebIDE + - tool +translation_of: Archive/WebIDE +--- +
+

WebIDE is available from Firefox 34 onwards.

+
+ +
+

WebIDE is the replacement for the App Manager. Like the App Manager, it enables you to run and debug Firefox OS apps using the Firefox OS Simulator or a real Firefox OS device.

+ +

However, it also provides an editing environment for you to create and develop Firefox OS apps, including a tree view of all the files in your app with the ability to edit and save them, and two app templates to help you get started.

+ +

Finally, WebIDE enables you to connect the Firefox Developer Tools to a number of other browsers, including Firefox for Android, Chrome on Android, and Safari on iOS. See the Remote Debugging page for instructions on how to connect to a specific browser.

+
+ +

With WebIDE, you first set up one or more runtimes. A runtime is an environment in which you'll run and debug the app. A runtime could be a Firefox OS device connected to the desktop over USB, or it could be a Firefox OS Simulator installed on the desktop itself.

+ +

Next, you create an app, or open an existing app. If you're creating a new app you start with a template that includes the directory structure and the minimum boilerplate you need to get started, or a more complete template that shows how to use a privileged API. WebIDE shows your app's files in a tree, and you can edit and save them using a built-in source editor. Of course, you don't have to use the built-in editor: you can develop your app entirely outside WebIDE, and only use it for debugging.

+ +

Finally, you can install the app in one of the runtimes and run it. You can then open the usual suite of developer tools - the Inspector, Console, JavaScript Debugger and so on - to examine and modify the running app.

+ +

System requirements

+ +

To develop and debug apps using WebIDE, all you need is Firefox version 33 or later. To test on a real Firefox OS device, you need a device running Firefox OS 1.2 or later, and a USB cable.

+ +

You can only use WebIDE for Firefox OS if you're targeting Firefox OS 1.2 or later.

+ +

Opening WebIDE

+ +

There are three ways to open WebIDE:

+ + + +

+ +

Here's what the WebIDE looks like:The dropdown on the left labeled "Open App" lets you open existing apps or create new ones. The dropdown on the right labeled "Select Runtime" lets you select a runtime or set up a new runtime.

+ +

The buttons in the middle run, stop, and debug the app: they are only enabled when you have opened an app and selected a runtime.

+ +

From Firefox 36, you can change the font size throughout WebIDE using the standard keyboard shortcuts (use Command instead of Control on OS X):

+ + + +

Setting up runtimes

+ +

Under the "Select Runtime" dropdown, runtimes are grouped into three types:

+ + + +

The first time you click the dropdown, you might not see any runtimes here:

+ +

The rest of this section describes how you can add some runtimes.

+ +

Connecting a Firefox OS device

+ +

Before you can connect a Firefox OS device, there's some setup you have to go through:

+ + + +
+

Linux only:

+ + +
+ +
+

Windows only:

+ + +
+ +

If there are any other Android devices connected to your computer, disconnect them. Now connect the device to the computer using USB. You should see the device appear under "USB DEVICES":

+ +

+ +

If you don't see your device, see the Troubleshooting page.

+ +

Connecting to Firefox for Android

+ +

From Firefox 36 onwards Android devices connected over USB and running Firefox for Android appear as a runtime under "USB devices". See the article on connecting to Firefox for Android from WebIDE.

+ +

Before Firefox 36, you can connect to Firefox for Android without using WebIDE at all, or can use WebIDE by setting up a custom remote runtime.

+ +

Adding a Simulator

+ +

The Firefox OS Simulator is a version of the higher layers of Firefox OS that simulates a Firefox OS device, but runs on the desktop. It runs in a window the same size as a Firefox OS device, includes the Firefox OS user interface and built-in apps, and simulates many of the Firefox OS device APIs.

+ +

This means that in many cases, you don't need a real device to test and debug your app.

+ +

The Simulator doesn't ship inside Firefox but as a Firefox add-on. If you click "Install Simulator" in the Runtimes dropdown menu, you will go to a page from which you can install Simulators for various versions of Firefox OS.

+ +

You can install as many as you like. Be patient, though: the Simulator may take a few minutes to download. Once you've installed some Simulators you can close this "Extra Components" window, and the Simulators you've installed appear as options in the Runtimes dropdown menu:

+ +

To learn more about the Simulator, see its documentation page.

+ +

Custom runtimes

+ +

Remote runtime

+ +

With a custom remote runtime you can use an arbitrary hostname and port to connect to the remote device.

+ +

Under the hood, Firefox OS devices and Android devices connect to the desktop using a program called the Android Debug Bridge, or ADB. By default, WebIDE uses an add-on called the ADB Helper: this simplifies the process for you by installing ADB and setting up port forwarding so the Firefox desktop tools can exchange messages with the device.

+ +

This is convenient in most cases, but sometimes you might want to use ADB outside of WebIDE: for example, you might be running ADB directly from the command line. In that case you'll connect to the device by specifying a host and port using the adb forward command (example: adb forward tcp:6000 localfilesystem:/data/local/debugger-socket).
+
+ If you then want to use WebIDE to connect as well, you should disable the ADB Helper add-on and connect WebIDE using the Custom runtime option, entering the host and port that you passed to adb forward (example: localhost:6000).

+ +

Also, before Firefox 36, the ADB Helper does not yet support connecting to Firefox for Android, so if you want to connect WebIDE to Firefox for Android, you'll need to set up your own port forwarding and use a custom runtime. See more about connecting to Firefox for Android using ADB prior to Firefox 36.

+ +

Valence-enabled runtimes

+ +

If you have the Valence add-on installed, you'll see three additional runtimes:

+ + + +

For instructions on how to connect to these runtimes, see the relevant entry in the Remote Debugging page.

+ +

Selecting a runtime

+ +

Once you've set up a runtime you can select it using the "Select Runtime" menu.

+ + + +

Now the "play" button in the center of the WebIDE toolbar is enabled: click it to install and run the app in the selected runtime.

+ +

Runtime menu items

+ +

When a runtime is selected, the Runtimes dropdown menu has up to five extra items:

+ +
+
Runtime Info
+
Information on the current runtime
+
Permissions Table
+
A table summarising app permissions for the current runtime, indicating, for each API and each app type, whether access is allowed (✓), denied (✗), or whether the user is prompted (!)
+
+ +
+
Device Preferences
+
A table listing, and letting you edit, the preferences that are made available in the runtime via the Preferences service. These are platform-level configuration values exposing the same set of data as Firefox's about:config (but for the device). Because these preferences are highly security-sensitive, you need to disable the DevTools restricted privileges setting before you can modify them.
+
Device Settings (new in Firefox 38/Firefox OS 3)
+
A table listing, and letting you edit, the settings that can be controlled in the Firefox OS Settings app. Most things on the device which have a UI control to change (volume, alarm, etc.) are found in Device Settings. Because these settings are less sensitive than the device preferences, you can modify them without removing the restricted privileges setting. However, since this feature is new in Gecko 38 you need the WebIDE in Firefox 38 and a nightly build of Firefox OS or the Simulator.
+
Screenshot
+
A command to take a screenshot from the runtime.
+
+ +

+ +

 

+ +

Creating and opening apps

+ +

Under the "Open App" menu you get three options: create a new app, open a packaged app, and open a hosted app:

+ +

+ +

Create a new app

+ +

Select "New App..." to create a new app. You'll see a dialog offering you a choice between two templates, "Privileged Empty App" and "Privileged App".

+ +

+ +

Both templates are from Mozilla's app template collection, and provide you with the basic structure you need to get started. The "Privileged App" shows how an app can use permissions to load cross-origin content.

+ +

Once you've selected a template you'll be asked to name the app and select a directory to store the files, and then the new app is opened in the project editor.

+ +

Open a packaged app

+ +

Select "Open Packaged App..." to open a packaged app. You'll be asked to select a directory containing the app's manifest, and the app will be opened in the project editor.

+ +

Open a hosted app

+ +

Select "Open Hosted App..." to open a hosted app. You'll be asked to enter a URL pointing to the app's manifest, and the app will be opened in the project editor.

+ +

Editing apps

+ +

The project editor provides an environment for editing apps. There's a tree view on the left of all the files in the app: you can add and delete files here using a context menu. There's an editor pane on the right.

+ +

The app summary page

+ +

When you first open or create an app, the editor pane is occupied by the app summary page, which is as shown below:

+ +

+ +

You can always get back to the app summary page by clicking on the root of the tree on the left.

+ +

Manifest validation

+ +

WebIDE automatically checks the manifest for certain common problems. If it finds a problem it indicates that the app is invalid and describes the problem in the app's summary:

+ +

+ +

Of course, you can edit the manifest.webapp file right in the project editor as well.

+ +

The source editor

+ +

WebIDE uses the CodeMirror source editor.

+ +

Source editor shortcuts

+ +

{{ Page ("en-US/docs/tools/Keyboard_shortcuts", "source-editor") }}

+ +

Code completion

+ +

When editing CSS and JavaScript, the editor provides autocomplete suggestions. CSS autocompletion is always enabled:

+ +

To display autocomplete suggestions in JavaScript press Control + Space:

+ +

+ +

Inline documentation

+ +

The editor also shows inline documentation for JavaScript. Press Shift + Space to see a popup containing documentation for the symbol your cursor is on:

+ +

+ +

Clicking the [docs] link in the popup will take you to the MDN page for the symbol.

+ +

Saving files

+ +

For changes to your files to take effect you need to save them. Files with unsaved changes get an asterisk next to their name in the tree view, and you can save files using the menu or Control+S (Command+S on Mac OS X).

+ +

Removing projects

+ +

To remove an app from WebIDE, go to the app summary page and click "Remove Project".

+ +

Running a custom build step

+ +
+

New in Firefox 37.

+
+ +

For some use cases you need to run a custom command before pushing your app to the device. For example, you might want to satisfy JavaScript dependencies or minify CSS, or use WebIDE to develop Gaia apps or Cordova apps, both of which require a custom build step.

+ +

From Firefox 37 you can do this by including a file called "package.json" in the root of your app. This is the same file that's used to package a node.js library, so you might already have one in the root of your project. If you don't, you can create one for this purpose.

+ +

Inside package.json, WebIDE looks for a property called "webide". The table below summarises the syntax of "webide":

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
webide   +

Object containing instructions for WebIDE.

+ +

This may contain two properties, both optional: "prepackage" and "packageDir".

+
 prepackage  +

Specifies a command-line command for WebIDE to run before pushing the app to the runtime.

+ +

This may be a string, in which case the command is just executed as-is, or may be an object which must contain "command", and may contain any of "env", "args", and "cwd".

+
  command +

The command to execute in the command shell.

+ +

For example: "echo".

+
  env +

Any environment variables to set.

+ +

This is specified as an array of strings in the form "NAME=value". For example: ["NAME=world"]

+
  args +

Any arguments to pass along with the command.

+ +

This is specified as an array of strings.

+
  cwd +

The directory from which to run the command.

+ +

This may be absolute or relative to the current directory.

+
 packageDir  +

The directory from which WebIDE should look for the app to push to the runtime.

+ +

Use this if you want the project in WebIDE to be the source from which to build a packaged app. The build step specified in prepackage would place the built app in an output directory, you will specify the output directory in packageDir, and WebIDE will install the app from that output directory rather than the project directory.

+ +

This property is optional, and if it's omitted WebIDE will package the app from the project root, just as if package.json was omitted.

+
+ +

Examples

+ +

A "package.json" to build a Gaia app:

+ +
{
+  "webide": {
+    "prepackage": {
+      "command": "make",
+      "env": ["APP=settings"],
+      "cwd": "../.."
+    },
+    "packageDir": "../../build_stage/settings/"
+  }
+}
+ +

A "package.json" for working with Cordova:

+ +
{
+  "webide": {
+    "prepackage": "cordova prepare",
+    "packageDir": "./platforms/firefoxos/www"
+  }
+}
+ +

Running and debugging apps

+ +

When you're ready to run the app, you need to select a runtime from the "Select Runtime" dropdown menu. If you don't have any available runtimes here, find out how to add some in Setting up runtimes.

+ +

The "play" button in the center of the WebIDE toolbar is now enabled: click it to install and run the app in the selected runtime:

+ +

To debug the app, click the "Pause" button and the Developer Tools Toolbox appears, connected to your app:

+ +

+ +
+

From Firefox 36 onwards, the "Pause" button is replaced with a wrench icon.

+
+ +

Exactly which tools you'll have available depends on the runtime, but you will at least have the basics: the Inspector, Console, JavaScript Debugger, Style Editor, Profiler and Scratchpad. Just as in a web page, any changes you make in the tools are visible immediately in the app, but are not persistent. Conversely, any changes you make in the editor pane can be saved straight back to disk, but are not visible without restarting the app.

+ +

Unrestricted app debugging (including certified apps, main process, etc.)

+ +

You can run the debugger against the simulator, b2g desktop, or a real device.

+ +

With the Simulator, if you click on the app dropdown menu while the runtime is selected, you can see and debug not only your app but all apps running in that runtime, including certified apps:

+ +

+ +


+ However, when connecting to a real device we have a security policy in force:

+ + + +

To remove this restriction:

+ + + +

To disable DevTools restricted privileges, connect to the runtime, and then, in the menu, go to Runtime > Runtime Info. The path then differs depending on what you are debugging against:

+ + + +

Now (or after a restart of the B2G desktop client) in WebIDE you should see all the apps on the device.

+ +
+

Note: As indicated above, to enable unrestricted privileges on a real device through WebIDE you'll need a rooted device. There is however a developer setting available in Firefox OS 2.2 onwards called Reset and enable full DevTools — when activated this will wipe all user data (for security reasons), reset the device, and enable unrestricted priviledges on any device.

+
+ +

Monitoring performance

+ +

If you're interested in the performance of your apps, there are a few ways to measure their impact on the runtime in WebIDE:

+ + + +

Troubleshooting

+ +

If you have any problems working with WebIDE, see the Troubleshooting page.

+ +

 

+ +

 

diff --git "a/files/pl/narz\304\231dzia/webide/troubleshooting/index.html" "b/files/pl/narz\304\231dzia/webide/troubleshooting/index.html" new file mode 100644 index 0000000000..52d8e180d9 --- /dev/null +++ "b/files/pl/narz\304\231dzia/webide/troubleshooting/index.html" @@ -0,0 +1,152 @@ +--- +title: WebIDE Troubleshooting +slug: Narzędzia/WebIDE/Troubleshooting +translation_of: Archive/WebIDE/Troubleshooting +--- +

Podłączanie urządzenia Firefox OS
+
+ Jeśli próbujesz podłączyć urządzenie Firefox OS do WebIDE i nie pokazuje się, oto kilka rzeczy, które można wypróbować:
+
+     
Sprawdź wersję Firefox OS: upewnij się, że urządzenie działa Firefox OS 1.2 / Boot2Gecko 1.2 lub wyższej. Aby sprawdzić wersję, przejdź do aplikacji Ustawienia urządzenia, a następnie Information Device> Software. Jeśli nie masz wystarczająco wysoki wersji, znaleźć urządzenie w przewodniku telefonu dewelopera i postępuj zgodnie z instrukcjami rozbudowy.
+     
Włączanie zdalnego debugowania: w aplikacji Ustawienia na urządzeniu, przejdź do Informacje o urządzeniu> więcej informacji> Developer.
+         
Firefox OS 1.3 i wcześniejsze: "Zdalne debugowanie" jest tylko proste pole wyboru. Zaznacz pole.
+         
Firefox OS 1.4, a później: "Zdalne debugowanie" prosi o umożliwienie za jedyne ADB, lub ADB i DevTools. Wybierz "ADB i DevTools".
+     
Wyłącz blokadę ekranu w urządzeniu: w aplikacji Ustawienia na urządzeniu, przejdź do ekranu blokady i odznaczając pole wyboru Zablokuj ekran. To jest dobry pomysł, bo gdy ekran zostanie zamknięty, połączenie telefoniczne zostanie utracone, co oznacza, że ​​nie jest już dostępny do debugowania.
+     
Upewnij się, że nie podłączono telefonu Android w tym samym czasie, co telefon Firefox OS na komputerze.
+     
Sprawdź kabel USB, którego używasz:
+         
Spróbuj odłączyć i ponownie podłączyć kabel USB.
+         
Spróbuj podłączyć kabel USB do innego portu w komputerze. Być może trzeba będzie przełączać się między portami.
+         
Spróbuj użyć innego kabla USB. Kable, które pochodzą z telefonów są często słabej jakości i nie często.
+         
Spróbuj użyć krótszego kabla USB. Długie kable USB były znane nie działa tak dobrze.
+     
Spróbuj wyłączyć i ponownie umożliwiając zdalne debugowanie w aplikacji Ustawienia w urządzeniu.
+     
Jeśli wyłączona ADB Addon Helper, czy z powodzeniem uruchomić adb komendy naprzód?
+     
Jeśli używasz Linuksa:
+         
Upewnij się, że dodał plik zasadami udev, zgodnie z zapisem w punkcie 3 niniejszej instrukcji do konfigurowania urządzenia z systemem Android. IdVendor atrybutów użyć do Geeksphone jest "05c6", a strona ta wymienia inne wartości idVendor. Następnie należy uruchomić urządzenia ADB upewnić się, że urządzenie znajduje się na liście. Jeśli urządzenie wydaje się być "brak uprawnień", należy ponownie uruchomić serwer adb (np adb kill-server; adb start serwera).
+     
Jeśli używasz systemu Windows:
+         
Musisz zainstalować sterowniki, zgodnie z zapisem w punkcie 3 niniejszej instrukcji do konfigurowania urządzenia z systemem Android. Możesz znaleźć sterowniki do urządzeń Geeksphone na stronie internetowej Geeksphone i sterowników dla urządzeń Google na stronie internetowej Google. Windows 8 domyślnie nie pozwala zainstalować niepodpisane sterowniki. Zobacz ten tutorial na temat "Jak zainstalować niepodpisane sterowniki na Windows 8".
+         
Jeśli WebIDE nie widzi urządzenia po wykonaniu wszystkich kroków, być może trzeba będzie edytować adb_usb.ini.
+     
Jeśli używasz Mac OS X:
+         
Jeśli otrzymujesz błędy limitu czasu z połączeniem obu symulatorów i prawdziwych urządzeń, możesz nie być w stanie połączyć się z localhost z powodu pustego pliku / etc / hosts. Można rozwiązać ten problem poprzez stworzenie pliku i płukania DNS cache, jak opisano tutaj.
+         
Jeśli jesteś EasyTether użytkownika, należy odinstalować lub wyłączyć EasyTether: sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext
+
+ Nieograniczony debugowania (w tym certyfikowanych aplikacji, wbudowane aplikacje, aplikacje już zainstalowane na urządzeniu)
+
+ Jeśli stwierdzenie, że nie można debugować certyfikowane aplikacje, wbudowane aplikacje lub aplikacje już zainstalowane na rzeczywistym urządzeniu, a następnie może być napotykając ograniczonej polityki bezpieczeństwa przywileje WebIDE za. Aby dowiedzieć się więcej, zobacz sekcję Nieograniczony app debugowania (w tym certyfikowanych aplikacji, głównego procesu, itp).
+ Podłączanie do Firefoksa dla Androida
+
+ Jeśli próbujesz połączyć się z systemem Firefox instancji na Android OS i nie pokazuje się, oto kilka rzeczy, które można wypróbować:
+
+     
Sprawdź wersję Firefox: upewnij się, że urządzenie działa Firefox 36 lub wyższej. WebIDE nie wykrywa starsze wersje automatycznie, więc musisz włączyć przekierowanie portów i podłączyć do portu urządzenia - postępuj zgodnie z instrukcjami tutaj.
+     
Upewnij się, że masz włączone zdalne debugowanie Firefox: otwarty Firefox dla Androida, otwórz jego menu, wybierz Ustawienia, a następnie zaznacz pole wyboru przy Developer Tools> zdalnego debugowania.
+     
Upewnij się, że debugowanie USB jest dozwolone w ustawieniach deweloperskich przyrządu
+     
Jeśli nadal nie widać urządzenia w oknie WebIDE spróbuj przełączyć zdalne debugowanie na telefon.
+         
Odłącz urządzenie od komputera i wyłączyć zdalne debugowanie na telefon.
+         
Podłącz ponownie urządzenie i włączyć zdalnego debugowania - to restartuje instancji debugger na telefon.
+         
Spróbuj podłączyć poprzez WebIDE ponownie.
+
+ Podłączanie do innych przeglądarek (Chrome, Safari)
+
+ WebIDE korzysta z Valence (dawniej Firefox Narzędzia Adapter) dotrzeć do innych przeglądarek, takich jak Chrome i Safari.
+
+ Jeśli występują problemy z logowaniem do innych przeglądarek, sprawdź kroki instalacyjne i inne notatki dla tych przeglądarek na stronie Valence.
+ Nie można załadować listę projektu
+
+ Jeśli otwarta WebIDE w jednej wersji Firefoksa, a potem downgrade do poprzedniej wersji Firefoksa o tym samym profilu, możesz zobaczyć błąd "Nie można załadować listę projektu" podczas otwierania WebIDE w starszej wersji Firefoksa.
+
+ Może się to zdarzyć, gdy system pamięci masowej, który WebIDE zastosowań (IndexedDB) musi przenieść lub zrestrukturyzować swoje wewnętrzne pliki do nowszej wersji przeglądarki Firefox. Lista projekt staje się skuteczne niedostępne dla starszych wersji Firefoksa.
+
+ Żadne dane nie zostały utracone, ale trzeba zachować przy użyciu najnowszej wersji Firefoksa, który został użyty w swoim profilu, aby otrzymać listę projektów powrotem.
+
+ Jeśli naprawdę chcesz używać starszej wersji Firefoksa, można próbować usunąć tylko listę projektów w następujący sposób, ale to nie jest obsługiwane i może doprowadzić do kolejnych problemów lub dodatkowych utraty danych:
+
+     
Zamknij Firefox
+     
Znajdź swój Firefox katalogu profilu
+     
Znajdź folder przechowywania wewnątrz katalogu profilu
+     
Pod jakąś część tego pliku drzewa, nie powinno być pliki i / lub katalogi, które zaczynają 4268914080AsptpcPerjo (zakodowane nazwy bazy danych)
+     
Usuń wszystkie takie pliki i katalogi
+     
Uruchom ponownie program Firefox i WebIDE
+
+ Włącz rejestrowanie
+
+ Można również włączyć pełne rejestrowanie na zebranie diagnostykę:
+
+     
Otwórz about: config, a następnie dodaj nowy preferencji nazwie extensions.adbhelper@mozilla.org.sdk.console.logLevel, z wartości ciągu wszystkich, i ustawić extensions.adbhelper@mozilla.org.debug true.
+     
W Menedżerze dodatków, wyłączyć i ponownie włączyć ADB Pomocnik add-on.
+     
Otwórz przeglądarkę konsoli i będziesz teraz zobaczyć wiadomości konsoli z przedrostkiem adb. Jeśli komunikat nie znaczy nic dla ciebie, poproś o pomoc.
+
+ Uzyskaj pomoc
+
+ Idź do pokoju #devtools na IRC, a my postaramy się pomóc.

diff --git "a/files/pl/narz\304\231dzia_autorskie_zgodne_ze_standardami/index.html" "b/files/pl/narz\304\231dzia_autorskie_zgodne_ze_standardami/index.html" new file mode 100644 index 0000000000..915f2ba09f --- /dev/null +++ "b/files/pl/narz\304\231dzia_autorskie_zgodne_ze_standardami/index.html" @@ -0,0 +1,38 @@ +--- +title: Narzędzia autorskie zgodne ze standardami +slug: Narzędzia_autorskie_zgodne_ze_standardami +tags: + - 'HTML:Narzędzia' + - 'XHTML:Narzędzia' +translation_of: Archive/Web/Standards-Compliant_Authoring_Tools +--- +

 

+

Tworzenie kodu działającego na wielu przeglądarkach w bezpośredni sposób skróci czas testowania Twojej strony i jej zawartości. Poniższe narzędzia autorskie stosują się do standardów W3. Jeżeli używasz starszych wersji narzędzi, które działają w oparciu o błędy starych przeglądarek lub generują kod specyficzny dla niektórych z nich, być może jest to czas, aby zmienić swój warsztat pracy:

+ +

Uaktualnienia do starszych wersji zapewniające zgodność ze standardami:

+ +

Parę uwag: Wygląda na to, że narzędzia Namo generują kod charakterystyczny dla IE lub Netscape'a 4, który może wymagać dodatkowych testów w celu zapewnienia kompatybilności z przeglądarkami opartymi o standardy. Nowsze wersje Microsoft FrontPage™ zostały ulepszone, jednak nie polegaj na rozszerzeniach typowych dla FrontPage'a w przypadku podstawowej zawartości lub funkcjonalności strony. Niektóre wersje Microsoft Word tworzą nieprawidłowy kod HTML, który działa tylko w Internet Explorerze. Zawsze staraj się poddawać Twoje strony walidacji.

+

Podobne odnośniki

+ +
+

Original Document Information

+ +
+

 

diff --git "a/files/pl/narz\304\231dzia_clone/index.html" "b/files/pl/narz\304\231dzia_clone/index.html" new file mode 100644 index 0000000000..36a5550681 --- /dev/null +++ "b/files/pl/narz\304\231dzia_clone/index.html" @@ -0,0 +1,82 @@ +--- +title: Narzędzia dla programistów Firefox +slug: Narzędzia_clone +tags: + - Narzędzia +--- +

This should not be merged with Web development, as this also applies to XUL/JS development

+ + + + + + + + + + +
+

Tworzenie stron WWW

+ +
Rozszerzenia
+ +

Rozszerzenia Mozilli / Firefoksa pomocna dla autorów stron WWW.

+ +
    +
  • Venkman - Venkman jest debuggerem JavaScript.
  • +
  • Inspektor DOM
  • +
  • WebDeveloper - Pasek narzędziowy Web Developer jest rozszerzeniem do Firefoksa
  • +
  • Aardvark - rozszerzenie Aardvark (pokazuje elementy DOM w trakcie poruszania kursorem nad stroną)
  • +
+ +
Walidatory
+ + + +
Oprogramowanie autorskie
+ + +
+

JavaScript

+ +
    +
  • Venkman - Venkman jest debuggerem JavaScript.
  • +
  • JSLint
  • +
  • JSDoc - narzędzie do tworzenia (zwykle w języku HTML) dokumentacji z komentarzy w kodzie (podobne do JavaDoc).
  • +
+ +

DOM

+ +
    +
  • Inspektor DOM
  • +
  • MODI - Mouseover DOM Inspector(także znany jako bookmarklet) to interaktywny inspektor DOM, który pozwala na przeglądanie oraz manipulowanie elementami DOM poprzez poruszanie kursorem.
  • +
+ +

Lokalizacje

+ + + +

Zarządzanie drzewem i gałęzią

+ + +
+ +


+ Interwiki Language Links Categories

+ +

 

+ +
+
 
+
diff --git a/files/pl/necko/index.html b/files/pl/necko/index.html new file mode 100644 index 0000000000..c0bc49b73d --- /dev/null +++ b/files/pl/necko/index.html @@ -0,0 +1,45 @@ +--- +title: Necko +slug: Necko +tags: + - Necko + - Strony_wymagające_dopracowania +translation_of: Mozilla/Projects/Necko +--- +

Biblioteka internetowa (Necko) dostarcza API niezależnego od platformy dla rozmaitych warstw internetowych działań, od połączeniowych do prezentacyjnych warstw. Necko jest używany w kliencie Mozilli i może być użyty do pisania innych aplikacji internetowych.

+ +

Obecnie, biblioteka jest częścią dystrybucji mozilli. Możesz ściągnąć całą dystrybucję tak jak wszystko inne w tym portalu. Pracujemy także nad mechanizmem wydawania plików binarnych dla tej biblioteki, więc będziesz mógł tworzyć aplikację używającą Necko bez budowania mozilli. Aktualnie, będziesz musiał sprawdzić drzewko mozilli i najmniejszą wersję NSPR i XPCOM przed kompilacją tej biblioteki.

+ +

Nasz najnowszy kod znajduje się w {{ Source("netwerk/") }}

+ + + + + + + + +
+

Documents and Slides

+ +
+

Niektóre zasoby mogą być nieaktualne.

+
+ + + + +
+

Społeczność

+ +
    +
  • Zwiedź fora Mozilli... {{ DiscussionList("dev-tech-network", "mozilla.dev.tech.network") }}
  • +
+
diff --git "a/files/pl/nieprawid\305\202owy_typ_mime_plik\303\263w_css/index.html" "b/files/pl/nieprawid\305\202owy_typ_mime_plik\303\263w_css/index.html" new file mode 100644 index 0000000000..d2dc0560c2 --- /dev/null +++ "b/files/pl/nieprawid\305\202owy_typ_mime_plik\303\263w_css/index.html" @@ -0,0 +1,38 @@ +--- +title: Nieprawidłowy typ MIME plików CSS +slug: Nieprawidłowy_typ_MIME_plików_CSS +tags: + - CSS + - Wszystkie_kategorie +translation_of: Web/HTTP/Basics_of_HTTP/MIME_types +--- +

 

+

W czym jest problem?

+

Może się zdarzyć, że natrafisz na stronę internetową, która korzysta z CSS i wygląda ubogo w Netscape 7.x lub innej przeglądarce opartej o Gecko, jak Mozilla, podczas gdy Internet Explorer (MSIE) wyświetli ową stronę "ładną". Jednym z częstych powodów takiej sytuacji jest nieprawidłowa konfiguracja serwera WWW hostującego plik CSS. Niektóre serwery internetowe oparte o Apache lub iPlanet wiążą pliki .css z nieodpowiednim typem MIME, jak np. text/plain lub text/x-pointplus. W niektórych przypadkach Netscape 7.x i Mozilla ignorują plik CSS ze względu na jego nieprawidłowy typ MIME i używają domyślnego arkusza stylów, przez co układ strony jest inny, niż zamierzał twórca strony.

+

Kiedy się tak dzieje?

+

Specyfikacja W3C stwierdza, że pliki CSS powinny być serwowane z typem MIME text/css. Mozilla i Netscape 7.x, kiedy pracują w trybie standardów, stosują się do specyfikacji i oczekują odpowiedniego typu MIME dla plików CSS (tryb standardów jest włączany, kiedy w pierwszej linii strony HTML zostanie umieszczone DTD Strict). W trybie zgodności wstecznej obydwie aplikacje tolerują nieodpowiedni typ MIME i użyją dołączonych stylów pomimo błędnej konfiguracji serwera. Oznacza to, że nie możesz używać dokumentów Strict przy źle skonfigurowanym serwerze. MSIE pozwala na to, gdyż - niepoprawnie - nie zwraca uwagi na typ MIME wysyłany przez serwer w nagłówku HTTP.

+

Co mogę zrobić, by to zmienić?

+

Musisz poprosić administratora serwera internetowego o uaktualnienie konfiguracji typów MIME.

+

Problem ten na serwerach iPlanet/Netscape został już zauważony przez producenta, który utworzył stosowną notatkę techniczną (zob. poniżej) w swojej bazie wiedzy.

+

Jeśli korzystasz z Apache'a, możesz także zmienić ustawienia w pliku .htaccess w głównym katalogu. (.htaccess jest plikiem konfiguracyjnym tylko do odczytu, który obsługuje kilka rzeczy, w tym typy MIME). Dodaj do swojego pliku .htaccess taką linię:

+
AddType text/css .css
+

Zwróć uwagę, że niektórzy administratorzy wyłączają użycie plików .htaccess na swoich serwerach, ponieważ powodują one niewielkie spadek wydajności.

+

Wnioski

+

Używanie ścisłej definicji typu dokumentu (Strict DTD) wraz z Mozillą oznacza, że serwer hostujący Twoje strony powinien być skonfigurowany prawidłowo. Jest kilka rozwiązań tego problemu, jednak najskuteczniejszym jest powiązanie odpowiedniego typu MIME z plikami .css. Poproś administratora aby naprawił to dla Ciebie, a wszyscy, którzy publikują HTML z DTD Strict, będą Ci wdzięczni!

+

Zmiana typów MIME na serwerach iPlanet/Sun

+

Problem

+

Użytkownikom wyświetlone zostaje okno Zapisz jako z typem zawartości ustawionym na application/x-pointplus lub zawartość pliku CSS jest wyświetlana jako tekst, kiedy arkusz CSS ma rozszerzenie .css.

+

Rozwiązanie

+

Typ pliku .css nie jest mapowany na arkusz CSS w domyślnej konfiguracji typów MIME serwera Enterprise Server. Możesz zmienić to mapowanie na stronie Global MIME Types.

+

By skorzystać z tej strony, wybierz w panelu administracyjnym Server Preferences, MIME Types i ustaw typ MIME dla .css na text/css zamiast application/x-pointplus.

+

Jeśli problem pozostanie, dodaj "KeepAliveTimeout 0" w magnus.conf.

+

W oparciu o: SunSolve, Sun Microsystems

+

Dodatkowe zasoby

+ +
+

Informacje o dokumencie

+ +
+

{{ languages( { "en": "en/Incorrect_MIME_Type_for_CSS_Files", "es": "es/Tipo_MIME_incorrecto_en_archivos_CSS", "fr": "fr/Type_MIME_incorrect_pour_les_fichiers_CSS" } ) }}

diff --git a/files/pl/nsiconsoleservice/index.html b/files/pl/nsiconsoleservice/index.html new file mode 100644 index 0000000000..27a82c29ca --- /dev/null +++ b/files/pl/nsiconsoleservice/index.html @@ -0,0 +1,54 @@ +--- +title: nsIConsoleService +slug: nsIConsoleService +tags: + - Dokumentacja_API_XPCOM + - Interfejsy + - 'Interfejsy:Scriptable' + - Wszystkie_kategorie + - XPCOM +translation_of: Mozilla/Tech/XPCOM/Reference/Interface/nsIConsoleService +--- +

+

+

Podsumowanie

+

Usługa konsoli to back-end dla narzędzia Konsola błędów, dostępnym w każdej aplikacji Mozilli. Wykorzystywany jest do wypisywania różnych wiadomości, ostrzeżen i błędów oraz do ich pobierania. +

Definicja interfejsu: {{ Source("xpcom/base/nsIConsoleService.idl") }} +Identyfikator kontraktu: @mozilla.org/consoleservice;1 +

Interfejs ten nie został zamrożony i może ulec zmianie w przyszłości ({{ Bug(228205) }}). +

+

Przykłady

+

Zapisywanie prostej wiadomości w dzienniku

+

Typowe zastosowanie to zapisywanie wiadomości do konsoli: +

+
function LOG(msg) {
+  var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
+                                 .getService(Components.interfaces.nsIConsoleService);
+  consoleService.logStringMessage(msg);
+}
+
+

Alternatywne metody to m. in. Components.utils.reportError i dump(). +

+

Zapisywanie do dziennika wiadomości z dodatkowymi informacjami

+

Aby dołączyć inne informacje, takie jak plik żródłowy i numer linii, konieczne jest skorzystanie z bardziej skomplikowanego kodu: +

+
function myLogToConsole(aMessage, aSourceName, aSourceLine, aLineNumber,
+                        aColumnNumber, aFlags, aCategory)
+{
+  var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
+                                 .getService(Components.interfaces.nsIConsoleService);
+  var scriptError = Components.classes["@mozilla.org/scripterror;1"]
+                              .createInstance(Components.interfaces.nsIScriptError);
+  scriptError.init(aMessage, aSourceName, aSourceLine, aLineNumber,
+                   aColumnNumber, aFlags, aCategory);
+  consoleService.logMessage(scriptError);
+}
+
+ +{{ languages( { "fr": "fr/NsIConsoleService", "ja": "ja/NsIConsoleService", "en": "en/NsIConsoleService" } ) }} diff --git a/files/pl/nsiinputstream/index.html b/files/pl/nsiinputstream/index.html new file mode 100644 index 0000000000..4096e7b899 --- /dev/null +++ b/files/pl/nsiinputstream/index.html @@ -0,0 +1,41 @@ +--- +title: nsIInputStream +slug: nsIInputStream +tags: + - Dokumentacja_API_XPCOM + - Interfejsy + - 'Interfejsy:Skryptowalne' + - 'Interfejsy:Zamrożone' + - Wszystkie_kategorie + - XPCOM +--- +

Dokumentacja API XPCOM +

+

Podsumowanie

+

Interfejs nsIInputStream reprezentuje źródło danych nadających się do odczytu. +

+
  #include "nsIInputStream.h"
+
+  [scriptable, uuid=(fa9c7f6c-61b3-11d4-9877-00c04fa0cf4a)]
+  interface nsIInputStream : nsISupports { ... };
+
+

Metody

+
close +
Metoda zamyka ciąg wejściowy. +
+
available +
Metoda zwraca ilość bajtów aktualnie możliwych do odczytania z ciągu. +
+
read +
Metoda kopiuje dane z ciągu do bufora. +
+
readSegments +
Metoda dostarcza bezpośredniego dostępu do wewnętrznego bufora ciągu. +
+
isNonBlocking +
Metoda zwraca wartość true jeśli ciąg nie jest blokujący. +
+

Historia

+

Ten interfejs został zamrożony dla Mozilli 1.0. Zobacz błąd 124465, aby poznać szczegóły. +

diff --git a/files/pl/nsiprogramminglanguage/index.html b/files/pl/nsiprogramminglanguage/index.html new file mode 100644 index 0000000000..1b6b71f9de --- /dev/null +++ b/files/pl/nsiprogramminglanguage/index.html @@ -0,0 +1,37 @@ +--- +title: nsIProgrammingLanguage +slug: nsIProgrammingLanguage +tags: + - Dokumentacja_API_XPCOM + - Interfejsy + - 'Interfejsy:Zamrożone' + - Wszystkie_kategorie + - XPCOM +translation_of: Mozilla/Tech/XPCOM/Reference/Interface/nsIProgrammingLanguage +--- +

Dokumentacja API XPCOM +

+

Podsumowanie

+

Interfejs nsIProgrammingLanguage dostarcza wyliczenie identyfikatorów języków programowania. +

+
#include "nsIProgrammingLanguage.h"
+
+[scriptable, uuid=(ea604e90-40ba-11d5-90bb-0010a4e73d9a)]
+interface nsIProgrammingLanguage : nsISupports { ... };
+
+

Typy języków

+

nsIProgrammingLanguage::UNKNOWN +

nsIProgrammingLanguage::CPLUSPLUS +

nsIProgrammingLanguage::JAVASCRIPT +

nsIProgrammingLanguage::PYTHON +

nsIProgrammingLanguage::PERL +

nsIProgrammingLanguage::JAVA

nsIProgrammingLanguage::ZX81_BASIC +

nsIProgrammingLanguage::JAVASCRIPT2 +

+

Uwagi

+

Ta lista może się rozrastać w przyszłości o nowe identyfikatory języków; jednakże aktualne wartości identyfikatorów pozostaną zawsze niezmienne. +

+

Historia

+

Interfejs został zamrożony dla Mozilli 0.9.5. Zobacz błąd 99156. +

diff --git a/files/pl/nsixulappinfo/index.html b/files/pl/nsixulappinfo/index.html new file mode 100644 index 0000000000..d7dfce9ac1 --- /dev/null +++ b/files/pl/nsixulappinfo/index.html @@ -0,0 +1,25 @@ +--- +title: nsIXULAppInfo +slug: nsIXULAppInfo +tags: + - Dokumentacja_API_XPCOM + - Interfejsy + - 'Interfejsy:Skryptowalne' + - 'Interfejsy:Zamrożone' + - Wszystkie_kategorie + - XPCOM +--- +

+
xpcom/system/nsIXULAppInfo.idlskryptowalny
+ + +Please add a summary to this article. + + +
+  +Last changed in Gecko mozilli1.8
+
+

Aby uzyskać więcej informacji na temat jego stosowania, zobacz Zastosowanie nsIXULAppInfo. +

W aplikacjach XULRunner nsIXULAppInfo uzyskuje specyficzne dla aplikacji informacje z application.ini. +

diff --git a/files/pl/o_modelu_obiektowym_dokumentu/index.html b/files/pl/o_modelu_obiektowym_dokumentu/index.html new file mode 100644 index 0000000000..2bcf635b03 --- /dev/null +++ b/files/pl/o_modelu_obiektowym_dokumentu/index.html @@ -0,0 +1,19 @@ +--- +title: O modelu obiektowym dokumentu +slug: O_modelu_obiektowym_dokumentu +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document_Object_Model +--- +

 

+

Czym jest DOM?

+

Model obiektowy dokumentu (DOM) to API dla dokumentów HTML i XML. Zapewnia ono strukturalną reprezentację dokumentu, pozwalając na modyfikację jego zawartości i wizualnej prezentacji. W gruncie rzeczy, DOM łączy strony internetowe ze skryptami lub językami programowania.

+

Wszystkie właściwości, metody i zdarzenia dostępne dla twórcy stron internetowych, służące do manipulowania i tworzenia stron zorganizowane są w obiekty (np. obiekt document reprezentujący dokument, obiekt table odpowiadający za tabele w HTML itp.) Obiekty te dostępne są poprzez języki skryptowe w większości współczesnych przeglądarek.

+

DOM używany jest zazwyczaj w połączeniu z JavaScriptem. Oznacza to, że kod pisany jest w JavaScript, ale DOM wykorzystywany jest by uzyskać dostęp do strony internetowej i jej elementów. Jednakże DOM zaprojektowano tak, by był niezależnym od konkretnego języka programowania, tworząc strukturalną reprezentację dokumentu poprzez jedno, spójne API. Mimo że na tej stronie skupimy się na JavaScripcie, implementacje DOM można stworzyć dla dowolnego języka.

+

Konsorcjum W3C stworzyło standard DOM, nazywany W3C DOM. Powinno to, dzięki poprawnej implementacji w większości przeglądarek, pozwolić na tworzenie aplikacji o dużych możliwościach dla różnych przeglądarek.

+

Dlaczego obsługa DOM jest tak ważna w Mozilli?

+

Terminem "Dynamiczny HTML" (DHTML) niektórzy dostawcy określają połączenie HTML-a, arkuszy stylów i skryptów, pozwalające na animację dokumentów. Grupa W3C DOM Working Group pracuje ciężko, by uzgodnić spójne i niezależne od języka rozwiązania (zob. także W3C FAQ). Jako że Mozilla przypisuje sobie tytuł platformy dla aplikacji internetowych, obsługa DOM jest jedną z najbardziej oczekiwanych możliwości, a także niezbędną, jeżeli Mozilla chce być realną alternatywą dla innych przeglądarek.

+

Jeszcze istotniejszym jest fakt, że interfejs użytkownika w Mozilli (a także Firefoksie i Thunderbirdzie) zbudowany jest przy użyciu XUL - XML-owego języka interfejsu. Zatem Mozilla używa DOM by operować swym własnym interfejsem.

+ +

{{ languages( { "en": "en/About_the_Document_Object_Model", "es": "es/Acerca_del_Modelo_de_Objetos_del_Documento", "fr": "fr/\u00c0_propos_du_Document_Object_Model", "ja": "ja/About_the_Document_Object_Model", "ko": "ko/About_the_Document_Object_Model", "ru": "ru/\u041e\u0431_\u043e\u0431\u044a\u0435\u043a\u0442\u043d\u043e\u0439_\u043c\u043e\u0434\u0435\u043b\u0438_\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430", "zh-cn": "cn/About_the_Document_Object_Model" } ) }}

diff --git a/files/pl/paczki/index.html b/files/pl/paczki/index.html new file mode 100644 index 0000000000..5aca903157 --- /dev/null +++ b/files/pl/paczki/index.html @@ -0,0 +1,72 @@ +--- +title: Struktura paczki instalacyjnej +slug: Paczki +tags: + - Toolkit API + - Wszystkie_kategorie +translation_of: Archive/Mozilla/Bundles +--- +

 

+

Aplikacje XULRunner, rozszerzenia oraz motywy dzielą wspólna strukturę katalogów, a w niektórych przypadkach ta sama paczka może być używana zarówno w samodzielnej aplikacji XULRunner jak i w rozszerzeniu aplikacji, które można instalować.

+

 

+

Podstawowa struktura paczki

+

Paczka może zawierać jakikolwiek z poniższych plików:

+
/install.rdfManifest instalacyjny rozszerzenia/motywu
+/application.iniManifest inicjalizacji aplikacji
+/components/*Komponenty oraz pliki XPT      (>=1.7)
+/defaults/preferences/*.jsUstawienia domyślne            (>=1.7)
+/plugins/*Wtyczki NPAPI                  (>=1.8)
+/chrome.manifestManifest rejestracji Chrome    (>=1.8)
+/chrome/icons/default/*Ikony okna                     (>=1.8)
+
+

Oczywiście rozszerzenie nie musi (i normalnie nie będzie) zawierać wszystkich powyższych katalogów. Motywy podlegają ograniczeniom ze względów bezpieczeństwa i standardowo zawierają tylko chrome.manifest rejestrujący dany motyw oraz plik JAR.

+

Podkatalogi zależne od platformy

+

W niektórych przypadkach rozszerzenia, lub aplikacje będą chciały dołączyć składniki binarne lub wtyczki dla wielu platform, lub tez autorzy motywów będą chcieli załączyć pliki JAR dla wielu platform. W celu rozwiązania pierwszego przypadku rozszerzenie / loader aplikacji zawiera specjalne podkatalogi przeznaczone dla plików zależnych od platformy (rozpoczynając od Toolkitu/Gecko 1.8, Firefox/Thunderbird 1.5). Ciąg określający platformę jest definiowany podczas budowania toolkitu i składa się z unikalnej kombinacji systemu operacyjnego, architektury procesora oraz kompilatora. Format tegoż ciągu wygląda następująco:

+
{OS_TARGET}_{TARGET_XPCOM_ABI}
+
+

Wszystkie pliki ładowane z głównego katalogu rozszerzenia są ładowane z podkatalogu

+
/platform/{platform string}
+
+

Jeśli istnieje. Dla przykładu, jeśli producent wtyczki chce ja udostępnić dla użytkownika systemów: Linux, Macintosh i Windows to powinien dostarczyć poniższe pliki:

+
/platform/Linux_x86-gcc3/plugins/libMyPlugin.so
+/platform/WINNT_x86-msvc/plugins/MyPlugin.dll
+/platform/Darwin_ppc-gcc3/plugins/libMyPlugin.dylib
+
+

Ponieważ pliki XPT są niezależne od platformy, to wszystkie pliki z nimi związane powinny być za ogólnym katalogu komponentów:

+
/components/MyPlugin.xpt
+
+

Jeśli rozszerzenie nie posada żadnego kodu binarnego zależnego od platformy (tj. kod skryptu używający rejestrów Windows), to może ono również wykorzystywać identyfikator systemu operacyjnego jako podkatalog platformy:

+
/platform/WINNT/components/registerDoctype.js
+
+

W przypadku użycia plików JAR zależnych od platformy każdy katalog platformy powinien posiadać własny plik chrome.manifest:

+
chrome.manifest
+chrome/mytheme-base.jar
+platform/Darwin/chrome.manifest
+platform/Darwin/chrome/mytheme-mac.jar
+platform/WINNT/chrome.manifest
+platform/WINNT/chrome/mytheme-win.jar
+
+

Załadunek rozszerzenia / aplikacji rozpoczyna się od katalogów bazowych, a następnie katalogów platformy aplikacji (wpierw /{OS_TARGET}/, potem /{OS_TARGET}_{TARGET_XPCOM_ABI}/). Jeśli zdefiniowano domyślne własności w poszczególnych katalogach, te ładowane później nadpisują załadowane wcześniej.

+

Pliki rozszerzeń zależne od aplikacji

+

Dodatkowo do plików rozszerzeń opisanych powyżej aplikacje mogą poszukiwać dodatkowych plików. Na przykład Firefox 1.5 lub nowszy poszuka wtyczek Sherlock w plikach:

+
/searchplugins/*.src
+
+

Firefox 2 oraz nowsze wersje automatycznie poszukają również Tworzenie wtyczek MozSearch oraz OpenSearch w plikach:

+
/searchplugins/*.xml
+
+

oraz słowniki Myspell w plikach:

+
/dictionaries/*.{aff|dic}
+
+

Oficjalne dokumentacje Toolkit API

+

+

+ +

 

diff --git "a/files/pl/pakowanie_motyw\303\263w/index.html" "b/files/pl/pakowanie_motyw\303\263w/index.html" new file mode 100644 index 0000000000..8d91ae7fbc --- /dev/null +++ "b/files/pl/pakowanie_motyw\303\263w/index.html" @@ -0,0 +1,113 @@ +--- +title: Pakowanie motywów +slug: Pakowanie_motywów +tags: + - Dodatki + - Motywy + - Toolkit API + - Wszystkie_kategorie +translation_of: Mozilla/Thunderbird/Thunderbird_extensions/Theme_Packaging +--- +

 

+

Poniższy artykuł opisuje operację pakowania motywów dla Firefoksa oraz Thunderbirda.

+

Założenia

+

Tworzenie motywów dla Firefoksa lub Thunderbirda wymaga znajomości Cascading Stylesheets (CSS), prawdopodobnie XBL oraz projektowania grafiki i wyczucia estetyki (...lub też nie). Poniższy artykuł opisuje jedynie jak pakowane są motywy, aby pokazać je w oknie Motywów Firefoksa.

+

Struktura plików motywu

+

Motywy Firefoksa/Thunderbirda pakowane są do plików JAR o następującej strukturze:

+
motyw.jar:
+  install.rdf
+  contents.rdf
+  preview.png
+  icon.png
+  browser/files
+  global/files
+  mozapps/files
+  communicator/files
+  ...
+
+
+ +

install.rdf

+

Twój manifest install.rdf będzie wyglądał podobnie do poniższego:

+
<?xml version="1.0"?>
+
+<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+
+  <Description about="urn:mozilla:install-manifest">
+    <em:type>4</em:type>more properties
+  </Description>
+</RDF>
+
+

Wymagane własności install.rdf

+

Plik install.rdf musi posiadać następujące własności. By dowiedzieć się więcej zobacz install.rdf:

+ +

Opcjonalne własności install.rdf

+ +

Uwaga: jeśli twój motyw będzie dostępny na stronie http://addons.mozilla.org nie powinien on zawierać własności updateURL.

+

Przykładowy plik install.rdf

+
<?xml version="1.0"?>
+
+<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+
+  <Description about="urn:mozilla:install-manifest">
+    <em:id>{18b64b56-d42f-428d-a88c-baa413bc413f}</em:id>
+    <em:version>1.0</em:version>
+    <em:type>4</em:type>
+
+    <!-- Target Application this extension can install into,
+         with minimum and maximum supported versions. -->
+    <em:targetApplication>
+      <Description>
+        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
+        <em:minVersion>0.8</em:minVersion>
+        <em:maxVersion>0.9</em:maxVersion>
+      </Description>
+    </em:targetApplication>
+
+    <!-- Front End MetaData -->
+    <em:name>New Theme 1</em:name>
+    <em:description>A test theme for Firefox</em:description>
+    <em:creator>Ben Goodger</em:creator>
+    <em:contributor>John Doe</em:contributor>
+    <em:homepageURL>http://www.bengoodger.com/</em:homepageURL>
+
+    <!-- Front End Integration Hooks (used by Theme Manager)-->
+    <em:internalName>newtheme1</em:internalName>
+  </Description>
+</RDF>
+
+

Poniższe GUID przykładowych aplikacji docelowych można użyć w swoich własnościach targetApplication:

+
Firefox      {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
+Thunderbird  {3550f703-e582-4d05-9a08-453d09bdfdc6}
+Sunbird      {718e30fb-e89b-41dd-9da7-e25a45638b28}
+
+

Oficjalne dokumentacje dla Toolkit API

+

+

diff --git "a/files/pl/pakowanie_rozszerze\305\204/index.html" "b/files/pl/pakowanie_rozszerze\305\204/index.html" new file mode 100644 index 0000000000..bda3f5f6bd --- /dev/null +++ "b/files/pl/pakowanie_rozszerze\305\204/index.html" @@ -0,0 +1,34 @@ +--- +title: Pakowanie rozszerzeń +slug: Pakowanie_rozszerzeń +tags: + - Dodatki + - Rozszerzenia + - Toolkit API + - Wszystkie_kategorie +translation_of: Archive/Add-ons/Extension_Packaging +--- +

Rozszerzenia są formą instalowalnych paczek, które mogą być ściągnięte i zainstalowane przez użytkownika, lub też dostarczone wraz z aplikacją, albo zewnętrzny program. Rozszerzenia używają struktury katalogów mogących dostarczyć chrome, komponenty, lub też inne pliki w celu rozszerzenia funkcjonalności programu XUL-a. Każde rozszerzenie musi posiadać plik install.rdf zawierający meta dane o nim, tj. unikatowe ID, wersje, autora oraz informacje o kompatybilności.

+ +

Po przygotowaniu plików rozszerzenia oraz install.rdf istnieje kilka sposobów na przygotowanie wtyczki do instalacji: spakowanie katalogu rozszerzenia (za pomocą zipa) do instalowalnego pliku XPI (xpinstall), bezpośrednie rozpakowanie wtyczki do aplikacji użytkownika lub katalogu profilu, lub też rejestrację wtyczki w rejestrach Windows.

+ +

Tworzenie rozszerzenia XPI

+

Plik XPI (XPInstall) jest po prostu plikiem ZIP zawierającym pliki rozszerzenia z plikiem install.rdf w katalogu głównym archiwum ZIP. Użytkownicy mogą ściągnąć i zainstalować pliki XPI prosto z sieci, lub też lokalnie poprzez ich otwarcie, lub przeciągnięcie do okna Rozszerzenia.

+

Typ MIME plików XPI rozpoznawalny przez Firefoxa to application/x-xpinstall. Ponieważ większość serwerów HTTP nie jest skonfigurowana tak, aby domyślnie zwracać typ MIME rozszerzenia .xpi, będziesz musiał to zrobić sam. Dla serwera Apache może to być wykonane poprzez dodanie poniższej dyrektywy do pliku konfiguracyjnego lub .htaccess:

+ +
AddType application/x-xpinstall .xpi
+
+ +

Bezpośrednia instalacja plików rozszerzenia

+

Jeśli znasz położenie aplikacji (instalując przykładowo rozszerzenie jako część aplikacji instalacyjnej) możesz bezpośrednio zainstalować pliki rozszerzenia w <appdir>/extensions/<extensionID>. Rozszerzenie zostanie automatycznie odnalezione przez menedżera rozszerzeń podczas następnego startu aplikacji.

+

Używając tej metody musisz sprawdzić prawa dostępu do katalogów oraz plików rozszerzenia. W przeciwnym wypadku menedżer rozszerzeń, lub samo rozszerzenie może działać nieprawidłowo.

+ +

Rejestracja rozszerzenia za pomocą rejestrów Windows

+

Zewnętrzne aplikacje instalacyjne (tj. Java) mogą próbować instalować punkty integracyjne aplikacji jako rozszerzenie nawet w przypadku, gdy aplikacja nie została jeszcze zainstalowana. Można tego dokonać w Windowsie używając rejestrów.

+ +

Wieloskładnikowe rozszerzenia XPI

+

W niektórych przypadkach pojedynczy plik XPI może instalować wiele rozszerzeń/motywów. Specjalny typ rozszerzenia nazwany Multiple Item Package objaśnia jak należy stworzyć ten typ paczki (wymagania: Firefox 1.5/XULRunner 1.8).

+ +

Oficjalne dokumentacje dla Toolkit API

+ +
{{ page("/pl/docs/Toolkit_API/Dokumentacje") }}
diff --git "a/files/pl/podaj_d\305\202o\305\204_'kursorowi'/index.html" "b/files/pl/podaj_d\305\202o\305\204_'kursorowi'/index.html" new file mode 100644 index 0000000000..baa2fe3d97 --- /dev/null +++ "b/files/pl/podaj_d\305\202o\305\204_'kursorowi'/index.html" @@ -0,0 +1,42 @@ +--- +title: Podaj Dłoń 'kursorowi' +slug: Podaj_Dłoń_'kursorowi' +tags: + - CSS + - Wszystkie_kategorie +translation_of: Web/CSS/CSS_Basic_User_Interface/Using_URL_values_for_the_cursor_property +--- +

 

+

Summary: Netscape 6 and Mozilla support cursor quite nicely, but that's not true of some other browsers. Happily, there's a fix. Find out how to get a hand from multiple browsers when you use this property. Wielu programistów pytało kiedy Mozilla i Netscape 6+ planuje zaimplementować obsługę własności cursor. Są oni zazwyczaj zaskoczeni odkrywając, że obie przeglądarki już od dawna wspierają ten standard. Obsługa jest oparta na zatwierdzonej specyfikacji W3C dla CSS2, w odróżnieniu od dodawania własnych pomysłów.

+

Podstawowym problemem jest to, że: Internet Explorer 5.x dla Windows rozpoznaje wartość hand, która nie występuje nigdzie w sekcji 18.1 CSS2-- ani nigdzie indziej w specyfikacji na ten temat. Wartość najbliższa zachowaniu hand to pointer, który specyfikacja definiuje jako: "Kursor jest wskaźnikiem pokazującym odnośnik." Należy zwrócić uwagę, że nigdzie nie jest powiedziane, że ma on pokazywać rękę, ale patrząc na aktualne zachowanie przeglądarek, efekt jest właściwie taki sam.

+

Niestety, IE5.x/Win zupełnie nie rozpoznaje wartości pointer. Na szczęście IE6/Win i IE5.x/Mac rozpoznają pointer tak samo jak hand. Niemniej, Mozilla i Netscape 6+ w zgodzie ze specyfikacją CSS2 wspierają pointer, lecz ignorują własnościową wartość hand.

+

Tak więc jeżeli Mozilla/Netscape ignoruje hand a IE5.x/Win ignoruje pointer, co może zrobić autor? Poproś o oba, w odpowiedniej kolejności, a zostaniesz nagrodzony.

+
a {cursor: pointer; cursor: hand;}
+

Nie odwracaj kolejności! Jeżeli zapiszesz styl tak jak pokazany powyżej, Gecko zobaczy wartość pierwszą i zignoruje drugą, więc w efekcie dostaniesz pointer. IE5.x/Win zobaczy obie i użyje drugiej, więc dostaniesz hand. Jeżeli odwrócisz wartości, to Gecko zadziała, ale IE5.x/Win również zobaczy oba i użyje drugiego, a to nie da Ci małego wskaźnika-rączki...

+

Przy użyciu powyższej sztuczki możesz upewnić się, że Twoja strona pokaże wskaźnik rączki za każdym razem.

+

Ostrzeżenie: Powyższy przykład polecany tutaj spowoduje, że strona nie będzie się walidować, ponieważ będzie zawierać nieprawidłową wartość cursor. Autorzy stron powinni sami ocenić czy ten problem jest ważniejszy, czy mniej ważny od wsparcia IE5.x/Win.

+

Sprawdzanie wsparcia

+

Zastanawiasz się czy Twoja przeglądarka obsługuje hand i pointer? Sprawdź to w poniższej tabelce!

+ + + + + + + + +
Ta komórka tabeli posiada styl cursor: pointer. Powinna spowodować zmianę kursora na małą wskazującą rączkę w Mozilli i Netscape 6+, IE6/Win, oraz IE5.x/Mac, lecz nie IE5.x/Win.Ta komórka tabelinie posiada atrybutu cursor zatem powinien zostać użyty domyślny kursor.Ta komórka tabeli posiada styl cursor: hand. Powinna spowodować zmianę kursora na mały wskaźnik w IE5+/Win, ale nie w Mozilli i Netscape 6.
+

Powiązane odnośniki

+ +
+

Informacje o dokumencie

+ +
+

 

diff --git a/files/pl/podstawy_web_services/index.html b/files/pl/podstawy_web_services/index.html new file mode 100644 index 0000000000..d4afeea604 --- /dev/null +++ b/files/pl/podstawy_web_services/index.html @@ -0,0 +1,38 @@ +--- +title: Podstawy Web Services +slug: Podstawy_Web_Services +tags: + - SOAP + - Wszystkie_kategorie + - XML + - XML Web Services +translation_of: Archive/The_Basics_of_Web_Services +--- +

+

Summary: A current hot topic on the web right now are Web Services. This short guide will allow you to learn more about web services. +

+

Podstawy

+

Web services nie jest tak naprawdę technologią nową. Jeżeli kiedykolwiek używałeś RSS lub Atom do pobierania wiadomości z jakiejś strony, to masz wyobrażenie jak działa web services. +

Web services wymienia dane między serwerem a klientem, używając formatu XML do przesyłania żądań, tak więc zarówno serwer jak i klient mogą rozumieć się nawzajem. (Wprowadzenie do XMLa). +

Aby lepiej zrozumieć Web Service, można porównać to do komunikacji formularzy HTML ze skryptami po stronie serwera (jak PHP lub ASP) w celu przesyłania danych. +Zarówno Web Service jak i formularze wysyłają i odbierają żądania. Jedyna różnica polega na tym, że Web Service używa XML-a. +

+

Przykłady działania Web Services

+

Jak wcześniej napisano, zasoby RSS i Atom są prostymi przykładami działania Web Services, innymi mogą być technologie XML-RPC i SOAP, które także używane są do komunikacji między serwerem a klientem. +

+

Wprowadzenie do XML-RPC

+

XML RPC jest rodzajem technologii Web Services i istnieje w sieci od 1998 roku. Choć nie jest oficjalnym standardem W3C, jest szeroko stosowany. XML-RPC został stworzony przez Useful Inc oraz firmę Microsoft. +

+

Wprowadzenie do SOAP

+

Technologia SOAP jest na liście standardów W3C, i jest w wielu miejscach bardzo podobna do XML-RPC. SOAP był rozwijany przez IBM, przy współpracy z Microsoftem. +

+

SOAP czy XML-RPC?

+

W skrócie, SOAP miał na celu wypełnić luki XML-RPC. Na przykład, łatwiej jest wysłać wielowymiarową tablicę przez SOAP niż przez XML-RPC. SOAP posiada także więcej funkcji niż XML-RPC, ale XML-RPC nadal znajduje swoje zastosowanie. +

+
+

Informacje o dokumencie

+ +
+{{ languages( { "en": "en/The_Basics_of_Web_Services", "fr": "fr/Les_bases_des_services_Web", "ko": "ko/The_Basics_of_Web_Services" } ) }} diff --git a/files/pl/poprawki_css_w_firefoksie_3/index.html b/files/pl/poprawki_css_w_firefoksie_3/index.html new file mode 100644 index 0000000000..cf08d79f5b --- /dev/null +++ b/files/pl/poprawki_css_w_firefoksie_3/index.html @@ -0,0 +1,45 @@ +--- +title: Poprawki CSS w Firefoksie 3 +slug: Poprawki_CSS_w_Firefoksie_3 +tags: + - CSS + - Firefox 3 + - Wszystkie_kategorie +translation_of: Mozilla/Firefox/releases/3/CSS_improvements +--- +
{{FirefoxSidebar}}
+ +

{{ Fx_minversion_header(3) }}

+ +

W programie Firefox 3 wprowadzono szereg udoskonaleń obsługi arkuszy stylów CSS. Poszczególne zmiany są przedstawione na odpowiednich stronach z dokumentacją — niniejszy artykuł zawiera jedynie krótkie omówienie umożliwiające szybkie zapoznanie się z nowościami.

+ + + +

Zobacz także

+ + + +

 

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/CSS_improvements_in_Firefox_3", "es": "es/Mejoras_CSS_en_Firefox_3", "fr": "fr/Am\u00e9liorations_CSS_dans_Firefox_3", "ja": "ja/CSS_improvements_in_Firefox_3" } ) }}

diff --git a/files/pl/poprawki_dom_w_firefoksie_3/index.html b/files/pl/poprawki_dom_w_firefoksie_3/index.html new file mode 100644 index 0000000000..f9ad9e21e2 --- /dev/null +++ b/files/pl/poprawki_dom_w_firefoksie_3/index.html @@ -0,0 +1,40 @@ +--- +title: Poprawki DOM w Firefoksie 3 +slug: Poprawki_DOM_w_Firefoksie_3 +tags: + - DOM + - Firefox 3 + - Wszystkie_kategorie +translation_of: Mozilla/Firefox/Releases/3/DOM_improvements +--- +
{{FirefoxSidebar}}
+ +

{{ Fx_minversion_header(3) }}

+ +

W programie Firefox 3 wprowadzono szereg udoskonaleń implementacji Obiektowego Modelu Dokumentu (ang.Document Object Model — DOM), dotyczących przede wszystkim obsługi rozszerzeń DOM zastosowanych w innych przeglądarkach. W tym artykule przedstawiono listę zmian oraz odnośniki do szczegółowej dokumentacji.

+ + + +

Zobacz także

+ + + +

 

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/DOM_improvements_in_Firefox_3", "es": "es/Mejoras_DOM_en_Firefox_3", "fr": "fr/Am\u00e9liorations_DOM_dans_Firefox_3", "ja": "ja/DOM_improvements_in_Firefox_3" } ) }}

diff --git a/files/pl/poprawki_svg_w_firefoksie_3/index.html b/files/pl/poprawki_svg_w_firefoksie_3/index.html new file mode 100644 index 0000000000..b063fb949e --- /dev/null +++ b/files/pl/poprawki_svg_w_firefoksie_3/index.html @@ -0,0 +1,64 @@ +--- +title: Poprawki SVG w Firefoksie 3 +slug: Poprawki_SVG_w_Firefoksie_3 +tags: + - Firefox 3 + - SVG + - Wszystkie_kategorie +translation_of: Mozilla/Firefox/Releases/3/SVG_improvements +--- +
{{FirefoxSidebar}}
+ +

{{ Fx_minversion_header(3) }}

+ +

W programie Firefox 3 wprowadzono wiele udoskonaleń obsługi formatu skalowalnej grafiki wektorowej (SVG) w porównaniu z poprzednimi wersjami przeglądarki. Nowe funkcje są szczegółowo omówione w odpowiedniej dokumentacji — niniejszy artykuł zawiera jedynie listę nowości, jakie pojawiły się w Firefoksie 3.

+ + + +

Zobacz także

+ + + +
 
+ +

{{ languages( { "en": "en/SVG_improvements_in_Firefox_3", "es": "es/Mejoras_SVG_en_Firefox_3", "fr": "fr/Am\u00e9liorations_SVG_dans_Firefox_3", "ja": "ja/SVG_improvements_in_Firefox_3" } ) }}

diff --git a/files/pl/poprawki_xul_w_firefoksie_3/index.html b/files/pl/poprawki_xul_w_firefoksie_3/index.html new file mode 100644 index 0000000000..c6a0a1c764 --- /dev/null +++ b/files/pl/poprawki_xul_w_firefoksie_3/index.html @@ -0,0 +1,97 @@ +--- +title: Poprawki XUL w Firefoksie 3 +slug: Poprawki_XUL_w_Firefoksie_3 +tags: + - Firefox 3 + - Strony_wymagające_dopracowania + - Wszystkie_kategorie + - XUL +translation_of: Mozilla/Firefox/Releases/3/XUL_improvements_in_Firefox_3 +--- +
{{FirefoxSidebar}}
+ +

{{ Fx_minversion_header(3) }}

+ +

Firefox 3 oferuje kilka nowych elementów XUL, jak również poprawki do już istniejących elementów. Mimo, iż ten materiał jest udokumentowany gdzie indziej, ten artykuł dostarcza dogodną listę wyżej wspomnianych poprawek jak i linki do dokładnej dokumentacji.

+ +

Nowe elementy

+ + + +

Poprawki drzewek

+ + + +

Poprawki menu

+ + + +

Poprawki textbox

+ + + +

Inne poprawki

+ + + +

Zobacz również

+ + diff --git a/files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/index.html b/files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/index.html new file mode 100644 index 0000000000..7655ea7e40 --- /dev/null +++ b/files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/index.html @@ -0,0 +1,137 @@ +--- +title: Poprawne zastosowanie CSS i JavaScript w dokumentach XHTML +slug: Poprawne_zastosowanie_CSS_i_JavaScript_w_dokumentach_XHTML +tags: + - CSS + - JavaScript + - Programowanie_WWW + - Wszystkie_kategorie + - XHTML +translation_of: Archive/Web/Properly_Using_CSS_and_JavaScript_in_XHTML_Documents_ +--- +

+

XHTML™ 1.0 The Extensible HyperText Markup Language (Edycja Druga) definiuje XHTML jako przeformułowanie standardu HTML 4 jako aplikacji XML 1.0. +

XHTML szybko zastępuje HTML 4 w wielu przypadkach; jednakże, brak poprawnego wsparcia XHTML, połączone z brakiem zrozumienia podstawowych różnic pomiędzy HTML 4 i XHTML przez twórców stron internetowych, tworzy dziś coraz większy problem w Sieci. +

+

XHTML to XML, nie HTML

+

Jednym z głównych błędów jest uznanie języka XHTML kolejną wersją HTML-a. Na dodatek, błąd ten wyolbrzymiany jest przez fakt, iż Microsoft® Internet Explorer wspiera obsługę XHTML, ale tylko, jeśli dokument ma typ MIME <tt>text/html</tt>, natomiast nie potrafi obsłużyć rekomendowanego typu <tt>application/xhtml+xml</tt>. +

Kiedy strona XHTML posiada typ MIME <tt>text/html</tt>, uznawana jest przez wszystkie przeglądarki jakby była niczym więcej niż stroną HTML. Jednakże, jeśli strona XHTML posiada MIME <tt>text/xml</tt> lub <tt>application/xhtml+xml</tt>, musi ona być traktowana jako dokument XML który musi być zgodny ze ścisłymi standardami tworzenia i wyświetlania XML-a. +

Poprawny dokument XHTML jest aplikacją XML i jako taki wymusza od autora do bycia zgodnym ze ścisłymi zasadami tworzenia XHTML-a, między innymi: +

+
  1. Surowe znaki <tt><</tt> i <tt>&</tt> nie są dozwolone chyba, że są wewnątrz sekcji CDATA (<tt><!CDATA[[ ... ]]></tt>). +
  2. Komentarze (<tt><!—— ... ——></tt>) nie mogą zawierać podwójnych myślników (<tt>——</tt>). +
  3. Zawartość wewnątrz komentarzy (<tt><!—— ... ——></tt>) może być zignorowana. +
+

Problemy z tagami <tt>style</tt> i <tt>script</tt>

+

Wewnętrzne tagi <tt>style</tt> i <tt>script</tt> mogą spowodować kilka różnych problemów w XHTML-u, jeśli jest on traktowany jako XML a nie HTML. +

+

JavaScript zawiera znaki, które nie mogą istnieć w XHTML

+

JavaScript zwykle zawiera znaki, które nie mogą istnieć w dokumencie XHTML poza sekcjami CDATA. +

+
<script type="text/javascript">
+  var i = 0;
+
+  while (++i < 10)
+  {
+    // ...
+  }
+</script>
+
+

Zauważ, iż ten przykład jest źle sformułowanym XHTML, jako że zastosowanie surowego < jest dozwolone tylko jako część znacznika XHTML lub XML. +

+

Zastosowanie komentarzy wewnątrz <tt>style</tt> i <tt>script</tt>

+

Autorzy zaznajomieni z HTML często zamykają zawartość tagów <tt>style</tt>i <tt>script</tt> w komentarzach po to, aby schować ich zawartość przed przeglądarkami, które ich nie rozumieją. +

+
<style type="text/css">
+ <!--
+  body {background-color: blue; color: yellow;}
+ -->
+</style>
+<script type="text/javascript">
+ <!--
+  var i = 0;
+  var sum = 0;
+
+  for (i = 0; i < 10; ++i)
+  {
+    sum += i;
+  }
+  alert('sum = ' + sum);
+ // -->
+</script>
+
+

Ten przykład pokazuje, że przeglądarka wspierająca CSS i JavaScript może ignorować zawartość wewnątrz komentarzy. W dodatku, przykład ten pokazuje, jak różnice w obsłudze zawartości w <tt>text/xml</tt> lub <tt>application/xhtml+xml</tt> mogą powodować problemy. +

+
Mozilla 1.1+/Opera 7 +
Nie zastosuje CSS lub nie uruchomi JavaScript.
Netscape 7.0x/Mozilla 1.0.x +
Nie zastosuje CSS, ale uruchomi JavaScript.
Internet Explorer 5.5+ +
Nie wyświetli dokumentu. +
+

<tt>style</tt> i <tt>script</tt> zawierające podwójne myślniki

+

Kolejny problem z użyciem komentarzy dookoła JavaScriptu w XHTML związany jest z problemami, które mogą wystąpić, jeśli komentarze zawierają podwójne myślniki (<tt>——</tt>). +

+
<script type="text/javascript">
+<!--
+  var i;
+  var sum = 0;
+
+  for (i = 10; i > 0; --i)
+  {
+    sum += i;
+  }
+// -->
+</script>
+
+

Zastosowanie CDATA zamiast komentarzy

+

Poprawne zamknięcie zawartości skryptu wewnątrz sekcji CDATA może powodować problemy w starszych przeglądarkach, które nie obsługują XML. Jednakże, jest możliwe połączenie komentarzy JavaScriptu z sekcjami CDATA w celu kompatybilności wstecznej. +

+
<script type="text/javascript">
+ //<![CDATA[
+  var i = 0;
+
+  while  (++i < 10)
+  {
+    // ...
+  }
+ //]]>
+</script>
+
+

Przykłady

+

Zastosowanie CSS w wewnętrznym <tt>style</tt> w komentarzach

+
Przykład 1 - XHTML 1.0 Strict jako <tt>text/html</tt> +
Ten przykład obrazuje zachowanie XHTML podanego jako <tt>text/html</tt> kiedy CSS zawarty jest wewnątrz dokumentu i otoczony jest komentarzami. Przykład ten jest wspomagany przez Netscape 7.x, Mozillę, Operę 7 i Internet Explorera 5.5+, wszystkie podane przeglądarki zastosują CSS tak jak się tego spodziewano. +
+
Przykład 2 - XHTML 1.0 Strict jako <tt>text/xml</tt> +
Ten przykład obrazuje zachowanie XHTML podanego jako <tt>text/xml</tt>, kiedy CSS zawarty jest wewnątrz dokumentu i otoczony jest komentarzami. Przykład ten jest wspomagany przez Netscape 7.x, Mozillę i Operę 7 ale nie Internet Explorera 5.5+. Zauważ iż, Netscape 7.x, Mozilla i Opera stwierdzają, że CSS wewnątrz komentarzy ma być ignorowany. +
+
Przykład 3 - XHTML 1.0 Strict jako <tt>application/xhtml+xml</tt> +
Ten przykład obrazuje zachowanie XHTML podanego jako <tt>application/xhtml+xml</tt> kiedy CSS zawarty jest wewnątrz dokumentu i otoczony jest komentarzami. Przykład ten jest wspomagany przez Netscape 7.x, Mozillę i Operę 7 ale nie Internet Explorera 5.5+. Zauważ, iż Netscape 7.x, Mozilla i Opera stwierdzają że CSS wewnątrz komentarzy ma być ignorowany. +
+

Zastosowanie CSS w zewnętrznym pliku

+
Przykład 4 - XHTML 1.0 Strict jako <tt>text/html</tt> +
Ten przykład obrazuje zachowanie XHTML podanego jako <tt>text/html</tt> kiedy CSS zawarty jest w zewnętrznym pliku. Przykład ten jest wspomagany przez Netscape 7.x, Mozillę, Operę 7 i Internet Explorera 5.5+. +
+
Przykład 5 - XHTML 1.0 Strict jako <tt>text/xml</tt> +
Ten przykład obrazuje zachowanie XHTML podanego jako <tt>text/xml</tt>, kiedy CSS zawarty jest w zewnętrznym pliku. Przykład ten jest wspomagany przez Netscape 7.x, Mozillę i Operę 7, ale nie Internet Explorera 5.5+. +
+
Przykład 6 - XHTML 1.0 Strict as <tt>application/xhtml+xml</tt> +
Ten przykład obrazuje zachowanie XHTML podanego jako <tt>application/xhtml+xml</tt>, kiedy CSS zawarty jest w zewnętrznym pliku. Przykład ten jest wspomagany przez Netscape 7.x, Mozillę i Operę 7, ale nie Internet Explorera 5.5+. +
+

Rekomendacje

+

Nie używać <tt>style</tt> lub <tt>script</tt> wewnątrz dokumentu XHTML

+

Zastępowanie wewnętrznych <tt>style</tt> i <tt>script</tt> plikami zewnętrznymi zawierającymi CSS i JavaScript jest najlepszym sposobem tworzenia dokumentów XHTML w sposób wstecznie kompatybilny i nie zepsuje się, jeśli typ MIME dokumentu zostanie zmieniony z <tt>text/html</tt> na <tt>application/xhtml+xml</tt>. +

Rekomendacja ta może wyglądać na zbyt zdecydowaną, jednakże jest ona stworzona z myślą zmniejszenia przyszłych problemów z zawartością XHTML kiedy zmiana z podawania XHTML jako <tt>text/html</tt> na <tt>application/xhtml+xml</tt> wydarzy się w przyszłych kilku latach. +

Jeśli chcesz tylko sprawdzić Twój dokument XHTML jako <tt>text/html</tt>, możesz wprowadzać problemy, takie jak opisane w tym artykule, bez uświadomiania tego sobie. Przenoszenie styli CSS i kodu JavaScript do oddzielnych plików jest bezpiecznym sposobem, z uwzględnieniem zmian w sposobie podania Twojego XHTML-a. +

+

Podążaj za Wskazówkami kompatybilności XHTML 1.0 z HTML

+

XHTML 1.0 Wskazówki kompatybilności XHTML 1.0 z HTML pomagają tworzyć dokumenty XHTML wstecznie zgodne ze starszymi przeglądarkami nie rozumiejącymi XML. +

Proszę zauważyć, iż dla "czystych" dokumentów XHTML, nie musisz używać instrukcji <tt>xml-stylesheet</tt>, ale zamiast tego powinieneś użyć <tt>link</tt>, aby wskazać zewnętrzne pliki zawierające CSS. +

+
+

Original Document Information

+ +
+{{ languages( { "en": "en/Properly_Using_CSS_and_JavaScript_in_XHTML_Documents" } ) }} diff --git "a/files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/przyk\305\202ady/index.html" "b/files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/przyk\305\202ady/index.html" new file mode 100644 index 0000000000..89ff7d7057 --- /dev/null +++ "b/files/pl/poprawne_zastosowanie_css_i_javascript_w_dokumentach_xhtml/przyk\305\202ady/index.html" @@ -0,0 +1,416 @@ +--- +title: Przykłady +slug: Poprawne_zastosowanie_CSS_i_JavaScript_w_dokumentach_XHTML/Przykłady +tags: + - CSS + - JavaScript + - Programowanie_WWW + - Wszystkie_kategorie + - XHTML +translation_of: Archive/Web/Properly_Using_CSS_and_JavaScript_in_XHTML_Documents_/Examples +--- +

+

Ta strona zawiera kody źródłowe przykładów związanych z artykułem "Poprawne zastosowanie CSS i JavaScript w dokumentach XHTML". +

Proszę przejdź do artykułu, aby dowiedzieć się więcej na temat poniższych przykładów. +

Jeśli chciałbyś przetestować te przykłady samodzielnie, przeczytaj Ważne uwagi. +

+

Ważne uwagi

+

Jeśli planujesz samodzielnie przetestować poniższe przykłady, musisz zastosować poprawne rozszerzenia (jest to napisane na początku danego kodu). Najlepiej wysłać te pliki na serwer WWW i gotowe. +

Proszę zauważyć, że przykłady 4, 5 oraz 6 wymagają, aby plik o nazwie style.css istniał w tym samym katalogu co dany przykład. Zawartość style.css znajduje się na dole tej strony. +

+

Przykłady dla "Problemy z tagami <tt>style</tt> i <tt>script</tt>"

+

Problem 1

+
<!-- Ten plik powinien mieć rozszerzenie .xhtml
+     i wygeneruje on błąd przy próbie parsowania. -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Problem 1 - &lt; w XHTML</title>
+  <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+  <script type="text/javascript">
+   var i = 0;
+
+   while (++i > 10)
+   {
+     // ...
+   }
+  </script>
+</head>
+<body>
+  <h1>Problem 1 - &lt; w XHTML</h1>
+  <p>
+   Ten plik nie jest dobrze zbudowany ze względu na zastosowanie surowego &lt;.
+  </p>
+</body>
+</html>
+
+

Powrót do artykułu +

+

Problem 2

+
<!-- Ten plik powinien mieć rozszerzenie .xhtml -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Problem 2 - komentarze w XHTML</title>
+  <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+  <style type="text/css">
+   <!--
+    body {background-color: blue; color: yellow; }
+   -->
+  </style>
+  <script type="text/javascript">
+   <!--
+   var i = 0;
+   var sum = 0;
+
+   for (i = 0; i < 10; ++i)
+   {
+     sum += i;
+   }
+   alert('sum = ' + sum);
+   // -->
+  </script>
+</head>
+<body>
+  <h1>Problem 2 - komentarze w XHTML</h1>
+
+  <p>
+  Ten dokument jest poprawnym XHTML 1.0 Strict podanym jako
+  <code>application/xhtml+xml</code>.
+  </p>
+
+  <p>
+  Ten dokument zawiera wewnętrzny CSS, zawarty w elemencie
+  <code>style</code> i otoczony przez komentarz
+  oraz JavaScript zawarty w elemencie <code>script</code>
+  i otoczony przez komentarz.
+  </p>
+
+  <dl>
+  <dt>Mozilla 1.1+/Opera 7</dt>
+  <dd>Nie zastosuje CSS lub nie uruchomi JavaScript.</dd>
+  <dt>Netscape 7.0x/Mozilla 1.0.x</dt>
+  <dd>Nie zastosuje CSS, ale uruchomi JavaScript.</dd>
+  <dt>Internet Explorer 5.5+</dt>
+  <dd>Nie wyświetli dokumentu.</dd>
+  </dl>
+
+  <p>
+  <a href="http://validator.w3.org/check/referer"><img
+    src="http://www.w3.org/Icons/valid-xhtml10"
+    alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+</body>
+</html>
+
+

Powrót do artykułu +

+

Problem 3

+
<!-- Ten plik powinien mieć rozszerzenie .xhtml
+     i wygeneruje on błąd przy próbie parsowania. -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Problem 3 - komentarze w XML</title>
+  <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+  <script type="text/javascript">
+   var i;
+   var sum = 0;
+
+   for (i = 10; i > 0; --i)
+   {
+     sum += i;
+   }
+  </script>
+</head>
+<body>
+  <h1>Problem 3 - komentarze w XHTML</h1>
+  <p>
+   Ten plik nie jest dobrze zbudowany ze względu na zastosowanie podwójnego
+   myślnika w komentarzu.
+  </p>
+</body>
+</html>
+
+

Powrót do artykułu +

+

Przykłady dla "Zastosowanie CSS w wewnętrznym <tt>style</tt> w komentarzach"

+

Przykład 1

+
<!-- Ten plik powinien mieć rozszerzenie .html -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Przykład 1 - XHTML 1.0 Strict jako text/html</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+  <style type="text/css">
+   <!--
+    body { padding-top: 8em; }
+    html { color: #fff; background: #000 no-repeat fixed;}
+    p {width: 30em; font-weight: bold;}
+   -->
+  </style>
+</head>
+<body>
+  <h1>Przykład 1 - XHTML 1.0 Strict jako text/html</h1>
+  <p>
+   Ten plik jest poprawnym XHTML 1.0 Strict podanym jako
+   <code>text/html</code>.
+  </p>
+
+  <p>
+  Ten dokument zawiera wewnętrzne reguły CSS zawarte w elemencie
+  <code>style</code> i otoczony przez komentarz SGML.
+  </p>
+
+  <p>
+  Zwróć uwagę, jak zastosowano CSS dla tła w Netscape 7.x,
+  Mozilli, Operze 7 i Internet Explorerze 5.5+.
+  </p>
+
+  <p>
+    <a href="http://validator.w3.org/check/referer"><img
+        src="http://www.w3.org/Icons/valid-xhtml10"
+        alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+
+</body>
+</html>
+
+

Powrót do artykułu +

+

Przykład 2

+
<!-- Ten plik powinien mieć rozszerzenie .xml -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Przykład 2 - XHTML 1.0 Strict jako text/xml</title>
+  <meta http-equiv="Content-Type" content="text/xml; charset=utf-8" />
+  <style type="text/css">
+   <!--
+    body { padding-top: 8em; }
+    html { color: #fff; background: #000 no-repeat fixed;}
+    p {width: 30em; font-weight: bold;}
+   -->
+  </style>
+</head>
+<body>
+  <h1>Przykład 2 - XHTML 1.0 Strict jako text/xml</h1>
+  <p>
+   Ten dokument jest poprawnym XHTML 1.0 Strict podanym jako
+   <code>text/xml</code>.
+  </p>
+
+  <p>
+  Ten dokument zawiera wewnętrzny CSS zawarty w elemencie
+  <code>style</code> i otoczony przez komentarz SGML.
+  </p>
+
+  <p>
+  Zauważ, że CSS dla tła <strong>nie</strong>
+  jest zastosowywany w Netscape 7.x, Mozilli i Operze 7 oraz że
+  Internet Explorer 5.5+ nie może w ogóle wyświetlić popranie strony.
+  </p>
+
+  <p>
+    <a href="http://validator.w3.org/check/referer"><img
+        src="http://www.w3.org/Icons/valid-xhtml10"
+        alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+
+</body>
+</html>
+
+

Powrót do artykułu +

+

Przykład 3

+
<!-- Ten plik powinien mieć rozszerzenie .xhtml -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Przykład 3 - XHTML 1.0 Strict jako application/xhtml+xml</title>
+  <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+  <style type="text/css">
+   <!--
+    body { padding-top: 8em; }
+    html { color: #fff; background: #000 no-repeat fixed;}
+    p {width: 30em; font-weight: bold;}
+   -->
+  </style>
+</head>
+<body>
+  <h1>Przykład 3 - XHTML 1.0 Strict jako application/xhtml+xml</h1>
+  <p>
+   Ten dokument jest poprawnym XHTML 1.0 Strict podanym jako
+   <code>application/xhtml+xml</code>.
+  </p>
+
+  <p>
+  Ten dokument zawiera wewnętrzny CSS zawarty w elemencie
+  <code>style</code> i otoczony przez komentarz SGML.
+  </p>
+
+  <p>
+  Zauważ, że CSS dla tła <strong>nie</strong> jest
+  stosowywany w Netscape 7.x, Mozilli i Operze 7 oraz, że
+  Internet Explorer 5.5+ nie może w ogóle wyświetlić poprawnie dokumentu.
+  </p>
+
+  <p>
+    <a href="http://validator.w3.org/check/referer"><img
+        src="http://www.w3.org/Icons/valid-xhtml10"
+        alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+
+</body>
+</html>
+
+

Powrót do artykułu +

+

Przykłady dla "Zastosowanie CSS w zewnętrznym pliku"

+

Przykład 4

+
<!-- Ten plik powinien mieć rozszerzenie .html -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Przykład 4 - XHTML 1.0 Strict jako text/html</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+  <link rel="stylesheet" type="text/css" href="style.css" />
+</head>
+<body>
+  <h1>Przykład 4 - XHTML 1.0 Strict jako text/html</h1>
+  <p>
+   Ten dokument jest poprawnym XHTML 1.0 Strict podanym jako
+   <code>text/html</code>.
+  </p>
+
+  <p>
+  Ten dokument odwołuje się do zewnętrznego pliku
+  arkusza stylów poprzez <code>link</code>.
+  </p>
+
+  <p>
+  Zauważ, że CSS dla tła jest zastosowywany w Netscape 7.x,
+  Mozilli, Operze 7 i Internet Explorerze 5.5+.
+  </p>
+
+  <p>
+    <a href="http://validator.w3.org/check/referer"><img
+        src="http://www.w3.org/Icons/valid-xhtml10"
+        alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+
+</body>
+</html>
+
+

Przed samodzielnym testowaniem tego przykład, przeczytaj to. +

Powrót do artykułu +

+

Przykład 5

+
<!-- Ten plik powinien mieć rozszerzenie .xml -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Przykład 5 - XHTML 1.0 Strict jako text/xml</title>
+  <meta http-equiv="Content-Type" content="text/xml; charset=utf-8" />
+  <link rel="stylesheet" type="text/css" href="style.css" />
+  </style>
+</head>
+<body>
+  <h1>Przykład 5 - XHTML 1.0 Strict jako text/xml</h1>
+  <p>
+   Ten dokument jest poprawnym XHTML 1.0 Strict podanym jako
+   <code>text/xml</code>.
+  </p>
+
+  <p>
+  Ten dokument odwołuje się do CSS-a umieszczonego w zewnętrznym pliku
+  arkusza stylów poprzez <code>link</code>.
+  </p>
+
+  <p>
+  Zauważ, że CSS dla tła jest zastosowywany w Netscape 7.x,
+  Mozilli, Operze 7 ale że Internet Explorer nie może w ogóle wyświetlić tego dokumentu.
+  </p>
+
+  <p>
+    <a href="http://validator.w3.org/check/referer"><img
+        src="http://www.w3.org/Icons/valid-xhtml10"
+        alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+
+</body>
+</html>
+
+

Przed samodzielnym testowaniem tego przykładu przeczytaj to. +

Powrót do artykułu +

+

Przykład 6

+
<!-- Ten plik powinien mieć rozszerzenie .xhtml -->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
+<head>
+  <title>Przykład 6 - XHTML 1.0 Strict jako application/xhtml+xml</title>
+  <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
+  <link rel="stylesheet" type="text/css" href="style.css" />
+  </style>
+</head>
+<body>
+  <h1>Przykład 6 - XHTML 1.0 Strict jako application/xhtml+xml</h1>
+  <p>
+   Ten dokument jest poprawnym XHTML 1.0 Strict podanym jako
+   <code>application/xhtml+xml</code>.
+  </p>
+
+  <p>
+  Ten dokument odwołuje się do CSS umieszczonego w zewnętrznym pliku
+  arkusza stylów poprzez <code>link</code>.
+  </p>
+
+  <p>
+  Zauważ, że CSS dla tła jest zastosowywany w Netscape 7.x,
+  Mozilli, Operze 7 oraz, że Internet Explorer nie może w ogóle wyświetylić dokumentu.
+  </p>
+
+  <p>
+    <a href="http://validator.w3.org/check/referer"><img
+        src="http://www.w3.org/Icons/valid-xhtml10"
+        alt="Valid XHTML 1.0!" height="31" width="88" /></a>
+  </p>
+
+</body>
+</html>
+
+

Przed samodzielnym testowaniem tego przykładu, przeczytaj to. +

Powrót do artykułu +

+

Arkusz stylów

+
/*
+ * Jeśli próbujesz wyświetlić wyniki tych przykładów,
+ * będziesz musiał utworzyć plik o nazwie style.css
+ * z poniższą zawartością w tym samym katalogu co
+ * przykłady.
+ */
+
+body { padding-top: 8em; }
+html { color: #fff; background: #000 no-repeat fixed;}
+p {width: 30em; font-weight: bold;}
+
+{{ languages( { "en": "en/Properly_Using_CSS_and_JavaScript_in_XHTML_Documents/Examples" } ) }} diff --git "a/files/pl/porady_odno\305\233nie_tworzenia_szybko_\305\202aduj\304\205cych_si\304\231_stron_html/index.html" "b/files/pl/porady_odno\305\233nie_tworzenia_szybko_\305\202aduj\304\205cych_si\304\231_stron_html/index.html" new file mode 100644 index 0000000000..ca28673b5a --- /dev/null +++ "b/files/pl/porady_odno\305\233nie_tworzenia_szybko_\305\202aduj\304\205cych_si\304\231_stron_html/index.html" @@ -0,0 +1,115 @@ +--- +title: Porady odnośnie tworzenia szybko ładujących się stron HTML +slug: Porady_odnośnie_tworzenia_szybko_ładujących_się_stron_HTML +tags: + - HTML + - Wszystkie_kategorie +--- +

Streszczenie: Nauczyć się zdroworozsądkowych porad odnośnie tworzenia stron HTML, które ładują się szybko i dają satysfakcję odwiedzającemu. +

+

Porady odnośnie tworzenia szybko ładujących się stron HTML

+

Poniższe porady są oparte na powszechnej wiedzy i eksperymentach. Jeśli masz dodatkowe wskazówki, które mogą pomóc innym zwiększyć szybkość ładowania się ich stron WWW, zapisz swoje sugestie na stronie dyskusji tego artykułu. +

Zoptymalizowana strona internetowa nie oznacza jedynie szybszej reakcji na odwiedzających twoją witrynę, ale także zmniejsza obciążenie twoich serwerów WWW i łącza internetowego. Może się to okazać kluczowe dla witryn o dużym natężeniu lub witryn, w których następuje nagły skok odwiedzalności z powodu niecodziennych okoliczności takich, jak sensacyjne historie podawane w mediach. +

Optymalizacja ładowania się strony nie służy tylko treściom, które zostaną obejrzane przez wąską grupę odwiedzających korzystających z modemu. Jest ona tak samo ważna dla treści szerokopasmowych i może zaowocować wielkimi usprawnieniami również dla odwiedzających z najszybszymi połączeniami.

+

Porady

+

Zmniejsz rozmiar strony

+

Rozmiar strony jest zdecydowanie najistotniejszym czynnikiem wpływającym na szybkość jej ładowania. +

Zmniejszenie rozmiaru strony poprzez usunięcie niepotrzebnych białych spacji i komentarzy oraz przeniesienie wpisanych skryptów i arkuszy stylów do zewnętrznych plików może zwiększyć szybkość ładowania się strony minimalizując pozostałe zmiany w strukturze strony. +

Narzędzia, takie jak HTML Tidy, mogą automatycznie usunąć dodatkowe nowe linie i poprzedzające je białe spacje z poprawnego kodu HTML. Inne narzędzia mogą "skompresować" JavaScript reformatując kod źródłowy lub czyniąc źródło mniej zrozumiałym i redukując długie identyfikatory do krótszych wersji. +

+

Zminimalizuj liczbę plików

+

Zmniejszenie liczby plików, do których odwołuje się strona sieciowa zmniejsza liczbę połączeń HTTP koniecznych do pobrania strony. +

Zależnie od ustawień cache przeglądarki, może ona wysłać do serwera żądanie <tt>If-Modified-Since</tt> dla każdego pliku CSS, JavaScript lub obrazka, pytając tym samym, czy plik został zmodyfikowany od czasu ostatniego pobrania. +

Zmniejszając liczbę plików, do których odwołuje się strona internetowa, zmniejszasz czas potrzebny do wysłania tych żądań i otrzymania odpowiedzi. +

Zbyt wiele czasu poświęconego wysyłaniu zapytań o czas ostatniej modyfikacji powiązanych plików może opóźnić pierwsze wyświetlenie strony jako że przeglądarka musi sprawdzić czas modyfikacji każdego pliku CSS lub JavaScript przed jej wyrenderowaniem. +

+

Zmniejsz liczbę wywołań domen

+

Ponieważ każda oddzielna domena pochłania czas wywołania DNS, zmniejszenie liczby oddzielnych domen, z których korzysta się do tworzenia odnośników do plików CSS, JavaScript i obrazków, zmniejsza czas ładowania się strony. +

Nie zawsze musi się to okazać praktyczne, jednakże powinieneś zawsze zwracać uwagę na to, aby w miarę możliwości używać na swoich stronach minimalnej liczby różnych domen. +

+

Przechowuj w cache wielokrotnie wykorzystywane treści

+

Upewnij się, że każda treść, która może być składowana w cache, jest tam przechowywana z odpowiednim czasem wygaśnięcia. +

W szczególności zwróć uwagę na nagłówek Last-Modified. Pozwala on efektywnie przechowywać strony w cache; nagłówek ten informuje agenta użytkownika o tym, kiedy nastąpiła ostatnia modyfikacja pliku, który ma zostać załadowany. Dla stron statycznych (np. .html, .css) większość serwerów WWW automatycznie doda nagłówek Last-Modified, opierając się na dacie ostatniej modyfikacji przechowywanej w systemie plików. Dla stron dynamicznych (np. .php, .aspx) oczywiście nie może to zostać wykonane i nagłówek nie jest wysyłany. +

Zatem w szczególności dla stron, które są generowane dynamicznie, nieco pracy wykonanej w tym zakresie jest korzystne. Może być to nieco kłopotliwe, ale zaoszczędzi mnóstwo zapytań o strony, które w innym wypadku nie mogłyby być składowane w cache. +

Więcej informacji: +

+
  1. HTTP Conditional Get dla hakerów RSS +
  2. HTTP 304: Not Modified +
  3. O HTTP Last-Modified i ETag +
+

Optymalnie porządkuj komponenty strony

+

Pobierz treść strony w pierwszej kolejności, dzięki czemu użytkownik najszybciej otrzyma widoczny efekt pobierania. +

Zawartość strony wraz z wszelkimi arkuszami CSS lub skryptami JavaScript wymaganymi do jej pierwszego wyświetlenia powinna zostać pobrana jako pierwsza. Stanowi ją zwykle tekst i można zyskać na jego kompresji w modemie, zapewniając tym samym szybszą reakcję na zapytanie użytkownika. +

Wszystkie mechanizmy DHTML, które wymagają, aby strona została pobrana w całości przed ich użyciem, powinny być początkowo dezaktywowane i uaktywnione dopiero po pobraniu strony. Dzięki temu skrypty DHTML JavaScript zostaną pobrane po zawartości strony, zwiększając tym samym całkowitą wydajność jej ładowania. +

+

Zmniejsz liczbę skryptów wpisanych

+

Skrypty wpisane mogą być kosztowne dla czasu ładowania się strony, jako że parser musi założyć, że skrypt wpisany może zmodyfikować strukturę strony. Zmniejszenie wykorzystania skryptów wpisanych w ogólności, a w szczególności użycia instrukcji document.write do wypisywania zawartości, może zwiększyć całkowitą szybkość ładowania się strony. W nowoczesnych przeglądarkach do manipulowania zawartością strony należy używać nowoczesnych metod W3C DOM, zamiast starszych rozwiązań opartych na document.write. +

+

Używaj nowoczesnego CSS i poprawnej składni znaczników

+

Wykorzystanie nowoczesnego CSS zmniejsza ilość znaczników, może zmniejszyć potrzebę wstawiania obrazków tworzących układ graficzny strony i może na wiele sposobów zastąpić obrazki, które faktycznie przedstawiają jedynie tekst i mają dużo większy rozmiar niż odpowiedni CSS i tekst przez niego opisywany. +

Korzystanie z poprawnej składni znaczników ma inne zalety. Oprócz tego, że przeglądarka nie musi wykonywać "korekty błędów" podczas parsowania HTML, poprawna składnia znaczników pozwala na swobodne korzystanie z innych narzędzi, które mogą pre-procesować twoje strony internetowe. Na przykład HTML Tidy może usunąć białe spacje i opcjonalne znaczniki zamykające, jednak odmówi uruchomienia na stronie z poważnymi błędami składniowymi. +

+

Segmentuj zawartość

+

Albo zastąp układ graficzny strony oparty na tabelach na rzecz znaczników div, albo podziel tabele na mniejsze tabelki, które będą mogły zostać wyświetlone bez potrzeby pobierania całej zawartości strony. +

Zamiast wielokrotnie zagnieżdżać tabele, jak w poniższym przykładzie: +

+
<TABLE>
+  <TABLE>
+    <TABLE>
+          ...
+    </TABLE>
+  </TABLE>
+</TABLE>
+

Skorzystaj z niezagnieżdżonych tabel lub znaczników div, np. +

+
<TABLE>...</TABLE>
+<TABLE>...</TABLE>
+<TABLE>...</TABLE>
+

Określaj rozmiary obrazków i tabel

+

Jeżeli przeglądarka może natychmiast wyznaczyć wysokość i/lub szerokość twoich obrazków i tabel, będzie mogła wyświetlić stronę internetową bez potrzeby ponownego opływania jej zawartości. To nie tylko przyspieszy wyświetlenie strony, ale także zapobiegnie irytującym zmianom w układzie graficznym strony po zakończeniu pobierania. +

Obrazki powinny mieć ustawione atrybuty height oraz width. +

Tabele powinny korzystać z reguły CSS table-layout: fixed i określać szerokość kolumn za pomocą znaczników COL i COLGROUP. +

+

Mądrze dobieraj wymagania agenta użytkownika

+

W celu osiągnięcia największych usprawnień w konstrukcji strony, upewnij się, że dla projektów określono rozsądne wymagania agenta użytkownika. Nie wymagaj, aby zawartość strony wyświetlała się idealnie z dokładnością co do piksela we wszystkich przeglądarkach, szczególnie w tych przestarzałych. +

W idealnej sytuacji, twoje podstawowe wymagania minimalne powinny być oparte na nowoczesnych przeglądarkach, które wspierają odpowiednie standardy. Można do nich zaliczać: Netscape 7/Gecko 1.0.2+ na dowolnej platformie, Internet Explorer 5.5+ na Windows, Opera 7+ na Windows lub Safari na Mac OS X. +

Zauważ jednak, że wiele porad umieszczonych w tej notce technicznej to zdroworozsądkowe techniki, które stosują się do dowolnego agenta użytkownika i mogą być zastosowane na dowolnej stronie niezależnie od wymagań technicznych przeglądarki. +

+

Przykładowa struktura strony

+

· HTML +

+
· HEAD +
+
· LINK ...
Pliki CSS wymagane do określenia wyglądu strony. Zminimalizuj liczbę linii, aby zwiększyć wydajność, dzieląc jednocześnie niezwiązane ze sobą CSS na oddzielne pliki w celu ułatwienia konserwacji. +
+
+
· SCRIPT ...
Pliki JavaScript zawierające funkcje wymagane podczas ładowania strony, ale nie DHTML, który może zostać wykonany dopiero po załadowaniu strony. +
Zminimalizuj liczbę plików, aby zwiększyć wydajność, dzieląc jednocześnie niezwiązane ze sobą skrypty JavaScript na oddzielne pliki w celu ułatwienia konserwacji. +
+
+
· BODY +
· Widoczna dla użytkownika zawartość podzielona na małe segmenty (tabele / div), które mogą zostać wyświetlone bez potrzeby czekania na pobranie całej strony. +
+
· SCRIPT ...
Wszystkie skrypty, które zostaną użyte jako DHTML. Skrypt DHTML zwykle może zostać wykonany dopiero po całkowitym załadowaniu strony i inicjalizacji wszystkich niezbędnych obiektów. Nie ma potrzeby ładowania tych skryptów przed zawartością strony. To jedynie opóźnia pierwsze widoczne efekty ładowania strony. +
Zminimalizuj liczbę plików, aby zwiększyć wydajność, dzieląc jednocześnie niezwiązane ze sobą skrypty JavaScript na oddzielne pliki w celu ułatwienia konserwacji. +
Jeśli jakieś obrazki są używane w efektach rollover, powinieneś zastosować wobec nich preload po pobraniu zawartości strony. +
+
+

Powiązane odnośniki

+ +
+

Informacje o dokumencie

+ +
+


+

+
+
+{{ languages( { "en": "en/Tips_for_Authoring_Fast-loading_HTML_Pages", "ja": "ja/Tips_for_Authoring_Fast-loading_HTML_Pages", "zh-cn": "cn/Tips_for_Authoring_Fast-loading_HTML_Pages" } ) }} diff --git a/files/pl/prezentacje_xtech_2005/index.html b/files/pl/prezentacje_xtech_2005/index.html new file mode 100644 index 0000000000..9190915fa4 --- /dev/null +++ b/files/pl/prezentacje_xtech_2005/index.html @@ -0,0 +1,43 @@ +--- +title: Prezentacje XTech 2005 +slug: Prezentacje_XTech_2005 +tags: + - Prezentacje + - Wszystkie_kategorie +translation_of: Archive/Mozilla/XTech_2005_Presentations +--- +

 

+
+
+ Web 1.6: A Rope of Sand (en) - Otwierająca prelekcja, Mike Shaver
+
+
+
+ Mozilla E4X (en) - Brendan Eich
+
+ "ECMAScript dla XML" (ECMA-357), nowy standard pisania i przetwarzania XML-a bezpośrednio w JavaScripcie (ECMA-262, ISO-16262). E4X wiąże składnię XML i JavaScriptu, i rozszerza JavaScript o przestrzenie nazw, nazwy kwalifikowane, elementy XML i listy. E4X dodaje także nowe operatory do JavaScripta do filtrowania list XML oraz numerowania dzieci i potomków w XML-u. Inna właściwości E4X: możliwość wiązania dokumentu W3C DOM do nowego obiektu XML, odzwierciedlając DOM w składni E4X dzięki czemu aktualizacje w DOM i hierarchii obiektów E4X pokazywane są równocześnie.
+
+
+
+ Directions of the Mozilla RDF engine: website scripting, standards conformance and perfomance (en) - Axel Hecht
+
+ Ta prezentacja pokazuje nowe kierunki rozwoju silnika RDF w Mozilli. Pokazuje plany wystawienia API RDFa do publicznej sieci oraz poprawki wydajności i poprawności.
+
+
+
+ Rich Web: SVG And Canvas In Mozilla (en) - Robert O'Callahan
+
+ Dzisiejsze przeglądarki WWW oferują dość ograniczone możliwości graficzne programistom WWW. Wykorzystanie wsparcia sprzętowego, zwłaszcza w interaktywnych aplikacjach daje możliwość tworzenia znacznie bogatszych graficznie interaktywnych aplikacji. Aby pokazać potencjał aplikacji WWW, przeglądarki muszą dać nowe, bogate API graficzne dla autorów stron. Projekt Mozilla staje na wysokości zadania prezentując dwie nowe funkcje, które będą dostarczane wraz z Firefoksem 1.1: zintegrowane SVG oraz nowy element HTML canvas. Trwają także prace "pod maską" nad nową zunifikowaną architekturą graficzną. Te prace dadzą także nowe możliwości autorom stron WWW takie jak możliwość wykorzystania efektów SVG w treściach HTMLa.
+
+
+
+ Extending Gecko with XBL and XTF (en) - Brian Ryner
+
+ Ta sesja pokazuje ścieżki rozszerzania Mozilli/Firefoksa, aby obsługiwał nowe tagi XML i przestrzenie nazw poprzez rozszerzenia silnika layoutu.
+
+
+
+ XUL - Mozilla's XML User Interface Language (en) - Ben Goodger
+
+ Ben Goodger, główny programista Mozilli Firefox, mówi o XULu, XMLowym języku obsługi interfejsu Mozilli.
+
diff --git a/files/pl/programowanie_mozilli/index.html b/files/pl/programowanie_mozilli/index.html new file mode 100644 index 0000000000..c870d96da8 --- /dev/null +++ b/files/pl/programowanie_mozilli/index.html @@ -0,0 +1,16 @@ +--- +title: Programowanie Mozilli +slug: Programowanie_Mozilli +tags: + - Programowanie_Mozilli + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +--- +

Chcesz pomóc w poprawieniu błędów, ale nie wiesz gdzie zacząć? Znalazłeś odpowiednie miejsce. Tu dowiesz się jak pobrać kod źródłowy, skompilować go, stworzyć poprawkę, dodać ją do drzewa, i wszystkich innych ważnych rzeczy, które każdy programista Mozilli powinien znać.

+ +

Dokumentacja

Hacking documentation on mozilla.org
Another page with hacking-related documentation. We're working on this.
Hakowanie Firefoksa oraz kilka fragmentów kodu
Getting involved in front-end development.
Kompilowanie Firefoksa, Thunderbirda oraz innych aplikacji
This section contains documentation on how to build Firefox, Thunderbird, and other Mozilla-based applications.
Strategie programowania Mozilli
Jak sprawić by programowanie w środowisku Mozilli było wydajne.
Developing Tests
Testing information and automation tools.
Debugging FAQs
Tips on debugging are platform specific. Choose: Windows, Linux, or Mac OS X.
Tworzenie poprawki i jak dostać review i włączyć kod do repozytorium
Podpowiedzi jak tworzyć poprawki i sprawić by zmiany znalazły się w drzewie.
Przeglądanie i przeszukiwanie kodu źródłowego Mozilli online
Użycie systemu Mozilla Cross Reference (MXR) do przeglądania i przeszukiwania kodu źródłowego wszystkich produktów Mozilli.
Uzyskiwanie praw zapisu do kodu źródłowego Mozilli
Dowiedz się jak uzyskać dostęp do zapisu do repozytorium.

Pokaż wszystkie...

Społeczność

Narzędzia

  • Bugzilla : baza danych błędów projektów Mozilli.
  • MXR (wcześniej LXR): przeglądanie i przeszukiwanie źródeł repozytoriów.
  • Bonsai: dowiedz się kto zmienił co, w jakim pliku i kiedy.
  • Tinderbox : Pokazuje status drzewa. Zajrzyj tam zanim pobierzesz źródła, albo coś wyślesz do repozytorium.
  • Crash tracking: Socorro, Talkback
  • graphs.mozilla.org analiza wydajności.

Pokaż wszystkie...

Powiązane tematy

Kontrola Jakości
+

Categories

+

Interwiki Language Links

+

 

+

 

+

{{ languages( { "de": "de/Mozilla_entwickeln", "en": "en/Developing_Mozilla", "es": "es/Desarrollando_Mozilla", "fr": "fr/D\u00e9veloppement_de_Mozilla", "ja": "ja/Developing_Mozilla", "pt": "pt/Desenvolvimento_Mozilla", "zh-cn": "cn/\u5f00\u53d1Mozilla" } ) }}

diff --git a/files/pl/programowanie_www/index.html b/files/pl/programowanie_www/index.html new file mode 100644 index 0000000000..c50ec7e0fc --- /dev/null +++ b/files/pl/programowanie_www/index.html @@ -0,0 +1,53 @@ +--- +title: Programowanie WWW +slug: Programowanie_WWW +tags: + - Programowanie_WWW + - Wszystkie_kategorie +translation_of: Web/Guide +--- +

+

+
+

Programowanie WWW jest to zespół wszystkich aspektów tworzenia stron oraz aplikacji WWW. +

+
+ + + + +
+

Dokumentacja

+
Wykrywanie wersji i programowanie dla wielu przeglądarek +
Niewłaściwie stosowanie wykrywania wersji może uczynić konserwację serwisu prawdziwym koszmarem. Przemyślenie strategii w którym momencie i w jaki sposób wykrywać wersję i rodzaj przeglądarki użytkownika jest kluczowym czynnikiem podczas składania łatwych w zarządzaniu i przenośnych serwisów internetowych. Niniejszy artykuł jest przeglądem różnych sposobów wykrywania wersji i ich użyteczności w określonych przypadkach. +
+
Użycie wartości URL dla własności cursor +
Gecko 1.8 (Firefox 1.5, SeaMonkey 1.0) obsługuje wartość URL dla własności cursor CSS2, który pozwala określić dowolne obrazeki jako kursor myszki. +
+

Pokaż wszystkie... +

+
+

Społeczność

+
  • Obejrzyj fora Mozilli... +
+

{{ DiscussionList("dev-web-development", "mozilla.dev.web-development") }} +

+ +

Narzędzia

+ +

Pokaż wszystkie... +

+

Powiązane tematy

+
AJAX, CSS, HTML, JavaScript, Standardy WWW, XHTML, XML +
+
+

Categories +

Interwiki Language Links +


+

{{ languages( { "de": "de/Webentwicklung", "en": "en/Web_Development", "es": "es/Desarrollo_Web", "fr": "fr/D\u00e9veloppement_Web", "it": "it/Sviluppo_Web", "ja": "ja/Web_Development" } ) }} diff --git "a/files/pl/przygotowanie_\305\233rodowiska_programowania_rozszerzenia/index.html" "b/files/pl/przygotowanie_\305\233rodowiska_programowania_rozszerzenia/index.html" new file mode 100644 index 0000000000..9b34d45c24 --- /dev/null +++ "b/files/pl/przygotowanie_\305\233rodowiska_programowania_rozszerzenia/index.html" @@ -0,0 +1,61 @@ +--- +title: Przygotowanie środowiska programowania rozszerzenia +slug: Przygotowanie_środowiska_programowania_rozszerzenia +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +--- +

 

+

W tym artykule przedstawiono propozycje skonfigurowania aplikacji Mozilla w celu dostosowania jej do potrzeb programowania rozszerzeń.

+

Preferencje programistyczne

+

Ustawienie wymienionych niżej preferencji ułatwi debugowanie kodu (jednak wiązać się z tym będzie spadek wydajności).

+

Informacje na temat ustawiania preferencji można znaleźć w artykule Editing Configuration Files (Edytowanie plików konfiguracyjnych). Uwaga: niektórych z omawianych preferencji domyślnie nie ma liście <tt>about:config</tt> — w takim przypadku należy utworzyć nowe wpisy (typu „wartość logiczna”).

+

Przed dokonaniem tych zmian należy zapoznać się z instrukcją tworzenia osobnego profilu do celów testowych, przedstawioną w sekcji Profil testowy.

+ +

Rozszerzenia wspomagające programowanie

+

Poniższe rozszerzenia mogą być przydatne podczas programowania.

+ +

Profil testowy

+

Aby uniknąć spadku wydajności związanego z ustawieniem preferencji dotyczących programowania i zainstalowaniem dodatkowych rozszerzeń, a także w celu zabezpieczenia się przed utratą własnych danych, można utworzyć osobny profil przeznaczony do testów pisanego oprogramowania.

+

Przypisanie wartości 1 do zmiennej środowiskowej MOZ_NO_REMOTE pozwala na uruchomienie dwóch kopii programu Firefox, każdej z osobnym profilem. W systemie Windows można na przykład skorzystać z poniższego pliku wsadowego w celu uruchomienia Firefoksa z profilem testowym, niezależnie od tego, czy „zwykły” Firefox jest już uruchomiony. (Przyjęto założenie, że profil testowy nosi nazwę „dev”):

+
set MOZ_NO_REMOTE=1
+start "" "%ProgramFiles%\Mozilla Firefox\firefox.exe" -P dev
+
+

Aby uruchomić program Firefox z domyślnym profilem wystarczy po prostu jak zwykle użyć poleceń "firefox" lub "firefox -P default".

+

Lokalizacja tworzonego kodu

+

Aby uniknąć ciągłego ponownego instalowania tworzonego rozszerzenia za każdym razem, gdy dokonane zostaną jakieś zmiany, a także w celu ochrony plików źródłowych przed przypadkowym usunięciem przy odinstalowywaniu rozszerzenia, kod źródłowy można umieścić poza profilem w wybranej przez siebie lokalizacji.

+
    +
  1. Znajdź identyfikator rozszerzenia w zawartym w nim pliku install.rdf
  2. +
  3. W katalogu katalog_profilu/extensions/ utwórz plik o nazwie takiej, jak powyższy identyfikator (np. `katalog_profilu/extensions/{46D1B3C0-DB7A-4b1a-863A-6EE6F77ECB58}`) (Znajdź katalog profilu)
  4. +
  5. Plik ten powinien zawierać ścieżkę do folderu zawierającego plik install.rdf tworzonego rozszerzenia. (np. `/pełna/ścieżka/do/mojegoRozszerzenia`)
  6. +
  7. Zapisz plik w folderze extensions używanego profilu i uruchom ponownie aplikację.
  8. +
+

Używanie katalogów zamiast archiwów JAR

+

Niezależnie od tego, czy pliki chrome rozszerzenia będą docelowo przechowywane w archiwach JAR, czy w katalogach, podczas programowania zalecana jest ta druga technika ze względu na związane z nią ułatwienia. Jeżeli w finalnej wersji mają być zastosowane archiwa JAR, w czasie programowania można korzystać ze struktury katalogów, edytując plik chrome.manifest. Na przykład zamiast poleceń

+
content	myExtension	jar:chrome/myExtension.jar!/content/
+
+

należy użyć

+
content	myExtension	chrome/content/
+
+

 

+

 

+

 

+

 

+

 

+
+  
+

 

diff --git a/files/pl/pyxpcom/index.html b/files/pl/pyxpcom/index.html new file mode 100644 index 0000000000..570af27fcc --- /dev/null +++ b/files/pl/pyxpcom/index.html @@ -0,0 +1,61 @@ +--- +title: PyXPCOM +slug: PyXPCOM +tags: + - PyXPCOM +translation_of: Mozilla/Tech/XPCOM/Language_bindings/PyXPCOM +--- +

+

+
+

PyXPCOM allows for communication between Python and XPCOM, such that a Python application can access XPCOM objects, and XPCOM can access any Python class that implements an XPCOM interface. With PyXPCOM, a developer can talk to XPCOM or embed Gecko from a Python application. PyXPCOM is similar to JavaXPCOM (Java-XPCOM bridge) or XPConnect (JavaScript-XPCOM bridge). +

+Python classes and interfaces: Mozilla defines many external interfaces available to embeddors and component developers. PyXPCOM provides access to these interfaces as Python interfaces. PyXPCOM also contains several classes that provide access to functions for initializing and shutting down XPCOM and Gecko from Python, as well as some XPCOM helper functions.
+ + +
+

Documentation

+
Building PyXPCOM +
The instructions for building PyXPCOM. +
+
Creating a Python XPCOM component +
An example of how to create a simple XPCOM component with Python. +
+
Getting to know PyXPCOM +
PyXPCOM is a bridging technology between XPCOM and Python. This article gives you a head start to PyXPCOM. +
+

NOTE: The links to Part II and III of this series are broken and I cannot find them on the IBM site. Please update this page if/when the links can be found. +

View All... +

+

History

+

PyXPCOM was initially developed by ActiveState Tool Corporation, and came out of their Komodo project. Current releases are now integrated with the Mozilla build system. +

+
+

Community

+
  • View Mozilla XPCOM forums... +
+

+

+ +

Source Code

+ + +
XPCOM +
+
+

Categories +

Interwiki Language Links +


+

+
+
diff --git a/files/pl/qa/index.html b/files/pl/qa/index.html new file mode 100644 index 0000000000..c436297ad2 --- /dev/null +++ b/files/pl/qa/index.html @@ -0,0 +1,59 @@ +--- +title: QA +slug: QA +translation_of: Mozilla/QA +--- +
+

Jest wiele rzeczy, które możesz zrobić, aby pomóc projektowi Mozilla w zakresie kontroli jakości (ang. Quality Assurance - QA) i żadna z nich nie wymaga umiejętności programowania. Część z nich nie wymaga nawet znajomości HTML-a ani żadnych innych technologii WWW. Jeżeli jesteś zainteresowany pomaganiem nam w testowaniu i innych czynnościach związanych z kontrolą jakości, przeczytaj najpierw strony Mozilla Quality Assurance oraz Pomoc z Quality Assurance.

+
+ + + + + + + + +
+

Dokumentacja

+ +
+
Wytyczne zgłaszania błędów
+
Im skuteczniej zostanie zgłoszony błąd, tym bardziej prawdopodobne jest, że zostanie on naprawiony. Poprzez przestrzeganie tych zasad możesz upewnić się, że Twoje błędy będą na górze stosu inżynierów Mozilli i będą naprawione.
+
Jak sprawdzić zduplikowane raporty błędów
+
Jest to przewodnik stworzony, aby pomóc Ci zidentyfikować tak wiele zduplikowanych zgłoszeń błędów, jak tylko możesz i tak skutecznie jak to możliwe. Zakładamy, że znasz już podstawy szukania duplikatów na Bugzilli.
+
Jak sprawdzić czy błąd został już wcześniej zgłoszony
+
Możesz pomóc w naprawieniu większej ilości błędów w krótszym czasie poprzez sprawdzanie bazy danych Bugzilli przed zgłoszeniem swojego błędu oraz nie tworzenie duplikatu zgłoszenia, jeśli odkryjesz, że błąd został już zgłoszony.
+
Jak stosować wyrażenia regularne podczas przeszukiwania Bugzilli
+
Ten przewodnik został zaprojektowany, aby dostarczyć Ci wystarczającej wiedzy i wyrwanych z życia przykładów, aby potrafił używać różnych porównań tekstowych oferowanych przez Mozillę (szczególnie wyrażeń regularnych) i abyś w ten sposób zyskał doświadczenie.
+
+ +

Pokaż wszystkie...

+
+

Społeczność

+ + + +

Narzędzia

+ + + +

Pokaż wszystkie...

+ + + + +
diff --git a/files/pl/qa/wskazowki_do_zglaszania_bledow/index.html b/files/pl/qa/wskazowki_do_zglaszania_bledow/index.html new file mode 100644 index 0000000000..fc40abfef2 --- /dev/null +++ b/files/pl/qa/wskazowki_do_zglaszania_bledow/index.html @@ -0,0 +1,241 @@ +--- +title: Wskazówki do zgłaszania błędów +slug: QA/Wskazowki_do_zglaszania_bledow +tags: + - Bugzilla + - QA + - Raport błędu +translation_of: Mozilla/QA/Bug_writing_guidelines +--- +
+

Jeśli potrzebujesz pomocy z oprogramowaniem Mozilla (na przykład z Firefox, Seamonkey lub Thunderbird) skorzystaj z dostępnych tematów pomocy. Nie edytuj tej strony!

+
+ +

Ta strona zakłada, że chcesz wspomóc projekt Mozilla poprzez zebranie odpowiednich informacji, aby stworzyć użyteczny raport błędu w Bugzilla, systemie śledzenia błędów produktów Mozilla. Dziękujemy!

+ +

Jeśli to twój pierwszy raport błędów, z pewnością zechcesz skorzystać z pomocy bardziej doświadczonych osób, które już wiedzą na czym to polega. Wskazówki znajdziesz na stronie QA w sekcji Społeczność. Jeśli chcesz zgłosić błąd programu Firefox, pomoc znajdziesz również na kanale #firefox na irc.mozilla.org. Lista kanałów dla pozostałych projektów (np. Thunderbird lub SeaMonkey) znajduje się na naszej stronie wiki IRC.

+ +

Jak zgłosić błąd

+ +

Dla każdego problemu stwórz osobny raport!

+ +

Zarządzanie statusem każdego z problemów z osobna jest dużo efektywniejsze.

+ +

Inne istotne detale

+ +
    +
  1. Spróbuj określić kroki, które pozwalają zreprodukować błąd: + +
      +
    • Jeśli wiesz jakie dokłanie kroki należy podjąć — świetnie! — jesteś na dobrej drodze, żeby zgłosić użyteczny raport błędu.
    • +
    • Jeśli błąd potrafisz odtworzyć tylko sporadycznie (nie znasz dokładnych kroków), to aby raport był użyteczny należy podać dodatkowe informacje.
    • +
    • Jeśli nie potrafisz odtworzyć problemu, to zgłaszanie raportu prawdopodobnie nic nie da, chyba że bardzo szegółowo opiszesz sytuację, w której problem wystąpił.
    • +
    +
  2. +
  3. Upewnij się, że twoje oprogramowanie jest aktualne. Byłoby idealnie przetestować nieoficjalną wersję (np. Firefox Beta, Aurora, lub zawsze najświeższą Nightly), żeby sprawdzić, czy przypadkiem twój błąd nie został już naprawiony.
  4. +
  5. Zgłaszając błąd w Firefox, najpierw sprawdź czy potrafisz go odtworzyć po stworzeniu nowego profilu Firefox. Jeśli błąd pojawia się tylko w aktualnie używanym profilu, spróbuj znaleźć które ustawienia, rozszerzenia lub pliki profilu są potrzebne do zreprodukowania błędu. +
      +
    • Jeśli błąd wydaje się być skandaliczny (tj. dotyczy ogromnej liczby użytkowników) to możliwe, że w twojej instalacji jest coś nietypowego, co jest istotne podczas definiowania kroków do zreprodukowania błędu. Masz o wiele większe szanse domyślić się co to może być, niż programista który nie ma dostępu do twojego systemu.
    • +
    • Jeśli błąd jest jednym ze specyficznych typów błędów (opisanych dalej), to taka informacja nadal będzie dla nas pomocna, nawet jeśli nie potrafisz określić kroków pozwalających zreprodukować błąd używając nowego profilu.
    • +
    +
  6. +
  7. Otwórz formularz zgłaszania raportu błędu (w języku angielskim), który poprowadzi cię przez większość procesu zgłaszania raportu błędu: +
      +
    • Utwórz konto w Bugzilla, jeśli jeszcze go nie masz, oraz wybierz produkt, dla którego chciałbyś stworzyć raport błędu.
    • +
    • Napisz krótkie podsumowanie opisujące na czym polega błąd, tak jak opisano poniżej; sprawdź czy taki błąd już nie został wcześniej zgłoszony (jeśli chcesz być bardziej dokładny, możesz skożystać z zaawansowanego przewodnika wykrywania duplikatów błędów).
    • +
    • Podaj dokładne kroki do zreprodukowania błędu, oczekiwane zachowanie aplikacji oraz aktualne zachowanie aplikacji, tak jak opisano poniżej.
    • +
    • Podaj dodatakowe informacje (również opisane poniżej), szczególnie jeśli nie potrafisz zreprodukować błędu używając nowego profilu; oraz/lub przez zgłoszenie problemu związanego z nagłym zamknięciem aplikacji, zużyciem pamięci, wydajnością lub jest to błąd regresywny; lub masz problem związany z konkretną stroną internetową.
    • +
    +
  8. +
  9. Jeśli chciałbyś zgłosić kilka problemów, stwórz proszę osobny raport dla każdego z osobna.
  10. +
+ +

Pisanie dobrego podsumowania

+ +

Jak opisać błąd używając około 10 słów? Będzie to pierwsze co w twoim raporcie zobaczy programista.

+ +

Dobre podsumowanie powinno krótko i zwięźle identyfikować raport błędu. Powinno wyjaśniać na czym polega problem, nie proponowane rozwiązanie.

+ + + + + +

Kroki pozwalające zreprodukować błąd

+ +

Jak programista ma zreprodukować błąd na swoim komputerze?

+ +

Kroki pozwalające zreprodukować błąd są najważniejszą częścią każdego raportu błędu. Jeśli programista będzie w stanie zreprodukować błąd, to bardzo możliwe że uda się go rozwiązać. Jeśli kroki opiszesz w niejasny sposób, to może się okazać że nawet nie będzie wiadomo czy błąd został poprawiony.

+ + + + + + + + + + + + + + + + + + + + + + + + +
Co powinien zawierać raport błędu?Dobry przykład (szczegółowy)Zły przykład (zbyt ogólnie)
Opisz czy jesteś w stanie zreprodukować kroki i jak często (zawsze / czasami / w ogóle).Błąd potrafię zreprodukować wykonując następujące kroki: 
+

W każdym kroku dodatkowo opisz sposoby interakcji z Firefox'em.

+
+

1. Uruchom Firefox przez kliknięcie na ikonie pulpitu
+ 2. Wciśnij Cmd+N (lub Ctrl+N w przypadku użytkowników Windows) aby otworzyć nowe okno przeglądarki
+ 3. Wklej https://mail.google.com/ w pasku adresu i wciśnij Enter

+
Otwórz Gmail w innym oknie
+

Po opisie kroków, dokładnie opisz obserwowane (aktualne) oraz oczekiwane zachowanie aplikacji. Jasno oddziel fakty (obserwacje) od przypuszczeń.

+
Oczekiwane zachowanie: Moja skrzynka odbiorcza wyświetla się prawidłowo.
+ Aktualne zachowanie: Moja skrzynka odbiorcza wyświetla komunikat 'Twoja przeglądarka nie wspiera cookies (error -91)'.
+

"Nie działa"

+ +

"Strona wyświetla się nieprawidłowo"

+
+ +

Podawanie dodatkowych informacji

+ +

Poniższe informacje są wymagane w przypadku większości raportów błędu. Możesz oszczędzić czas podając te informacje zaraz po Oczekiwanym zachowaniu aplikacji. Jeśli musisz dołączyć więcej niż jeden plik, będzie to możliwe później, po wysłaniu raportu.

+ +

Specyficzne typy błędów

+ +

Jeśli wysyłasz raport dotyczący nagłego zamknięcia aplikacji (ang. crash bug) dołącz Breakpad ID lub stos wywołania (ang. stack trace) oraz sygnaturę błędu (ang. crash signature) do podsumowania i pola Crash Signature.

+ +

Jeśli wysyłasz raport dotyczący wykorzystania lub wycieku pamięci, dołącz wynik about:memory. Idealnie byłoby znaleźć kroki prowadzące do wzrostu zużycia na pozycjach w about:memory (nawet po kliknięciu przycisku "Minimize memory usage" na dole ekranu). Jeśli masz problem z odtworzeniem kroków, zajrzyj na stronę Firefox Support Duże użycie pamięci. Jeśli jesteś programistą C++, dostępne są bardziej precyzyjne narzędzia.

+ +

Jeśli wysyłasz raport na temat powolnego działania aplikacji lub wysokiego użycia procesora, w raporcie podaj link do profilu wydajności.

+ +

Jeśli aplikacja się zawiesza (piłka plażowa w OS X lub "Okno nie odpowiada" w Windows) postępuj według instrukcji z artykułu Jak zgłosić że Firefox się zawiesza.

+ +

Jeśli wysyłasz raport dotyczący Zawieszającej się wtyczki Flash odwiedź https://wiki.mozilla.org/Flash/Hang_Debugging żeby dowiedzieć się jak wydobyć istotne informacje na ten temat dla programistów.

+ +

Jeśli wysyłasz raport błędu dotyczącego konkretnej strony insternetowej spróbuj przeprowadzić skrócony przypadek testowy i dołącz go do raportu. Jeśli nie masz na to czasu lub ekspertyzy na ten temat, to zamiast do nas zgłoś ten problem na webcompat.com, gdzie nasi ochotnicy zrobią to za ciebie.

+ +

Jeśli błąd pojawił się niedawno to znalezienie okna regresji może pomóc nam zidentyfikować przyczynę problemu.

+ +

Co jeśli mój błąd wydaje się "przypadkowy" lub "sporadyczny"? (tekst angielski)

+ +

Większość błędów dotyczących Firefox'a

+ +

Większość raportów błędów dotyczących Firefox'a powinna zawierać poniższe informacje.

+ + + + + + + + + + + + + + + + + + + + +
Co powinno się znaleźć w raporcie błędu?Przykład
Sprawdzenie, czy problem można zreprodukować zakładając nowy profil Firefox i opisanie wszystkich zmian jakich należy dokonać aby zreprodukować błąd.Problem jest reprodukowalny w nowym profilu, ale jedynie gdy Opcje -> Prywatność i bezpieczeństwo -> Ochrona przed śledzeniem jest włączona.
Jeśli błąd pojawia się tylko w aktualnie używanym profilu, spróbuj znaleźć które ustawienia, rozszerzenia lub pliki profilu są potrzebne do zreprodukowania błędu. Jeśli pominiesz ten krok, zapisz do pliku Informacje dla pomocy technicznej z about:support i dołącz ten plik do raportu.Nie potrafię zreprodukować błędu na nowym profilu, dołączam informacje z about:support dotyczące profilu, na którym błąd występuje.
+

Spradź czy problem można zreprodukować przy użyciu najświeższej zbudowanej wersji Nightly. Dołącz Build ID z about:support.

+ +

Jeśli to możliwe, test wykonaj na nowo stworzonym profilu Firefox. Jeśli musisz przetestować wersję Nightly twoim normalnie używanym profilem, wykonaj najpierw jego kopię zapasową, ponieważ tego typu wydania mogą uszkodzić twoje dane.

+
Problem pojawia się tylko na najnowszej wersji Nightly (Build ID 20170416100136).
+ +

 

+ +
+

Informacje o dokumencie

+ + +
+ +

 

+ +
+

Advanced

+ +

Finding the correct product and component

+ +

You will be asked to categorize your bug into a "product" and a "component" within that product, in order to direct your report to the correct developers.

+ +

If you're using Firefox, the bug is most likely in "Firefox", "Toolkit", or "Core".

+ + + +

When in doubt, search for similar bugs and see which component they are in.

+ +

If none of the components seem appropriate, look for a "General" component in the most appropriate product.

+ +

General Outline of a Bug Report

+ +
+

Most of the following article has been merged into this page from QMO: How to write a proper bug

+
+ + + +

 

+ +
+

Original document information

+ + +
diff --git a/files/pl/rdf/index.html b/files/pl/rdf/index.html new file mode 100644 index 0000000000..928eb69415 --- /dev/null +++ b/files/pl/rdf/index.html @@ -0,0 +1,54 @@ +--- +title: RDF +slug: RDF +tags: + - RDF + - Wszystkie_kategorie +translation_of: Archive/Web/RDF +--- +

+

+
+

Struktura Opisu Zasobów (RDF) jest rodziną specyfikacji dla modelu metadanych, który jest często implementowany jako aplikacji w XML-u. Rodzina specyfikacji RDF jest rozwijana przez World Wide Web Consortium (W3C). +

Model metadanych RDF jest oparty na idei tworzenia twierdzeń na temat zasobów w formie wyrazeń temat-predykat-obiekt, w terminologii RDF nazywanym "triple". +Podmiot jest zasobem, tą "rzeczą", która ma być opisana. Predykat jest cechą lub aspektem tego zasobu, i często opisuje relację między podmiotem i obiektem. Obiekt jest celem tej relacji lub wartością tej cechy. {{ Ref("one") }} +

+
+ + + + +
+

Dokumentacja

+
Czym jest RDF +
Tim Bray's opisuje Resource Description Framework, na stronie XML.com. +
+

Pokaż wszystkie... +

+
+

Społeczność

+
  • Obejrzyj fora Mozilli... +
+

{{ DiscussionList("dev-tech-rdf", "mozilla.dev.tech.rdf") }} +

+ +

Narzędzia

+ +

Powiązane tematy

+
XML +
+
+
+

+{{ Note("one") }} Ten opis RDF-a jest zaczerpnięty z artykułu Wikipedii na temat RDF. + +Categories +

Interwiki Language Links +


+


+

+
+
+{{ languages( { "de": "de/RDF", "en": "en/RDF", "es": "es/RDF", "fr": "fr/RDF", "it": "it/RDF", "ja": "ja/RDF", "ko": "ko/RDF", "pt": "pt/RDF", "ru": "ru/RDF" } ) }} diff --git a/files/pl/rhino/index.html b/files/pl/rhino/index.html new file mode 100644 index 0000000000..43704397e3 --- /dev/null +++ b/files/pl/rhino/index.html @@ -0,0 +1,13 @@ +--- +title: Rhino +slug: Rhino +translation_of: Mozilla/Projects/Rhino +--- +

Image:rhino.jpg

+

Rhino jest implementacją open-source języka JavaScript napisaną całkowicie w języku Java. Jest zwykle wbudowana w aplikacje napisane w języku Java aby umożliwić użytkownikom końcowym pisanie skryptów. Jest wbudowana w J2SE 6 jako domyślny silnik skryptowy dla języka Java.

+

Rhino downloads

+

How to get source and binaries

+

Rhino documentation

+

Information on Rhino for script writers and embedders.

+

Rhino help

+

Some resources if you get stuck.

diff --git a/files/pl/rozszerzenia/index.html b/files/pl/rozszerzenia/index.html new file mode 100644 index 0000000000..d421a3c045 --- /dev/null +++ b/files/pl/rozszerzenia/index.html @@ -0,0 +1,20 @@ +--- +title: Rozszerzenia +slug: Rozszerzenia +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Mozilla/Add-ons +--- +

 

+
Rozszerzenia pozwalają na zwiększenie funkcjonalności takich aplikacji Mozilli, jak Firefox czy Thunderbird. Za ich pomocą można dodać do aplikacji niemal wszystko — od przycisku na pasku narzędzi po całkowicie nowe funkcje. Aplikacja może być w ten sposób dowolnie dostosowana do potrzeb każdego użytkownika, a jednocześnie zachowany zostaje niewielki rozmiar pliku instalacyjnego do pobrania. +

Rozszerzeń nie należy mylić z wtyczkami, które pozwalają na wyświetlanie w przeglądarce specyficznych rodzajów treści, np. odtwarzanie plików multimedialnych. Rozszerzenia różnią się także od wtyczek wyszukiwania, które umożliwiają dodanie wyszukiwarek do paska wyszukiwania.

+
+ +

Dokumentacja

Tworzymy rozszerzenie
Tłumaczy krok po kroku jak stworzyć rozszerzenie dla Firefoksa.
Często zadawane pytania dotyczące rozszerzeń
Typowe pytania i odpowiedzi dotyczące tworzenia rozszerzeń.
Przygotowanie środowiska programowania rozszerzenia
Kilka porad dotyczących ustawień ułatwiających tworzenie rozszerzenia.
Pakowanie rozszerzeń
Jak spakować rozszerzenia Firefoksa do pobierania i instalacji.
Tworzenie własnego rozszerzenia Firefoksa za pomocą systemu kompilacji Mozilli
Jak ustawić środowisko kompilacji rozszerzenia opartego na komponentach binarnych.
Fragmenty kodu
Fragmenty kodu często używane przez wiele rozszerzeń.
Instalacja rozszerzeń
Jak zainstalować rozszerzenie od strony programisty.
Aktualizacja rozszerzeń dla Firefoksa 3
Lista znanych zmian w Firefoksie 3 wpływających na rozszerzenia oraz odniesień do odpowiedniej dokumentacji.
Aktualizacja rozszerzeń dla Firefoksa 3.1
Lista znanych zmian w Firefoksie 3.1 wpływających na rozszerzenia oraz odniesień do odpowiedniej dokumentacji.
Aktualizacja rozszerzeń dla Seamonkey 2.0
Lista znanych zmian w Seamonkey 2.0 wpływających na rozszerzenia oraz odniesień do odpowiedniej dokumentacji.
Dodawanie dodatku do AMO
Jak korzystać z AMO do dystrybucji swojego dodatku.

Pokaż wszystkie...

Społeczność

  • Przejdź do forów dyskusyjnych Mozilli...

{{ DiscussionList("dev-extensions", "mozilla.dev.extensions") }}

Narzędzia

Pokaż wszystkie...

Powiązane tematy

XUL, JavaScript, XPCOM, Motywy, Programowanie Mozilli
+

Categories

+

Interwiki Language Links

+

 

+

 

+

{{ languages( { "de": "de/Erweiterungen", "en": "en/Extensions", "es": "es/Extensiones", "fr": "fr/Extensions", "it": "it/Estensioni", "ja": "ja/Extensions", "ko": "ko/Extensions", "pt": "pt/Extens\u00f5es", "ru": "ru/\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f", "zh-cn": "cn/\u6269\u5c55", "zh-tw": "zh_tw/\u64f4\u5145\u5957\u4ef6" } ) }}

diff --git "a/files/pl/rysowanie_tekstu_przy_u\305\274yciu_canvas/index.html" "b/files/pl/rysowanie_tekstu_przy_u\305\274yciu_canvas/index.html" new file mode 100644 index 0000000000..4f79154344 --- /dev/null +++ "b/files/pl/rysowanie_tekstu_przy_u\305\274yciu_canvas/index.html" @@ -0,0 +1,136 @@ +--- +title: Rysowanie tekstu przy użyciu canvas +slug: Rysowanie_tekstu_przy_użyciu_canvas +tags: + - HTML + - 'HTML:Canvas' + - NeedsContent + - Wszystkie_kategorie +translation_of: Web/API/Canvas_API/Tutorial/Drawing_text +--- +

{{ Gecko_minversion_header(1.9) }} +{{ Fx_minversion_header(3) }} +Element <canvas> wspiera obsługę rysowania tekstu przez eksperymentalne API stworzone w Mozilli. +

+

Method overview

+ + + + + + + + +
void mozDrawText(w DOMString textToDraw); +
float mozMeasureText(w DOMString textToMeasure); +
void mozPathText(w DOMString textToPath); +
void mozTextAlongPath(w DOMString textToDraw, w boolean stroke); +
+

Atrybuty

+ + +
Atrybut +Typ +Opis +
mozTextStyle +DOMString +Przy rysowaniu tekstu używany jest aktualny styl. Ciąg używa takiej samej składni jak CSS font. Aby zmienić styl tekstu, po prostu zmień wartości atrybutu tak jak zaprezentowano to poniżej. Domyślna czcionka to 12-point sans-serif. +

Przykład: +

+
ctx.mozTextStyle = "20pt Arial";
+
+
+

Metody

+

mozDrawText()

+

Rysuje podany tekst używając stylu tekstu podanego w atrybucie mozTextStyle. Kolor wypełnienia kontekstu zostanie użyty jako kolor tekstu. +

+
void mozDrawText(
+   in DOMString textToDraw
+);
+
+
+
Parametry
+
<tt>textToDraw</tt> +
Tekst rysowany w tym kontekście. +
+
Przykład
+
ctx.translate(10, 50);
+ctx.fillStyle = "Red";
+ctx.mozDrawText("Przykładowy ciąg");
+
+

Ten kod rysuje tekst "Przykładowy ciąg" na czerwono w pozycji (10,50) elementu canvas. +

+

mozMeasureText()

+

Zwraca szerokość, w pikselach, jaką podany tekst zajmie kiedy zostanie narysowany w aktualnie użytym stylu. +

+
float mozMeasureText(
+  in DOMString textToMeasure
+);
+
+
Parametery
+
<tt>textToMeasure</tt> +
Ciąg, którego szerokośc w pikselach chcemy ustalić. +
+
Zwracana wartość
+

Szerokość tekstu w pikselach. +

+
Przykład
+
var text = "Przykładowy ciąg";
+var width = ctx.canvas.width;
+var len = ctx.mozMeasureText(text);
+ctx.translate((width - len)/2, 0);
+ctx.mozDrawText(text);
+
+

Ten przykład określa szerokość ciągu, a następnie korzstając z tych danych ryskuje go na horyzontalnym środku w elemencie canvas. +

+

mozPathText()

+

Dodaje kontury tekstu do aktualnej ścieżki. Pozwala to na obrysowanie tekstu zamiast wypełniania go. +

+
void mozPathText(
+  in DOMString textToPath
+);
+
+
Parametery
+
<tt>textToPath</tt> +
Tekst, którego kontury mają zostać dodane do aktualnej ścieżki. +
+
Example
+
ctx.fillStyle = "green";
+ctx.strokeStyle = "black";
+ctx.mozPathText("Przykładowy ciąg");
+ctx.fill()
+ctx.stroke()
+
+

Ten kod narysuje tekst "Przykładowy ciąg" na zielono z czarną obwódką przez dodanie konturów tekstu do ścieżki, a następnie wypełniając ścieżkę i nakładając kontur. +

+

mozTextAlongPath()

+

Dodaje (lub rysuje) określony tekst wzdłuż podanej ścieżki. +

+
void mozTextAlongPath(
+  in DOMString textToDraw,
+  in boolean stroke
+);
+
+
Parametery
+
<tt>textToDraw</tt> +
Tekst, który ma zostać narysowany wzdłuż podanej ścieżki. +
<tt>stroke</tt> +
Jeśli ten parametr ma wartość true, wówczas tekst będzie rysowany wzdłuż podanej ścieżki. Jeśli ma wartość false, tekst zostanie zamiast tego dodany do ścieżki, na końcu. +
+
Uwagi
+

Glify nie są skalowane ani transformowane zgodnie z krzywymi ścieżki; zamiast tego, każdy glif jest renderowany traktując ścieżkę pod sobą jako prostą linię. Można to wykorzystać do stworzenia unikatowych efektów. +

+

Notatki

+ +

Dodatkowe przykłady

+ +
+
+{{ languages( { "en": "en/Drawing_text_using_a_canvas", "es": "es/Dibujar_texto_usando_canvas", "fr": "fr/Dessin_de_texte_avec_canvas", "ja": "ja/Drawing_text_using_a_canvas" } ) }} diff --git a/files/pl/sandbox/index.html b/files/pl/sandbox/index.html new file mode 100644 index 0000000000..f621a15abc --- /dev/null +++ b/files/pl/sandbox/index.html @@ -0,0 +1,70 @@ +--- +title: MoSandbox +slug: Sandbox +translation_of: Sandbox +--- +

Cześć WSZYSTKIM

+ +

auto-generate header id test : if...else

+ +

Cześć WSZYSTKIM

+ +

<h1>Cześć WSZYSTKIM</h1>
+ <p>To jest <i>świetny</i> akapit</p>

+ +

Jest to eksperymentalna strona dla ludzi którzy chcą zacząć współpracę z MDM contributor.

+ +
h1{
+color: yellow;
+}
+p{
+font-size: low;
+}
+ +

Wynik

+ +

{{ EmbedLiveSample('Hello_World', '', '', '', 'Sandbox') }}

+ +

Testowy wygląd

+ +

Kod HTML

+ +
<canvas id='the_canvas'></canvas>
+ +

Kod CSS

+ +
body, html, canvas {width:100%; height:100%;}
+
+ +

Kod JavaScript

+ +
var canvas = document.getElementById('the_canvas');
+var ctx = canvas.getContext('2d');
+
+ctx.fillRect(50, 50, 100, 100);
+
+ +

 

+ +

{{ EmbedLiveSample('Test_Template') }}

+ +

Inny livesample

+ +

Kod JavaScript

+ +
const result = 1 + 1;
+document.body.innerHTML += result;
+
+ +

Wyjście:
+ {{ EmbedLiveSample('Another_livesample', 100, 20) }}
+ Koniec wyjścia
+  

+ +

Kod HTML

+ +
<div>Hola Mundo</div>
+ +

 

+ +

 

diff --git a/files/pl/sax/index.html b/files/pl/sax/index.html new file mode 100644 index 0000000000..ec8b53ed2f --- /dev/null +++ b/files/pl/sax/index.html @@ -0,0 +1,110 @@ +--- +title: SAX +slug: SAX +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +translation_of: Archive/SAX +--- +

+

SAX, skrót dla Simple API for XML, jest parserem API. Po raz pierwszy SAX został szeroko zadoptowany w API dla XML w Javie i później został zaimplementowany w kilku innych środowiskach programowania. Wraz z Firefoksem 2, parser SAX jest dostępny w aplikacjach XUL i rozszerzeniach. Aby zdobyć dodatkowe informacje, odwiedź stronę domową SAX. +

+

Szybki start

+

Funkcjonalność parsera SAX jest dostępna poprzez interfejs XML reader component. Aby go utworzyć, zastosuj poniższy kod: +

+
var xmlReader = Components.classes["@mozilla.org/saxparser/xmlreader;1"]
+                          .createInstance(Components.interfaces.nsISAXXMLReader);
+
+

Po utworzeniu parsera SAX, będzie potrzebne ustawienie podprogramów obsługi dla zdarzeń, którymi jesteśmy zainteresowani and fire off the parsing process. Cała funkcjonalnośc jest dostępna poprzez interfejs nsISAXXMLReader. +

+

Ustawienie obiektów obsługi

+

Obiekty obsługi (określone przez użytkownika) są zdefiniowanymi obiektami zaimplementowanymi w programie obsługi interfejsu SAX, które są zależne od rodzaju informacji, jaki chcemy otrzymać z parsera. Po rozpoczęciu procesu parsowania, obiekty obsługi przyjmują szereg wywołań zwrotnych dla treści XML, która jest parsowana. Dostępne są następujące obiekty obsługi:

+ + + + + + + + + + + +
Interfejs Zastosowanie
nsISAXContentHandler Pakiet obiektu obsługuje zawartość logiczną dokumentu (np. elementy, atrybuty, białe znaki oraz instrukcje przetwarzania).
nsISAXDTDHandler Pakiet obiektu obsługuje proste podobne do DTD zdarzenia.
nsISAXErrorHandler Pakiet obsługi błędów strumienia wejściowego.
nsISAXLexicalHandler Rozszerzenie obiektu SAX2 dla zdarzeń struktur leksykalnych (np. komentarzy i sekcji CDATA, deklaracji DTD oraz encji).
+

Przykład implementacji najczęściej stosowanych obiektów obsługi: +

+
function print(s) {
+  dump(s + "\n");
+}
+
+xmlReader.contentHandler = {
+  // nsISAXContentHandler
+  startDocument: function() {
+    print("startDocument");
+  },
+
+  endDocument: function() {
+    print("endDocument");
+  },
+
+  startElement: function(uri, localName, qName, /*nsISAXAttributes*/ attributes) {
+    var attrs = [];
+    for(var i=0; i<attributes.length; i++) {
+      attrs.push(attributes.getQName(i) + "='" +
+                 attributes.getValue(i) + "'");
+    }
+
+    print("startElement: namespace='" + uri + "', localName='" +
+          localName + "', qName='" + qName + "', attributes={" +
+          attrs.join(",") + "}");
+  },
+
+  endElement: function(uri, localName, qName) {
+    print("endElement: namespace='" + uri + "', localName='" +
+          localName + "', qName='" + qName + "'");
+  },
+
+  characters: function(value) {
+    print("characters: " + value);
+  },
+
+  processingInstruction: function(target, data) {
+    print("processingInstruction: target='" + target + "', data='" +
+          data + "'");
+  },
+
+  ignorableWhitespace: function(whitespace) {
+    // don't care
+  },
+
+  startPrefixMapping: function(prefix, uri) {
+    // don't care
+  },
+
+  endPrefixMapping: function(prefix) {
+    // don't care
+  },
+
+  // nsISupports
+  QueryInterface: function(iid) {
+    if(!iid.equals(Components.interfaces.nsISupports) &&
+       !iid.equals(Components.interfaces.nsISAXContentHandler))
+      throw Components.results.NS_ERROR_NO_INTERFACE;
+    return this;
+  }
+};
+
+

Rozpoczęcie parsowania

+

XML Reader component potrafi parsować XML z łańcucha znakowego, nsIInputStream lub asynchronicznie przez interfejs nsIStreamListener. Poniżej znajduje się przykład parsowania z łańcucha znakowego:

+
xmlReader.parseFromString("<f:a xmlns:f='g' d='1'><BBQ/></f:a>", "text/xml");
+
+

Wywoła to następującym rezultat na wyjściu (biorąc na siebie zawartość obiektu obsługi stosując przykład powyżej): +

+
startDocument
+startElement: namespace='g', localName='a', qName='f:a', attributes={d='1'}
+startElement: namespace='', localName='BBQ', qName='BBQ', attributes={}
+endElement: namespace='', localName='BBQ', qName='BBQ'
+endElement: namespace='g', localName='a', qName='f:a'
+endDocument
+
diff --git a/files/pl/spidermonkey/index.html b/files/pl/spidermonkey/index.html new file mode 100644 index 0000000000..0fc832564e --- /dev/null +++ b/files/pl/spidermonkey/index.html @@ -0,0 +1,46 @@ +--- +title: SpiderMonkey +slug: SpiderMonkey +tags: + - JavaScript + - SpiderMonkey + - Wszystkie_kategorie +translation_of: Mozilla/Projects/SpiderMonkey +--- +
+

SpiderMonkey jest napisanym w C silnikiem JavaScriptu używanym w Gecko. Jest on używany w wielu różnych produktach Mozilli i jest dostępny na potrójnej licencji MPL/GPL/LGPL.

+
+ + + + + + + + +
+

Dokumentacja

+ +
+
Jak osadzić silnik JavaScriptu
+
Przewodnik w jaki sposób osadzić SpiderMonkey.
+
+ +

Pokaż wszystkie...

+
+

Społeczność

+ +
    +
  • Obejrzyj fora Mozilli...
  • +
+ +

Powiązane tematy

+ +
+
JavaScript
+
+
+ +

Categories

+ +

Interwiki Language Links

diff --git a/files/pl/storage/index.html b/files/pl/storage/index.html new file mode 100644 index 0000000000..13c4417e0c --- /dev/null +++ b/files/pl/storage/index.html @@ -0,0 +1,397 @@ +--- +title: Storage +slug: Storage +tags: + - Dokumentacja_API_XPCOM + - Interfejsy + - Storage + - Strony_wymagające_dopracowania + - Toolkit API + - Wszystkie_kategorie + - XPCOM +translation_of: Mozilla/Tech/XPCOM/Storage +--- +

+ +

Storage to API bazy danych SQLite. Jest ono dostępne na zaufanych wywoływaczy, tzn. rozszerzeń i komponentów Firefoksa. Pełna dokumentacja wszystkich metod i własności interfejsu połączeń bazy danych, zobacz mozIStorageConnection.

+ +

API jest obecnie "odmrożone", co oznacza, że może być ono zmienione w każdej chwili. Prawdopodobnie API zmieni się między Firefoksem 2 a Firefoksem 3.

+ +

 

+ +
Uwaga: Storage nie jest tym samym, co funkcja DOM:Storage, która może być użyta przez serwisy internetowe do przechowywania stałych danych lub API przechowywania sesji (funkcja XPCOM służącą do przechowywania oraz przeznaczona do użytku przez rozszerzenia).
+ +

 

+ +

Na początek

+ +

Dokument ten opisuje API mozStorage oraz niektóre dziwactwa sqlite.Nie znajdziesz tu informacji o SQL ani "normalnym" sqlite. Możesz jednak znaleźć trochę przydatnych odnośników na ten temat w części Zobacz także. W razie pytań związanych z API mozStorage, możesz wysłać zapytanie na grupie mozilla.dev.apps.firefox na serwerze news.mozilla.org. Aby zgłosić błędy, użyj Bugzilli (produkt "Toolkit", komponent "Storage").

+ +

Zacznijmy więc. mozStorage został zaprojektowany jak wiele innych baz danych. Ogólna procedura postępowania wygląda następująco:

+ + + +

Otwarcie połączenia

+ +

Użytkownicy C++: pierwsza inicjalizacja usługi przechowywania musi nastąpić z głównej wątku. Gdy zostanie one zainicjalizowana po raz pierwszy z innego wątku, zostanie wyświetlony błąd. Dlatego jeśli chcesz użyć usługi z wątku pamiętaj, aby wywołać getService z głównego wątku i upewnić się, że usługa została utworzona.

+ +

Przykład w C++ nawiązania połączenia z "asdf.sqlite" w katalogu profilu użytkownika:

+ +
nsCOMPtr<nsIFile> dbFile;
+rv = NS_GetSpecialDirectory(NS_APP_USER_PROFILE_50_DIR,
+                            getter_AddRefs(dbFile));
+NS_ENSURE_SUCCESS(rv, rv);
+rv = dbFile->Append(NS_LITERAL_STRING("asdf.sqlite"));
+NS_ENSURE_SUCCESS(rv, rv);
+
+mDBService = do_GetService(MOZ_STORAGE_SERVICE_CONTRACTID, &rv);
+NS_ENSURE_SUCCESS(rv, rv);
+rv = mDBService->OpenDatabase(dbFile, getter_AddRefs(mDBConn));
+NS_ENSURE_SUCCESS(rv, rv);
+
+ +

MOZ_STORAGE_SERVICE_CONTRACTID jest zdefiniowany w storage/build/mozStorageCID.h. Jego wartością jest "@mozilla.org/storage/service;1"

+ +

Przykład w JavaScript:

+ +
var file = Components.classes["@mozilla.org/file/directory_service;1"]
+                     .getService(Components.interfaces.nsIProperties)
+                     .get("ProfD", Components.interfaces.nsIFile);
+file.append("my_db_file_name.sqlite");
+
+var storageService = Components.classes["@mozilla.org/storage/service;1"]
+                        .getService(Components.interfaces.mozIStorageService);
+var mDBConn = storageService.openDatabase(file);
+
+ +
+
+
Uwaga: Funkcja OpenDatabase może zostać zmieniona. Prawdopodobnie zostanie ona rozbudowana/uproszczona, aby popełnienie ewentualnego błędu było trudniejsze.
+
+
+ +

Kuszące może być nadanie rozszerzenia ".sdb" znaczącego sqlite database, jednaknie jest to zalecane. Pliki z tym rozszerzeniem są w szczególny sposób traktowane przez Windows jako "Baza danych o zgodności aplikacji" i zmiany w nich są automatycznie zapisywane w ramach funkcjonalności przywracania systemu. Może to powodować znaczny spadek wydajności operacji na takich plikach.

+ +

Instrukcje

+ +

Wykonaj poniższe kroki, aby utworzyć i wykonać instrukcje na Twojej bazie danych SQLite. Aby uzyskać pełną dokumentację, zobacz mozIStorageStatement.

+ +

Tworzenie instrukcji

+ +

Są dwa sposoby na stworzenie instrukcji. Gdy nie masz żadnych parametrów i instrukcja nie zwraca danych, użyj mozIStorageConnection.executeSimpleSQL.

+ +
C++:
+rv = mDBConn->ExecuteSimpleSQL(NS_LITERAL_CSTRING("CREATE TABLE foo (a INTEGER)"));
+
+JS:
+mDBConn.executeSimpleSQL("CREATE TABLE foo (a INTEGER)");
+
+ +

W przeciwnym wypadku powinieneś przygotować instrukcję za pomocą mozIStorageConnection.createStatement:

+ +
C++:
+nsCOMPtr<mozIStorageStatement> statement;
+rv = mDBConn->CreateStatement(NS_LITERAL_CSTRING("SELECT * FROM foo WHERE a = ?1"),
+                              getter_AddRefs(statement));
+NS_ENSURE_SUCCESS(rv, rv);
+
+JS:
+var statement = mDBConn.createStatement("SELECT * FROM foo WHERE a = ?1");
+
+ +

W przykładzie tym zostało użyte wyrażenie "?1" - w to miejsce dowiązany zostanie parametr (zobacz następny rozdział).

+ +

Po przygotowaniu instrukcji, można dowiązać do niego parametry, wykonać je, zresetować i znowu dowiązać, wykonać itd. Przy wielokrotnym wykonaniu jednej instrukcji jej prekompilacja przyniesie znaczny wzrost wydajności, ponieważ zapytanie SQL nie musi być przetwarzane za każdym razem.

+ +

Osoby dobrze znające sqlite wiedzą, że prekompilowane instrukcje nie są sprawdzane po zmianie struktury bazy. Na szczęście mozIStorageStatement wykrywa błąd i w razie potrzeby kompiluje ponownie instrukcję. Dzięki temu po przygotowaniu instrukcji nie musisz się martwić, gdyż nawet po zmianie struktury bazy wszystko będzie nadal działać.

+ +

Parametry wiązania

+ +

Najlepszym rozwiązaniem jest zazwyczaj wiązanie wszystkich parametrów z osobna, zamiast próby konstruowania w locie ciągów SQL zawierających te parametry. Utrudnia to między innymi ataki typu "SQL injection", ponieważ wiązane parametry nigdy nie są wykonywane jako SQL.

+ +

Parametry są wiązane do instrukcji posiadającej specjalne pola do wstawienia ich (ang. placeholders). Pola są adresowane po indeksach, zaczynając od "?1", potem "?2"... Używając funkcji instrukcji BindXXXParameter(0) BindXXXParameter(1)... możesz powiązać parametry z tymi polami.

+ +
+
+
Uwaga: Indeksy pól wiązania zaczynają się od 1. Liczby całkowite przekazywane do funkcji wiążących zaczynają się od 0. To oznacza, że "?1" odpowiada parametrowi 0, "?2" odpowiada parametrowi 1 itd.
+
+
+ +

Możesz również użyć parametru posiadającego nazwę, np. ":przyklad" zamiast "?xx".

+ +

Pole wiązania może wystąpić wielokrotnie w ciągu SQL i wszystkie instancje zostaną zastąpione wiązanymi wartościami. Odwiązane parametry będą interpretowane jako NULL.

+ +

Poniższy przykład stosuje jedynie bindUTF8StringParameter() i bindInt32Parameter(). Aby uzyskać pełną listę funkcji wiązania, zobacz mozIStorageStatement (wersja polska, w tym momencie pusta!) lub mozIStorageStatement (wersja angielska).

+ +

Przykład C++:

+ +
nsCOMPtr<mozIStorageStatement> statement;
+rv = mDBConn->CreateStatement(NS_LITERAL_CSTRING("SELECT * FROM foo WHERE a = ?1 AND b > ?2"),
+                              getter_AddRefs(statement));
+NS_ENSURE_SUCCESS(rv, rv);
+rv = statement->BindUTF8StringParameter(0, "hello"); // "hello" będzie zamienione przez "?1"
+NS_ENSURE_SUCCESS(rv, rv);
+rv = statement->BindInt32Parameter(1, 1234); // 1234 będzie zamienione przez "?2"
+NS_ENSURE_SUCCESS(rv, rv);
+
+ +

Przykład Javascript:

+ +
var statement = mDBConn.createStatement("SELECT * FROM foo WHERE a = ?1 AND b > ?2");
+statement.bindUTF8StringParameter(0, "hello");
+statement.bindInt32Parameter(1, 1234);
+
+ +

If you use named parameters, you should use the getParameterIndex method to get the index of the named parameter. Here is a JavaScript example:

+ +
var statement = mDBConn.createStatement("SELECT * FROM foo WHERE a = :myfirstparam AND b > :mysecondparam");
+
+var firstidx = statement.getParameterIndex(":myfirstparam");
+statement.bindUTF8StringParameter(firstidx, "hello");
+
+var secondidx = statement.getParameterIndex(":mysecondparam");
+statement.bindInt32Parameter(secondidx, 1234);
+
+ +

You can of course mix named parameters and indexed parameters in a same query:

+ +
var statement = mDBConn.createStatement("SELECT * FROM foo WHERE a = ?1 AND b > :mysecondparam");
+
+statement.bindUTF8StringParameter(0, "hello");
+// you can also use
+// var firstidx = statement.getParameterIndex("?1");
+// statement.bindUTF8StringParameter(firstidx, "hello");
+
+var secondidx = statement.getParameterIndex(":mysecondparam");
+statement.bindInt32Parameter(secondidx, 1234);
+
+ +

If you want to use a WHERE clause with an IN ( value-list ) expression, Bindings won't work. Construct a string instead. If you're not handling user input it's no safety concern:

+ +
var ids = "3,21,72,89";
+var sql = "DELETE FROM table WHERE id IN ( "+ ids +" )";
+
+ +

Wykonywanie instrukcji

+ +

Executing a statement

+ +

The main way to execute a statement is with mozIStorageStatement.executeStep. This function allows you to enumerate all the result rows your statement produces, and will notify you when there are no more results.

+ +

After a call to executeStep, you use the appropriate getter function in mozIStorageValueArray to get the values in a result row (mozIStorageStatement implements mozIStorageValueArray). The example below only uses getInt32().

+ +

You can get the type of a value from mozIStorageValueArray.getTypeOfIndex, which returns the type of the specified column. Be careful: sqlite is not a typed database. Any type can be put into any cell, regardless of the type declared for the column. If you request a different type, sqlite will do its best to convert them, and will do some default value if it is impossible. Therefore, it is impossible to get type errors, but you may get weird data out.

+ +

C++ code can also use AsInt32, AsDouble, etc. functions which return the value as a more convenient C++ return value. Watch out, though, because you won't get any errors if your index is invalid. Other errors are impossible, because sqlite will always convert types, even if they don't make sense.

+ +

Przykład C++:

+ +
PRBool hasMoreData;
+while (NS_SUCCEEDED(statement->ExecuteStep(&hasMoreData)) && hasMoreData) {
+  PRInt32 value = statement->AsInt32(0);
+  // use the value...
+}
+
+ +

Przykład Javascript:

+ +
while (statement.executeStep()) {
+  var value = statement.getInt32(0); // use the correct function!
+  // use the value...
+}
+
+ +

mozIStorageStatement.execute() is a convenience function for when you are getting no data out of the statement. It steps the statement once and resets it. This can be useful for insert statements because it really cleans up the code:

+ +
var statement = mDBConn.createStatement("INSERT INTO my_table VALUES (?1)");
+statement.bindInt32Parameter(52);
+statement.execute();
+
+ +

This Image:TTRW2.zip is a simple, but complete, JavaScript and XUL example of how you run an SQL SELECT against a database.

+ +

Resetting a statement

+ +

It is important to reset statements that are no longer being used. Un-reset write statements will keep a lock on the tables and will prevent other statements from accessing it. Un-reset read statements will prevent writes.

+ +

When the statement object is freed, its corresponding database statement is closed. If you are using C++ and you know that all references will be destroyed, you don't have to explicitly reset the statement. Also, if you use mozIStorageStatement.execute(), you don't need to explicitly reset the statement; this function will reset it for you. Otherwise, call mozIStorageStatement.reset().

+ +

JavaScript callers should ensure that statements are reset. Be particularly careful about exceptions. You will want to make sure to reset your statements even if an exception is fired, or subsequent access to the database may not be possible. Resetting a statement is relatively lightweight, and nothing bad happens if it's already reset, so don't worry about unnecessary resets.

+ +
var statement = connection.createStatement(...);
+try {
+  // use the statement...
+} finally {
+  statement.reset();
+}
+
+ +

C++ callers must do the same. There is a scoped object in storage/public/mozStorageHelper.h called mozStorageStatementScoper which will ensure that a given statement is reset when the enclosing scope is exited. It is hightly recommended that you use this object if possible.

+ +
void someClass::someFunction()
+{
+  mozStorageStatementScoper scoper(mStatement)
+  // use the statement
+}
+
+ +

Last insert id

+ +

Use the lastInsertRowID property on the connection to get the id (rowid) from the last INSERT operation on the db.
+ This is useful if you have a column in your table set to INTEGER PRIMARY KEY or INTEGER PRIMARY KEY AUTOINCREMENT in which case SQLite automatically assigns a value for each row inserted if you don't provide one. The returned value is of type number in JS and long long in C++.

+ +

lastInsertRowID JS example:

+ +
var sql = "INSERT INTO contacts_table (number_col, name_col) VALUES (?1, ?2)"
+var statement = mDBConn.createStatement(sql);
+    statement.bindUTF8StringParameter(0, number);
+    statement.bindUTF8StringParameter(1, name);
+    statement.execute();
+    statement.reset();
+
+var rowid = mDBConn.lastInsertRowID;
+
+ +

Transactions

+ +

mozIStorageConnection has functions for beginning and ending transactions. If you do not explicitly use transactions, an implicit transaction will be created for you for each statement. This has major performance implications. There is overhead for each transaction, especially for commits. You will therefore see a large performance win when you are doing multiple statements in a row if you put them in a transaction. See Storage:Performance for more performance information.

+ +

The major difference between other database systems is that sqlite does not support nested transactions. This means that once a transaction is open, you can not open another transaction. You can check mozIStorageConnection.transactionInProgress to see if a transaction is currently in progress.

+ +

You can also just execute "BEGIN TRANSACTION" and "END TRANSACTION" directly as SQL statements (this is what the connection does when you call the functions). However, use of mozIStorageConnection.beginTransaction and related functions arestrongly recommended because it stores transaction state in the connection. Otherwise, the attribute transactionInProgress will have the wrong value.

+ +

sqlite has several types of transactions:

+ + + + + + + +

You can pass this type of transaction to mozIStorageConnection.beginTransactionAs to determine what kind of transaction you need. Keep in mind that if another transaction has already started, this operation will not succeed. Generally, the default TRANSACTION_DEFERRED type is sufficient and you shouldn't use the other types unless you really know why you need them. For more information, see the sqlite documentation about BEGIN TRANSACTION and locking.

+ +
var ourTransaction = false;
+if (!mDBConn.transactionInProgress) {
+  ourTransaction = true;
+  mDBConn.beginTransactionAs(mDBConn.TRANSACTION_DEFERRED);
+}
+
+// ... use the connection ...
+
+if (ourTransaction)
+  mDBConn.commitTransaction();
+
+ +

From C++ code, you can use the mozStorageTransaction helper class defined in storage/public/mozStorageHelper.h. This class will begin a transaction of the specified type on the specified connection when it comes into scope, and will either commit or rollback the transaction when it goes out of scope. If a transaction is already in progress, the transaction helper class will not do anything.

+ +

It also has functions for explicitly committing. The typical use is that you create the class defaulting to rollback, and then explicitly commit the transaction when processing has succeeded:

+ +
nsresult someFunction()
+{
+  // deferred transaction (the default) with rollback on failure
+  mozStorageTransaction transaction(mDBConn, PR_FALSE);
+
+  // ... use the connection ...
+
+  // everything succeeded, now explicitly commit
+  return transaction.Commit();
+}
+
+ +

How to corrupt your database

+ + + + + + + + + + + + + +

SQLite Locking

+ +

SQLite locks the entire database; that is, any active readers will cause an attempt to write to return SQLITE_BUSY, and an active writer will cause any attempt to read to return SQLITE_BUSY. A statement is considered active from the first step() until reset() is called. execute() calls step() and reset() in one go. A common problem is forgetting to reset() a statement after you've finished step()'ing through.

+ +

While a given SQLite connection is capable of having multiple statements open, its locking model limits what these statements can do concurrently (reading or writing). It is in fact possible for multiple statements to be actively reading at one time. It is not possible, however, for multiple statements to be reading and writing at one timeon the same table -- even if they are derived from the same connection.

+ +

SQLite has a two-tiered locking model: connection level and table level. Most people are familiar with the connection (database) level locking: multiple readers but only one writer. The table-level (B-Tree) locks are what can sometimes be confusing. (Internally, each table in the database has its own B-Tree, so "table" and "B-Tree" are technically synonymous).

+ +

Table-level locks

+ +

You would think that if you have only one connection, and it locks the database for writing, you could use multiple statements to do whatever you want. Not entirely. You must be aware of table-level (B-Tree) locks, which are maintined by statement handles traversing the database (i.e. open SELECT statements).

+ +

The general rule is this: a statement handle may not modify a table (B-Tree) which other statement handles are reading (have open cursors on) -- even if that statement handle shares the same connection (transaction context, database lock, etc.) with the other statement handles.Attempts to do so will still block (or return SQLITE_BUSY).

+ +

This problem often crops up when you attempt to iterate over a table with one statement and modify records within it using another statement. This will not work (or carries a high probability of not working, depending on the optimizer's involvement (see below)). The modifying statement will block because the reading statement has an open cursor on the table.

+ +

Working around locking problems

+ +

The solution is to follow (1) as described above. Theoretically, (2) actually shouldn't work with SQLite 3.x. In this scenario, database locks come into play (with multiple connections) in addition to table locks. Connection 2 (modifying connection) will not be able to modify (write to) the database while the Connection 1 (reading connection) is reading it. Connection 2 will require an exclusive lock to execute a modifying SQL command, which it cannot get as long as Connection 1 has active statements reading the database (Connection 1 has a shared read lock during this time which prohibits any other connections from getting an exclusive lock).

+ +

Another option is to use a temporary table. Create a temporary table containing the results of the table of interest, iterate over it (putting the reading statement's table lock on the temp table) and then the modifing statement can make changes to the real table without any problem. This can be done with statements derived from a single connection (transaction context). This scenario sometimes happens behind the scenes anyway as ORDER BY can produce temporary tables internally. However, it is not safe to assume that the optimizer will do this in all cases. Explicitly creating a temporary table is only safe way to do perform this latter option.

+ +

Thread safety

+ +

The mozStorage service and sqlite are threadsafe. However, no other mozStorage or sqlite objects or operations are threadsafe.

+ + + + + + + +

It's worth noting, however, that authors of JavaScript browser extensions are less impacted by these restrictions than it might first appear. If a database is created and used exclusively from within JavaScript, thread safety usually will not be an issue. SpiderMonkey (the JavaScript engine run within Firefox) executes JavaScript from a single persistent thread, except when the JavaScript runs in a different thread or is executed from a callback made on a different thread (e.g. via some networking or stream interfaces). Barring incorrect use of multi-threaded JavaScript, problems should occur only if a database already in use by a non-JavaScript, system-level thread is accessed through mozStorage.

+ +

Zobacz także

+ + + + diff --git "a/files/pl/storage/wydajno\305\233\304\207/index.html" "b/files/pl/storage/wydajno\305\233\304\207/index.html" new file mode 100644 index 0000000000..cfbfa2dad8 --- /dev/null +++ "b/files/pl/storage/wydajno\305\233\304\207/index.html" @@ -0,0 +1,111 @@ +--- +title: Wydajność +slug: Storage/Wydajność +tags: + - Strony_wymagające_dopracowania + - Toolkit API + - Wszystkie_kategorie +translation_of: Mozilla/Tech/XPCOM/Storage/Performance +--- +

mozStorage wykorzystuje {{ interwiki('wikipedia', 'SQLite', 'SQLite') }} jako backend dla bazy danych. Zwykle posiada dobrą wydajność dla niewielkiej, osadzonej bazy danych. Jednakże, wiele rzeczy może spowodować, iż różne operacje na bazie danych będą trwały długo.

+ +

Transakcje

+ +

Istnieje narzut związany z każdą transakcją. Kiedy uruchamiasz w izolacji wyrażenie SQL, tworzona jest ukryta transakcja dookoła tego wyrażenia. Kiedy transakcje są wykonywane, sqlite wykonuje księgowanie (journaling) które wymaga synchronizacji danych na dysk. Operacja ta jest bardzo powolna. W związku z tym, kiedy zamierzasz tworzyć kilka transakcji pod rząd, uzyskasz znaczny wzrost wydajności jeśli umieścisz je w pojedynczej transakcji.

+ +

Jeśli nie korzystasz z zaawansowanej pamięci podręcznej opisanej poniżej, pamięć podręczna bazy danych jest czyszczona na końcu każdej transakcji. Jest to kolejny powód dla którego powinno się stosować transakcje, nawet jeśli uruchamia się operacje odczytu.

+ +

Zapisy asynchroniczne, opisane poniżej, usuwają większość narzutu związanego z popełnieniem zmian, więc nie odczujesz tak bardzo tego problemu. Jednakże, pewien narzut wciąż istnieje, a stosowanie transakcji będzie nadal szybsze. Jednym z głównych problemów jest to, że lista operacji na plikach stanie się bardzo długa w przypadku stosowania wielu transakcji. Niektóre operacje wymagają przechodzenia przez tą kolejkę, aby stwierdzić, jakie operacje są wciąż w oczekiwaniu, przez co staną się powolne. Jeśli użytkownik wyłączy przeglądarkę zaraz po rozpoczęciu takiej operacji, może to spowodować opóźnienie wyłączania (być może nawet na kilkadziesiąt sekund dla dużych transakcji i powolnych dysków), przez co może to wyglądać dla użytkownika, jakby przeglądarka była zawieszona.

+ +

Kwerendy

+ +

Ostrożna zmiana kolejności poleceń w wyrażeniu sql, lub tworzenie poprawnych indeksów, może zwykle poprawić wydajność. Zobacz sqlite optimizer overview na stronie sieci Web sqlite, aby zobaczyć informacje o tym, jak sqlite używa indeksów do uruchamiania wyrażeń.

+ +

Możesz również sprobować wykorzystać polecenie "explain" w Twoich wyrażeniach, aby zobaczyć czy używają one indeksów, których oczekujesz. Napisz "explain" przed wyrażeniem, aby zobaczyć plan. Dla przykładu, explain select * from moz_history;. Wyniki mogą być trudne do zrozumienia, lecz powinieneś zobaczyć czy używają one indeksów. Polecenie które da Ci wyższy poziom wytłumaczenia to "explain query plan". Na przykład:

+ +
sqlite> explain query plan select * from moz_historyvisit v join moz_history h
+        on v.page_id = h.id where v.visit_date > 1000000000;
+
+0|0|TABLE moz_historyvisit AS v WITH INDEX moz_historyvisit_dateindex
+1|1|TABLE moz_history AS h USING PRIMARY KEY
+ +

Mówi to, że najpierw rozpocznie się szukanie w moz_historyvisit używając indeksu, a dopiero potem stosując klucza głównego. Obydwa sposoby są "dobre" ponieważ stosują one indeksy i klucze główne, co jest szybkie.

+ +
sqlite> explain query plan select * from moz_historyvisit where session = 12;
+
+0|0|TABLE moz_historyvisit
+ +

W tym przypadku, możesz zobaczyć, że indeksy nie są wykorzystywane, więc ta kwerenda będzie powolna.

+ +

Możesz pobrać narzędzie linii poleceń z sqlite download page. Upewnij się, że posiadasz wersję co najmniej tak nową, jaką używa Mozilla. Od 10 kwietnia 2006 Mozilla używa sqlite 3.3.4, jednakże najnowsza prekompilowana wersja narzędzia może nie być dostępna dla niektórych platform. Może to spowodować błędy typu "database is encrypted" ("baza danych jest zaszyfrowana"), ponieważ narzędzie nie będzie potrafiło rozpoznać formatu pliku. Możesz sprawdzić definicję SQLITE_VERSION w {{ Source("db/sqlite3/src/sqlite3.h") }} danej wersji, jeśli napotkasz problemy.

+ +

Caching

+ +

Sqlite utrzymuje strony bazy danych w pamięci podręcznej. Przechowuje strony związane z aktualna transakcją, tak, by móc je przywrócić, oraz te ostatnio użyte, aby szybciej pracować.

+ +

Domyślnie, sqlite przechowuje strony w pamięci tylko podczas transakcji (jeśli nie otworzysz transakcji samodzielnie, zostanie taka stworzona dookoła każdego pojedynczego wyrażenia). Pod koniec transakcji, pamięć podręczna jest czyszczona. Jeśli od razu rozpoczniesz kolejna transakcję, strony które potrzebujesz zostaną ponownie odczytane z dysku (lub, miejmy nadzieję, pamięci podręcznej systemu operacyjnego). Powoduje to, iż nawet proste operacje blokują się na czytaniu z dysku, które mogą prowadzić do problemów na niektórych systemach ze słabym zarządzaniem pamięcią podręczną dysku lub dyskach sieciowych.

+ +

Możesz kontrolować wielkość pamięci podręcznej poprzez zastosowanie pragmy cache_size. Wartość ta kontroluje ilość stron pliku jaka może być przechowywana na raz w pamięci. Wielkość pojedynczej strony może być ustawiona za pomocą pragmy page_size zanim jakiekolwiek operacje na pliku zostały wykonane. Możesz zobaczyć przykład ustawiania maksymalnej wielkości pamięci podręcznej na pewien procent pamięci w nsNavHistory::InitDB in {{ Source("browser/components/places/src/nsNavHistory.cpp") }}.

+ +

Zachowywanie pamięci podręcznej pomiędzy transakcjami

+ +

mozStorage pozwala na tryb shared-cache sqlite, który pozwala wielu połączeniom do bazy danych używać tej samej pamięci podręcznej. Ponieważ pamięć podręczna nie jest threadsafe, znaczy to, iż nie możesz tworzyć połączeń z różnych wątków które będą korzystać z tej samej bazy danych. Jednakże, współdzielona pamięć podręczna pozwala nam zachować pamięć podręczną pomiędzy transakcjami, zamiast czyścić ją po każdej transakcji, tak, jak sqlite robi to domyślnie.

+ +

W przypadku gdy Twoja aplikacja stosuje wiele małych transakcji, możesz uzyskać widoczny wzrost wydajności poprzez zachowywaniem pamięci podręcznej pomiędzy nimi. Możesz to zrobić tworząc dodatkowe połączenie-atrapę do tej samej bazy danych (jest to ważne by użyć tej samej nazwy pliku podczas otwierania tych połączeń tak jak w strcmp). Połączenie-atrapa otwiera permanentne połączenie które blokuje pamięć podręczną w pamięci. Jako ze pamięć podręczna jest dzielona z połączeniem głównym, nie wygasa ona nigdy.

+ +

Transakcja-atrapa musi być tą, która blokuje stronę w pamięci. Proste wyrażenie BEGIN TRANSACTION nie zrobi tego ponieważ sqlite blokuje leniwie. Dlatego, musisz mieś mieć wyrażenie które modyfikuje dane. Może wydawać się kuszącym uruchomienie wyrażenia na sqlite_master które zawiera informacje na temat tabeli i indeksów w bazie danych. Jednakże, jeśli Twoja aplikacja inicjalizuje bazę po raz pierwszy, tabela będzie pusta i pamięć podręczna nie będzie blokowana. nsNavHistory::StartDummyStatement tworzy w tym celu tymczasową tabele z jednym elementem.

+ +

Należy zauważyć, że jeśli wyrażenie jest otwarte, schemat bazy danych nie może zostać zmieniony. Oznacza to, że kiedy transakcja-atrapa jest uruchomiona, nie możesz tworzyć lub modyfikować tabeli ani indeksów, ani odkurzać (vacuum) bazy. Będziesz musiał zatrzymać transakcję-atrapę, wykonać operację modyfikującą schemat bazy i ponownie uruchomić atrapę.

+ +

Przygotowywanie pamięci podręcznej

+ +

Podczas uruchamiania, pamięć podręczna jest pusta i strony są wczytywane w razie potrzeby. Powoduje to wiele wywołań dysku, jako że strony czytane są w praktycznie dowolnym porządku. Wraz z domyślnym rozmiarem strony ustawionym na 1K, powoduje to wiele wywołań dysku co ostatecznie spowoduje, iż wiele operacji będzie powolne podczas uruchamiania.

+ +

Mozilla dodała funkcję Preload() do mozIStorageConnection służącą do wczytywania danych w większych porcjach. Ponieważ dane czytane są z dysku w jednym kawałku, nie ma tyle wywołań dysku i wydajność może się poprawić, nawet jeśli znacznie więcej danych jest wczytywanych na raz do pamięci.

+ +

Funkcja ta musi być wywołana po otwarciu pagera. Oznacza to, iż musisz zrobić co najmniej jedną operację odczytu lub zapisu, oraz mieć wciąż otwartą transakcję (może być to transakcja - atrapa opisana powyżej). Wczytuje to dane z dysku do momentu, gdy pamięć podręczną zostanie wypełniona do limitu, który skonfigurowałeś, lub gdy cały plik zostanie wczytany, w zależności od tego, która wielkość jest mniejsza.

+ +

Wczytuje to dane rozpoczynając od początku pliku i czyta strony w kolejności. Jeśli Twoja baza danych jest znacznie większa od pamięci podręcznej, może to nie działać dobrze, jako ze żadna ze stron na końcu pliku jest wczytywana do pamięci. Jest to możliwe, aby dodać jakąś funkcjonalność, aby wczytywać strony poprzednio w pamięci podręcznej podczas ostatniego uruchomienia.

+ +

Zapisy na dysk

+ +

Sqlite wspiera podstawowe zasady teorii baz danych ACID:

+ + + +

Problemem z tymi wymaganiami jest to, iż wymagania te powodują, że część operacji, przede wszystkim zapisy są bardzo powolne. Dla każdego zapisu, sqlite m.in. dwukrotnie synchronizuje dane na dysk, jak również wiele innych operacji (zobacz sekcję "Atomic Commit" na , aby uzyskać więcej informacji na temat ich działania). Te synchronizacje są bardzo powolne i ograniczają szybkość zapisu do prędkości rotacyjnej mechanicznego dysku.

+ +

Dla historii przeglądarki, narzut ten jest nieakceptowalnie wysoki. Na wielu systemach, czas zapisu nowej strony do bazy danych historii był tak długi, jak pobranie całej strony (z niedalekiego, szybkiego serwera testowego) i renderowanie jest na ekranie. W związku z tym, Mozilla zaimplementowała system leniwej synchronizacji (lazy sync).

+ +

Leniwy zapis

+ +

Mozilla rozluźniła wymagania ACID, aby przyspieszyć zapisy. W szczególności, wyrzuciliśmy trwałość (durability). Oznacza to, że kiedy zapis zostanie zwrócony, nie ma gwarancji że on został zastosowany. Jednakże, wciąż wspieramy resztę (ACI) wymagań. Oznacza to, że baza danych nie zostanie uszkodzona. Jeśli wysiądzie prąd zaraz po zapisie, będzie tak, jakby transakcja została cofnięta: baza danych nadal będzie spójna.

+ +

Zwiększona wydajność zapisów uzyskiwana jest poprzez stosowanie oddzielnego wątku do zapisywania danych (zobacz plik {{ Source("storage/src/mozStorageAsyncIO.cpp") }} który związany jest z serwisem storage w {{ Source("storage/src/mozStorageService.cpp") }}). Główny wątek bazy danych robi wszystko tak jak poprzednio. Jednakże, zmodyfikowaliśmy operacje na plikach i teraz wszystko przechodzi przez moduł AsyncIO. Plik ten jest oparty na test_async.c z dystrybucji sqlite.

+ +

Pakiety modułu AsyncIO tworzy wiadomości i ustawia je w kolejce wiadomości wątku zapisu. Wątek zapisu oczekuje na wiadomości i przetwarza je najszybciej jak może. Oznacza to, że zapisy, blokady i, co najważniejsze, synchronizacje na dysk, blokują tylko wątek AsyncIO. Odczyty robione są synchronicznie, biorąc pod uwagę niezapisane dane wciąż w buforze.

+ +
Shutdown
+ +

Jeśli robisz wiele zapisów, wątek AsyncIO "zostanie w tyle". Na szczęście, aplikacja da wątkowi wystarczająco czasu aby flush before exiting. If there are still items in the write queue on shutdown, the storage service will block until all data has been written. It then goes into single-threaded mode where all operations are synchronous. This enables other services to still use the database after the storage service has gotten the shutdown message.

+ +
Durable transactions
+ +

There is currently no way to ensure durability for particularly important transactions where speed is less of an issue. A flush command to guarantee data has been written to disk may be added in the future.

+ +

Vacuuming and zero-fill

+ +

WSqlite has a VACUUM command to compress unused space from the database. Sqlite works like a memory manager or a file system. When data is deleted, the associated bytes are marked as free but are not removed from the file. This means that the file will not shrink, and some data may still be visible in the file. The way to work around this is to run the VACUUM command to remove this space.

+ +

Vacuuming is very slow. The vacuum command is essentially the same as the command line sqlite3 olddb .dump | sqlite3 newdb; mv newdb olddb. Na niektórych dyskach sieciowych, vacuuming 10MB bazy danych trwało ponad minutę. Therefore, you should avoid vacuuming whenever possible.

+ +

Some items in databases are privacy sensitive, such as deleted history items. Users have the expectation that deleting items in their history will remove the traces of that from the database. As a result, Mozilla enables the SQLITE_SECURE_DELETE preprocessor flag in {{ Source("db/sqlite3/src/Makefile.in") }}. This flag causes deleted items to be filled with 0s on disk. This eliminates the need to vacuum except to reclaim disk space, and makes many operations much faster.

+ +

Zero-filling can have significant performance overhead in some situations. For example, the history service used to delete many database items at shutdown when expiring old history items. This operation is not necessarily slow, but writing 0s to disk in an "ACI" database is still slow. This made shutdown very slow because the AsyncIO thread would block shutdown ({{ Bug(328598) }}). Shutdown times of more than 30 seconds were seen. As a result, this bug introduced incremental history expiration eliminating the need to write many 0s to disk on shutdown.

+ +

Unfortunately, this operation cannot be controlled on a per-transaction or per-connection basis. Some operations will benefit, while others will be hurt.

diff --git a/files/pl/toolkit_api/index.html b/files/pl/toolkit_api/index.html new file mode 100644 index 0000000000..21b7fc5c90 --- /dev/null +++ b/files/pl/toolkit_api/index.html @@ -0,0 +1,32 @@ +--- +title: Toolkit API +slug: Toolkit_API +tags: + - Toolkit API + - Wszystkie_kategorie +translation_of: Mozilla/Tech/Toolkit_API +--- +

Pakiet Narzędziowy Mozilla jest zestawem interfejsów programistycznych (API) zbudowanym na bazie Gecko dostarczającym zaawansowane serwisy aplikacjom XUL. Przykładowe serwisy to:

+ +

Oficjalne odnośniki

+

+

+

+

Więcej informacji

+

Poniższe strony dla programistów zawierają przykłady i opisują poszczególne tematy:

+

XUL; Nakładki XUL; Tworzenie rozszerzeń; XULRunner; Tworzenie motywów; DOM; RDF; Storage; Tworzenie dokumentacji pomocy

diff --git "a/files/pl/tutorial_lokalizacji_rozszerze\305\204_do_firefoksa_i_thunderbirda_dla_wersji_1.0_i_wy\305\274szych/index.html" "b/files/pl/tutorial_lokalizacji_rozszerze\305\204_do_firefoksa_i_thunderbirda_dla_wersji_1.0_i_wy\305\274szych/index.html" new file mode 100644 index 0000000000..4646bd6776 --- /dev/null +++ "b/files/pl/tutorial_lokalizacji_rozszerze\305\204_do_firefoksa_i_thunderbirda_dla_wersji_1.0_i_wy\305\274szych/index.html" @@ -0,0 +1,141 @@ +--- +title: >- + Tutorial lokalizacji rozszerzeń do Firefoksa i Thunderbirda dla wersji 1.0 i + wyższych +slug: >- + Tutorial_lokalizacji_rozszerzeń_do_Firefoksa_i_Thunderbirda_dla_wersji_1.0_i_wyższych +tags: + - Dodatki + - Rozszerzenia + - Wszystkie_kategorie +--- +

+

+

Wprowadzenie

+

Aby dobrze zlokalizować na język polski rozszerzenie potrzeba (nie)dużo wiedzy i samozaparcia. +Wbrew pozorom nie jest to jednak takie trudne i mając trochę wiedzy komputerowej można szybko nauczyć się tej magii.

+

Potrzebna wiedza:

+ +


+

+

Potrzebne narzędzia (najprostszy zestaw)

+ +

Jak?

+

Wiedza jest, narzędzia też, no to zaczynamy odczarowywać rozszerzenia i zajrzyjmy do ich wnętrza. Jak? Prosta sprawa. Rozszerzenia to nic innego niż archiwum .zip, ale zamiast rozszerzenia .zip posiadają rozszerzenie pliku .xpi. Skoro .xpi to nic innego niż .zip, więc potraktujmy je jakimś dekompresorem. No i cóż się okazuje? W środku znajdują się katalogi i pliki mniej więcej o takiej strukturze: +

+

Katalogi:

+ +

Pliki

+ +

Ale znowu niespodzianka. Katalog "chrome" zawiera znowu jakiś spakowany plik o rozszerzeniu .jar. Taka budowa rozszerzenia wskazuje, że działa ono także w systemie Linux. Bez paniki. Plik .jar, to nic innego jak plik .zip tylko z rozszerzeniem .jar. Tak więc dekompresor szybciutko daje sobie z nim radę i w środku znowu widzimy katalogi: +

+ +

Skoro przebrnęliśmy przez gąszcz spakowanych archiwów, katalogów i plików, wiemy co w nich się znajduje - przedpole zostało przygotowane. Zabierajmy się zatem do roboty. +

+

locale

+

Jak wcześniej wspomniałem to co nas najbardziej interesuje, to katalog "locale", w którym znajdują się podkatalogi lokalizacji tzn. języków na jakie to rozszerzenie zostało przetłumaczone. Jeśli w nim znajduje się katalog "pl-PL" lub "pl" to nie mamy tutaj nic do roboty, bo już ktoś zrobił to co my chcieliśmy zrobić. Jeśli natomiast takiego katalogu nie ma, to jest robota dla nas. +

Ponieważ dla wszystkich aplikacji Mozilli podstawowym językiem jest angielski-amerykański (en-US), on też posłuży nam jako podstawa tłumaczenia na język polski, a robimy to w następujący sposób: +

+ +

Zanim jednak zaczniemy tłumaczenie proponuję zainstalowanie rozszerzenia w wersji angielskiej (jeśli nie ma pliku przeznaczonego dla konkretnej wersji językowej programu, to domyślnie instaluje się wersja angielska). Będzie łatwiej wykonywać tłumaczenie widząc umiejscowienie tłumaczonych elementów. +

No to teraz przypatrzmy się, co znajduje się w tym katalogu lokalizacji. +

Otóż, może w nim znajdować się kolejny podkatalog albo pliki. Jeśli jest podkatalog, to interesujące nas pliki będą wewnątrz tego podkatalogu i trzeba do nich dotrzeć. Niemniej w obu przypadkach docieramy do następujących plików: +

+ +

Wszystkie te pliki zawierają elementy, które trzeba przetłumaczyć. Uruchamiamy edytor tekstu (przypominam o ustawieniu edytora na kodowanie UTF-8 i nie wstawianie BOM) i zacznijmy od pliku "contents.rdf". +

+

contents.rdf

+

Zmieniamy w nim następujące elementy: +en-US na pl-PL</li></ul> +Jeśli są: +- English (US) na Polski (PL) +- chrome:author="xxxxxxxxxx" na chrome:author="twoje_nazwisko" +

+

.dtd

+

Teraz plik .dtd: +Znajdujemy w nim wiersze wyglądające mniej więcej tak: +

+
<!ENTITY xxxxxxxxxxxx "Zzzzzzzzz">
+

gdzie: Zzzzzzzzz jest elementem do tłumaczenia, czyli tłumaczymy to co znajduje się pomiędzy znakami cytowania " ".

Należy zwrócić baczną uwagę, aby nie zgubić żadnych innych znaków w encji (entity), bo wówczas po zainstalowaniu rozszerzenia będziemy mieli doczynienie ze zjawiskiem "czerwonych znaków" na dole okna przeglądarki lub nie będzie działało rozszerzenie. +Uwaga! W tłumaczonym tekście nie wolno używać następujących znaków: +

+
Niedozwolone                 Zamienniki
+       &                          &amp;
+       <                          &lt;
+       >                          &gt;
+       "                          &quot;
+       %                          &#037;
+       '                          &apos;
+
+

.properties

+

No to jeszcze tylko plik *.properties. Ten znowu wygląda inaczej - nie mogliby jakoś tego ujednolicić? No niestety nie, bo inne są wymagania i przetwarzanie w plikach *.xul i *.js. Wiersze w tym pliku mają postać: +xxxxxxxxxx=Zzzzzzzzz. Proste! No tak - proste i łatwo określić co się w nich tłumaczy. Wszystko po znaku równości (=). +

Uwaga! W tłumaczonym tekście nie wolno używać następujących znaków: +

+
Niedozwolone             Zamienniki
+       "                       \"
+       '                        \'
+       \                        \\
+
+

Czyli dany znak trzeba poprzedzić odwróconym ukośnikiem "\" +

+

Kilka uwag na koniec

+

Uff! Robota z tłumaczeniem zakończona. Teraz trzeba uporządkować ten cały bałagan i sprawdzić nasz wysiłek intelektualny i umysłowy, a więc spakować wszystkie pliki i katalogi tak, aby struktura ich wyglądała jak na początku i zainstalować rozszerzenie. +

Zabieramy się za to w następujący sposób: +

+ +

Teraz należałoby wszystkie pliki i katalogi spakować do archiwum *.xpi, ale to za chwilę, bo w plikach instalacyjnych należy dokonać kilku zmian, tak aby nasza nowa lokalizacja została rozpoznana przez aplikację. W tym celu musimy wyedytować pliki install.rdf i chrome.manifest: +

+

chrome.manifest

+

W pliku chrome.manifest w wierszu wyglądającym mniej więcej tak: +

+
locale	console2	en-US	jar:chrome/console2.jar!/locale/en-US/console2/ 
+

gdzie: console2 w tym przykładzie są nazwami katalogów rozszerzenia Console2, w innym będą inne nazwy, zmieniamy "en-US" na "pl-PL" +

Pozostałe takie wiersze z określeniami innych lokalizacji usuwamy. +

+

install.rdf

+

W pliku install.rdf w wierszu o takim wyglądzie: +

+
<description>Krótki_opis_rozszerzenia.</description>
Krótki_opis_rozszerzenia jest po angielsku, zamieniamy na opis po polsku. +

Jeśli jest wiersz: +

+
<em:locale>locale/en-US/jakaś_nazwa/<em:locale>
+

zmieniamy w nim "en-US" na "pl-PL", pozostałe podobne wiersze usuwamy. +Teraz już ostatni krok przed instalacją rozszerzenia - pakujemy wszystkie katalogi i pliki do archiwum .zip z rozszerzeniem .xpi. +

Teraz sprawdzenie tego co zrobiliśmy, czyli instalacja naszego rozszerzenia i później jego korekty. +

Jeśli dotrwałeś do tego momentu, to znaczy, że jesteś zdesperowany, aby tłumaczyć rozszerzenia, zatem należy ci się nagroda. +

Jak wcześniej wspomniałem polecam do pracy z rozszerzeniami Total Commandera z zainstalowanymi wtyczkami WCX. Dzięki nim odpada cały galimatias z rozpakowywaniem i pakowaniem archiwów. Po prostu archiwa otwiera i operuje się na nich jak na zwykłych katalogach. Pozostaje tylko końcowe spakowanie do pliku *.xpi, które też można ułatwić maksymalnie. +

+

Pożyteczne odnośniki

+
  1. Przekład tekstów informatycznych na polski +
  2. Gramatyka języka polskiego +
  3. Mozilla Developer Center po polsku +
  4. Tworzenie rozszerzeń na MozzilaZine +
  5. Tworzenie rozszerzeń +
  6. ">Tworzenie rozszerzeń +
  7. Słownik Języka Polskiego +
+

--
+Napisał: Leszek (Teo) Życzkowski +

diff --git a/files/pl/tworzenie_mikropodsumowania/index.html b/files/pl/tworzenie_mikropodsumowania/index.html new file mode 100644 index 0000000000..a5d8492f35 --- /dev/null +++ b/files/pl/tworzenie_mikropodsumowania/index.html @@ -0,0 +1,214 @@ +--- +title: Tworzenie mikropodsumowania +slug: Tworzenie_mikropodsumowania +tags: + - Mikropodsumowania + - Wszystkie_kategorie +translation_of: Archive/Mozilla/Creating_a_microsummary +--- +

+  

+

+ Generator mikropodsumowań jest to zestaw instrukcji do tworzenia mikropodsumowania na bazie treści strony WWW. Strony WWW mogą odwoływać się do generatorów przez elementy <link rel="microsummary"> w elementach <head>. Generatory mogą także być niezależnie pobierane i instalowane przez użytkowników, jeśli zawierają listę stron z którymi współpracują.

+

+ W tym kursie zajmiemy się tworzeniem generatora mikropodsumowań dla strony domowej Spread Firefox, która wyświetla aktualną liczbę pobrań Firefoksa i podaje ją wraz z tekstem Pobrań Firefoksa:; na przykład: Pobrań Firefoksa: 174475447.

+

+ Stworzymy arkusz transformacji XSLT, który przekonwertuje stronę w jej mikropodsumowanie, nauczymy się określać z jakimi stronami pracuje generator i jak przystosować go do pobierania i instalacji.

+

+ W każdym kroku tworzenia arkusza transformacji oraz innych elementów kodu w tym kursie, nowy materiał będzie pogrubiony, aby ułatwić Ci poruszanie się po tekście.

+

+ Początki

+

+ Generatory są to dokumenty XML, których korzeniem (root element) jest element <generator> w przestrzeni nazw http://www.mozilla.org/microsummaries/0.1. Aby rozpocząć tworzenie generatora, stwórz nowy, pusty plik tekstowy i dodaj deklarację XML oraz pusty znacznik <generator>:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1">
+</generator>
+
+

+ Nadawanie nazwy

+

+ Generatory powinny posiadać atrybut name opisujący mikropodsumowania, które te generatory tworzą. Nazwy powinny być wystarczająco dokładne, aby użytkownik miał świadomość jakie dane to mikropodsumowanie dostarcza. Ponieważ nasz generator będzie tworzył mikropodsumowania wyświetlające liczbę pobrań Firefoksa, nazwijmy je "Liczba pobrań Firefoksa":

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Liczba pobrań Firefoksa">
+</generator>
+
+

+ Dodawanie arkusza transformacji XSLT

+

+ Generatory muszą zawierać arkusze transformacji XSLT (znane także jako arkusze XSLT), które transformują treść strony w mikropodsumowanie. XSLT jest potężnym językiem do transformacji dokumentów w inne formy prezentacji tych samych danych.

+

+ Dodaj arkusz transformacji XSLT do generatora, poprzez dołączenie go wewnątrz elementu <template>:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Liczba pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+    </transform>
+  </template>
+</generator>
+
+

+ Zwróć uwagę, że chociaż generatory mikropodsumowań mogą obsługiwać dowolny XSLT, także taki, który tworzy sformatowany tekst, Firefox aktualnie obsługuje tylko czysty tekst jako wynik przetwarzania XSLT.

+

+ Określanie typu wyjścia

+

+ Jako, że arkusz transformacji XSLT ma tworzyć tekst mikropodsumowania, powinniśmy dodać element <output> XSLT:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Liczba pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+      <output method="text"/>
+    </transform>
+  </template>
+</generator>
+
+

+ Użycie prostego XSLT <template>

+

+ Procesor XSLT transformuje dokumenty porównując każdy element <template> w arkuszu transformacji ze zbiorem węzłów w dokumencie. Kiedy atrybut match elementu <template> pasuje do węzła, procesor wykonuje transformację określoną przez zawartość tego elementu.

+

+ Jest to potężny mechanizm, ponieważ pozwala trawersować drzewo węzłów dokumentu, rekursywnie tworząc wyjście bazujące na zawartości samego dokumentu. Ale w naszym przypadku, kiedy tworzymy mikropodsumowanie dla strony Spread Firefox, potrzebujemy tylko jednego elementu <template>, który pasuje do korzenia (root node) dokumentu i jest wykonywany raz:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Liczba pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+      <output method="text"/>
+      <template match="/">
+      </template>
+    </transform>
+  </template>
+</generator>
+
+

+ Dołączanie licznika pobrań

+

+ Aby dołączyć licznik pobrań do wyjścia arkusza transformacji XSLT, musimy dodać element <value-of> do szablonu. Atrybut select tego elementu zawiera wyrażenie XPath, które wskazuje na węzeł zawierający liczbę pobrań.

+

+ XPath jest językiem służącym do identyfikacji węzłów w dokumentach HTML/XML. Posiada także podstawowe funkcje do manipulacji tymi węzłami i ich zawartością. Najłatwiej stworzyć wyrażenie XPath, które wskazuje na węzeł, który chcesz uchwycić, korzystając z rozszerzenia XPath Checker.

+

+ Zainstaluj to rozszerzenie (uruchamiając ponownie Firefoksa, aby zakończyć instalację), a następnie wejdź na stronę Spread Firefox, znajdź licznik pobrań Firefoksa (duża liczba na górze strony w prawej kolumnie), kliknij prawym klawiszem myszy na tym elemencie i z menu kontekstowego wybierz View XPath (Pokaż XPath).

+

+ XPath Checker otworzy nowe okno. Będzie w nim pole XPath zawierające wyrażenie XPath wskazujące na węzeł licznika pobrań: id('download-count').

+

+ Dodaj element <value-of> do elementu <template>. Ustaw atrybut select tego elementu na wyrażenie XPath:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Licznik pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+      <output method="text"/>
+      <template match="/">
+        <value-of select="id('download-count')"/>
+      </template>
+    </transform>
+  </template>
+</generator>
+
+

+ Dodawanie tekstu

+

+ Aby dodać napis Pobrań Firefoksa:> do mikropodsumowania, potrzebujemy do elementu <template> dodać element <text> zawierający wybrany napis.

+

+ Dodaj element <text> do szablonu XSLT z treścią Pobrań Firefoksa::

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Licznik pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+      <output method="text"/>
+      <template match="/">
+        <text>Pobrań Firefoksa: </text>
+        <value-of select="id('download-count')"/>
+      </template>
+    </transform>
+  </template>
+</generator>
+
+

+ Zwróć uwagę, że, w odróżnieniu od języka HTML, gdzie białe znaki są prezentowane w postaci pojedynczej spacji, przestrzeń między znacznikami XSLT nie zostanie włączona do wyjścia XSL. Pamiętaj, aby dodać spację na końcu, wewnątrz znacznika, aby oddzielić napis od liczby.

+

+ Po tej zmianie, właśnie skończyliśmy pisać arkusz transformacji XSLT, który konwertuje stronę domową Spread Firefox do postaci mikropodsumowania.

+

+ Określanie listy stron na których generator działa

+

+ Teraz, kiedy napisaliśmy już arkusz transformacji, musimy określić do jakich stron on pasuje. Gdybyśmy byli twórcami strony Sread Firefox, moglibyśmy po prostu dodać odnośnik do generatora wewnątrz samej stron, dodając znacznik <link rel="microsummary"> w sekcji <head>:

+
<head>
+  ...
+  <link rel="microsummary" href="path/to/our/generator.xml">
+</head>
+
+

+ Niestety, nie jesteśmy nimi. Możemy jednak określić stronę z która generator współpracuję wewnątrz samego generatora, a następnie udostępnić nasz generator do pobrania i instalacji innym. Aby określić strony, na których generator działa, należy użyć elementu <pages> wewnątrz elementu <generator>:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1"
+           name="Licznik pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+      <output method="text"/>
+      <template match="/">
+        <text>Pobrań Firefoksa </text>
+        <value-of select="id('download-count')"/>
+      </template>
+    </transform>
+  </template>
+  <pages>
+  </pages>
+</generator>
+
+

+ Element <pages> może zawierać dowolną liczbę elementów <include> oraz <exclude>, określających strony na których, generator, odpowiednio, działa, lub nie działa.

+

+ Aby sprawić, by generator działał na danej stronie, dodaj element <include>, i jako zawartość podaj mu wyrażenie regularne pasujące do adresu tej strony. Aby określić, że generator nie pracuje z daną stroną, dodaj element <exclude> i jako zawartość podaj wyrażenie regularne pasujące do adresu strony.

+

+ Domyślnie, generatory nie pracują z żadną stroną, więc musisz bezpośrednio określić listę stron, z którymi współpracują, i nie musisz wyłączać żadnych stron, chyba, że wcześniej je włączyłeś.

+

+ Dodaj element <include> pasujący do strony domowej Spread Firefox:

+
<?xml version="1.0" encoding="UTF-8"?>
+<generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="Licznik pobrań Firefoksa">
+  <template>
+    <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
+      <output method="text"/>
+      <template match="/">
+        <text>Pobrań Firefoksa </text>
+        <value-of select="id('download-count')"/>
+      </template>
+    </transform>
+  </template>
+  <pages>
+    <include>http://(www\.)?spreadfirefox\.com/(index\.php)?</include>
+  </pages>
+</generator>
+
+

+ Udostępnianie generatora do pobrania

+

+ Kiedy nasz generator działa już ze stroną Spread Firefox, ostatnią rzeczą, jaka nam pozostała, to sprawić, aby można go było pobrać. Aby to zrobić, musimy postawić stronę WWW i stworzyć odnośnik JavaScript na tej stronie, który wywoła metodę Firefoksa window.sidebar.addMicrosummaryGenerator(), aby pobrać i zainstalować generator.

+

+ Na przykład, jeśli wystawisz plik generatora w sieci pod adresem http://people.mozilla.com/~myk/micro...-generator.xml, i chcesz, aby użytkownicy mogli go zainstalować z http://people.mozilla.com/~myk/micro...ial/index.html, musisz dodać poniższy kod do pliku index.html page:

+
<a href="javascript:window.sidebar.addMicrosummaryGenerator('http://people.mozilla.com/~myk/microsummaries/tutorial/sfx-generator.xml')">Zainstaluj mikropodsumowanie strony domowej Spread Firefox!</a>
+
+

+ Niestety, naciśnięcie tego odnośnika w przeglądarkach nie obsługujących mikropodsumowań, wywoła błąd JavaScript, więc, aby to poprawić, powinniśmy sprawdzić, czy użytkownik korzysta z przeglądarki obsługującej mikropodsumowania i wyświetlić wyjaśnienie jeśli nie. Może to wyglądać na przykład tak:

+
<script>
+  const warning = "Ups! Potrzebujesz przeglądarki obsługującej mikropodsumowania jak Firefox 2.0, aby zainstalować i używać generatorów mikropodsumowań.";
+  function addGenerator(url) {
+    if (typeof window.sidebar == "object" &&
+        typeof window.sidebar.addMicrosummaryGenerator == "function")
+      window.sidebar.addMicrosummaryGenerator(url);
+    else
+     alert(warning);
+  }
+</script>
+<a href="javascript:addGenerator('http://people.mozilla.com/~myk/microsummaries/tutorial/sfx-generator.xml')">Zainstaluj mikropodsumowanie strony domowej Spread Firefox!</a>
+
+

+ Uwaga. Ze względu na błąd {{ Bug(341283) }}, addMicrosummaryGenerator() nie akceptuje relatywnych adresów URL.

+

+ Podsumowanie

+

+ Powinieneś mieć teraz generator mikropodsumowań, który wyświetla aktualną liczbę pobrań Firefoksa. Dodaj stronę domową Spread Firefox do zakładek i wybierz mikropodsumowanie z rozwijanego menu Podsumowanie w oknie dialogowym Dodaj zakładkę.

+

+ Aby dowiedzieć się więcej o Mikropodsumowaniach, zajrzyj na stronę domową Mikropodsumowań (en).

diff --git a/files/pl/tworzenie_rozszerzenia_paska_stanu/index.html b/files/pl/tworzenie_rozszerzenia_paska_stanu/index.html new file mode 100644 index 0000000000..e604cdd32c --- /dev/null +++ b/files/pl/tworzenie_rozszerzenia_paska_stanu/index.html @@ -0,0 +1,202 @@ +--- +title: Tworzenie rozszerzenia paska stanu +slug: Tworzenie_rozszerzenia_paska_stanu +tags: + - Dodatki + - Rozszerzenia + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Archive/Creating_a_status_bar_extention +--- +

{{ Next("Tworzenie rozszerzenia dynamicznego paska stanu") }} Jest to pierwszy z całej serii artykułów mających na celu zademonstrować tworzenie coraz bardziej skomplikowanych rozszerzeń do przeglądarki Firefox. Niektóre z przykładów mogą być podobne do innych spotkanych w różnych miejscach, ale celem tejże serii jest pomoc nowym programistom rozszerzeń i zebranie wszystkich potrzebnych informacji w jednym miejscu, z którego łatwo jest rozpocząć.

+ +

Wiele z wprowadzonych tutaj pojęć odnosi się do wszystkich aplikacji opartych na XUL; jednak aby nie zostać całkowicie przytłoczonym, skupimy się w szczególności na Firefox.

+ +

Ten przykład doda statyczny ciąg tektu do paska statusu u dołu okna przeglądarki Firefox. Jeśli brzmi to jak istniejący artykuł Tworzymy rozszerzenie, masz rację. Jednak, ten przykład będzie rozbudowywany w kolejnych artykułach tej serii.

+ +

Pobieranie przykładu

+ +

Możesz pobrać przykład z poniższej strony:

+ +

Pobierz przykład

+ +

Manifest instalacji

+ +

Manifest instalacji install.rdf jest plikiem tekstowym zawierającym ważne informacje o rozszerzeniu.

+ +
 <?xml version="1.0"?>
+
+ <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+    xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+
+   <Description about="urn:mozilla:install-manifest">
+
+   <em:id>status-bar-sample-1@example.com</em:id>
+   <em:version>1.0</em:version>
+   <em:type>2</em:type>
+
+   <!-- Front End Metadata -->
+
+   <em:name>Status Bar Sample 1</em:name>
+   <em:description>Sample static status bar panel</em:name>
+   <em:creator>My Name</em:creator>"
+   <em:homepageURL>http://developer.mozilla.org/en/docs/Creating_a_status_bar_extension</em:homepageURL>
+
+   <!-- Opis jaka wersja Firefoksa jest obsługiwana -->
+
+   <em:targetApplication>
+     <Description>
+     <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
+     <em:minVersion>1.5</em:minVersion>
+     <em:maxVersion>2.0.0.*</em:maxVersion>
+     </Description>
+   </em:targetApplication>
+
+   </Description>
+
+ </RDF>
+
+ +

Przyjrzyjmy się najważniejszym częściom manifestu.

+ +

Informacje identyfikujące rozszerzenie

+ +

Pewne informacje są wymagane, by Firefox mógł jednoznacznie zidentyfikować rozszerzenie. W poniższym przykładzie są to pola:

+ + + + + + + + + + + + + + + + + + + + +
Nazwa własnościOpis
idUnikalny strumień identyfikujący. W wersjach Firefoksa wcześniejszych niż 1.5 było to GUID. Począwszy jednakże od Firefoksa 1.5 powinieneś używać strumienia w postacinazwa-rozszerzenia@kreator-domeny.
versionNumer wersji rozszerzenia.
typeTyp dodatku. Dla rozszerzenia równa się 2.
+ +

Informacje dla użytkownika

+ +

W tym przykładzie mamy 4 informacje dla użytkownika tj. dane wyświetlane w interfejsie użytkownika Firefoksa. Są to:

+ + + + + + + + + + + + + + + + + + + + + + + + +
Nazwa własnościOpis
em:nameNazwa rozszerzenia. Nazwa wyświetlana w oknie Rozszerzenia.
em:descriptionKrótki jedno liniowy opis rozszerzenia. Tekst jest wyświetlany w oknie Rozszerzenia.
em:creatorNazwisko autora.
homepageURLAdres URL strony, na której użytkownik może uzyskać więcej informacji o rozszerzeniu, lub poszukać uaktualnień. Pole nie jest wymagane.
+ +

Informacje o aplikacji docelowej

+ +

Ważnym jest, by zawrzeć informacje identyfikujące aplikacje w jakich rozszerzenie może zostać użyte. Opisywane rozszerzenie przeznaczone jest wyłącznie dla Firefoksa. Jednakże możliwym jest stworzenie rozszerzeń przeznaczonych na wiele aplikacji bazujących na XUL-u.

+ +

Ważnym jest również zaznaczenie, które wersje aplikacji docelowych są wspierane przez rozszerzenie. Jeśli nie będzie ono działało w starszych wersjach, lub też nie zostało przetestowane na wersjach nowszych możesz ograniczyć rozszerzenie tak, aby tylko wspierane wersje próbowały go użyć.

+ +

Informacje o aplikacji docelowej zawarte są wewnątrz bloku em:targetApplication Description.

+ + + + + + + + + + + + + + + + + + + + +
Nazwa własnościOpis
idID określające aplikację docelową. "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}" jest ciągiem GUID identyfikującym jednoznacznie Firefoksa jako aplikację docelową.
minVersionNajstarsza wersja aplikacji docelowej wspieranej przez rozszerzenie.
maxVersionNajnowsza wersja aplikacji docelowej, na której rozszerzenie będzie działało.
+ +

W celu dowiedzenia się więcej odnośnie formatu manifestu instalacji przeczytaj artykuł Manifesty Instalacji.

+ +

Rejestracja chrome

+ +

The chrome manifest is a file that tells the target application where to look for the chrome package for your extension. The Chrome is the set of user interface elements outside the content area of the application's window, such as toolbars, status bars, menu bars, and the like.

+ +

Dla przykładu plik manifestu chrome chrome.manifest.

+ +
 content status-bar-sample-1 chrome/content/
+
+ # Firefox
+ overlay	chrome://browser/content/browser.xul chrome://status-bar-sample-1/content/status-bar-sample-1.xul
+
+ +

The first line registers the location on disk of the contents of the extension whose ID is "status-bar-sample-1". This path is relative to the extension's root folder in this case, but can be absolute if you want it to be.

+ +

The second line registers an overlay. An overlay lets you add new content to an existing document. In this case, we want to augment the UI of the Firefox browser, so we specify the URI of the Firefox main window's XUL file, "chrome://browser/content/browser.xul", as the interface to overlay onto, and the URI of our own XUL file, "chrome://status-bar-sample-1/content...r-sample-1.xul", as the interface to overlay onto the browser.

+ +

See Nakładki XUL for details on how overlays work. You can also find more details about format of chrome manifests in the Rejestracja Chrome section.

+ +

Nakładki XUL

+ +

The XUL overlay file contains the XUL description of the user interface we want to add to Firefox. Our overlay file, status-bar-sample-1.xul, looks like this:

+ +
 <?xml version="1.0" encoding="UTF-8"?>
+
+ <!DOCTYPE overlay >
+ <overlay id="status-bar-sample-1-overlay"
+          xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+ <!-- Firefox -->
+ <statusbar id="status-bar">
+   <statusbarpanel id="status-bar-sample-1"
+     label="Hello World"
+     tooltiptext="Sample status bar item"
+   />
+ </statusbar>
+
+ </overlay>
+
+ +

The first order of business in the status-bar-sample-1.xul file is to establish that this is in fact a XUL file, and to set up a unique ID for the overlay. This is accomplished by the following line of XML:

+ +
<overlay id="status-bar-sample-1-overlay"
+  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+ +

Once that's accomplished, we can describe our user interface. In this case, we're simply inserting a new panel into the status bar at the bottom of Firefox browser windows. We do this by embedding inside the statusbar named "status-bar" -- which is the Firefox browser window's status bar -- a new statusbarpanel object we call "status-bar-sample-1".

+ +

We include properties to configure our new status bar panel the way we want, setting its text label to "Hello World" and establishing a tool tip with the message "Sample status bar item" in it.

+ +

Zobacz jak to działa

+ +

Aby przetestować swoje rozszerzenie, przeciągnij folder do folderu rozszerzenia w swoim folderze profilu. Następnie uruchom ponownie Firefoksa i powinieneś zobaczyć rozszerzenie na pasku stanu.

+ +

Grafika:status bar sample 1.png

+ +

{{ Next("Tworzenie rozszerzenia dynamicznego paska stanu") }}

diff --git a/files/pl/tworzenie_wtyczek_mozsearch/index.html b/files/pl/tworzenie_wtyczek_mozsearch/index.html new file mode 100644 index 0000000000..787f685a96 --- /dev/null +++ b/files/pl/tworzenie_wtyczek_mozsearch/index.html @@ -0,0 +1,52 @@ +--- +title: Tworzenie wtyczek MozSearch +slug: Tworzenie_wtyczek_MozSearch +tags: + - Dodatki + - Wszystkie_kategorie + - Wtyczki_wyszukiwarek +translation_of: Mozilla/Creating_MozSearch_plugins +--- +

 

+

Firefox 2 używa uproszczonej formy formatu OpenSearch do przechowywania wtyczek wyszukiwania. Wtyczka MozSearch jest plikiem XML, który opisuje silnik wyszukiwarki, jej adres URL i parametry, które mają być przekazane do tego adresu URL.

+
Ostrzeżenie: MozSearch nie jest standardem i jest przeznaczony tylko na wewnętrzne potrzeby projektu Mozilla. Wtyczka ta powinna być użyta tylko wtedy, gdy zamierzasz rozpowszechniać wtyczkę wyszukiwarki spakowaną w rozszerzenie Firefoksa lub jeśli tworzysz wtyczkę, która ma być dostarczana jako domyślna w Firefoksie. Zobacz Tworzenie wtyczek OpenSearch dla Firefoksa, aby dowiedzieć się o tworzeniu wtyczek instalowanych z Internetu.
+

Plik wtyczki

+

Format MozSearch jest podobny do formatu OpenSearch. Jedyną różnicą jest element root i przestrzeń nazw XML.

+

Przykład: wyszukiwarka Yahoo!

+

Poniższy kod XML jest wbudowaną wtyczką Firefox 2 odpowiadającą za wyszukiwarkę Yahoo!:

+
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
+<ShortName>Yahoo</ShortName>
+<Description>Yahoo Search</Description>
+<InputEncoding>UTF-8</InputEncoding>
+<Image width="16" height="16">data:image/x-icon;base64,R0lGODlhEAAQAJECAP8AAAAAAP///wAAACH5BAEAAAIALAAAAAAQABAAAAIplI+py+0NogQuyBDEnEd2kHkfFWUamEzmpZSfmaIHPHrRguUm/fT+UwAAOw==</Image>
+<Url type="application/x-suggestions+json" method="GET"
+     template="http://ff.search.yahoo.com/gossip?output=fxjson&amp;command={searchTerms}" />
+<Url type="text/html" method="GET" template="http://search.yahoo.com/search">
+  <Param name="p" value="{searchTerms}"/>
+  <Param name="ei" value="UTF-8"/>
+  <MozParam name="fr" condition="pref" pref="yahoo-fr" />
+</Url>
+<SearchForm>http://search.yahoo.com/</SearchForm>
+</SearchPlugin>
+
+

Przypuśćmy, że użytkownik wybierze silnik wyszukiwania Yahoo! i wprowadzi "mozilla" w polu wyszukiwania, po czym naciśnie klawisz enter. Firefox użyje powyższego opisu wyszukiwarki, aby stworzyć taki adres URL:

+
http://search.yahoo.com/search?p=mozilla&ei=UTF-8&fr=moz2
+
+

Jeśli użytkownik kliknie ikonę lupy w panelu wyszukiwania lub wybierze opcję Znajdź w Internecie w menu Narzędzia, gdy panel wyszukiwania nie jest widoczny, przeglądarka przeniesie go do strony http://search.yahoo.com/, która została wpisana jako wartość elementu <SearchForm>.

+

Przykład: wyszukiwarka MDC

+

Ta wtyczka pozwoli Ci w prosty sposób przeszukiwać stronę Mozilla Developer Center.

+
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
+<ShortName>MDC</ShortName>
+<Description>Mozilla Developer Center search</Description>
+<InputEncoding>UTF-8</InputEncoding>
+<Image width="16" height="16">data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAABGdBTUEAAK%2FINwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz%2F%2Fz8DJQAggJiQOe%2Ffv2fv7Oz8rays%2FN%2BVkfG%2FiYnJfyD%2F1%2BrVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw%2F8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi%2FG%2BQKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo%2BMXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia%2BCuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq%2FvLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg%2FkdypqCg4H8lUIACnQ%2FSOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD%2BaDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg%3D%3D</Image>
+<Url type="text/html" method="GET" template="http://developer.mozilla.org/en/docs/Special:Search?search={searchTerms}"/>
+<SearchForm>http://developer.mozilla.org/en/docs/Special:Search</SearchForm>
+</SearchPlugin>
+
+

Zauważ, że w tym przypadku zamiast używania <Param> do zdefiniowania parametrów silnika wyszukiwarki, są one po prostu osadzone wewnątrz szablonowego URL. Jest to właściwie preferowany sposób, gdy używamy GET jako metody. <Param> powinien być użyty dla POST.

+

Zobacz także

+ + +

{{ languages( { "ca": "ca/Creaci\u00f3_de_connectors_MozSearch", "en": "en/Creating_MozSearch_plugins", "es": "es/Creaci\u00f3n_de_plugins_MozSearch", "fr": "fr/Cr\u00e9ation_de_plugins_MozSearch", "it": "it/Creare_Plugin_MozSearch", "ja": "ja/Creating_MozSearch_plugins", "zh-tw": "zh_tw/\u88fd\u4f5c_MozSearch_\u641c\u5c0b\u6a21\u7d44" } ) }}

diff --git a/files/pl/tworzenie_wtyczek_opensearch_dla_firefoksa/index.html b/files/pl/tworzenie_wtyczek_opensearch_dla_firefoksa/index.html new file mode 100644 index 0000000000..91968f2ac8 --- /dev/null +++ b/files/pl/tworzenie_wtyczek_opensearch_dla_firefoksa/index.html @@ -0,0 +1,158 @@ +--- +title: Tworzenie wtyczek OpenSearch dla Firefoksa +slug: Tworzenie_wtyczek_OpenSearch_dla_Firefoksa +tags: + - Dodatki + - OpenSearch + - Wszystkie_kategorie + - Wtyczki_wyszukiwarek +translation_of: Web/OpenSearch +--- +

 

+

OpenSearch

+

Firefox 2 obsługuje format opisu wtyczek wyszukiwarek OpenSearch. Wtyczki korzystające ze składni OpenSearch są zgodne z IE 7 i Firefoksem. Z tego powodu są formatem zalecanym do stosowania na stronach WWW.

+

Firefox obsługuje także dodatkowe możliwości spoza specyfikacji OpenSearch, takie jak podpowiedzi wyszukiwania i element SearchForm. Niniejszy artykuł skupia się na tworzeniu wtyczek zgodnych z OpenSearch, ale wykorzystujących także i te dodatkowe możliwości.

+

Dostępność plików opisu OpenSearch może być także ogłaszana w sposób opisany w podrozdziale Automatyczne wykrywanie wtyczek wyszukiwarek, mogą być także instalowane w sposób programowy, tak jak to opisano w artykule Dodawanie wyszukiwarek ze stron WWW.

+

Plik opisu OpenSearch

+

Plik XML opisujący wyszukiwarkę ma prostą budowę, taką, jak przedstawiona w poniższym szablonie. Pogrubione fragmenty muszą być dostosowane do wymogów konkretnej wyszukiwarki.

+
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
+                       xmlns:moz="http://www.mozilla.org/2006/browser/search/">
+<ShortName>nazwaWyszukiwarki</ShortName>
+<Description>opisWyszukiwarki</Description>
+<InputEncoding>kodowanieWejściowe</InputEncoding>
+<Image width="16" height="16">data:image/x-icon;base64,daneObrazu</Image>
+<Url type="text/html" method="metoda" template="adresURLWyszukiwania">
+  <Param name="nazwaParam1" value="wartośćParam1"/>
+  ...
+  <Param name="nazwaParamN" value="wartośćParamN"/>
+</Url>
+<Url type="application/x-suggestions+json" template="adresURLPodpowiedzi"/>
+<moz:SearchForm>adresURLFormularza</moz:SearchForm>
+</OpenSearchDescription>
+
+
+
+ ShortName
+
+ Krótka nazwa wyszukiwarki.
+
+
+
+ Description
+
+ Zwięzły opis wyszukiwarki.
+
+
+
+ InputEncoding
+
+ Kodowanie znaków stosowane przy wprowadzaniu danych do wyszukiwarki.
+
+
+
+ Image
+
+ Zakodowana przy użyciu algorytmu Base-64 ikona o wymiarach 16x16 reprezentująca wyszukiwarkę. Narzędzie ułatwiające tworzenie danych do umieszczenia w tym elemencie (kodowania plików algorytmem Base64) można znaleźć na stronie: The data: URI kitchen.
+
+
+
+ Url
+
+ Określa adres lub adresy URL wykorzystywane do wyszukiwania. Atrybut method
+
+

decyduje, czy do wysłania zapytania ma być stosowana metoda GET czy POST. Atrybut określa podstawowy adres URL dla zapytania wyszukiwarki.

+
+
+
+ Uwaga: Internet Explorer 7 nie obsługuje żądań POST.
+
+
+
+
+ Firefox obsługuje dwa typy elementów Url:
+
+ +
+
+ W adresach obu typów tekst {searchTerms} zostanie zastąpiony przez wartości wprowadzone przez użytkownika do paska wyszukiwania. Inne obsługiwane parametry dynamiczne wyszukiwania można znaleźć w rozdziale OpenSearch 1.1 parameters specyfikacji OpenSearch.
+
+
+
+ Podczas przeglądania + + oficjalnej specyfikacji OpenSearch + , a konkretnie elementu Url, można zauważyć, że Mozilla w pewnym stopniu nie przestrzega specyfikacji, używając atrybutu method i znacznika Param bez odpowiedniej przestrzeni nazw. Jeśli chcemy zachować zgodność zarówno ze specyfikacją, jak i z Mozillą, możemy bezpiecznie używać obu sposobów równolegle, tzn. używać atrybutu method i jego wersji z przestrzenią nazw obok siebie.
+
+
+
+ Dla zapytań o podpowiedzi wyszukiwania, podany szablon adresu URL wykorzystywany jest do pobrania listy podpowiedzi w formacie JavaScript Object Notation (JSON). Szczegóły na temat implementacji podpowiedzi wyszukiwania po stronie serwera można znaleźć w artykule Wsparcie dla podpowiedzi wyszukiwania w wyszukiwarkach.
+
+

Image:SearchSuggestionSample.jpg

+
+
+ Param
+
+ Parametry, które muszą zostać przekazane wraz z zapytaniem, w postaci par klucz/wartość. Przy określaniu tych wartości można użyć {searchTerms}, by wstawić w to miejsce wyszukiwane słowa wprowadzone przez użytkownika w pasku wyszukiwania.
+
+
+ Uwaga: Internet Explorer 7 nie obsługuje tego elementu.
+
+
+
+
+ SearchForm
+
+ Adres URL strony z wyszukiwarką na danej witrynie. (Niejako adres strony, którą wtyczka wyszukiwarki zastępuje - przyp. tłum.). W ten sposób Firefox umożliwia użytkownikowi bezpośrednie otwarcie danej witryny.
+
+
+ Uwaga: Ten element nie jest częścią specyfikacji OpenSearch, jest związany z konkretną funkcją Firefoksa. Z tej przyczyny poprzedzony został przedrostkiem przestrzeni nazw XML "moz:", aby inne aplikacje, nie obsługujące tego elementu, mogły go zignorować.
+

Automatyczne wykrywanie wtyczek wyszukiwarek

+

Witryna oferująca wtyczkę wyszukiwarki może ogłosić jej dostępność, umożliwiając użytkownikom Firefoksa na łatwą i szybką instalację wtyczki.

+

Aby skorzystać z tej funkcji, wystarczy po prostu w części <head> strony internetowej dodać jedną linię:

+
<link rel="search" type="application/opensearchdescription+xml" title="tytułWyszukiwarki" href="adresURLWtyczki">
+
+

Pochylony tekst należy zastąpić, jak opisano poniżej:

+
+
+ tytułWyszukiwarki
+
+ Nazwa wyszukiwarki, np. "Yahoo! Search". Wartość ta powinna być zgodna z wartością ShortName w pliku wtyczki.
+
+
+
+ adresURLWtyczki
+
+ Adres URL do pliku XML wtyczki wyszukiwania, która ma zostać pobrana przez przeglądarkę.
+
+

Jeśli witryna oferuje szereg wtyczek wyszukiwania, można pozwolić na automatyczne wykrywanie ich wszystkich - przez umieszczenie tylu znaczników link, ile wtyczek chcemy zaoferować, np.:

+
<link rel="search" type="application/opensearchdescription+xml" title="MySite: wg autora" href="http://www.mysite.com/mysiteauthor.xml">
+<link rel="search" type="application/opensearchdescription+xml" title="MySite: wg tytułu" href="http://www.mysite.com/mysitetitle.xml">
+
+

W ten sposób witryna oferuje osobne wtyczki pozwalające na przeszukanie wg autorów i tytułów.

+

Rozwiązywanie problemów – wskazówki

+

Jeśli w pliku XML wtyczki jest błąd, mogą wystąpić problemy podczas instalacji wykrytej wtyczki w Firefoksie 2. Informacja o błędzie może nie być zbyt dokładna, dlatego poniżej podajemy kilka wskazówek, które powinny pomóc w takiej sytuacji.

+ +

Ponadto usługa wtyczek wyszukiwarek zapewnia dostęp do mechanizmu dziennika, który może być przydatny dla twórców wtyczek. Aby skorzystać z dziennika, należy na stronie + + about:config + ustawić wartość opcji 'browser.search.log' na true. Informacje dziennika będą pojawiać się w Konsoli błędów Firefoksa (Narzędzia->Konsola błędów) przy dodawaniu wtyczek.

+

Literatura

+ +

Interwiki link

+
+  
diff --git a/files/pl/tworzymy_rozszerzenie/index.html b/files/pl/tworzymy_rozszerzenie/index.html new file mode 100644 index 0000000000..203f8972ff --- /dev/null +++ b/files/pl/tworzymy_rozszerzenie/index.html @@ -0,0 +1,368 @@ +--- +title: Tworzymy rozszerzenie +slug: Tworzymy_rozszerzenie +tags: + - Dodatki + - Rozszerzenia +translation_of: Mozilla/Add-ons +--- +

Wprowadzenie

+ +

Ten przewodnik przeprowadzi Cię przez kilka kroków potrzebnych do stworzenia bardzo prostego rozszerzenia, które doda do Firefoksa panel na pasku statusu z tekstem "Witaj Świecie!"

+ +
Uwaga! Ten artykuł dotyczy tworzenia rozszerzenia dla Firefoksa 1.5 i późniejszych. Istnieją także przewodniki na temat budowy rozszerzeń dla starszych wersji Firefoksa.
+ +

Przygotowanie środowiska programowania

+ +

Rozszerzenia są spakowane i rozpowszechniane w plikach ZIP lub paczkach z rozszerzeniem pliku xpi (wymawiane jak “zippy”). Układ zawartości wewnątrz pliku XPI może wyglądać następująco:

+ +
extension.xpi:
+              /install.rdf
+              /components/*
+              /components/cmdline.js
+              /defaults/
+              /defaults/preferences/*.js
+              /plugins/*
+              /chrome.manifest
+              /chrome/icons/default/*
+              /chrome/
+              /chrome/content/
+
+
+ +

Z tego powodu najłatwiej będzie układać pliki źródłowe w podobny sposób, chyba że chcesz napisać coś w stylu pliku Makefile lub skryptu powłoki, aby spakować wszystkie swoje pliki. Nawet, jeśli jesteś gotów to zrobić, testowanie rozszerzenia będzie znacznie łatwiejsze, jeśli ułożysz swoje pliki w powyższy sposób, ze względu na sposób pracy systemu Dodatków Firefoksa 1.5.

+ +

Zaczynajmy. Utwórz gdzieś na swoim dysku folder dla Twojego rozszerzenia, np. C:\extensions\my_extension\ lub ~/extensions/my_extension/. (Uwaga: Używaj tylko małych liter) Wewnątrz tego folderu tworzymy kolejny o nazwie chrome, następnie wewnątrz chrome tworzymy folder content. (W systemach Uniksowych można zazwyczaj stworzyć wszystkie trzy foldery za pomocą polecenia mkdir -p chrome/content wydanego w głównym katalogu rozszerzenia.)

+ +

Wewnątrz głównego folderu rozszerzenia, obok folderu chrome, tworzymy dwa puste pliki tekstowe: chrome.manifest oraz install.rdf.

+ +

Przykładowo:

+ +
#!/bin/sh
+h=$HOME/moExt
+mkdir -p $h/my_extension/chrome/content
+touch $h/my_extension/chrome.manifest $h/my_extension/install.rdf
+
+ +

Więcej wskazówek na temat tego jak przygotowywać środowisko programistyczne można znaleźć w artykule Przygotowanie środowiska programowania rozszerzenia.

+ +

Tworzenie manifestu instalacji

+ +

Otwieramy plik install.rdf, który utworzyliśmy w głównym katalogu rozszerzenia i wpisujemy tam:

+ +
<?xml version="1.0"?>
+
+<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:em="http://www.mozilla.org/2004/em-rdf#">
+
+  <Description about="urn:mozilla:install-manifest">
+    <em:id>sample@foo.net</em:id>
+    <em:version>1.0</em:version>
+    <em:type>2</em:type>
+
+    <!-- Target Application this extension can install into,
+         with minimum and maximum supported versions. -->
+    <em:targetApplication>
+      <Description>
+        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
+        <em:minVersion>1.0+</em:minVersion>
+        <em:maxVersion>1.5.0.*</em:maxVersion>
+      </Description>
+    </em:targetApplication>
+
+    <!-- Front End MetaData -->
+    <em:name>Sample!</em:name>
+    <em:description>A test extension</em:description>
+    <em:creator>Your Name Here</em:creator>
+    <em:homepageURL>http://www.foo.com/</em:homepageURL>
+  </Description>
+</RDF>
+
+ + + +

Zobacz Manifesty Instalacji, gdzie znajdziesz kompletną listę wymaganych i opcjonalnych właściwości.

+ +

Zapisz plik.

+ +

Rozszerzanie przeglądarki przy użyciu języka XUL

+ +

Interfejs użytkownika w Firefoksie napisany jest w XUL i JavaScript. XUL jest językiem zgodnym z językiem XML, pozwala on na tworzenie elementów interfejsu użytkownika takich jak: przyciski, menu, paski narzędzi itp. Akcje użytkownika są powiązane z funkcjami przy użyciu języka JavaScript.

+ +

Aby rozszerzyć możliwości przeglądarki, zmieniamy interfejs użytkownika poprzez dodanie lub modyfikację kontrolek. Możemy dodać elementy interfejsu poprzez wstawienie nowych elementów DOM XUL do okna przeglądarki i zmodyfikowanie ich poprzez dodanie skryptów i uchwytów zdarzeń.

+ +

Przeglądarka jest zaimplementowana w pliku XUL o nazwie browser.xul ($FIREFOX_INSTALL_DIR/chrome/browser.jar zawiera content/browser/browser.xul). W browser.xul znajdziemy pasek stanu, który wygląda mniej więcej tak:

+ +
<statusbar id="status-bar">
+ ... <statusbarpanel>s ...
+</statusbar>
+
+ +

<statusbar id="status-bar"> jest punktem wiązania dla nakładki XUL.

+ +
Nakładki XUL
+ +

Nakładki XUL są metodą na dołączanie w locie elementów interfejsu XUL do gotowych dokumentów XUL. Nakładka XUL to plik o rozszerzeniu .xul określający fragmenty w języku XUL, które mają zostać dołączone do określonego punktu wiązania w dokumencie głównym. Fragmenty te mogą określać elementy interfejsu, które mają zostać dodane, usunięte lub zmodyfikowane.

+ +

Przykładowy dokument nakładki XUL {{ Ref(1) }}

+ +
<?xml version="1.0"?>
+<overlay id="sample"
+         xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ <statusbar id="status-bar">
+  <statusbarpanel id="my-panel" label="Witaj świecie!"/>
+ </statusbar>
+</overlay>
+
+ +

Element <statusbar> nazwany status-bar określa "punkt wiązania" w oknie przeglądarki, do którego chcemy się podpiąć.

+ +

Element podrzędny ("dziecko") <statusbarpanel> jest nowym elementem interfejsu, który chcemy wstawić wewnątrz elementu będącego punktem wiązania.

+ +

Skopiuj przykładowy kod podany powyżej i zapisz go w pliku o nazwie sample.xul wewnątrz katalogu chrome/content, który wcześniej utworzyłeś.

+ +

Aby dowiedzieć się więcej na temat wiązania elementów interfejsu i modyfikowania interfejsu użytkownika przy zastosowaniu Nakładek, czytaj dalej.

+ +

Chrome URI

+ +

Pliki XUL są częścią "Pakietów Chrome" - paczek komponentów interfejsu użytkownika, które są ładowane przy użyciu URI chrome://. Zamiast ładować przeglądarkę z dysku używając URI file:// (ponieważ położenie Firefoksa w systemie może się zmieniać w zależności od platformy i systemu), twórcy Firefoksa wymyślili w jaki sposób tworzyć URI dla zawartości plików XUL, o których wie zainstalowana aplikacja.

+ +

URI dla okna przeglądarki to: chrome://browser/content/browser.xul Spróbuj wpisać to URI do paska adresu w Firefoksie!

+ +

Chrome URI składa się z kilku części:

+ + + +

Tak więc, chrome://foo/skin/bar.png ładuje plik bar.png z sekcji skin rozszerzenia foo.

+ +

Kiedy ładujesz zawartość używając Chrome URI, Firefox używa rejestru Chrome do przetłumaczenia tych identyfikatorów URI na właściwe pliki źródłowe na dysku (lub w archiwach JAR).

+ +

Tworzenie Manifestu Chrome

+ +

Więcej informacji o manifeście Chrome i obsługiwanych przez niego właściwościach znajdziesz w dokumentacji Manifestu Chrome.

+ +

Otwórz plik o nazwie chrome.manifest, który stworzyłeś obok katalogu chrome w głównym katalogu rozszerzenia.

+ +

Dodaj poniższy kod:

+ +
content     sample    chrome/content/
+
+ +

(Nie zapomnij o ukośnikach "/"! Bez nich pakiet nie zostanie zarejestrowany.)

+ +

Dane w pliku określają:

+ +
    +
  1. typ zawartości przechowywanej w pakiecie chrome,
  2. +
  3. nazwę pakietu chrome (używaj wyłącznie małych liter w nazwie rozszerzenia ("sample"), ponieważ Firefoks/Thunderbird nie obsługuje mieszanych wielkości liter w wersji 2 oraz wcześniejszych - {{ Bug(132183) }}),
  4. +
  5. położenie plików pakietu chrome.
  6. +
+ +

Zatem powyższa linia informuje, że dla pakietu sample możemy znaleźć pliki zawierające dane typu content (zawartość) w lokalizacji chrome/content, podanej względem położenia pliku chrome.manifest.

+ +

Zauważ, że pliki zawartości, lokalizacji i motywu muszą być zawarte wewnątrz folderów content, locale oraz skin wewnątrz twojego podkatalogu chrome.

+ +

Zapisz plik. Kiedy załadujesz Firefoksa z twoim rozszerzeniem (dalej w tym przewodniku), ten plik umożliwi zarejestrowanie Twojego pakietu chrome.

+ +

Rejestrowanie nakładki

+ +

Chcemy, aby Firefox łączył Twoją nakładkę z oknem przeglądarki, zawsze gdy jest ono wyświetlane. Dodaj tą linię do twojego pliku chrome.manifest :

+ +
overlay chrome://browser/content/browser.xul chrome://sample/content/sample.xul
+
+ +

Mówi ona Firefoksowi, żeby połączył sample.xul i browser.xul, gdy browser.xul jest ładowany.

+ +

Test

+ +

Po pierwsze, musimy powiedzieć przeglądarce Firefox o Twoim rozszerzeniu. W starych, złych czasach Firefoksa 1.0 oznaczało to spakowanie rozszerzenia jako XPI i zainstalowanie go przez interfejs użytkownika, co było naprawdę nieprzyjemne. Teraz jest to znacznie prostsze.

+ +
    +
  1. Otwórz swój folder profilu,
  2. +
  3. Otwórz folder extensions (stwórz go, jeśli nie istnieje),
  4. +
  5. Stwórz nowy plik tekstowy i umieść w nim ścieżkę do folderu twojego rozszerzenia, np. C:\extensions\myExtension\ lub ~/extensions/myExtension. Zapisz plik z identyfikatorem twojego rozszerzenia jako jego nazwą, np. sample@foo.net.
  6. +
+ +

(Nie zapomnij o ukośniku "/"! Bez niego rozszerzenie nie zostanie zarejestrowane.)

+ +

Teraz jesteś gotowy do testowania swojego rozszerzenia!

+ +

Uruchom Firefoksa. Firefox wykryje plik z odnośnikiem do katalogu Twojego rozszerzenia i zainstaluje rozszerzenie. Kiedy pojawi się okno przeglądarki, powinieneś zobaczyć tekst "Witaj świecie!" z prawej strony paska statusu.

+ +

Możesz teraz wrócić i zmienić plik .xul, uruchomić ponownie Firefoksa - zmiany powinny się pojawić.

+ +<center> +

grafika:Helloworld_status_bar.PNG

+ +

grafika:Helloworld_extensions_wnd.PNG

+</center> + +

Pakowanie

+ +

Teraz, gdy twoje rozszerzenie działa, możesz je spakować w celu umożliwienia dystrybucji i instalacji.

+ +

Spakuj jako archiwum zip zawartość katalogu rozszerzenia (nie sam folder rozszerzenia) i zmień rozszerzenie pliku zip na rozszerzenie .xpi. W Windows XP możesz to łatwo zrobić przez zaznaczenie wszystkich plików i podfolderów w katalogu rozszerzenia, kliknięcie prawym przyciskiem myszy i wybranie "Wyślij do -> Folder skompresowany (zip)". Plik .zip zostanie utworzony. Teraz tylko zmień nazwę i gotowe!

+ +

Teraz wgraj plik .xpi na serwer i upewnij się, że jest obsługiwany jako application/x-xpinstall. Możesz podlinkować plik i umożliwić ludziom ściąganie i instalowanie Twojego rozszerzenia w Firefoksie.

+ +

Zastosowanie addons.mozilla.org

+ +

Mozilla Update jest witryną służącą do rozpowszechniania rozszerzeń, gdzie możesz umieścić swoje rozszerzenie za darmo. Rozszerzenie będzie przechowywane w sieci mirrorów Mozilli gwarantując możliwość ściągnięcia go, nawet jeżeli będzie ono bardzo popularne. Witryna Mozilli umożliwia także użytkownikom łatwiejszą instalację i automatyczne uaktualnienia do nowych wersji po ich udostępnieniu przez Ciebie. W dodatku Mozilla Update pozwala użytkownikom komentować i dostarczać opinie na temat twojego rozszerzenia. Rozpowszechnianie swoich rozszerzeń za pomocą Mozilla Update jest bardzo zalecane!

+ +

Odwiedź http://addons.mozilla.org/developers/, załóż konto i zacznij rozpowszechnianie swoich rozszerzeń!

+ +

Uwaga: Twoje rozszerzenie może być szybciej udostępnione i częściej ściągane, jeśli masz jego dobry opis i ekranowe zrzuty rozszerzenia w akcji.

+ +

Rejestrowanie rozszerzeń w rejestrze Windows

+ +

W systemie Windows informacja o rozszerzeniach może być dodana do rejestru, wtedy rozszerzenia będą automatycznie instalowane następnym razem, gdy aplikacja (Firefox/Thunderbird) uruchamia się. To umożliwia instalatorom innych aplikacji łatwe integrowanie się z Firefoksem i innymi aplikacjami Mozilli poprzez rozszerzenia. Zobacz Dodawanie rozszerzeń poprzez rejestr systemu Windows w celu uzyskania dalszych informacji.

+ +

Więcej o nakładkach XUL

+ +

Poza dołączaniem kontrolek interfejsu użytkownika do punktów łączenia możesz użyć fragmentów XUL w Nakładkach do:

+ + + +
<statusbarpanel position="1" .../>
+
+<statusbarpanel insertbefore="other-id" .../>
+
+<statusbarpanel insertafter="other-id" .../>
+
+ +

Tworzenie nowego komponentu interfejsu użytkownika

+ +

Możesz tworzyć swoje własne okna i okienka dialogowe jako oddzielne pliki .xul, dostarczać nową funkcjonalność poprzez implementację akcji w plikach .js, używać metod DOM do manipulowania kontrolkami interfejsu użytkownika. Możesz używać stylów w plikach .css do dołączania obrazków, ustawiania kolorów itp.

+ +

Zobacz dokumentację XUL, znajdziesz w niej więcej zasobów dla programistów XUL.

+ +

Pliki domyślne

+ +

Domyślne pliki, których używasz do stworzenia profilu użytkownika powinny być umieszczone w katalogu defaults/ w głównym folderze hierarchii katalogów Twojego rozszerzenia. Pliki domyślnych preferencji .js powinny być przechowywane w defaults/preferences/ - kiedy umieścisz je tutaj, będą one automatycznie ładowane przez system preferencji Firefoksa podczas startu tak, że będziesz miał do nich dostęp używając Preferencji API.

+ +

Przykładowy plik domyślny preferencji:

+ +
pref("extensions.sample.username", "Joe"); //tekst
+pref("extensions.sample.sort", 2); //liczba
+pref("extensions.sample.showAdvanced", true); //wartość logiczna
+
+ +

Komponenty XPCOM

+ +

Firefox obsługuje komponenty XPCOM w rozszerzeniach. Możesz łatwo stworzyć swoje własne komponenty w JavaScript lub C++ (używając SDK Gecko).

+ +

Wszystkie pliki .js lub .dll umieszczamy w katalogu components/ - zostaną one automatycznie zarejestrowane przy pierwszym uruchomieniu Firefoksa po instalacji rozszerzenia.

+ +

Aby uzyskać więcej informacji, zobacz Jak stworzyć komponent XPCOM w Javascripcie, Jak stworzyć binarny komponent XPCOM używając Visual Studio oraz Tworzenie komponentów XPCOM.

+ +

Linia poleceń aplikacji

+ +

Jednym z możliwych zastosowań komponentów XPCOM wykonanych specjalnie do tego celu jest dodanie agenta linii poleceń do Firefoksa lub Thunderbirda. Możesz użyć tej techniki do uruchamiania swojego rozszerzenia jako aplikacji:

+ +
 firefox.exe -myapp
+
+ +

Zobacz Chrome:Linia poleceń i dyskusję na forum, aby poznać szczegóły.

+ +

Lokalizacja

+ +

Dla obsługi więcej niż jednego języka, powinieneś rozdzielić teksty napisów od reszty zawartości Twojego rozszerzenia używając do tego encji i plików własności. Dużo łatwiej zrobić to podczas tworzenia rozszerzenia niż wracać do tego później.

+ +

Informacje o lokalizacji dla Twojego rozszerzenia są przechowywane w katalogu locale. Na przykład, dla dodania lokalizacji do naszego przykładowego rozszerzenia, stwórz katalog "locale" w chrome (gdzie ulokowany jest katalog "content") i dodaj następującą linię do pliku chrome.manifest:

+ +
locale sample sampleLocale chrome/locale/
+
+ +

Dla stworzenia lokalizowalnej wartości atrybutu w XUL wstaw te wartości do pliku .dtd, który powinien być umieszczony w katalogu locale i wyglądać tak:

+ +
<!ENTITY  button.label     "Click Me!">
+<!ENTITY  button.accesskey "C">
+
+ +

I następnie dołącz go na początku Twojego dokumentu XUL (ale pod "<?xml version"1.0"?>"), tak jak poniżej:

+ +
<!DOCTYPE window SYSTEM "chrome://sample/locale/filename.dtd">
+
+ +

gdzie: window jest wartością atrybutu localName, głównego elementu dokumentu XUL, a wartość własności SYSTEM jest identyfikatorem chrome URI pliku encji. Dla naszego prostego rozszerzenia, głównym elementem jest overlay.

+ +

Aby użyć encji, zmodyfikuj swój kod XUL, tak żeby wyglądał jak ten (poniższa linia musi być zawarta wewnątrz elementu <statusbar id="status-bar"> z poprzedniego przykładu):

+ +
<button label="&button.label;" accesskey="&button.accesskey;"/>
+
+ +

Rejestr Chrome załaduje plik encji z pakietu lokalizacyjnego odpowiadającego wybranej lokalizacji.

+ +

Dla łańcuchów znaków, których używasz w skrypcie, utwórz plik tekstowy .properties, który w każdej linii ma łańcuchy znaków w formacie:

+ +
key=value
+
+ +

i następnie użyj: nsIStringBundleService/nsIStringBundle lub znacznika <stringbundle> w celu załadowania wartości do skryptu.

+ +

Zrozumienie przeglądarki

+ +

Użyj Inspektora DOM (nie jest on częścią Standardowej instalacji Firefoksa; musisz go zainstalować z użyciem instalacji Użytkownika i wybrać Narzędzia programistyczne jeśli nie ma składnika "Inspektor DOM" w menu Narzędzia w twojej przeglądarce) do zbadania okna przeglądarki lub każdego innego okna XUL, które chcesz zmodyfikować.

+ +

Użyj przycisku "Wybierz węzeł do zbadania poprzez kliknięcie na nim" z paska narzędzi położonego u góry na lewo Inspektora DOM do kliknięcia na element (węzeł) w oknie przeglądarki. Kiedy to zrobisz widok drzewa hierarchii DOM w oknie Inspektora DOM przeniesie się na węzeł, na który kliknąłeś.

+ +

Użyj prawego panelu Inspektora DOM w celu znalezienia punktów łączenia z identyfikatorami, których możesz użyć przy wstawianiu swoich elementów z nakładek. Jeśli nie możesz znaleźć elementu z identyfikatorem, do któregoś mógłbyś się podłączyć, być może będziesz musiał dołączyć skrypt do swojej nakładki i wstawiać swoje elementy, kiedy zdarzenie load zostanie odpalone w głównym oknie XUL.

+ +

Debugowanie rozszerzeń

+ +

Analityczne narzędzia do debugowania

+ + + +

Debugowanie printf

+ + + +

Zaawansowane debugowanie

+ + + +

Szybki start

+ +

Możesz zastosować narzędzie Kreator rozszerzeń do generowania prostych rozszerzeń, które potem możesz modyfikować.

+ +

Rozszerzenie Hello World podobne do tych, które można wygenerować Kreatorem Rozszerzeń jest opisane linijka po linijce w innym przewodniku MozillaZine Knowledge Base.

+ +

Dalsze informacje

+ +
* Rozszerzenia - FAQ
+* Rozszerzenia
+
+ +
+

{{ Note(1) }}Dwie uwagi do tego punktu:

+ + diff --git a/files/pl/web/accessibility/aria/aplikacje_internetowe_i_aria_faq/index.html b/files/pl/web/accessibility/aria/aplikacje_internetowe_i_aria_faq/index.html new file mode 100644 index 0000000000..35510946d6 --- /dev/null +++ b/files/pl/web/accessibility/aria/aplikacje_internetowe_i_aria_faq/index.html @@ -0,0 +1,299 @@ +--- +title: Aplikacje internetowe i ARIA FAQ +slug: Web/Accessibility/ARIA/Aplikacje_internetowe_i_ARIA_FAQ +tags: + - ARIA +translation_of: Web/Accessibility/ARIA/Web_applications_and_ARIA_FAQ +--- +

Czym jest ARIA?

+ +

WAI-ARIA z angielskiego Accessible Rich Internet Applications (ARIA) dokumentacja stworzona przez Web Accessibility Initiative (WAI) z inicjatywy W3C. ARIA dostarcza sposób aby tworzyć aplikacje internetowe, lepiej dostępne dla osób zmagającymi się z różnorakimi problemami, włącznie z tymi, którzy muszą korzystać z dodatkowych narzędzi, które umożliwiają im użytkowanie stron internetowych takich jak: czytniki ekranowe czy szkła powiększające.

+ +

ARIA dostarcza semantykę opisującą role (eng. roles), statusy (eng. states) oraz funkcjonalności dla wielu komponentów stron internetowych takich jak: nawigacje (menu), slajdery, okna dialogowe czy drzewa rozwijane (częściej występujące w aplikacjach desktopowych). Dostarcza również informacje strukturalne, które pomagają twórcom identyfikować odpowiednie komponenty. ARIA pozwala dynamicznym aplikacjom internetowym opartym o JavaScript na interpolację z technologiami pochodzenia desktopowego.

+ +

Po więcej informacji na temat ARIA, przejdź do: Overview of accessible web applications and widgets. (TBD Polish translation).

+ +

Wsparcie dla ARIA

+ +

ARIA jest relatywnie młodą specyfikacją ale jest coraz lepiej wspierana. Posiada wsparcie głównych przeglądarek, technologii wspomagających, narzędzi JavaScript oraz aplikacji. Jednakże część użytkowników może wciąż używać starszych wersji tych narzędzi czy aplikacji. W takim przypadku możesz rozważyć implementację ARIA ulepszając swoją aplikację progresywnie, na przykład przy użyciu JavaScript, zamiast znaczników HTML w celu lepszego wsparcia dla użytkowników wciąż kożystających ze starych technologii.

+ +

Przeglądarki

+ +

ARIA posiada wsparcie następujacych przeglądarek:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NazwaWersja minimumInformacja dodatkowa
Firefox3.0+Działa z NVDA, JAWS 10+ i Orca
Chrome15+Czytniki ekranowe mogą mieć problem z Chrome 15 i starszymi
Safari4+Działa z VoiceOver od iOS5 oraz OS X Lion
Opera9.5+Wymaga VoiceOver na OS X w początkowych wersjach
Internet Explorer8+Działa z JAWS 10+ i NVDA.
+ +

W niektórych przypadkach, we wczesnych wersjach przeglądarek, wsparcie ARIA może być ograniczone, po bardziej dokładne informacje udaj się na:

+ + + +

Technologie wspomagające

+ +

Technologie wspomagające coraz częściej wspierają ARIA. Między innymi:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Nazwa TechnologiiWersja minimum, podstawowe wsparcie ARIAWersja minimum dla live region i alert support
NVDA2010.2
+ (NVDA is always a free upgrade)
2011.1 dla Firefox, brak wsparcia live region dla IE z dniem 2011.2.
Orca? (TBD)? (TBD)
VoiceOverOSX 10.5,
+ iOS 4
OS X 10.7
+ iOS 5
JAWS810
Window-Eyes7? (TBD)
ZoomText?? (TBD)
+ +

Wczesne wersje tych narzędzi często mają częściową implementację ARIA lub zawierającą błędy.

+ +

Na temat wsparcia JAWS dla ARIA, przeczytaj artykuł Paciello Group: JAWS Support for ARIA.

+ +

Narzędzia JavaScript

+ +

Role (roles), statusy (states), właściwości (properties) zostały dodane do wielu popularnych narzędzi JavaScript do tworzenia komponentów webowych, między innymi:

+ + + +

Po więcej informacji na temat dostępności ARIA w narzędziach JavaScript, przeczytaj:

+ + + +

ARIA w akcji

+ +

Przykład atrybutu ARIA dla paska postępu:

+ +
<div id="percent-loaded" role="progressbar" aria-valuenow="75" aria-valuemin="0" aria-valuemax="100" />
+ +

Ten pasek postępu jest zbudowany z <div> z atrybutami ARIA określającymi role i właściwości. W tym przykładzie role="progressbar" daje informację przeglądarce, że działanie paska postępu jest sterowane w JavaScript. Atrybuty aria-valuemin oraz aria-valuemax określają minimalną i maksymalną wartość dla paska postępu, a aria-valuenow opisuje aktualny jego status.

+ +

Atrybuty ARIA umieszczone wewnątrz tagu HTML mogą być dodawane i aktualizowane w JavaScript, kod poniżej:

+ +
// Szukam elementu <div> w DOM.
+var progressBar = document.getElementById("percent-loaded");
+
+// Ustawiam role i statusy ARIA, aby technologie pomocnicze miały informację na temat komponentu.
+progressBar.setAttribute("role", "progressbar");
+progressBar.setAttribute("aria-valuemin", 0);
+progressBar.setAttribute("aria-valuemax", 100);
+
+// Tworzę funkcję aktualizującą pasek postępu,
+// którą następnie wywołam w odpowiednim miejscu aby zaktualizować pasek postępu
+function updateProgress(percentComplete) {
+  progressBar.setAttribute("aria-valuenow", percentComplete);
+}
+ +

Czy ARIA zmieni styl mojej strony lub działanie?

+ +

Nie. ARIA jest przeznaczona tylko dla API technologi pomocniczych (assistive technologies), nie ma wpływu na DOM czy style. ARIA jest tylko dodatawanym do elementu HTML przez developera atrybutem, który ma wspomóc AT API (assistive technologi API). Mimo, że sama ARIA nie zmienia stylów to w połączeniu z atrybutem HTML, możemy odpowiednio stylować elementy ARIA w CSS:

+ +
.tab-panel[aria-hidden="true"] {
+  display: none;
+  }
+
+.tab-panel[aria-hidden="false"] {
+  display: block;
+  }
+
+ +

Co z walidacją?

+ +

Nowe atrybuty ARIA, jak role czy prefiks aria- nie są oficjalnie częścią specyfikacji HTML 4 czy XHTML 4. Przez co mogą nie przechodzić walidacji W3C: W3C's Markup Validator.

+ +

Jednym z rozwiązań tego problemu jest umieszczenie roli i statusów ARIA przy pomocy JavaScript jak zostało pokazane w powyższym przykładzie ARIA w akcji. Strona teoretycznie będzie niezgodna ze standardem ale przejdzie walidację.

+ +

Problem rozwiązuje się w HTML5, który zawiera wbudowane wsparcie dla ARIA. Walidator W3C's HTML5 znajdzie nawet nieprawidłowe użycie ARIA na stronie HTML5.

+ +

Co w związku z HTML5 i ARIA?

+ +

HTML5 przedstawia wiele nowych tagów. Kilka z nich dotyczy bezpośrednio roli ARIA, jak na przykład nowy element <progress>. W przypadkach gdy przeglądarka wspiera tag HTML5 to również dotyczy ARIA, w takich przypadkach zazwyczaj nie ma potrzeby dodawania ról i statusów do elementu. ARIA zawiera jednak wiele ról, statusów i właściwości, które nie są dostępne w HTML5. W takim przypadku developer HTML5 może z nich korzystać. Po więcej informacji można się udać do artykułu Steve'a Faulkner'a o relacji HTML5 i ARIA.

+ +

Łagodne zejście z HTML5 do ARIA

+ +

Przy tworzeniu aplikacji kompatybilnej HTML5 możesz zastosować w swoim kodzie łagodne zejście do ARIA w przypadku braku wsparcia dla przeglądarku. Używając przykładu z paskiem postępu, zastosować łagodne zejście, gdy tag <progressbar> nie jest wspierany.

+ +

Przykład markupu HTML5 dla paska postępu:

+ +
<!DOCTYPE html>
+<html>
+  <head><title>Gracefully degrading progress bar</title></head>
+  <body>
+    <progress id="progress-bar" value="0" max="100">0% complete</progress>
+    <button id="update-button">Update</button>
+ </body>
+</html>
+
+ +

... i kod JavaScript zapewniający wsparcie dla starszych przeglądarek:

+ +
var progressBar = document.getElementById("progress-bar");
+
+// Sprawdza wsparcie tagu <progress> dla przeglądarki.
+var supportsHTML5Progress = (typeof (HTMLProgressElement) !== "undefined");
+
+function setupProgress() {
+  if (!supportsHTML5Progress) {
+    // HTML5 <progress> nie jest wspierany więc dodaje.
+    // ARIA role i statusy do elementu.
+    progressBar.setAttribute("role", "progressbar");
+    progressBar.setAttribute("aria-valuemin", 0);
+    progressBar.setAttribute("aria-valuemax", 100);
+  }
+}
+
+function updateProgress(percentComplete) {
+  if (!supportsHTML5Progress) {
+    // HTML5 <progress> nie jest wspierany przez przeglądarkę,
+    // więc musimy zaktualizować aria-valuenow atrybut
+    progressBar.setAttribute("aria-valuenow", percentComplete);
+  } else {
+    // HTML5 <progress> jest wspierany, więc aktualizujemy atrybut value.
+    progressBar.setAttribute("value", percentComplete);
+  }
+
+  progressBar.textContent = percentComplete + "% complete";
+}
+
+function initDemo() {
+  setupProgress(); // Instalacja paska postępu.
+
+  // Dodajemy click handler do przycisku, który zaktualizuje pasek postępu do 75%.
+  document.getElementById("update-button").addEventListener("click", function (e) {
+    updateProgress(75);
+    e.preventDefault();
+  }, false);
+}
+initDemo();
+
+ +

Jak działają technologie pomocnicze (assistive technologies)?

+ +

Technologie pomocnicze używają używają API wbudowane w każdy system operacyjny, zaprojektowane tak aby opisywać role, statusy oraz strukturę interfejsu użytkownika. Na przykład: czytnik ekranu używa API do czytania interfejsu użytkownika przy pomocy silnika text-to-speech (tekst do mowy), a szkło powiększające używa go do uwyraźnienia  ważnych elementów na ekranie,  klawiatura ekranowa może używać API aby dostosować się do aktualnego kontekstu lub interfejsu. Technologie pomocnicze często korzystają z DOM przez API, aby najlepiej zrozumieć semantykę i atrybuty na stronie.

+ +

ARIA jest mostem pomiędzy DOM a desktopem. Przeglądarki wskazują elementy ARIA do API technologii pomocniczych aby wyglądały jak komponenty natywne. W rezultacie użytkownik dostaje bardziej zwarty UX, gdzie komponenty JavaScript można porównywać do odpowiedników desktopowych.

+ +

Jak można przetestować ARIA? Są do tego darmowe narzędzia?

+ +

Istnieją narzędzia do sprawdzania i debugowania ARIA:

+ + + +

Są również darmowe open source'owe czytniki ekranu, które mogą być użyte do testowania ARIA:

+ + + +

Kiedy testujesz ARIA pamiętaj:

+ +
    +
  1. Nieformalne testowanie przy pomocy czytników ekranu, nigdy nie zastąpi informacji zwrotnej, testowania i pomocy prawdziwych użytkowników
  2. +
  3. Czytniki ekranu to nie wszystko. Spróbuj testować przy pomocy różnych metod użyczyteczności i dostępności.
  4. +
+ +

Inne pomocne narzędzia i techniki testowania ARIA:

+ + + +

Gdzie można pogadać i dopytać o ARIA?

+ + + +

Gdzie się więcej dowiem o ARIA?

+ + diff --git a/files/pl/web/accessibility/aria/index.html b/files/pl/web/accessibility/aria/index.html new file mode 100644 index 0000000000..55e431478e --- /dev/null +++ b/files/pl/web/accessibility/aria/index.html @@ -0,0 +1,127 @@ +--- +title: ARIA +slug: Web/Accessibility/ARIA +tags: + - ARIA + - Accessibility + - NeedsTranslation + - TopicStub + - Web +translation_of: Web/Accessibility/ARIA +--- +

Accessible Rich Internet Applications (ARIA) jest zbiorem atrybutów, które umożliwiają rozwój aplikacji webowych (szczególnie tych, które wykorzystują AJAX, Javascript itp.) w taki sposób, iż są one przyjaźniejsze ludziom z niepełnosprawnościami.  Dla przykładu, ARIA umożliwia bezproblemową nawigację po stronie, pomoce przy typowaniu, przyjazne użytkownikowi aktualizacje treści, i wiele, wiele więcej.

+ +

ARIA jest zbiorem specjalnych atrybutów poprawiajacych dostępność aplikacji, które mogą zostać dodane do dowolnego języka znaczników. Jednakże atrybuty te są przystosowane głównie pod HTML, co powoduje, iż są one wyłącznie tam stosowane.
+ Atrybut role definiuje specjalne role dla obiektów (takich jak article , alert , slider , czy button ). Dodatkowo atrubuty ARIA dostarczają inne przydatne opcje, takie jak opis do form , albo właściwą długość pasku postępu (np. instalacji, aktualizacji lub innego działania). Atrybuty aria moga także zostać użyte w celu aktywacji, deaktywacji, czy ustalenia innego stanu obiektów (np. stanu button)
+  

+ +

ARIA jest zaimplementowana w najbardziej popularnych przeglądarkach i czytnikach ekranowych. Jednakże, implementacje różnią się między sobą i starsze technologie mogą takich atrybutów dobrze nie wspierać. Oczywiście jeśli w ogóle wspierają.

+ +
+

Note: Please contribute and make ARIA better for the next person! Not enough time? Send suggestions to Mozilla's accessibility mailing list, or #accessibility IRC channel.

+
+ +
+
+

Zacznij z ARIĄ

+ +
+
Instrukcje do ARI
+
A quick introduction to making dynamic content accessible with ARIA. See also the classic ARIA intro by Gez Lemon, from 2008.
+
Web Applications and ARIA FAQ
+
Answers common questions about WAI-ARIA and why it's needed to make web applications accessible.
+
Videos of Screen Readers Using ARIA
+
See both real and simplified examples from around the web, including "before" and "after" ARIA videos.
+
Using ARIA in HTML
+
A practical guide for developers. It suggests what ARIA attributes to use on HTML elements. Suggestions are based on implementation realities.
+
+ +

Simple ARIA Enhancements

+ +
+
Enhancing Page Navigation with ARIA Landmarks
+
A nice intro to using ARIA landmarks to improve web page navigation for screen reader users. See also, ARIA landmark implementation notes and examples on real sites (updated as of July 2011).
+
Improving Form Accessibility
+
ARIA is not just for dynamic content! Learn how to improve accessibility of HTML forms using additional ARIA attributes.
+
Live regions (work-in-progress)
+
Live regions provide suggestions to screen readers about how to handle changes to the contents of a page.
+
Using ARIA Live Regions to Announce Content Changes
+
A quick summary of live regions, by the makers of JAWS screen reader software. Live regions are also supported by NVDA with Firefox, and VoiceOver with Safari.
+
+ +

ARIA for Scripted Widgets

+ +
+
Keyboard Navigation and Focus for JavaScript Widgets
+
The first step in developing an accessible JavaScript widget is to make it keyboard navigable. This article steps through the process. The Yahoo! focus management article is a great resource as well.
+
Style Guide for Keyboard Navigation
+
A challenge with ARIA is getting developers to implement consistent behavior — clearly best for users. This style guide describes the keyboard interface for common widgets.
+
+ +

ARIA Resources

+ +
+
Widget Techniques, Tutorials, and Examples
+
Need a slider, a menu, or another kind of widget? Find resources here.
+
ARIA-Enabled JavaScript UI Libraries
+
If you're starting a new project, choose a UI widget library with ARIA support already built-in. Warning: this is from 2009 — content should be moved to an MDN page where it can be updated.
+
+
+ +
+

Mailing List

+ +
+
Free ARIA Google Group
+
A place to ask questions about ARIA, as well as make suggestions for improving the ARIA documentation found on these pages.
+
+ +

Blogs

+ +

ARIA information on blogs tends to get out of date quickly. Still, there is some great info out there from other developers making ARIA work today.

+ +

Paciello Group

+ +

Accessible Culture

+ +

Filing Bugs

+ +

File ARIA bugs on browsers, screen readers, and JavaScript libraries.

+ +

Examples

+ +
+
ARIA Examples Library
+
A set of barebones example files which are easy to learn from.
+
Accessible JS Widget Library Demos
+
jQuery, YUI
+
Yahoo! Mail
+
Yahoo! puts it all together with Yahoo! Mail, a web app that almost looks like a native app. It works very well. As a review of Yahoo! Mail by screen reader Marco Zehe says, "Keep up the good work!".
+
Yahoo! Search
+
Yahoo! has done an amazing job of advancing ARIA here, by exercising ARIA's full capabilities and sharing their techniques. Yahoo! Search uses a combination of ARIA landmarks, live regions, and widgets.
+
+ +

Standardization Efforts

+ +
+
WAI-ARIA Activities Overview at W3C
+
Authoritative Overview of WAI-ARIA Standardization efforts by the Web Accessibility Initiative (WAI)
+
WAI-ARIA Specification
+
The W3C specification itself, useful as a reference. Note that, at this stage, it is important to test compatibility, as implementations are still inconsistent.
+
WAI-ARIA Authoring Practices
+
+

Like the W3C WAI-ARIA specification, the official best practices represents a future ideal — a day when authors can rely on consistent ARIA support across browsers and screen readers. The W3C documents provide an in-depth view of ARIA.

+ +

For now, web developers implementing ARIA should maximize compatibility. Use best practices docs and examples based on current implementations.

+
+
Open AJAX Accessibility Task Force
+
The Open AJAX effort centers around developing tools, sample files, and automated tests for ARIA.
+
Under Construction: WCAG 2.0 ARIA Techniques
+
The community needs a complete set of WCAG techniques for WAI-ARIA + HTML, so that organizations can be comfortable claiming their ARIA-enabled content is WCAG compliant. This is important when regulations or policies are based on WCAG.
+
+
+
+ + + +

Accessibility, AJAX, JavaScript

diff --git a/files/pl/web/api/attr/index.html b/files/pl/web/api/attr/index.html new file mode 100644 index 0000000000..8088fae8a9 --- /dev/null +++ b/files/pl/web/api/attr/index.html @@ -0,0 +1,164 @@ +--- +title: Attr +slug: Web/API/Attr +tags: + - API + - DOM +translation_of: Web/API/Attr +--- +
{{APIRef("DOM")}}
+ +

Interfejs Attr reprezentuje jeden z atrybutów elementu DOM jako obiekt.W większości metod DOM otrzymujesz wartość atrybutu bezpośrednio jako ciąg znaków (np., {{domxref("Element.getAttribute()")}}), oprócz niektórych funkcji (np., {{domxref("Element.getAttributeNode()")}}) lub sposobów iteracji zwracających typ Attr.

+ +

{{InheritanceDiagram}}

+ +
Warning: Poczynając od Gecko 7.0 {{geckoRelease("7.0")}}, pojawia się szereg przestarzałych właściwości i metod wyświetlających ostrzeżenia w konsoli.  Powinieneś odpowiednio przejrzeć swój kod. Zobacz  Przestarzałe właściwości i metody aby zobacyć pełną listę.
+ +

Właściwości

+ +
+
{{domxref("Attr.name", "name")}} {{readOnlyInline}}
+
Nazwa atrybutu.
+
{{domxref("Attr.namespaceURI", "namespaceURI")}} {{readOnlyInline}}
+
{{domxref("DOMString")}} reprezentujący przestrzeń nazw URI atrybutu lub null jeśli nie ma określonej przestrzeni nazw.
+
{{domxref("Attr.localName", "localName")}} {{readOnlyInline}}
+
{{domxref("DOMString")}} reprezentujący lokalną część kwalifikowanej przestrzeni nazw atrybutu.
+
{{domxref("Attr.prefix", "prefix")}} {{readOnlyInline}}
+
{{domxref("DOMString")}} reprezentujący prefiks przestrzeni nazw atrybutu lub null jeśli nie określono prefiksu.
+
{{domxref("Attr.ownerElement", "ownerElement")}} {{readOnlyInline}}
+
+

Element posiadający atrybut.

+ +
+

Note: DOM Level 4 usunął tę właściwość. Założono, że skoro otrzymujesz  Attr z  {{domxref("Element")}}, powinieneś znać powiązany element.
+ Ponieważ nie jest to prawdą w przypadkach, takich jak obiekty Attr zwracane przez {{domxref("Document.evaluate")}}, DOM Living Standard wprowadził tę właściwość ponownie.

+ +

Gecko wyświetla notę o deprecjonowaniu poczynając od Gecko 7.0 {{geckoRelease("7.0")}}. Nota została usunięta w in Gecko 49.0 {{geckoRelease("49.0")}}.

+
+
+
{{domxref("Attr.specified", "specified")}} {{readOnlyInline}}
+
Ta właściwosć zawsze zwraca true. Pierwotnie, zwracała true jeśli właściwość była określona wprost w kodzie źródłowym lub poprzez skrypt a false jeśli była domyślna lub określona w DTD.
+
{{domxref("Attr.value", "value")}}
+
Wartość atrybutu.
+
+ +
+

Note: DOM Level 3 zdefiniował namespaceURI, localName i prefix w interfejsie{{domxref("Node")}}. W DOM4 zostały przeniesione do Attr.

+ +

Ta zmiana została zaimplementowana w Chrome 46.0 i Firefox od wersji 48.0.

+
+ +

Przestarzałe właściwości i metody

+ +

Następujące właściwości są przestarzałe. Kiedy to możliwe, odpowiednie zastępcze właściwości są podane.

+ +
+
attributes
+
Obecnie zawsze zwraca NULL.
+
childNodes {{obsolete_inline(14)}}
+
Ta właściwość obecnie zawsze zwraca pusty {{domxref("NodeList")}}.
+
firstChild {{obsolete_inline(14)}}
+
Obecnie zawsze zwraca NULL.
+
isId {{readOnlyInline}}
+
Wskazuje czy atrybut jest atrybutem "ID". An "ID" jest atrybutem, którego wartość powinna być unikalna w całym dokumencie DOM. W HTML DOM, "id" to atrybut ID, ale XML może definiować inne. To, czy atrybut jest unikalny, czy nie, jest często determinowane przez {{Glossary("DTD")}} lub inny schemat dokumentu.
+
lastChild {{obsolete_inline(14)}}
+
Obecnie zawsze zwraca NULL.
+
nextSibling
+
Obecnie zawsze zwraca NULL.
+
nodeName
+
Zamiast tego używaj {{domxref("Attr.name")}} .
+
nodeType
+
Obecnie zawsze zwraca 2 (ATTRIBUTE_NODE).
+
nodeValue
+
Zamiast tego używaj {{domxref("Attr.value")}}.
+
ownerDocument
+
Nie powinieneś był tego używać, więc prawdopodobnie nie obchodzi cię, że to zniknie.
+
parentNode
+
Obecnie zawsze zwraca NULL.
+
previousSibling
+
Obecnie zawsze zwraca NULL.
+
schemaTypeInfo {{obsolete_inline}} {{readOnlyInline}}
+
Typ informacji powiązane z tym atrybutem. Podczas gdy typ informacji zawierany przez ten atrybut ma gwarantowaną poprawność po waładowaniu dokumentu lub wywołaniu {{domxref("Document.normalizeDocument")}}, ta właściwość może nie być wiarygodna jeśli węzeł został przeniesiony.
+
specified
+
Obecnie zawsze zwraca true.
+
textContent
+
Zamiast tego używaj {{domxref("Attr.value")}}.
+
+ +

Poniższe metody są przestarzałe:

+ +
+
appendChild() {{obsolete_inline(14)}}
+
Zamiast tego, modyfikuj wartość {{domxref("Attr.value")}}.
+
cloneNode()
+
Nie powinieneś był tego używać, więc prawdopodobnie nie obchodzi cię, że to zniknie.
+
createAttribute()
+
Zamiast tego używaj {{domxref("Element.setAttribute()")}}.
+
createAttributeNS()
+
Zamiast tego używaj {{domxref("Element.setAttributeNS()")}}.
+
getAttributeNode()
+
Zamiast tego używaj {{domxref("Element.getAttribute()")}}.
+
getAttributeNodeNS()
+
Zamiast tego używaj {{domxref("Element.getAttributeNS()")}}.
+
hasAttributes() {{obsolete_inline("21.0")}}
+
Obecnie zawsze zwraca false.
+
hasChildNodes()
+
Obecnie zawsze zwraca false.
+
insertBefore()
+
Zamiast tego modyfikuj wartość {{domxref("Attr.value")}}.
+
isSupported()
+
Nie powinieneś był tego używać, więc prawdopodobnie nie obchodzi cię, że to zniknie.
+
isEqualNode()
+
Nie powinieneś był tego używać, więc prawdopodobnie nie obchodzi cię, że to zniknie.
+
normalize()
+
Nie powinieneś był tego używać, więc prawdopodobnie nie obchodzi cię, że to zniknie.
+
removeAttributeNode()
+
Zamiast tego używaj {{domxref("Element.removeAttribute()")}}.
+
removeChild() {{obsolete_inline(14)}}
+
Zamiast tego, modyfikuj wartość {{domxref("Attr.value")}} instead.
+
replaceChild() {{obsolete_inline(14)}}
+
Zamiast tego, modyfikuj wartość {{domxref("Attr.value")}} instead.
+
setAttributeNode()
+
Zamiast tego używaj {{domxref("Element.setAttribute()")}}.
+
setAttributeNodeNS()
+
Zamiast tego używaj {{domxref("Element.setAttributeNS()")}}.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("DOM WHATWG", "#interface-attr", "Attr")}}{{Spec2("DOM WHATWG")}}Przywraca właściwość ownerElement 
{{SpecName("DOM4", "#interface-attr", "Attr")}}{{Spec2("DOM4")}} +
    +
  • Przenosi namespaceURI, prefix i localName z {{domxref("Node")}} do tego API i usuwa ownerElement, schemaTypeInfo oraz isId.
  • +
+
{{SpecName("DOM3 Core", "core.html#ID-637646024", "Attr")}}{{Spec2("DOM3 Core")}}Wstępna definicja
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("api.Attr")}}

diff --git a/files/pl/web/api/audiobuffer/index.html b/files/pl/web/api/audiobuffer/index.html new file mode 100644 index 0000000000..ea611b7250 --- /dev/null +++ b/files/pl/web/api/audiobuffer/index.html @@ -0,0 +1,174 @@ +--- +title: AudioBuffer +slug: Web/API/AudioBuffer +translation_of: Web/API/AudioBuffer +--- +

{{APIRef("Web Audio API")}}

+ +
+

Interfejs AudioBuffer przedstawia krótki zasób dźwiękowy znajdujący się w pamięci, stworzony z pliku dźwiękowego za pomocą metody {{ domxref("AudioContext.decodeAudioData()") }} lub z surowych danych przy użyciu {{ domxref("AudioContext.createBuffer()") }}. Dane audio umieszczone w AudioBuffer mogą być następnie odtwarzane przez przekazanie ich do {{ domxref("AudioBufferSourceNode") }}.

+
+ +

Obiekty tego typu są przeznaczone do przechowywania drobnych fragmentów dźwiękowych, zwykle mniej niż 45s. W przypadku dłuższych dźwięków, obiekty implementujące {{domxref("MediaElementAudioSourceNode")}} są bardziej odpowiednie. Bufor zawiera dane w następującym formacie: IEEE754 32 -bitowy liniowy PCM bez przeplotu o nominalnym zakresie między -1 i +1 , czyli 32-bitowy zmiennoprzecinkowy bufor z próbkami o znormalizowanych wartościach między -1.0 a 1.0. Jeśli {{domxref("AudioBuffer")}} ma wiele kanałów, są one przechowywane w osobnym buforze.

+ +

Właściwości

+ +
+
{{domxref("AudioBuffer.sampleRate")}} {{readonlyInline}}
+
Zwraca wartość typu float reprezentującą częstotliwość próbkowania danych PCM przechowywanych w buforze wyrażoną w próbkach na sekundę.
+
{{domxref("AudioBuffer.length")}} {{readonlyInline}}
+
Zwraca wartość typu int reprezentującą wielkość danych PCM przechowywanych w buforze wyrażoną jako liczba okien próbek.
+
{{domxref("AudioBuffer.duration")}} {{readonlyInline}}
+
Zwraca wartość typu double reprezentującą czas trwania danych PCM zapisanych w buforze wyrażoną w sekundach.
+
{{domxref("AudioBuffer.numberOfChannels")}} {{readonlyInline}}
+
Zwraca wartość typu int reprezentującą liczbę pojedynczych kanałów audio opisanych przez dane PCM zapisanych w buforze.
+
+ +

Metody

+ +
+
{{domxref("AudioBuffer.getChannelData()")}}
+
Zwraca tablicę {{jsxref("Float32Array")}} zawierającą dane PCM powiązane z kanałem audio określonym jako parametr channel (0 reprezentuje pierwszy kanał).
+
{{domxref("AudioBuffer.copyFromChannel()")}}
+
Kopiuje próbki z danego kanału w AudioBuffer do danej tablicy.
+
{{domxref("AudioBuffer.copyToChannel()")}}
+
Kopiuje próbki z danej tablicy do danego kanału w AudioBuffer.
+
+ +

Przykład

+ +

Następujący przykład kodu pokazuje jak stworzyć AudioBuffer i wypełnić go białym szumem. Pełną wersję kodu można znależć w naszym repozytorium audio-buffer demo; jest dostępna także uruchomiona na żywo wersja running live version.

+ +
// Stereo
+var channels = 2;
+
+// Tworzenie pustego, dwusekundowego buffera stereo
+// na wskaźniku audio z AudioContext
+var frameCount = audioCtx.sampleRate * 2.0;
+var myArrayBuffer = audioCtx.createBuffer(channels, frameCount, audioCtx.sampleRate);
+
+button.onclick = function() {
+  // Wypełnienie buffera białym szumem;
+  // Wartość losowa pomiędzy -1.0 a 1.0
+  for (var channel = 0; channel < channels; channel++) {
+    // To daje nam aktualną tablice zawierającą dane
+    var nowBuffering = myArrayBuffer.getChannelData(channel);
+    for (var i = 0; i < frameCount; i++) {
+      // Math.random() znajduje się w przedziale [0; 1.0]
+      // audio musi znajdować się w [-1.0; 1.0]
+      nowBuffering[i] = Math.random() * 2 - 1;
+    }
+  }
+
+  // Dostarczenie AudioBufferSourceNode.
+  // To jest AudioNode dedykowane do używania wtedy, kiedy chcemy odtworzyć dany AudioBuffer
+  var source = audioCtx.createBufferSource();
+
+  // Określanie buffera w AudioBufferSourceNode
+  source.buffer = myArrayBuffer;
+
+  // Podłączanie AudioBufferSourceNode do
+  // destynacji, dzięki czemu możemy usłyszeć dźwięk
+  source.connect(audioCtx.destination);
+
+  // start odtwarzania źródła
+  source.start();
+
+}
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Web Audio API', '#the-audiobuffer-interface', 'AudioBuffer')}}{{Spec2('Web Audio API')}}Definicja wstępna.
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Wsparcie podstawowe14 {{property_prefix("webkit")}}{{CompatGeckoDesktop(25)}}{{CompatNo}}15 {{property_prefix("webkit")}}
+ 22
6 {{property_prefix("webkit")}}
copyFromChannel() and copyToChannel(){{CompatUnknown}}{{CompatGeckoDesktop(27)}}{{CompatNo}}{{CompatUnknown}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaAndroidChromeFirefox Mobile (Gecko)Firefox OSIE PhoneOpera MobileSafari Mobile
Wsparcie podstawowe{{CompatNo}}28 {{property_prefix("webkit")}}{{CompatGeckoMobile(25)}}1.2{{CompatNo}}{{CompatNo}}6 {{property_prefix("webkit")}}
copyFromChannel() and copyToChannel(){{CompatNo}}{{CompatUnknown}}{{CompatGeckoMobile(27)}} {{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/api/audiocontext/createdynamicscompressor/index.html b/files/pl/web/api/audiocontext/createdynamicscompressor/index.html new file mode 100644 index 0000000000..7788cc64a9 --- /dev/null +++ b/files/pl/web/api/audiocontext/createdynamicscompressor/index.html @@ -0,0 +1,142 @@ +--- +title: AudioContext.createDynamicsCompressor() +slug: Web/API/AudioContext/createDynamicsCompressor +translation_of: Web/API/BaseAudioContext/createDynamicsCompressor +--- +

{{ APIRef("Web Audio API") }}

+ +
+

Metoda createDynamicsCompressor() interfejsu domxref("AudioContext") }} jest używana do utworzenia {{domxref("DynamicsCompressorNode")}}, który może być zastosowany do dodawania kompresji na sygnał audio.

+
+ +

Kompresja zcisza najgłośniejsze fragmenty sygnału i podgłaśnia najcichsze. W rezultacie możemy uzyskać głośniejszy, bogatszy i pełniejszy dźwięk. Jest to szczególnie istotne w przypadku gier oraz aplikacji muzycznych, w których duża ilość dźwięków jest odtwarzana jednocześnie oraz tam, gdzie chcesz kontrolować poziom sygnału głównego i unikać zniekształceń sygnału wyjściowego audio.

+ +

Składnia

+ +
var audioCtx = new AudioContext();
+var compressor = audioCtx.createDynamicsCompressor();
+ +

Zwracanie wartości funkcji (return)

+ +

{{domxref("DynamicsCompressorNode")}}.

+ +

Przykład

+ +

Poniższy kod przedstawia przykład prostego zastosowania createDynamicsCompressor() w celu dodania kompresji do ścieżki dźwiękowej. Pełniejszy przykład znajdziesz klikając na nasz przykład podstawowego kompresora (zobacz kod źródłowy).

+ +
// utworzenie MediaElementAudioSourceNode
+// wprowadzenie HTMLMediaElement
+var source = audioCtx.createMediaElementSource(myAudio);
+
+// utworzenie węzła kompresora (compressor node)
+var compressor = audioCtx.createDynamicsCompressor();
+compressor.threshold.value = -50;
+compressor.knee.value = 40;
+compressor.ratio.value = 12;
+compressor.reduction.value = -20;
+compressor.attack.value = 0;
+compressor.release.value = 0.25;
+
+// podłączenie AudioBufferSourceNode do destynacji
+source.connect(audioCtx.destination);
+
+button.onclick = function() {
+  var active = button.getAttribute('data-active');
+  if(active == 'false') {
+    button.setAttribute('data-active', 'true');
+    button.innerHTML = 'Remove compression';
+
+    source.disconnect(audioCtx.destination);
+    source.connect(compressor);
+    compressor.connect(audioCtx.destination);
+  } else if(active == 'true') {
+    button.setAttribute('data-active', 'false');
+    button.innerHTML = 'Add compression';
+
+    source.disconnect(compressor);
+    compressor.disconnect(audioCtx.destination);
+    source.connect(audioCtx.destination);
+  }
+}
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Web Audio API', '#widl-AudioContext-createDynamicsCompressor-DynamicsCompressorNode', 'createDynamicsCompressor()')}}{{Spec2('Web Audio API')}} 
+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + +
CechaChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Wsparcie podstawowe{{CompatChrome(10.0)}}{{property_prefix("webkit")}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(25.0)}} {{CompatNo}}15.0{{property_prefix("webkit")}}
+ 22 (unprefixed)
6.0{{property_prefix("webkit")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
CechaAndroidEdgeFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari MobileChrome for Android
Wsparcie podstawowe{{CompatUnknown}}{{CompatVersionUnknown}}26.01.2{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}33.0
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/api/audiocontext/index.html b/files/pl/web/api/audiocontext/index.html new file mode 100644 index 0000000000..db5d07d69c --- /dev/null +++ b/files/pl/web/api/audiocontext/index.html @@ -0,0 +1,293 @@ +--- +title: AudioContext +slug: Web/API/AudioContext +translation_of: Web/API/AudioContext +--- +

{{APIRef("Web Audio API")}}

+ +
+

Interfejs AudioContext reprezentuje wykres przetwarzania sygnału audio, utworzonego z połączonych ze sobą modułów audio, przy czym każdy z tych modułów reprezentowany jest przez {{domxref("AudioNode")}}. Kontekst audio kontroluje zarówno powstawanie zawartych w nim powiązań, jak również realizację przetwarzania audio lub dekodowania.  Niezbędne jest stworzenie AudioContext przez wprowadzeniem czegokolwiek innego, jako że wszystko dzieje się w kontekście.

+
+ +

AudioCintext może stanowić cel (target) eventów, dlatego implementuje inferfejs {{domxref("EventTarget")}}.

+ +

Konstruktor

+ +
+
{{domxref("AudioContext.AudioContext", "AudioContext()")}}
+
Tworzy i zwraca nowy obiekt AudioContext.
+
+ +

Właściwości

+ +
+
{{domxref("AudioContext.currentTime")}} {{readonlyInline}}
+
Zwraca double reprezentujące stale liczony czas w sekundach, używany do przyporządkowywania. Rozpoczyna się od 0.
+
{{domxref("AudioContext.destination")}} {{readonlyInline}}
+
Zwraca {{domxref("AudioDestinationNode")}} reprezentujące ostateczny cel wszyskich audio w kontekście. Należy traktować go jako urządzenie interpretujące audio.
+
{{domxref("AudioContext.listener")}} {{readonlyInline}}
+
Zwraca obiekt {{domxref("AudioListener")}}, używany do przestrzenności 3D.
+
{{domxref("AudioContext.sampleRate")}} {{readonlyInline}}
+
Zwraca float reprezentujący wskaźnik próbkowania (w samplach na sekundę) używany we wszystkich połączeniach w tym kontekście. Wskaźnik próbkowania {{domxref("AudioContext")}} nie może być zmieniany.
+
{{domxref("AudioContext.state")}} {{readonlyInline}}
+
Zwraca aktualny status AudioContext.
+
{{domxref("AudioContext.mozAudioChannelType")}} {{ non-standard_inline() }} {{readonlyInline}}
+
Używany do zwracania kanału audio, tak by grany dźwięk w {{domxref("AudioContext")}} był poprawnie odtwarzany na urządządzeniu Firefox OS.
+
+ +

Event handlers

+ +
+
{{domxref("AudioContext.onstatechange")}}
+
An event handler that runs when an event of type {{event("statechange")}} has fired. This occurs when the AudioContext's state changes, due to the calling of one of the state change methods ({{domxref("AudioContext.suspend")}}, {{domxref("AudioContext.resume")}}, or {{domxref("AudioContext.close")}}).
+
+ +

Methods

+ +

Also implements methods from the interface {{domxref("EventTarget")}}.

+ +
+
{{domxref("AudioContext.close()")}}
+
Closes the audio context, releasing any system audio resources that it uses.
+
{{domxref("AudioContext.createBuffer()")}}
+
Creates a new, empty {{ domxref("AudioBuffer") }} object, which can then be populated by data and played via an {{ domxref("AudioBufferSourceNode") }}.
+
{{domxref("AudioContext.createConstantSource()")}}
+
Creates a {{domxref("ConstantSourceNode")}} object, which is an audio source that continuously outputs a monaural (one-channel) sound signal whose samples all have the same value.
+
{{domxref("AudioContext.createBufferSource()")}}
+
Creates an {{domxref("AudioBufferSourceNode")}}, which can be used to play and manipulate audio data contained within an {{ domxref("AudioBuffer") }} object. {{ domxref("AudioBuffer") }}s are created using {{domxref("AudioContext.createBuffer")}} or returned by {{domxref("AudioContext.decodeAudioData")}} when it successfully decodes an audio track.
+
{{domxref("AudioContext.createMediaElementSource()")}}
+
Creates a {{domxref("MediaElementAudioSourceNode")}} associated with an {{domxref("HTMLMediaElement")}}. This can be used to play and manipulate audio from {{HTMLElement("video")}} or {{HTMLElement("audio")}} elements.
+
{{domxref("AudioContext.createMediaStreamSource()")}}
+
Creates a {{domxref("MediaStreamAudioSourceNode")}} associated with a {{domxref("MediaStream")}} representing an audio stream which may come from the local computer microphone or other sources.
+
{{domxref("AudioContext.createMediaStreamDestination()")}}
+
Creates a {{domxref("MediaStreamAudioDestinationNode")}} associated with a {{domxref("MediaStream")}} representing an audio stream which may be stored in a local file or sent to another computer.
+
{{domxref("AudioContext.createScriptProcessor()")}}
+
Creates a {{domxref("ScriptProcessorNode")}}, which can be used for direct audio processing via JavaScript.
+
{{domxref("AudioContext.createStereoPanner()")}}
+
Creates a {{domxref("StereoPannerNode")}}, which can be used to apply stereo panning to an audio source.
+
{{domxref("AudioContext.createAnalyser()")}}
+
Creates an {{domxref("AnalyserNode")}}, which can be used to expose audio time and frequency data and for example to create data visualisations.
+
{{domxref("AudioContext.createBiquadFilter()")}}
+
Creates a {{domxref("BiquadFilterNode")}}, which represents a second order filter configurable as several different common filter types: high-pass, low-pass, band-pass, etc.
+
{{domxref("AudioContext.createChannelMerger()")}}
+
Creates a {{domxref("ChannelMergerNode")}}, which is used to combine channels from multiple audio streams into a single audio stream.
+
{{domxref("AudioContext.createChannelSplitter()")}}
+
Creates a {{domxref("ChannelSplitterNode")}}, which is used to access the individual channels of an audio stream and process them separately.
+
{{domxref("AudioContext.createConvolver()")}}
+
Creates a {{domxref("ConvolverNode")}}, which can be used to apply convolution effects to your audio graph, for example a reverberation effect.
+
{{domxref("AudioContext.createDelay()")}}
+
Creates a {{domxref("DelayNode")}}, which is used to delay the incoming audio signal by a certain amount. This node is also useful to create feedback loops in a Web Audio API graph.
+
{{domxref("AudioContext.createDynamicsCompressor()")}}
+
Creates a {{domxref("DynamicsCompressorNode")}}, which can be used to apply acoustic compression to an audio signal.
+
{{domxref("AudioContext.createGain()")}}
+
Creates a {{domxref("GainNode")}}, which can be used to control the overall volume of the audio graph.
+
{{domxref("AudioContext.createIIRFilter()")}}
+
Creates an {{domxref("IIRFilterNode")}}, which represents a second order filter configurable as several different common filter types.
+
{{domxref("AudioContext.createOscillator()")}}
+
Creates an {{domxref("OscillatorNode")}}, a source representing a periodic waveform. It basically generates a tone.
+
{{domxref("AudioContext.createPanner()")}}
+
Creates a {{domxref("PannerNode")}}, which is used to spatialise an incoming audio stream in 3D space.
+
{{domxref("AudioContext.createPeriodicWave()")}}
+
Creates a {{domxref("PeriodicWave")}}, used to define a periodic waveform that can be used to determine the output of an {{ domxref("OscillatorNode") }}.
+
{{domxref("AudioContext.createWaveShaper()")}}
+
Creates a {{domxref("WaveShaperNode")}}, which is used to implement non-linear distortion effects.
+
{{domxref("AudioContext.createAudioWorker()")}}
+
Creates an {{domxref("AudioWorkerNode")}}, which can interact with a web worker thread to generate, process, or analyse audio directly. This was added to the spec on August 29 2014, and is not implemented in any browser yet.
+
{{domxref("AudioContext.decodeAudioData()")}}
+
Asynchronously decodes audio file data contained in an {{domxref("ArrayBuffer")}}. In this case, the ArrayBuffer is usually loaded from an {{domxref("XMLHttpRequest")}}'s response attribute after setting the responseType to arraybuffer. This method only works on complete files, not fragments of audio files.
+
{{domxref("AudioContext.getOutputTimestamp()")}}
+
Returns a new AudioTimestamp containing two correlated context's audio stream position values: the AudioTimestamp.contextTime member contains the time of the sample frame which is currently being rendered by the audio output device (i.e., output audio stream position), in the same units and origin as context's {{domxref("AudioContext.currentTime")}}; the AudioTimestamp.performanceTime member contains the time estimating the moment when the sample frame corresponding to the stored contextTime value was rendered by the audio output device, in the same units and origin as {{domxref("performance.now()")}}.
+
{{domxref("AudioContext.resume()")}}
+
Resumes the progression of time in an audio context that has previously been suspended.
+
{{domxref("AudioContext.suspend()")}}
+
Suspends the progression of time in the audio context, temporarily halting audio hardware access and reducing CPU/battery usage in the process.
+
+ +

Obsolete methods

+ +
+
{{domxref("AudioContext.createJavaScriptNode()")}}
+
Creates a {{domxref("JavaScriptNode")}}, used for direct audio processing via JavaScript. This method is obsolete, and has been replaced by {{domxref("AudioContext.createScriptProcessor()")}}.
+
{{domxref("AudioContext.createWaveTable()")}}
+
Creates a {{domxref("WaveTableNode")}}, used to define a periodic waveform. This method is obsolete, and has been replaced by {{domxref("AudioContext.createPeriodicWave()")}}.
+
+ +

Examples

+ +

Basic audio context declaration:

+ +
var audioCtx = new AudioContext();
+ +

Cross browser variant:

+ +
var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+var oscillatorNode = audioCtx.createOscillator();
+var gainNode = audioCtx.createGain();
+var finish = audioCtx.destination;
+// etc.
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Web Audio API', '#the-audiocontext-interface', 'AudioContext')}}{{Spec2('Web Audio API')}} 
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatChrome(10.0)}}{{property_prefix("webkit")}}
+ 35
{{CompatVersionUnknown}}{{CompatGeckoDesktop(25.0)}} {{CompatNo}}15.0{{property_prefix("webkit")}}
+ 22
6.0{{property_prefix("webkit")}}
createStereoPanner(){{CompatChrome(42.0)}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(37.0)}} {{CompatNo}}{{CompatNo}}{{CompatNo}}
onstatechange, state, suspend(), resume(){{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(40.0)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
createConstantSource(){{CompatChrome(56.0)}}{{CompatNo}}{{CompatGeckoDesktop(52)}}{{CompatNo}}{{CompatOpera(43)}}{{CompatNo}}
Unprefixed{{CompatVersionUnknown}}{{CompatVersionUnknown}}    
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroid WebviewEdgeFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(37.0)}} 2.2{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatVersionUnknown}}
createStereoPanner(){{CompatChrome(42.0)}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatChrome(42.0)}}
onstatechange, state, suspend(), resume(){{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}
createConstantSource(){{CompatChrome(56.0)}}{{CompatNo}}{{CompatGeckoMobile(52)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatChrome(56.0)}}
Unprefixed{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatOperaMobile(43)}}{{CompatUnknown}}{{CompatVersionUnknown}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/audioparam/index.html b/files/pl/web/api/audioparam/index.html new file mode 100644 index 0000000000..390e9726f5 --- /dev/null +++ b/files/pl/web/api/audioparam/index.html @@ -0,0 +1,224 @@ +--- +title: AudioParam +slug: Web/API/AudioParam +tags: + - API + - Audio + - AudioParam + - Interface + - NeedsTranslation + - Reference + - TopicStub + - Web Audio API +translation_of: Web/API/AudioParam +--- +

{{APIRef("Web Audio API")}}

+ +
+

The AudioParam interface represents an audio-related parameter, usually a parameter of an {{domxref("AudioNode")}} (such as {{ domxref("GainNode.gain") }}). An AudioParam can be set to a specific value or a change in value, and can be scheduled to happen at a specific time and following a specific pattern.

+
+ +

There are two kinds of AudioParam, a-rate and k-rate parameters:

+ + + +

Each {{domxref("AudioNode")}} defines which of its parameters are a-rate or k-rate in the spec.

+ +

Each AudioParam has a list of events, initially empty, that define when and how values change. When this list is not empty, changes using the AudioParam.value attributes are ignored. This list of events allows us to schedule changes that have to happen at very precise times, using arbitrary timelime-based automation curves. The time used is the one defined in {{domxref("AudioContext.currentTime")}}.

+ +

Properties

+ +

AudioParam Inherits properties from its parent, AudioNode.

+ +
+
{{domxref("AudioParam.defaultValue")}} {{readonlyInline}}
+
Represents the initial volume of the attribute as defined by the specific {{domxref("AudioNode")}} creating the AudioParam.
+
{{domxref("AudioParam.maxValue")}} {{readonlyInline}}
+
Represents the maximum possible value for the parameter's nominal (effective) range. 
+
{{domxref("AudioParam.minValue")}} {{readonlyinline}}
+
Represents the minimum possible value for the parameter's nominal (effective) range. 
+
{{domxref("AudioParam.value")}}
+
Represents the parameter's current volume as a floating point value; initially set to the value of AudioParam.defaultValue. Though it can be set, any modifications happening while there are automation events scheduled — that is events scheduled using the methods of the AudioParam — are ignored, without raising any exception.
+
+ +

Methods

+ +

AudioParam Inherits methods from its parent, AudioNode.

+ +
+
{{domxref("AudioParam.setValueAtTime()")}}
+
Schedules an instant change to the value of the AudioParam at a precise time, as measured against {{domxref("AudioContext.currentTime")}}. The new value is given in the value parameter.
+
{{domxref("AudioParam.linearRampToValueAtTime()")}}
+
Schedules a gradual linear change in the value of the AudioParam. The change starts at the time specified for the previous event, follows a linear ramp to the new value given in the value parameter, and reaches the new value at the time given in the endTime parameter.
+
{{domxref("AudioParam.exponentialRampToValueAtTime()")}}
+
Schedules a gradual exponential change in the value of the AudioParam. The change starts at the time specified for the previous event, follows an exponential ramp to the new value given in the value parameter, and reaches the new value at the time given in the endTime parameter.
+
{{domxref("AudioParam.setTargetAtTime()")}}
+
Schedules the start of a change to the value of the AudioParam. The change starts at the time specified in startTime and exponentially moves towards the value given by the target parameter. The exponential decay rate is defined by the timeConstant parameter, which is a time measured in seconds.
+
{{domxref("AudioParam.setValueCurveAtTime()")}}
+
Schedules the values of the AudioParam to follow a set of values, defined by the values {{domxref("Float32Array")}} scaled to fit into the given interval, starting at startTime, and having a specific duration.
+
{{domxref("AudioParam.cancelScheduledValues()")}}
+
Cancels all scheduled future changes to the AudioParam.
+
{{domxref("AudioParam.cancelAndHoldAtTime()")}}
+
Cancels all scheduled future changes to the AudioParam but holds its value at a given time until further changes are made using other methods. The new value is given in the value parameter.
+
+ +

Examples

+ +

First, a basic example showing a {{domxref("GainNode")}} having its gain value set. gain is an example of an a-rate AudioParam, as the value can potentially be set differently for each sample frame of the audio.

+ +
var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+var gainNode = audioCtx.createGain();
+gainNode.gain.value = 0;
+ +

Next, an example showing a {{ domxref("BiquadFilterNode") }} having some values set. These are examples of k-rate AudioParam's, as the values are set for the entire audio block at once.

+ +
var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+var biquadFilter = audioCtx.createBiquadFilter();
+
+biquadFilter.type = "lowshelf";
+biquadFilter.frequency.value = 1000;
+biquadFilter.gain.value = 25;
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Web Audio API', '#the-audioparam-interface', 'AudioParam')}}{{Spec2('Web Audio API')}} 
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatChrome(14)}} {{property_prefix("webkit")}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(23)}}{{CompatNo}}15 {{property_prefix("webkit")}}
+ 22 (unprefixed)
6 {{property_prefix("webkit")}}
Unprefixed{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}
minValue and maxValue{{CompatChrome(52)}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}39{{CompatNo}}
cancelAndHoldAtTime(){{CompatChrome(57)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroid WebviewChrome for AndroidEdgeFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatChrome(28)}} {{property_prefix("webkit")}}{{CompatVersionUnknown}}{{CompatGeckoMobile(25)}}{{CompatNo}}{{CompatNo}}6 {{property_prefix("webkit")}}
Unprefixed{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}
minValue and maxValue{{CompatChrome(52)}}{{CompatChrome(52)}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}39{{CompatNo}}
cancelAndHoldAtTime(){{CompatChrome(57)}}{{CompatChrome(57)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/audioparam/setvalueattime/index.html b/files/pl/web/api/audioparam/setvalueattime/index.html new file mode 100644 index 0000000000..7d733e7b2b --- /dev/null +++ b/files/pl/web/api/audioparam/setvalueattime/index.html @@ -0,0 +1,182 @@ +--- +title: AudioParam.setValueAtTime() +slug: Web/API/AudioParam/setValueAtTime +tags: + - API + - AudioParam + - Metodă + - Referencja + - Web Audio API + - setValueAtTime +translation_of: Web/API/AudioParam/setValueAtTime +--- +

{{ APIRef("Web Audio API") }}

+ +
+

Metoda setValueAtTime() interfejsu {{ domxref("AudioParam") }} odpowiada za precyzyjne przyporządkowanie nagłych zmian do wartości {{domxref("AudioParam")}} w określonym czasie względem {{domxref("AudioContext.currentTime")}}. Nowa wartość zostaje podana w wartości parametru.

+
+ +

Składnia

+ +
var AudioParam = AudioParam.setValueAtTime(value, startTime)
+ +

Parametry

+ +
+
value
+
Liczba zmiennoprzecinkowa reprezentująca wartość AudioParam przyporządkuje się do podanego czasu.
+
startTime
+
Zmienna double reprezentująca czas (w sekundach) po {{ domxref("AudioContext") }} została utworzona jako pierwsza, dzięki czemu dochodzi do zmiany wartości. {{jsxref("TypeError")}} zostanie zwrócony, jeśli uzyskana wartość jest negatywna.
+
+ +

Zwracanie wartości funkcji (return)

+ +

Odnośnik do obiektu AudioParam. W niektórych przeglądarkach wprowadzenie tego interfejsu zaskutkuje zwróceniem pustego typu danych (void).

+ +

Przykłady

+ +

Ten stosunkowo prosty przykład zawiera źródło mediaelementu z dwiema kontrolkami (sprawdź kod źródłowy poprzez nasze repo audio-param lub zobacz przykład live). Jeśli kontrolki są wciśnięte, zmienna currGain jest inkrementowana/dekrementowana o 0.25. Wówczas metoda setValueAtTime() zostaje użyta do ustawienia wartości przedwzmacniacza (gain) jako równej currGain, jedną sekundę od teraz (audioCtx.currentTime + 1).

+ +
// utworzenie kontekstu audio
+var AudioContext = window.AudioContext || window.webkitAudioContext;
+var audioCtx = new AudioContext();
+
+// podanie podstawowych zmiennych dla przykładu
+var myAudio = document.querySelector('audio');
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+
+pre.innerHTML = myScript.innerHTML;
+
+var targetAtTimePlus = document.querySelector('.set-target-at-time-plus');
+var targetAtTimeMinus = document.querySelector('.set-target-at-time-minus');
+
+// utworzenie MediaElementAudioSourceNode
+// wprowadzenie HTMLMediaElement
+var source = audioCtx.createMediaElementSource(myAudio);
+
+// utworzenie parametrów przedwzmacniacza (gain node) i ustawienie wartości przedwzmacniacza na wartość 0.5
+var gainNode = audioCtx.createGain();
+gainNode.gain.value = 0.5;
+var currGain = gainNode.gain.value;
+
+// podłączenie AudioBufferSourceNode do gainNode
+// oraz gainNode do destynacji
+source.connect(gainNode);
+gainNode.connect(audioCtx.destination);
+
+// określenie, co ma się wykonać po kliknięciu
+targetAtTimePlus.onclick = function() {
+  currGain += 0.25;
+  gainNode.gain.setValueAtTime(currGain, audioCtx.currentTime + 1);
+}
+
+targetAtTimeMinus.onclick = function() {
+  currGain -= 0.25;
+  gainNode.gain.setValueAtTime(currGain, audioCtx.currentTime + 1);
+}
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecifikacjaStatusKomentarz
{{SpecName('Web Audio API', '#widl-AudioParam-setValueAtTime-void-float-value-double-startTime', 'setValueAtTime')}}{{Spec2('Web Audio API')}} 
+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Wsparcie podstawowe{{CompatChrome(14)}} {{property_prefix("webkit")}}{{CompatVersionUnknown}}23{{CompatNo}}15 {{property_prefix("webkit")}}
+ 22 (unprefixed)
6 {{property_prefix("webkit")}}
Bez prefiksu{{CompatVersionUnknown}}{{CompatVersionUnknown}}    
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaAndroidAndroid WebviewEdgeFirefox Mobile (Gecko)Firefox OSIE PhoneOpera MobileSafari MobileChrome for Android
Wsparcie podstawowe{{CompatNo}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}251.2{{CompatNo}}{{CompatNo}}6 {{property_prefix("webkit")}}{{CompatChrome(28)}} {{property_prefix("webkit")}}
Bez prefiksu{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}     {{CompatVersionUnknown}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/api/cache/index.html b/files/pl/web/api/cache/index.html new file mode 100644 index 0000000000..a4c75fd8d0 --- /dev/null +++ b/files/pl/web/api/cache/index.html @@ -0,0 +1,121 @@ +--- +title: Cache +slug: Web/API/Cache +translation_of: Web/API/Cache +--- +
{{draft}} {{APIRef("Service Workers API")}}
+ +

Interfejs Cache ServiceWorkera API reprezentuje magazyn dla par obiektu żądania oraz obiektu odpowiedzi, które są cache'owane jako część cyklu życia {{domxref("ServiceWorker", "ServiceWorkera")}}. Domena może mieć wielokrotne nazwane obiekty Cache, których zawartość jest pod całkowitą kontrolą service workerów.

+ +

Każdy obiekt Cache jest kolekcją par klucz/wartość. By w pełni zarządzać zawartością cache'ów (by następnie użyć je offline), interfejs ten dostarcza metody w dużej mierze zgodne z obiektem {{jsxref("Map")}}, jednakże wraz z dodatkowymi, poręcznymi metodami.

+ +

Jesteś odpowiedzialny za sposób zarządzania aktualizacjami Cache'u przez {{domxref("ServiceWorker", "ServiceWorkera")}}. Elementy w Cache'u nie są aktualizowane, chyba że jest to wyraźnie zażądane; nie wygasają jeżeli nie usunięte. Użyj {{domxref("CacheStorage.open", "CacheStorage.open(nazwa)")}}, by otworzyć własny, określony obiekt Cache'u, a następnie wywołać jakąkolwiek z jego metod, by nim operować.

+ +

Również do Ciebie należy okresowe opróżnianie wpisów cache'u. Każda przeglądarka ma określony limit powierzchni, który może zostać użyty przez danego service workera. Upewnij się, że opisujesz cache'y poprzez nazwy oraz używasz cache tylko z danej wersji {{domxref("ServiceWorker", "ServiceWorkera")}}, ażeby mogły one bezpiecznie na nich pracować.

+ +

Właściwości

+ +
+
{{domxref("Cache.options")}}
+
Opcjonalny parametr przekazywany do metod: {{domxref("Cache.match", "Cache.match(żądanie, opcje)")}}, {{domxref("Cache.add", "Cache.add(żądanie)")}} i {{domxref("Cache.keys", "Cache.keys(żądanie, opcje)")}} z poniższymi atrybutami: ignoreSearch, ignoreMethod, ignoreVary, prefixMatch, cacheName.
+
+ +

Metody

+ +
+
{{domxref("Cache.match", "Cache.match(żądanie, opcje)")}}
+
Zwraca {{jsxref("Promise")}}, która jest rozwiązywana do pierwszego pasującego żądania w obiekcie {{domxref("Cache", "Cache'u")}}.
+
{{domxref("Cache.add", "Cache.add(żądanie)")}}
+
Zwraca {{jsxref("Promise")}}, która jest rozwiązywana do nowego wpisu {{domxref("Cache", "Cache'u")}}, którego kluczem jest żądanie. Ta metoda nadal jest w trakcie tworzenia (zobacz http://crbug.com/427652). Póki co używaj ServiceWorker cache polyfill.
+
{{domxref("Cache.addAll", "Cache.addAll(żądania)")}}
+
Zwraca {{jsxref("Promise")}}, która jest rozwiązywana do nowego szeregu złożonego z wpisów {{domxref("Cache", "Cache'u")}}, którego kluczami są żądania. Metoda ta jest nadal w trakcie tworzenia (zobacz http://crbug.com/427652). Póki co używaj ServiceWorker cache polyfill.
+
{{domxref("Cache.put", "Cache.put(żądanie, odpowiedź)")}}
+
Dodaje dodatkowe pary klucz/wartość do aktualnego obiektu {{domxref("Cache")}}.
+
{{domxref("Cache.delete", "Cache.delete(żądanie, opcje)")}}
+
Znajduje wpis {{domxref("Cache", "Cache'u")}}, którego klucz jest żądaniem, jeśli znaleziony, usuwa ten wpis, zwracając następnie {{jsxref("Promise")}}, rozwiązywany do true. Jeśli dany wpis {{domxref("Cache", "Cache'u")}} nie został znaleziony, zwraca false.
+
{{domxref("Cache.keys", "Cache.keys(żądanie, opcje)")}}
+
Zwraca {{jsxref("Promise")}}, który rozwiązuje się do szerego złożonego z kluczów {{domxref("Cache", "Cache'u")}}.
+
+ +

+

Specyfikacje

+

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Service Workers', '#cache', 'Cache')}}{{Spec2('Service Workers')}}Initial definition.
+ +

Zgodność z przeglądarką

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatChrome(40.0)}}{{CompatGeckoDesktop("33.0")}}{{CompatNo}}24{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}
+
+ +

Warte uwagi

+ + diff --git a/files/pl/web/api/canvas_api/tutorial/basic_usage/index.html b/files/pl/web/api/canvas_api/tutorial/basic_usage/index.html new file mode 100644 index 0000000000..ca8bc15570 --- /dev/null +++ b/files/pl/web/api/canvas_api/tutorial/basic_usage/index.html @@ -0,0 +1,169 @@ +--- +title: Podstawowe użycie elementu canvas +slug: Web/API/Canvas_API/Tutorial/Basic_usage +tags: + - Canvas + - Grafika + - HTML + - Płótno + - Sredniozaawansowany + - Tutorial +translation_of: Web/API/Canvas_API/Tutorial/Basic_usage +--- +
{{CanvasSidebar}} {{PreviousNext("Web/API/Canvas_API/Tutorial", "Web/API/Canvas_API/Tutorial/Drawing_shapes")}}
+ +
+

Zacznijmy od przyjrzenia się znacznikowi {{HTMLElement("canvas")}} należącego do zbioru elementów {{Glossary("HTML")}}. W tym rozdziale nauczysz się jak ustanowić dwuwymiarowy kontekst płótna, oraz narysujesz swój pierwszy rysunek.

+
+ +

Element <canvas>

+ +
<canvas id="tutorial" width="150" height="150"></canvas>
+
+ +
+

Uwaga: W tym tutorialu będziemy używać słowa canvas zamiennie ze słowem płótno.

+
+ +

Na pierwszy rzut oka {{HTMLElement("canvas")}} wygląda jak element {{HTMLElement("img")}}, z tą różnicą, że nie posiada on atrybutów src oraz alt. W swojej specyfice element <canvas> posiada jedynie dwa atrybuty, {{htmlattrxref("width", "canvas")}} oraz {{htmlattrxref("height", "canvas")}}. Nie są one wymagane oraz mogą być ustanowione za pomocą właściwości {{Glossary("DOM")}}. Jeśli wartości atrybutów width oraz height nie zostaną określone, zostaną użyte domyślne: szerokość - 300 pikseli, wysokość - 150 pikseli. Za pomocą {{Glossary("CSS")}} możemy narzucić rozmiar płótna, ale podczas renderowania dokumentu, rysunek zostanie dopasowany do domyślnej wielkości: jeśli wartości określone za pomocą CSS nie będą proporcjonalne z wartościami domyślnymi, rysunek zostanie zniekształcony.

+ +
+

Uwaga: Jeśli rysunek wydaje się zniekształcony, spróbuj określić atrybuty width oraz height bezpośrednio wewnątrz znacznika <canvas>, a nie za pomocą CSS.

+
+ +

id jest globalnym atrybutem HTML i można go stosować z każdym elementem HTML (tak samo jak np. class). Warto go używać, aby w ten sposób mieć dostęp do elementu z poziomy skryptu.

+ +

Element <canvas> można stylizować za pomocą CSS tak, jak każdy obraz ({{cssxref("margin")}}, {{cssxref("border")}}, {{cssxref("background")}}…). Z tym, że żadna z reguł CSS nie wpłynie na zawartość płótna. Zobaczymy to w późniejszym rozdziale tego tutorialu. Jeśli nie określimy inaczej, tło płótna będzie w pełni przezroczyste.

+ +
+

Treść zastępcza

+ +

Inaczej niż w przypadku {{HTMLElement("img")}}, w elemencie <canvas> tak samo jak w {{HTMLElement("video")}}, {{HTMLElement("audio")}}, czy {{HTMLElement("picture")}} łatwo jest określić to, co będzie wyświetlane w starszych przeglądarkach albo tych, które jeszcze nie obsługują tego elementu, jak np. Internet Explorer poprzedzający wersję 9 oraz przeglądarki tekstowe.

+ +

Aby zapewnić treść zastępczą wystarczy zagnieździć ją wewnątrz elementu <canvas> ... </canvas>. Przeglądarki nieobsługujące tego elementu, zignorują rysunek i zamiast tego wyświetlą to, co zagnieździliśmy wewnątrz tegoż elementu. Natomiast przeglądarki obsługujące element <canvas> wygenerują jego zawartość ignorując przy tym wszystko, co znajduje się wewnątrz tego elementu.

+ +
+

Uwaga: Gdy mówimy o tym, co znajduje się w znaczniku <canvas>, mamy na myśli jego atrybuty czyli to, co znajduje się pomiędzy znakami < oraz > (np. <canvas class="nazwa-klasy">. Natomiast gdy mówimy o tym, co znajduje się wewnątrz elementu <canvas>, mamy na myśli wszystko, co znajduje się pomiędzy znacznikiem otwierającym <canvas>, a znacznikiem zamykającym </canvas> (np. <canvas><img src="/canvas.jpg"></canvas>). W tym drugim przypadku mówimy o zagnieżdżaniu   jednego elementu w drugim.

+
+ +

Treść zastępczą może stanowić opis, tego co znajduje się na płótnie lub statyczny obraz wygenerowanej zawartości. Oto przykład:

+ +
<canvas id="stockGraph" width="150" height="150">
+  current stock price: $3.15 + 0.15
+</canvas>
+
+<canvas id="clock" width="150" height="150">
+  <img src="images/clock.png" width="150" height="150" alt=""/>
+</canvas>
+
+ +

Umieszczanie tekstu w stylu: Twoja przeglądarka nie obsługuje elementu canvas, nie pomoże czytelnikowi w zrozumieniu treści. Zapewnienie treści zastępczej uczyni element canvas bardziej dostępnym.

+ +

Wymagany znacznik końca </canvas>

+ +

Z uwagi na sposób w jaki tworzymy treść zastępczą, znacznikowi <canvas> musi towarzyszyć znacznik zamykający </canvas>.  Gdybyśmy go nie wprowadzili, przeglądarka zinterpretowałaby wszystko, co znajduje się po znaczniku otwierającym <canvas> jako treść zastępczą.

+ +

Jeśli nie decydujemy się, aby zapewnić treść zastępczą, w dalszym ciągu musimy użyć znaczników początkowego i końcowego <canvas id="foo" ...></canvas>, z tą różnicą, że nie będziemy umieszczać niczego wewnątrz tego elementu. Jest to prawidłowy zapis dla przeglądarki, która obsługuje element canvas. Przeglądarki, które go nie obsługują, niczego w tym miejscu nie wyświetlą.

+ +

Kontekst renderingu

+ +

Element {{HTMLElement("canvas")}} tworzy powierzchnię rysunkową o stałym rozmiarze zapewniając jeden lub więcej kontekstów renderingu, które są używane do tworzenia i manipulowania wyświetlaną zawartością. W tym tutorialu skupimy się na kontekście dwuwymiarowym (2D). Inne konteksty mogą wykorzystywać odmienne sposoby renderowania, np WebGL wykorzystuje kontekst trójwymiarowy (3D) bazujący na OpenGL ES.

+ +

Początkowo płótno jest puste, pozbawione tła. Aby coś na nim wyświetlić, skrypt musi posiadać dostęp do kontekstu renderowania a następnie musi coś w nim narysować. Element {{HTMLElement("canvas")}} posiada metodę {{domxref("HTMLCanvasElement.getContext", "getContext()")}} niezbędną, aby uzyskać dostęp do nowego kontekstu renderowania oraz jego funcji rysujących. Metoda getContext() wymaga podania jednego argumentu, który określa typ kontekstu. Dla rysunków dwuwymiarowych, o których mowa w tym tutorialu, argument metody {{domxref("CanvasRenderingContext2D")}} wymaga podania wartości tekstowej "2d".

+ +
var canvas = document.getElementById('tutorial');
+var ctx = canvas.getContext('2d');
+
+ +

W pierwszej lini program uzyskuje dostęp do węzła DOM reprezentującego element {{HTMLElement("canvas")}} za pomocą metody {{domxref("document.getElementById()")}}. Posiadając dostęp do węzła DOM, możemy następnie uzyskać dostęp do kontekstu renderowania rysunku za pomocą metody getContext().

+ +
+

Test zgodności

+ +

Treść zastępcza jest wyświetlana w przeglądarce, która nie obsługuje elementu {{HTMLElement("canvas")}}. Również z poziomu skryptu możemy sprawdzić czy przeglądarka wspiera znacznik canvas. W tym celu posługujemy się metodą getContext(). Oto przykład:

+ +
var canvas = document.getElementById('tutorial');
+
+if (canvas.getContext) {
+  var ctx = canvas.getContext('2d');
+  // drawing code here
+} else {
+  // canvas-unsupported code here
+}
+
+ +

Przeglądarka, która nie wspiera znacznika canvas, nie rozpoznaje również metody getContext(). W takim wypadku wyrażenie canvas.getContext zwróci logiczną wartość false.

+
+
+ +

 Szkielet szablonu

+ +

Poniżej znajduje się szablon dokumentu HTML, którego będziemy używać jako podstawy w kolejnych przykładach ilustrujących canvas.

+ +
+

Uwaga: podczas produkcji stron internetowych warto umieszczać skrypty oraz arkusze stylów w osobnych plikach dla lepszej organizacji kodu. W tym tutorialu przykładowe skrypty będziemy jednak osadzać wewnątrz kodu HTML, tak aby cały przykład był zwięzły oraz w pełni funcjonalny.

+
+ +
<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8"/>
+    <title>Canvas tutorial</title>
+    <script type="text/javascript">
+      function draw() {
+        var canvas = document.getElementById('tutorial');
+        if (canvas.getContext) {
+          var ctx = canvas.getContext('2d');
+        }
+      }
+    </script>
+    <style type="text/css">
+      canvas { border: 1px solid black; }
+    </style>
+  </head>
+  <body onload="draw();">
+    <canvas id="tutorial" width="150" height="150"></canvas>
+  </body>
+</html>
+
+ +

Skrypt zawiera funckcję draw(), która jest wykonywana po załadowaniu strony; uczyniliśmy to za pomocą obserwatora zdarzenia {{event("load")}} dokumentu HTML. Funkcja taka może być również wywołana za pomocą metody {{domxref("WindowTimers.setTimeout", "window.setTimeout()")}}, {{domxref("WindowTimers.setInterval", "window.setInterval()")}} lub jeszcze innej, która obsługuje zdarzenia, po tym jak strona zostanie załadowana.

+ +

Oto jak szablon wygląda w akcji. Jak widać, początkowo jest on pusty.

+ +

{{EmbedLiveSample("A_skeleton_template", 160, 160)}}

+ +

Prosty przykład

+ +

Na razie spójrzmy na poniższy przykład, zawierający rysunek dwóch przecinających się kwadratów, z których jeden jest przezroczysty. Szczegóły działania poszczególnych elementów kodu poznamy w dalszej części tego tutorialu.

+ +
<!DOCTYPE html>
+<html>
+ <head>
+  <meta charset="utf-8"/>
+  <script type="application/javascript">
+    function draw() {
+      var canvas = document.getElementById('canvas');
+      if (canvas.getContext) {
+        var ctx = canvas.getContext('2d');
+
+        ctx.fillStyle = 'rgb(200, 0, 0)';
+        ctx.fillRect(10, 10, 50, 50);
+
+        ctx.fillStyle = 'rgba(0, 0, 200, 0.5)';
+        ctx.fillRect(30, 30, 50, 50);
+      }
+    }
+  </script>
+ </head>
+ <body onload="draw();">
+   <canvas id="canvas" width="150" height="150"></canvas>
+ </body>
+</html>
+
+ +

Przykład wygląda następująco:

+ +

{{EmbedLiveSample("A_simple_example", 160, 160, "https://mdn.mozillademos.org/files/228/canvas_ex1.png")}}

+ +

{{PreviousNext("Web/API/Canvas_API/Tutorial", "Web/API/Canvas_API/Tutorial/Drawing_shapes")}}

diff --git a/files/pl/web/api/canvas_api/tutorial/index.html b/files/pl/web/api/canvas_api/tutorial/index.html new file mode 100644 index 0000000000..a8b41b4ca9 --- /dev/null +++ b/files/pl/web/api/canvas_api/tutorial/index.html @@ -0,0 +1,60 @@ +--- +title: Rysowanie grafiki z elementem canvas +slug: Web/API/Canvas_API/Tutorial +tags: + - Grafika + - HTML + - HTML5 + - Internet + - Kanwa + - Poradnik + - instrukcja +translation_of: Web/API/Canvas_API/Tutorial +--- +
{{CanvasSidebar}}
+ +
+ +
+

<canvas> jest elementem HTML, który może być użyty do rysowania grafik używając skryptów (często JavaScript'u). To może zostać użyte do  na przykład rysowania wykresów, tworzenia kompozycji zdjęcia lub prostych (i i nie prostych) animacji. Obrazy na tej strone pokazują przykłady implementacji <canvas>, które będą stworzone w tym poradniku.

+
+ +

Ten poradnik opisuje jak używać elementu <canvas> do rysowania grafik 2D, rozpoczynając od podstaw. Zawarte przykłady powinny dać Ci kilka czystych pomysłów co możesz zrobić z kanwą i zapewnią przykłady kodu, które mogą ci pomóc w budowaniu własnej zawartości.

+ +

Wprowadzono ją jako pierwszą w WebKit przez Apple dla OS X Dashboard, <canvas> od tego momentu została wprowadzona do przeglądarek. Dziś wszystkie poważne przeglądarki wspierają kanwę.

+ +

Zanim zaczniesz

+ +

Używanie elementu <canvas> nie jest trudne, ale potrzebujesz podstawowego zrozumienia HTML i JavaScript. Element <canvas> nie jest wspierany w kilku starszych przeglądarkach, ale ma wsparcie ze strony nowych wersji poważnych przeglądarek. Domyślnym rozmiarem kanwy jest 300 px × 150 px (szerokość × wysokość). Ale własne rozmiary mogą zostać zdefiniowane za pomocą własności HTML height i width. W celu narysowania grafik na kanwie używamy obiektu kontekstu w JavaScript, który tworzy grafiki w locie.

+ +

W tym poradniku

+ + + +

Zobacz także

+ + + +

Notka dla współtwórców

+ +

Z powodu niefortunnego błędu technicznego, który miał miejsce 17 Czerwca 2013, straciliśmy historię tego poradnika, wliczając w to także atrybucje do wszystkich współtwórców do zawartości tego. Przepraszamy za to i mamy nadzieję, że wybaczycie nam tą niefortunną wpadkę.

+ +
{{ Next("Web/API/Canvas_API/Tutorial/Basic_usage") }}
diff --git a/files/pl/web/api/canvas_api/tutorial/optymalizacja_canvas/index.html b/files/pl/web/api/canvas_api/tutorial/optymalizacja_canvas/index.html new file mode 100644 index 0000000000..68efe0225f --- /dev/null +++ b/files/pl/web/api/canvas_api/tutorial/optymalizacja_canvas/index.html @@ -0,0 +1,119 @@ +--- +title: Optymalizacja elementu canvas +slug: Web/API/Canvas_API/Tutorial/Optymalizacja_canvas +tags: + - Canvas + - Grafika + - HTML + - HTML5 + - Poradnik + - Tutorial + - zaawansowany +translation_of: Web/API/Canvas_API/Tutorial/Optimizing_canvas +--- +
{{CanvasSidebar}} {{PreviousNext("Web/API/Canvas_API/Tutorial/Hit_regions_and_accessibility", "Web/API/Canvas_API/Tutorial/Finale")}}
+ +
+

{{HTMLElement("canvas")}}  to jeden z najczęściej używanych standardów do renderowania grafiki 2D w przeglądarce. Zazwyczaj stosuje się go do tworzenia gier i skomplikowanych wizualizacji, które nierzadko starają się wycinąć z płótna" maksimum jego możliwości. Niestety, równie często prowadzi to do spadków wydajności. W tym artykule przygotowaliśmy dla was kilka wskazówek jak zoptymalizować element canvas, aby poprawić działanie waszych stron i aplikacji.

+
+ +

Wskazówki dot. wydajności

+ +

Poniżej znajdziecie kilka rozwiązań, które poprawią wydajność elementu canvas:

+ +

Pre-renderuj proste lub powtażające się obiekty na dodatkowym canvasie poza ekranem

+ +

Jeśli w każdej klatce rysujesz wiele podobnych obiektów, stwórz niewyświetlany, roboczy canvas, narysuj na nim swój element raz (lub za każdym razem gdy ulega zmianom), a następnie wykorzystaj render w głównym canvasie.

+ +
obiekt.canvasRoboczy = document.createElement('canvas');
+obiekt.canvasRoboczy.width = obiekt.width;
+obiekt.canvasRoboczy.height = obiekt.height;
+obiekt.canvasRoboczy = obiekt.canvasRoboczy.getContext('2d');
+
+obiekt.render(obiekt.offscreenContext);
+
+ +

Staraj się używać liczb całkowitch do koordynatów

+ +

Renderowanie między pikselami zachodzi, gdy rysujesz obiekt używając niepełnych wartości.

+ +
ctx.drawImage(myImage, 0.3, 0.5);
+
+ +

Ta praktyka zmusza przeglądarkę do wykonania dodatkowych obliczeń, by wytworzyć efekt anty-aliasingu. Żeby temu zapobiec, zaokrąglij koordynaty, na przykład przy użyciu {{jsxref("Math.floor()")}}.

+ +

Nie skaluj obrazów za pomocą drawImage

+ +

Posłuż się canvasem poza ekranem, renderując swój obrazek w kilku różnych rozmiarach podczas ładowania, zamiast renderować go w każdej klatce.

+ +

Używaj wielu warstw w skomplikowanych scenach

+ +

Tak jak niektóre elementy nieustannie są w ruchu, inne (jak np. UI) nigdy nie zmieniają położenia. Dobrym sposobem na optymalizację w tej sytuacji jest zastosowanie warstw przy użyciu kilku canvasów roboczych.

+ +

Przykładowo, możesz stworzyć warstwę dla interfejsu rysowaną nad innymi, która aktualizuje się tylko w momentach, gdy jest używana. Oprócz tego, możesz przenaczyć jedną warstwę na pierwszy plan, gdzie umieścisz wszystkie elementy, które odnawiane są często oraz jedną warstwę na tło, na której obiekty aktualizowane są bardzo rzadko.

+ +
<div id="scena">
+  <canvas id="warstwaUi" width="480" height="320"></canvas>
+  <canvas id="warstwaGry" width="480" height="320"></canvas>
+  <canvas id="warstwaTla" width="480" height="320"></canvas>
+</div>
+
+<style>
+  #scena {
+    width: 480px;
+    height: 320px;
+    position: relative;
+    border: 2px solid black
+  }
+  canvas { position: absolute; }
+  #warstwaUI { z-index: 3 }
+  #warstwaGry { z-index: 2 }
+  #warstwaTla { z-index: 1 }
+</style>
+
+ +

Użyj CSS dla dużych obrazów w tle

+ +

Jeśli twoja gra, jak większość, posiada statyczne tło, stwórz element {{HTMLElement("div")}} z własnością CSS {{cssxref("background")}} , który umieścisz pod canvasem. Dzięki temu unikniesz rysowania dużego obrazu w każdej klatce z osobna.

+ +

Skaluj canvas za pomocą CSS

+ +

Transformacje CSS są szybsze dzięki wykorzystaniu karty graficznej. Powiększanie canvasu działa szybciej niż jego pomniejszanie. Dla Firefox OS ustaw 480 x 320 px.

+ +
var scaleX = window.innerWidth / canvas.width;
+var scaleY = window.innerHeight / canvas.height;
+
+var scaleToFit = Math.min(scaleX, scaleY);
+var scaleToCover = Math.max(scaleX, scaleY);
+
+stage.style.transformOrigin = '0 0'; //scale from top left
+stage.style.transform = 'scale(' + scaleToFit + ')';
+
+ +

Wyłącz przezroczystość

+ +

Jeśli twoja gra korzysta z canvasu i nie ma potrzeby, by był on przezroczysty, ustaw wartość alpha na false podczas tworzenia kontekstu: HTMLCanvasElement.getContext(). To powinno poprawić wydajność.

+ +
var ctx = canvas.getContext('2d', { alpha: false });
+ +

Pozostałe wskazówki

+ + + +

Zobacz również:

+ + + +

{{PreviousNext("Web/API/Canvas_API/Tutorial/Hit_regions_and_accessibility", "Web/API/Canvas_API/Tutorial/Finale")}}

diff --git a/files/pl/web/api/canvas_api/tutorial/rysowanie_ksztaltow/index.html b/files/pl/web/api/canvas_api/tutorial/rysowanie_ksztaltow/index.html new file mode 100644 index 0000000000..08c589844b --- /dev/null +++ b/files/pl/web/api/canvas_api/tutorial/rysowanie_ksztaltow/index.html @@ -0,0 +1,571 @@ +--- +title: Rysowanie kształtów w canvas +slug: Web/API/Canvas_API/Tutorial/rysowanie_ksztaltow +translation_of: Web/API/Canvas_API/Tutorial/Drawing_shapes +--- +
{{CanvasSidebar}} {{PreviousNext("Web/API/Canvas_API/Tutorial/Basic_usage", "Web/API/Canvas_API/Tutorial/Applying_styles_and_colors")}}
+ +
+

Ok, stworzyliśmy nasze środowisko canvas i teraz możemy poznać tajniki tworzenia grafiki za pomocą canvas. W tym rozdziale nauczysz się rysować prostokąty, trójkąty, linie, łuki oraz krzywe - czyli podstawowe kształty.

+
+ +

Siatka

+ +

Nim zaczniemy rysować, poznajmy najpierw siatkę czyli układ współrzędnych canvas. Szablon dokumentu z poprzedniego rozdziału zawiera element canvas o rozmiarach 150 na 150 (pikseli). Ilustracja po prawej ukazuje standardową siatkę naszego płótna. Domyślnie jedna jednostka odległości na siatce odpowiada wielkości jednego piksela na płótnie. Wartości siatki liczone są od lewego górnego rogu układu współrzędnych (x,y). W dalszej części dowiesz się, jak zamienić pozycję, tak by początek układu współrzędnych znajdował się gdzie indziej, jak go obrócić a nawet przeskalować. Na razie jednak użyjemy ustawień domyślnych. 

+ +

Rysowanie prostokątów

+ +

W przeciwieństwie do {{Glossary("SVG")}}, {{HTMLElement("canvas")}} na razie wspiera jedynie tworzenie prostokątów. Pozostałe figury geometryczne musimy stworzyć za pomocą ścieżek. Na szczęście mamy do dyspozycji zestaw funkcji za pomocą których jesteśmy w stanie stworzyć figury o dowolnej złożoności.

+ +

Najpierw przyjrzyjmy się prostokątowi. Istnieją trzy funkcje rysujące prostokąt:

+ +
+
{{domxref("CanvasRenderingContext2D.fillRect", "fillRect(x, y, width, height)")}}
+
Rysuje pole prostokąta.
+
{{domxref("CanvasRenderingContext2D.strokeRect", "strokeRect(x, y, width, height)")}}
+
Rysuje obwód prostokąta.
+
{{domxref("CanvasRenderingContext2D.clearRect", "clearRect(x, y, width, height)")}}
+
Wymazuje prostokątny obszar, w wyniku czego staje się on całkiem przezroczysty. Działą to jak gumka w formie prostokąta.
+
+ +

Każda z tych funkcji posiada jednakowe parametry. x i y to współrzędne na siatce - wyznaczają one pozycje lewego górnego rogu prostokąta. A width oraz height określają jego rozmiar.

+ +

Poniżej znajduje się funkcjadraw() z poprzedniej strony, tutaj wzbogacona o trzy metody tworzenia prostokątów.

+ +

Rectangular shape example

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext) {
+    var ctx = canvas.getContext('2d');
+
+    ctx.fillRect(25,25,100,100);
+    ctx.clearRect(45,45,60,60);
+    ctx.strokeRect(50,50,50,50);
+  }
+}
+ +

Oto wynik działania tego skryptu:

+ +

{{EmbedLiveSample("Rectangular_shape_example", 160, 160, "https://mdn.mozillademos.org/files/245/Canvas_rect.png")}}

+ +

Funkcja fillRect() rysuje czarny kwadrat o boku 100 pikseli. Funkcja clearRect() wymazuje kwadratowy obszar o boku 60 pikseli pośrodku czarnego prostokąta, a następnie wywołanie funkcji strokeRect() tworzy obrys kratdatu o boku 50 pikseli również w centrum poprzedniej figury.

+ +

W kolejnych rozdziałąch poznasz dwie inne *metody dla clearReact(), oraz zobaczysz jak zmienić kolor oraz styl obrysu renderowanych kształtów.

+ +

W przeciwieńśtwie do funkcji tworzących ścieżki o czym przekonasz się później, wszystkie trzy funkcje tworzące prostokąt rysują kształ natychmiast po ich wywołaniu.

+ +

Rysowanie ścieżek

+ +

Drugim zarazem ostatnim podstawowym kształetem jest cieżka. Ścieżka złożona jest z punktów połączonych liniami prostymi lub krzywymi, o różnej grubości i o różnym kolorze. Ścieżka, a nawet jej fragment może być zamknięta. Aby utworzyć kształt za pomocą ścieżki wykonaj następujące kroki:

+ +
    +
  1. utwórz ścieżkę,
  2. +
  3. użyj komend rysujących aby rysować ścieżkę,
  4. +
  5. zamknij ścieżkę.
  6. +
  7. Po utworzeniu ścieżki możesz ją obrysować lub wypełnić, i dopiero wtedy ukaże się ona w canvasie.
  8. +
+ +

Oto funkcje potrzebne do wykonania tego zadania:

+ +
+
{{domxref("CanvasRenderingContext2D.beginPath", "beginPath()")}}
+
Tworzy nową ścieżkę. Po jej utworzeniu, wszelkie kolejne funkcce rysujące będą się do niej odwoływały oraz kontynuowały jej rysunek.
+
Path methods
+
Metoda do ustalania innych ścieżek dla obiektów.
+
{{domxref("CanvasRenderingContext2D.closePath", "closePath()")}}
+
Zamyka ścieżkę aby przyszłe polecenia rysowania, były kierowane ponownie do kontekstu(ctx).
+
{{domxref("CanvasRenderingContext2D.stroke", "stroke()")}}
+
Rysuje kształ poprzez odrysowanie konturu.
+
{{domxref("CanvasRenderingContext2D.fill", "fill()")}}
+
Rysuje kształ poprzez wypełnienie ścieżek wyznaczonego obszaru kontekstowego.
+
+ +

The first step to create a path is to call the beginPath(). Internally, paths are stored as a list of sub-paths (lines, arcs, etc) which together form a shape. Every time this method is called, the list is reset and we can start drawing new shapes.

+ +
Note: When the current path is empty, such as immediately after calling beginPath(), or on a newly created canvas, the first path construction command is always treated as a moveTo(), regardless of what it actually is. For that reason, you will almost always want to specifically set your starting position after resetting a path.
+ +

The second step is calling the methods that actually specify the paths to be drawn. We'll see these shortly.

+ +

The third, and an optional step, is to call closePath(). This method tries to close the shape by drawing a straight line from the current point to the start. If the shape has already been closed or there's only one point in the list, this function does nothing.

+ +
Note: When you call fill(), any open shapes are closed automatically, so you don't have to call closePath(). This is not the case when you call stroke().
+ +

Drawing a triangle

+ +

For example, the code for drawing a triangle would look something like this:

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+    var ctx = canvas.getContext('2d');
+
+    ctx.beginPath();
+    ctx.moveTo(75,50);
+    ctx.lineTo(100,75);
+    ctx.lineTo(100,25);
+    ctx.fill();
+  }
+}
+
+ +

The result looks like this:

+ +

{{EmbedLiveSample("Drawing_a_triangle", 110, 110, "https://mdn.mozillademos.org/files/9847/triangle.png")}}

+ +

Moving the pen

+ +

One very useful function, which doesn't actually draw anything but becomes part of the path list described above, is the moveTo() function. You can probably best think of this as lifting a pen or pencil from one spot on a piece of paper and placing it on the next.

+ +
+
{{domxref("CanvasRenderingContext2D.moveTo", "moveTo(x, y)")}}
+
Moves the pen to the coordinates specified by x and y.
+
+ +

When the canvas is initialized or beginPath() is called, you typically will want to use the moveTo() function to place the starting point somewhere else. We could also use moveTo() to draw unconnected paths. Take a look at the smiley face below.

+ +

To try this for yourself, you can use the code snippet below. Just paste it into the draw() function we saw earlier.

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+     var ctx = canvas.getContext('2d');
+
+    ctx.beginPath();
+    ctx.arc(75,75,50,0,Math.PI*2,true); // Outer circle
+    ctx.moveTo(110,75);
+    ctx.arc(75,75,35,0,Math.PI,false);  // Mouth (clockwise)
+    ctx.moveTo(65,65);
+    ctx.arc(60,65,5,0,Math.PI*2,true);  // Left eye
+    ctx.moveTo(95,65);
+    ctx.arc(90,65,5,0,Math.PI*2,true);  // Right eye
+    ctx.stroke();
+  }
+}
+
+ +

The result looks like this:

+ +

{{EmbedLiveSample("Moving_the_pen", 160, 160, "https://mdn.mozillademos.org/files/252/Canvas_smiley.png")}}

+ +

If you'd like to see the connecting lines, you can remove the lines that call moveTo().

+ +
+

Note: To learn more about the arc() function, see the {{anch("Arcs")}} below.

+
+ +

Lines

+ +

For drawing straight lines, use the lineTo() method.

+ +
+
{{domxref("CanvasRenderingContext2D.lineTo", "lineTo(x, y)")}}
+
Draws a line from the current drawing position to the position specified by x and y.
+
+ +

This method takes two arguments, x and y, which are the coordinates of the line's end point. The starting point is dependent on previously drawn paths, where the end point of the previous path is the starting point for the following, etc. The starting point can also be changed by using the moveTo() method.

+ +

The example below draws two triangles, one filled and one outlined.

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+    var ctx = canvas.getContext('2d');
+
+    // Filled triangle
+    ctx.beginPath();
+    ctx.moveTo(25,25);
+    ctx.lineTo(105,25);
+    ctx.lineTo(25,105);
+    ctx.fill();
+
+    // Stroked triangle
+    ctx.beginPath();
+    ctx.moveTo(125,125);
+    ctx.lineTo(125,45);
+    ctx.lineTo(45,125);
+    ctx.closePath();
+    ctx.stroke();
+  }
+}
+
+ +

This starts by calling beginPath() to start a new shape path. We then use the moveTo() method to move the starting point to the desired position. Below this, two lines are drawn which make up two sides of the triangle.

+ +

{{EmbedLiveSample("Lines", 160, 160, "https://mdn.mozillademos.org/files/238/Canvas_lineTo.png")}}

+ +

You'll notice the difference between the filled and stroked triangle. This is, as mentioned above, because shapes are automatically closed when a path is filled, but not when they are stroked. If we left out the closePath() for the stroked triangle, only two lines would have been drawn, not a complete triangle.

+ +

Arcs

+ +

To draw arcs or circles, we use the arc() or arcTo() methods.

+ +
+
{{domxref("CanvasRenderingContext2D.arc", "arc(x, y, radius, startAngle, endAngle, anticlockwise)")}}
+
Draws an arc which is centered at (x, y) position with radius r starting at startAngle and ending at endAngle going in the given direction indicated by anticlockwise (defaulting to clockwise).
+
{{domxref("CanvasRenderingContext2D.arcTo", "arcTo(x1, y1, x2, y2, radius)")}}
+
Draws an arc with the given control points and radius, connected to the previous point by a straight line.
+
+ +

Let's have a more detailed look at the arc method, which takes six parameters: x and y are the coordinates of the center of the circle on which the arc should be drawn. radius is self-explanatory. The startAngle and endAngle parameters define the start and end points of the arc in radians, along the curve of the circle. These are measured from the x axis. The anticlockwise parameter is a Boolean value which, when true, draws the arc anticlockwise; otherwise, the arc is drawn clockwise.

+ +
+

Note: Angles in the arc function are measured in radians, not degrees. To convert degrees to radians you can use the following JavaScript expression: radians = (Math.PI/180)*degrees.

+
+ +

The following example is a little more complex than the ones we've seen above. It draws 12 different arcs all with different angles and fills.

+ +

The two for loops are for looping through the rows and columns of arcs. For each arc, we start a new path by calling beginPath(). In the code, each of the parameters for the arc is in a variable for clarity, but you wouldn't necessarily do that in real life.

+ +

The x and y coordinates should be clear enough. radius and startAngle are fixed. The endAngle starts at 180 degrees (half a circle) in the first column and is increased by steps of 90 degrees, culminating in a complete circle in the last column.

+ +

The statement for the clockwise parameter results in the first and third row being drawn as clockwise arcs and the second and fourth row as counterclockwise arcs. Finally, the if statement makes the top half stroked arcs and the bottom half filled arcs.

+ +
+

Note: This example requires a slightly larger canvas than the others on this page: 150 x 200 pixels.

+
+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+    var ctx = canvas.getContext('2d');
+
+    for(var i=0;i<4;i++){
+      for(var j=0;j<3;j++){
+        ctx.beginPath();
+        var x = 25+j*50; // x coordinate
+        var y = 25+i*50; // y coordinate
+        var radius = 20; // Arc radius
+        var startAngle = 0; // Starting point on circle
+        var endAngle = Math.PI+(Math.PI*j)/2; // End point on circle
+        var anticlockwise = i%2==0 ? false : true; // clockwise or anticlockwise
+
+        ctx.arc(x, y, radius, startAngle, endAngle, anticlockwise);
+
+        if (i>1){
+          ctx.fill();
+        } else {
+          ctx.stroke();
+        }
+      }
+    }
+  }
+}
+
+ +

{{EmbedLiveSample("Arcs", 160, 210, "https://mdn.mozillademos.org/files/204/Canvas_arc.png")}}

+ +

Bezier and quadratic curves

+ +

The next type of paths available are Bézier curves, available in both cubic and quadratic varieties. These are generally used to draw complex organic shapes.

+ +
+
{{domxref("CanvasRenderingContext2D.quadraticCurveTo", "quadraticCurveTo(cp1x, cp1y, x, y)")}}
+
Draws a quadratic Bézier curve from the current pen position to the end point specified by x and y, using the control point specified by cp1x and cp1y.
+
{{domxref("CanvasRenderingContext2D.bezierCurveTo", "bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y)")}}
+
Draws a cubic Bézier curve from the current pen position to the end point specified by x and y, using the control points specified by (cp1x, cp1y) and (cp2x, cp2y).
+
+ +

The difference between these can best be described using the image on the right. A quadratic Bézier curve has a start and an end point (blue dots) and just one control point (indicated by the red dot) while a cubic Bézier curve uses two control points.

+ +

The x and y parameters in both of these methods are the coordinates of the end point. cp1x and cp1y are the coordinates of the first control point, and cp2x and cp2y are the coordinates of the second control point.

+ +

Using quadratic and cubic Bézier curves can be quite challenging, because unlike vector drawing software like Adobe Illustrator, we don't have direct visual feedback as to what we're doing. This makes it pretty hard to draw complex shapes. In the following example, we'll be drawing some simple organic shapes, but if you have the time and, most of all, the patience, much more complex shapes can be created.

+ +

There's nothing very difficult in these examples. In both cases we see a succession of curves being drawn which finally result in a complete shape.

+ +

Quadratic Bezier curves

+ +

This example uses multiple quadratic Bézier curves to render a speech balloon.

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext) {
+    var ctx = canvas.getContext('2d');
+
+    // Quadratric curves example
+    ctx.beginPath();
+    ctx.moveTo(75,25);
+    ctx.quadraticCurveTo(25,25,25,62.5);
+    ctx.quadraticCurveTo(25,100,50,100);
+    ctx.quadraticCurveTo(50,120,30,125);
+    ctx.quadraticCurveTo(60,120,65,100);
+    ctx.quadraticCurveTo(125,100,125,62.5);
+    ctx.quadraticCurveTo(125,25,75,25);
+    ctx.stroke();
+  }
+}
+
+ +

{{EmbedLiveSample("Quadratic_Bezier_curves", 160, 160, "https://mdn.mozillademos.org/files/243/Canvas_quadratic.png")}}

+ +

Cubic Bezier curves

+ +

This example draws a heart using cubic Bézier curves.

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+    var ctx = canvas.getContext('2d');
+
+    // Quadratric curves example
+    ctx.beginPath();
+    ctx.moveTo(75,40);
+    ctx.bezierCurveTo(75,37,70,25,50,25);
+    ctx.bezierCurveTo(20,25,20,62.5,20,62.5);
+    ctx.bezierCurveTo(20,80,40,102,75,120);
+    ctx.bezierCurveTo(110,102,130,80,130,62.5);
+    ctx.bezierCurveTo(130,62.5,130,25,100,25);
+    ctx.bezierCurveTo(85,25,75,37,75,40);
+    ctx.fill();
+  }
+}
+
+ +

{{EmbedLiveSample("Cubic_Bezier_curves", 160, 160, "https://mdn.mozillademos.org/files/207/Canvas_bezier.png")}}

+ +

Rectangles

+ +

In addition to the three methods we saw in {{anch("Drawing rectangles")}}, which draw rectangular shapes directly to the canvas, there's also the rect() method, which adds a rectangular path to a currently open path.

+ +
+
{{domxref("CanvasRenderingContext2D.bezierCurveTo", "rect(x, y, width, height)")}}
+
Draws a rectangle whose top-left corner is specified by (x, y) with the specified width and height.
+
+ +

When this method is executed, the moveTo() method is automatically called with the parameters (0,0). In other words, the current pen position is automatically reset to the default coordinates.

+ +

Making combinations

+ +

So far, each example on this page has used only one type of path function per shape. However, there's no limitation to the number or types of paths you can use to create a shape. So in this final example, let's combine all of the path functions to make a set of very famous game characters.

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+    var ctx = canvas.getContext('2d');
+
+    roundedRect(ctx,12,12,150,150,15);
+    roundedRect(ctx,19,19,150,150,9);
+    roundedRect(ctx,53,53,49,33,10);
+    roundedRect(ctx,53,119,49,16,6);
+    roundedRect(ctx,135,53,49,33,10);
+    roundedRect(ctx,135,119,25,49,10);
+
+    ctx.beginPath();
+    ctx.arc(37,37,13,Math.PI/7,-Math.PI/7,false);
+    ctx.lineTo(31,37);
+    ctx.fill();
+
+    for(var i=0;i<8;i++){
+      ctx.fillRect(51+i*16,35,4,4);
+    }
+
+    for(i=0;i<6;i++){
+      ctx.fillRect(115,51+i*16,4,4);
+    }
+
+    for(i=0;i<8;i++){
+      ctx.fillRect(51+i*16,99,4,4);
+    }
+
+    ctx.beginPath();
+    ctx.moveTo(83,116);
+    ctx.lineTo(83,102);
+    ctx.bezierCurveTo(83,94,89,88,97,88);
+    ctx.bezierCurveTo(105,88,111,94,111,102);
+    ctx.lineTo(111,116);
+    ctx.lineTo(106.333,111.333);
+    ctx.lineTo(101.666,116);
+    ctx.lineTo(97,111.333);
+    ctx.lineTo(92.333,116);
+    ctx.lineTo(87.666,111.333);
+    ctx.lineTo(83,116);
+    ctx.fill();
+
+    ctx.fillStyle = "white";
+    ctx.beginPath();
+    ctx.moveTo(91,96);
+    ctx.bezierCurveTo(88,96,87,99,87,101);
+    ctx.bezierCurveTo(87,103,88,106,91,106);
+    ctx.bezierCurveTo(94,106,95,103,95,101);
+    ctx.bezierCurveTo(95,99,94,96,91,96);
+    ctx.moveTo(103,96);
+    ctx.bezierCurveTo(100,96,99,99,99,101);
+    ctx.bezierCurveTo(99,103,100,106,103,106);
+    ctx.bezierCurveTo(106,106,107,103,107,101);
+    ctx.bezierCurveTo(107,99,106,96,103,96);
+    ctx.fill();
+
+    ctx.fillStyle = "black";
+    ctx.beginPath();
+    ctx.arc(101,102,2,0,Math.PI*2,true);
+    ctx.fill();
+
+    ctx.beginPath();
+    ctx.arc(89,102,2,0,Math.PI*2,true);
+    ctx.fill();
+  }
+}
+
+// A utility function to draw a rectangle with rounded corners.
+
+function roundedRect(ctx,x,y,width,height,radius){
+  ctx.beginPath();
+  ctx.moveTo(x,y+radius);
+  ctx.lineTo(x,y+height-radius);
+  ctx.arcTo(x,y+height,x+radius,y+height,radius);
+  ctx.lineTo(x+width-radius,y+height);
+  ctx.arcTo(x+width,y+height,x+width,y+height-radius,radius);
+  ctx.lineTo(x+width,y+radius);
+  ctx.arcTo(x+width,y,x+width-radius,y,radius);
+  ctx.lineTo(x+radius,y);
+  ctx.arcTo(x,y,x,y+radius,radius);
+  ctx.stroke();
+}
+
+ +

The resulting image looks like this:

+ +

{{EmbedLiveSample("Making_combinations", 160, 160, "https://mdn.mozillademos.org/files/9849/combinations.png")}}

+ +

We won't go over this in detail, since it's actually surprisingly simple. The most important things to note are the use of the fillStyle property on the drawing context, and the use of a utility function (in this case roundedRect()). Using utility functions for bits of drawing you do often can be very helpful and reduce the amount of code you need, as well as its complexity.

+ +

We'll take another look at fillStyle, in more detail, later in this tutorial. Here, all we're doing is using it to change the fill color for paths from the default color of black to white, and then back again.

+ +

Path2D objects

+ +

As we have seen in the last example, there can be a series of paths and drawing commands to draw objects onto your canvas. To simplify the code and to improve performance, the {{domxref("Path2D")}} object, available in recent versions of browsers, lets you cache or record these drawing commands. You are able to play back your paths quickly.
+ Lets see how we can construct a Path2D object:

+ +
+
{{domxref("Path2D.Path2D", "Path2D()")}}
+
The Path2D() constructor returns a newly instantiated Path2D object, optionally with another path as an argument (creates a copy), or optionally with a string consisting of SVG path data.
+
+ +
new Path2D();     // empty path object
+new Path2D(path); // copy from another Path2D object
+new Path2D(d);    // path from SVG path data
+ +

All path methods like moveTo, rect, arc or quadraticCurveTo, etc., which we got to know above, are available on Path2D objects.

+ +

The Path2D API also adds a way to combine paths using the addPath method. This can be useful when you want to build objects from several components, for example.

+ +
+
{{domxref("Path2D.addPath", "Path2D.addPath(path [, transform])")}}
+
Adds a path to the current path with an optional transformation matrix.
+
+ +

Path2D example

+ +

In this example, we are creating a rectangle and a circle. Both are stored as a Path2D object, so that they are available for later usage. With the new Path2D API, several methods got updated to optionally accept a Path2D object to use instead of the current path. Here, stroke and fill are used with a path argument to draw both objects onto the canvas, for example.

+ + + +
function draw() {
+  var canvas = document.getElementById('canvas');
+  if (canvas.getContext){
+    var ctx = canvas.getContext('2d');
+
+    var rectangle = new Path2D();
+    rectangle.rect(10, 10, 50, 50);
+
+    var circle = new Path2D();
+    circle.moveTo(125, 35);
+    circle.arc(100, 35, 25, 0, 2 * Math.PI);
+
+    ctx.stroke(rectangle);
+    ctx.fill(circle);
+  }
+}
+
+ +

{{EmbedLiveSample("Path2D_example", 130, 110, "https://mdn.mozillademos.org/files/9851/path2d.png")}}

+ +

Using SVG paths

+ +

Another powerful feature of the new canvas Path2D API is using SVG path data to initialize paths on your canvas. This might allow you to pass around path data and re-use them in both, SVG and canvas.

+ +

The path will move to point (M10 10) and then move horizontally 80 points to the right (h 80), then 80 points down (v 80), then 80 points to the left (h -80), and then back to the start (z). You can see this example on the Path2D constructor page.

+ +
var p = new Path2D("M10 10 h 80 v 80 h -80 Z");
+ +
{{PreviousNext("Web/API/Canvas_API/Tutorial/Basic_usage", "Web/API/Canvas_API/Tutorial/Applying_styles_and_colors")}}
diff --git a/files/pl/web/api/childnode/index.html b/files/pl/web/api/childnode/index.html new file mode 100644 index 0000000000..f10d177d3c --- /dev/null +++ b/files/pl/web/api/childnode/index.html @@ -0,0 +1,190 @@ +--- +title: ChildNode +slug: Web/API/ChildNode +tags: + - API + - DOM + - Experimental + - Interface + - NeedsTranslation + - Node + - TopicStub +translation_of: Web/API/ChildNode +--- +
{{APIRef("DOM")}}
+ +

The childNodes interface contains methods that are particular to {{domxref("Node")}} objects that can have a parent.

+ +

childNodes is a raw interface and no object of this type can be created; it is implemented by {{domxref("Element")}}, {{domxref("DocumentType")}}, and {{domxref("CharacterData")}} objects.

+ +

Properties

+ +

There are neither inherited, nor specific properties.

+ +

Methods

+ +

There are no inherited methods.

+ +
+
{{domxref("childNodes.remove()")}} {{experimental_inline}}
+
Removes this childNodes from the children list of its parent.
+
{{domxref("childNodes.before()")}} {{experimental_inline}}
+
Inserts a set of {{domxref("Node")}} or {{domxref("DOMString")}} objects in the children list of this childNodes's parent, just before this childNodes. {{domxref("DOMString")}} objects are inserted as equivalent {{domxref("Text")}} nodes.
+
{{domxref("childNodes.after()")}} {{experimental_inline}}
+
Inserts a set of {{domxref("Node")}} or {{domxref("DOMString")}} objects in the children list of this childNodes's parent, just after this childNodes. {{domxref("DOMString")}} objects are inserted as equivalent {{domxref("Text")}} nodes.
+
{{domxref("childNodes.replaceWith()")}} {{experimental_inline}}
+
Replaces this childNodes in the children list of its parent with a set of {{domxref("Node")}} or {{domxref("DOMString")}} objects. {{domxref("DOMString")}} objects are inserted as equivalent {{domxref("Text")}} nodes.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM WHATWG', '#interface-childnode', 'childNodes')}}{{Spec2('DOM WHATWG')}}Split the ElementTraversal interface in {{domxref("ParentNode")}} and childNodes. previousElementSibling and nextElementSibling are now defined on the latter. The {{domxref("CharacterData")}} and {{domxref("DocumentType")}} implemented the new interfaces. Added the remove(), before(), after() and replaceWith() methods.
{{SpecName('Element Traversal', '#interface-elementTraversal', 'ElementTraversal')}}{{Spec2('Element Traversal')}}Added the initial definition of its properties to the ElementTraversal pure interface and use it on {{domxref("Element")}}.
+ +

Polyfill

+ +

External on github: childNode.js

+ +

Browser compatibility

+ +

{{ CompatibilityTable }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support (on {{domxref("Element")}}){{CompatChrome(1.0)}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(23)}}9.010.04.0
Support on {{domxref("DocumentType")}} and {{domxref("CharacterData")}} {{experimental_inline}}{{CompatChrome(23.0)}}{{CompatNo}}{{CompatGeckoDesktop(23)}}{{CompatNo}}16.0{{CompatNo}}
remove(){{experimental_inline}}{{CompatChrome(29.0)}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(23)}}{{CompatNo}}16.0{{CompatNo}}
before(), after(), and replaceWith() {{experimental_inline}}{{CompatChrome(54.0)}}{{CompatNo}}{{CompatGeckoDesktop(49)}}{{CompatNo}}{{CompatOpera(39)}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari MobileChrome for Android
Basic support (on {{domxref("Element")}}){{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile(23)}}{{CompatVersionUnknown}}10.0{{CompatVersionUnknown}}{{CompatVersionUnknown}}
Support on {{domxref("DocumentType")}} and {{domxref("CharacterData")}} {{experimental_inline}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatGeckoMobile(23)}}{{CompatNo}}16.0{{CompatNo}}{{CompatVersionUnknown}}
remove(){{experimental_inline}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile(23)}}{{CompatNo}}16.0{{CompatNo}}{{CompatVersionUnknown}}
before(), after(), and replaceWith() {{experimental_inline}}{{CompatNo}}{{CompatChrome(54.0)}}{{CompatNo}}{{CompatGeckoMobile(49)}}{{CompatNo}}{{CompatOperaMobile(39)}}{{CompatNo}}{{CompatChrome(54.0)}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/childnode/remove/index.html b/files/pl/web/api/childnode/remove/index.html new file mode 100644 index 0000000000..377e529db2 --- /dev/null +++ b/files/pl/web/api/childnode/remove/index.html @@ -0,0 +1,91 @@ +--- +title: ChildNode.remove() +slug: Web/API/ChildNode/remove +translation_of: Web/API/ChildNode/remove +--- +
{{APIRef("DOM")}}
+ +

Metoda ChildNode.remove() usuwa obiekt z drzewa, do którego należy.

+ +

Składnia

+ +
node.remove();
+
+ +

Przykład

+ +

Użycie remove()

+ +
<div id="div-01">To jest div-01</div>
+<div id="div-02">To jest div-02</div>
+<div id="div-03">To jest div-03</div>
+
+ +
var el = document.getElementById('div-02');
+el.remove(); // Usuwa div z ID 'div-02'
+
+ +

ChildNode.remove() jest poza zakresem

+ +

Metoda remove() nie wchodzi w zakres wyrażenia with. Zobacz  {{jsxref("Symbol.unscopables")}}, aby uzyskać więcej informacji.

+ +
with(node) {
+  remove();
+}
+// ReferenceError: remove is not defined 
+ +

Polyfill

+ +

Można utworzyć polyfill metody remove() w Internet Explorer 9 (lub wyższej wersji) za pomocą następującego kodu: 

+ +
// from:https://github.com/jserz/js_piece/blob/master/DOM/ChildNode/remove()/remove().md
+(function (arr) {
+  arr.forEach(function (item) {
+    if (item.hasOwnProperty('remove')) {
+      return;
+    }
+    Object.defineProperty(item, 'remove', {
+      configurable: true,
+      enumerable: true,
+      writable: true,
+      value: function remove() {
+        this.parentNode.removeChild(this);
+      }
+    });
+  });
+})([Element.prototype, CharacterData.prototype, DocumentType.prototype]);
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM WHATWG', '#dom-childnode-remove', 'ChildNode.remove')}}{{Spec2('DOM WHATWG')}}Initial definition.
{{SpecName('DOM4', '#dom-childnode-remove', 'ChildNode.remove')}}{{Spec2('DOM4')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{Compat("api.ChildNode.remove")}}
+ +

Zobacz również

+ + diff --git a/files/pl/web/api/console/index.html b/files/pl/web/api/console/index.html new file mode 100644 index 0000000000..0e2b03ab60 --- /dev/null +++ b/files/pl/web/api/console/index.html @@ -0,0 +1,232 @@ +--- +title: Console +slug: Web/API/Console +translation_of: Web/API/Console +--- +
{{APIRef}}{{Non-standard_header}}
+ +

The console object provides access to the browser's debugging console (e.g. the Web Console in Firefox). The specifics of how it works vary from browser to browser, but there is a de facto set of features that are typically provided.

+ +

The console can be accessed from any global object, {{domxref("Window")}} on browsing scopes, {{domxref("WorkerGlobalScope")}} and its specific variants in workers.

+ +

This page documents the {{anch("Methods")}} available on the console object and gives a few {{anch("Usage")}} examples.

+ +

Methods

+ +
+
{{domxref("Console.assert()")}}
+
Log a message and stack trace to console if first argument is false.
+
{{domxref("Console.count()")}}
+
Log the number of times this line has been called with the given label.
+
{{domxref("Console.debug()")}} {{deprecated_inline}}
+
An alias for log(); this was added to improve compatibility with existing sites already using debug(). However, you should use {{domxref("console.log()")}} instead.
+
{{domxref("Console.dir()")}}
+
Displays an interactive listing of the properties of a specified JavaScript object. This listing lets you use disclosure triangles to examine the contents of child objects.
+
{{domxref("Console.error()")}}
+
Outputs an error message. You may use string substitution and additional arguments with this method.
+
{{domxref("Console._exception()")}}
+
An alias for error();
+
{{domxref("Console.group()")}}
+
Creates a new inline group, indenting all following output by another level. To move back out a level, call groupEnd().
+
{{domxref("Console.groupCollapsed()")}}
+
Creates a new inline group, indenting all following output by another level; unlike group(), this starts with the inline group collapsed, requiring the use of a disclosure button to expand it. To move back out a level, call groupEnd().
+
{{domxref("Console.groupEnd()")}}
+
Exits the current inline group.
+
{{domxref("Console.info()")}}
+
Informative logging information. You may use string substitution and additional arguments with this method.
+
{{domxref("Console.log()")}}
+
For general output of logging information. You may use string substitution and additional arguments with this method.
+
{{domxref("Console.profile()")}}
+
Starts the JavaScript profiler. You can specify an optional label for the profile.
+
{{domxref("Console.profileEnd()")}}
+
Stops the profiler. You can see the resulting profile in the JavaScript profiler.
+
{{domxref("Console.table()")}}
+
Displays tabular data as a table.
+
{{domxref("Console.time()")}}
+
Starts a timer with a name specified as an input parameter. Up to 10,000 simultaneous timers can run on a given page.
+
{{domxref("Console.timeEnd()")}}
+
Stops the specified timer and logs the elapsed time in seconds since its start.
+
{{domxref("Console.trace()")}}
+
Outputs a stack trace.
+
{{domxref("Console.warn()")}}
+
Outputs a warning message. You may use string substitution and additional arguments with this method.
+
+ + +

Usage

+ +

Outputting text to the console

+ +

The most frequently-used feature of the console is logging of text and other data. There are four categories of output you can generate, using the {{domxref("console.log()")}}, {{domxref("console.info()")}}, {{domxref("console.warn()")}}, and {{domxref("console.error()")}} methods. Each of these results in output that's styled differently in the log, and you can use the filtering controls provided by your browser to only view the kinds of output that interest you.

+ +

There are two ways to use each of the output methods; you can simply pass in a list of objects whose string representations get concatenated into one string then output to the console, or you can pass in a string containing zero or more substitution strings followed by a list of the objects with which to replace them.

+ +

Outputting a single object

+ +

The simplest way to use the logging methods is to output a single object:

+ +
var someObject = { str: "Some text", id: 5 };
+console.log(someObject);
+
+ +

The output looks something like this:

+ +
[09:27:13.475] ({str:"Some text", id:5})
+ +

Outputting multiple objects

+ +

You can also output multiple objects by simply listing them when calling the logging method, like this:

+ +
var car = "Dodge Charger";
+var someObject = {str:"Some text", id:5};
+console.info("My first car was a", car, ". The object is: ", someObject);
+ +

This output will look like this:

+ +
[09:28:22.711] My first car was a Dodge Charger . The object is:  ({str:"Some text", id:5})
+
+ +

Using string substitutions

+ +

Gecko 9.0 {{geckoRelease("9.0")}} introduced support for string substitutions. When passing a string to one of the console object's methods that accepts a string, you may use these substitution strings:

+ + + + + + + + + + + + + + + + + + + + + + + + +
Substitution stringDescription
%oOutputs a hyperlink to a JavaScript object. Clicking the link opens an inspector.
%d or %iOutputs an integer. Formatting is not yet supported.
%sOutputs a string.
%fOutputs a floating-point value. Formatting is not yet supported.
+ +

Each of these pulls the next argument after the format string off the parameter list. For example:

+ +
for (var i=0; i<5; i++) {
+  console.log("Hello, %s. You've called me %d times.", "Bob", i+1);
+}
+
+ +

The output looks like this:

+ +
[13:14:13.481] Hello, Bob. You've called me 1 times.
+[13:14:13.483] Hello, Bob. You've called me 2 times.
+[13:14:13.485] Hello, Bob. You've called me 3 times.
+[13:14:13.487] Hello, Bob. You've called me 4 times.
+[13:14:13.488] Hello, Bob. You've called me 5 times.
+
+ +

Styling console output

+ +

You can use the "%c" directive to apply a CSS style to console output:

+ +
console.log("%cMy stylish message", "color: red; font-style: italic");
+ +
+ +
{{h3_gecko_minversion("Using groups in the console", "9.0")}}
+ +

You can use nested groups to help organize your output by visually combining related material. To create a new nested block, call console.group(). The console.groupCollapsed() method is similar, but creates the new block collapsed, requiring the use of a disclosure button to open it for reading.

+ +
Note: Collapsed groups are not supported yet in Gecko; the groupCollapsed() method is the same as group() at this time.
+ +

To exit the current group, simply call console.groupEnd().

+ +

For example, given this code:

+ +
console.log("This is the outer level");
+console.group();
+console.log("Level 2");
+console.group();
+console.log("Level 3");
+console.warn("More of level 3");
+console.groupEnd();
+console.log("Back to level 2");
+console.groupEnd();
+console.debug("Back to the outer level");
+
+ +

The output looks like this:

+ +

nesting.png

+ +
{{h3_gecko_minversion("Timers", "10.0")}}
+ +

In order to calculate the duration of a specific operation, Gecko 10 introduced the support of timers in the console object. To start a timer, call the console.time() method, giving it a name as only parameter. To stop the timer, and to get the elapsed time in miliseconds, just call the console.timeEnd() method, again passing the timer's name as the parameter. Up to 10,000 timers can run simultaneously on a given page.

+ +

For example, given this code:

+ +
console.time("answer time");
+alert("Click to continue");
+console.timeEnd("answer time");
+
+ +

will log the time needed by the user to discard the alert box:

+ +

timerresult.png

+ +

Notice that the timer's name is displayed both when the timer is started and when it's stopped.

+ +
Note: It's important to note that if you're using this to log the timing for network traffic, the timer will report the total time for the transaction, while the time listed in the network panel is just the amount of time required for the header. If you have response body logging enabled, the time listed for the response header and body combined should match what you see in the console output.
+ +

Stack traces

+ +

The console object also supports outputting a stack trace; this will show you the call path taken to reach the point at which you call {{domxref("console.trace()")}}. Given code like this:

+ +
foo();
+
+function foo() {
+  function bar() {
+    console.trace();
+  }
+  bar();
+}
+
+ +

The output in the console looks something like this:

+ +

+ +

Notes

+ + + +

See also

+ + + +

Other implementations

+ +

 

+ + diff --git a/files/pl/web/api/console/log/index.html b/files/pl/web/api/console/log/index.html new file mode 100644 index 0000000000..0f18916b5a --- /dev/null +++ b/files/pl/web/api/console/log/index.html @@ -0,0 +1,69 @@ +--- +title: Console.log() +slug: Web/API/Console/log +translation_of: Web/API/Console/log +--- +
{{APIRef("Console API")}}{{Non-standard_header}}
+ +

Wyświetla tekst w konsoli.

+ +

{{AvailableInWorkers}}

+ +

Syntax

+ +
console.log(obj1 [, obj2, ..., objN]);
+console.log(msg [, subst1, ..., substN]);
+
+ +

Parameters

+ +
+
obj1 ... objN
+
Lista obiektów JavaScript do wyświelenia. Podane obiekty są kolejno dołączane i przekazywane na wyjście.
+
msg
+
String JavaScript zawierający zero lub więcej stringów podmieniających.
+
subst1 ... substN
+
Obiekt JavaScript w którym zastępowane są stringi podmieniające z msg.  Daje Ci to dodatkową kontrolę nad formatem.
+
+ +

Zobacz również Outputting text to the console w dokumentacji {{domxref("console")}}.

+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName("Console API", "#consolelogobject--object-", "console.log()")}}{{Spec2("Console API")}}Początkowa definicja
+ +

Browser compatibility

+ +

 

+ + + +

{{Compat("api.Console.log")}}

+ +

 

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/cssnumericvalue/div/index.html b/files/pl/web/api/cssnumericvalue/div/index.html new file mode 100644 index 0000000000..cd74042e3e --- /dev/null +++ b/files/pl/web/api/cssnumericvalue/div/index.html @@ -0,0 +1,59 @@ +--- +title: CSSNumericValue.div() +slug: Web/API/CSSNumericValue/div +translation_of: Web/API/CSSNumericValue/div +--- +
{{draft}}{{APIRef("CSS Typed OM")}}{{SeeCompatTable}}
+ +

The div() method of the {{domxref("CSSNumericValue")}} interface divides the CSSNumericValue by the supplied value.

+ +

Syntax

+ +
var cssNumericValue = CSSNumericValue.div(number);
+ +

Parameters

+ +
+
number
+
Either a {{jsxref('Number')}} or a {{domxref('CSSNumericValue')}}.
+
+ +

Return value

+ +

A {{domxref('CSSMathProduct')}}.

+ +

Exceptions

+ +
+
TypeError
+
Indicates that an invalid type was passed to the method.
+
+ +

Examples

+ +
let mathProduct = CSS.px("24").div(CSS.percent("4"));
+// Prints "calc(24px / 4%)"
+mathProduct.toString();
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS Typed OM','#dom-cssnumericvalue-div','div')}}{{Spec2('CSS Typed OM')}}Initial definition.
+ +

Browser compatibility

+ + + +

{{Compat("api.CSSNumericValue.div")}}

diff --git a/files/pl/web/api/cssnumericvalue/index.html b/files/pl/web/api/cssnumericvalue/index.html new file mode 100644 index 0000000000..eace9532a3 --- /dev/null +++ b/files/pl/web/api/cssnumericvalue/index.html @@ -0,0 +1,113 @@ +--- +title: CSSNumericValue +slug: Web/API/CSSNumericValue +tags: + - API + - CSS Typed Object Model API + - CSSNumericValue + - Experimental + - Houdini + - Interface + - NeedsTranslation + - Reference + - TopicStub +translation_of: Web/API/CSSNumericValue +--- +
{{draft}}{{APIRef("CSS Typed OM")}}{{SeeCompatTable}}
+ +

The CSSNumericValue interface of the CSS Typed Object Model API represents operations that all numeric values can perform.

+ +

Interfaces based on CSSNumericValue

+ +

Below is a list of interfaces based on the CSSNumericValue interface.

+ +
+ +
+ +

Properties

+ +

None.

+ +

Event handlers

+ +

No

+ +

Methods

+ +
+
{{domxref('CSSNumericValue.add')}}
+
Adds a supplied number to the CSSNumericValue.
+
{{domxref('CSSNumericValue.sub')}}
+
Subtracts a supplied number from the CSSNumericValue.
+
{{domxref('CSSNumericValue.mul')}}
+
Multiplies the CSSNumericValue by the supplied value.
+
{{domxref('CSSNumericValue.div')}}
+
Divides the CSSNumericValue by the supplied value.
+
{{domxref('CSSNumericValue.min')}}
+
Returns the minimum value passed
+
{{domxref('CSSNumericValue.max')}}
+
Returns the maximum value passed
+
{{domxref('CSSNumericValue.equals')}}
+
True if all the values are the exact same type and value, in the same order. Otherwise, false.
+
{{domxref('CSSNumericValue.to')}}
+
Converts value into another one with the specified unit.
+
{{domxref('CSSNumericValue.toSum')}}
+
TBD
+
{{domxref('CSSNumericValue.type')}}
+
TBD
+
{{domxref('CSSNumericValue.parse')}}
+
Allows a CSSNumericValue to be constructed directly from a string containing CSS. 
+
+ + + +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS Typed OM','#numeric-value','CSSNumericValue')}}{{Spec2('CSS Typed OM')}}Initial definition.
+ +

Browser compatibility

+ + + +

{{Compat("api.CSSNumericValue")}}

+ +

See Also

+ + diff --git a/files/pl/web/api/cssrule/index.html b/files/pl/web/api/cssrule/index.html new file mode 100644 index 0000000000..e8893fe44c --- /dev/null +++ b/files/pl/web/api/cssrule/index.html @@ -0,0 +1,97 @@ +--- +title: cssRule +slug: Web/API/CSSRule +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/CSSRule +--- +

{{ ApiRef() }}

+

Obiekt CSSRule reprezentuje pojedynczy arkusz stylu CSS. To może być pojedyncza reguła arkusza stylów CSS. Może być częścią listy stylesheet cssRules.

+

Jest tu kilka rodzajów reguł. Wszystkie one dzielą kilka wspólnych własności interfejsu {{ Anch("CSSRule") }} i większość posiada pewne specyficzne własności oraz typy reguł.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypInterfejs związany z regułąOpis
CSSRule.STYLE_RULE{{ Anch("CSSStyleRule") }} 
CSSRule.MEDIA_RULE{{ Anch("CSSMediaRule") }} 
CSSRule.FONT_FACE_RULE{{ Anch("CSSFontFaceRule") }} 
CSSRule.PAGE_RULE{{ Anch("CSSPageRule") }} 
CSSRule.IMPORT_RULE{{ Anch("CSSImportRule") }} 
CSSRule.CHARSET_RULE{{ Anch("CSSCharsetRule") }} 
CSSRule.UNKNOWN_RULE{{ Anch("CSSUnknownRule") }} 
+

CSSRule

+
+
+ cssText
+
+ Zwraca tekstową reprezentację reguły, np. "h1,h2 { font-size: 16pt }".
+
+ parentRule
+
+ Zwraca regule zawarta w treści jeśli takowa istnieje, np. regułę stylu znajdującą sie wewnątrz bloku @media.
+
+ parentStyleSheet
+
+ Zwraca obiekt stylesheet, którego reguła jest częścią.
+
+ type
+
+ Zwraca typ reguły, np. CSSRule.CHARSET_RULE lub CSSRule.IMPORT_RULE.
+
+

CSSStyleRule

+
+
+ selectorText
+
+ Pobiera/ustawia tekstową reprezentację selektora dla reguły, np.: "h1,h2".
+
+ style
+
+ Zwraca obiekt CSSStyleDeclaration dla reguły deklaracji bloku.
+
+

CSSStyleRule

+

CSSMediaRule

+

CSSFontFaceRule

+

CSSPageRule

+

CSSImportRule

+

CSSCharsetRule

+

CSSUnknownRule

+

Specyfikacja

+

DOM Level 2 CSS: CSSRule

+

{{ languages( { "en": "en/DOM/cssRule" } ) }}

diff --git a/files/pl/web/api/document/activeelement/index.html b/files/pl/web/api/document/activeelement/index.html new file mode 100644 index 0000000000..bd8527e319 --- /dev/null +++ b/files/pl/web/api/document/activeelement/index.html @@ -0,0 +1,26 @@ +--- +title: document.activeElement +slug: Web/API/Document/activeElement +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/DocumentOrShadowRoot/activeElement +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca element, na którym ustawiony jest fokus.

+

{{ Note("Ten atrybut jest częścią specyfikacji HTML 5, która jest wciąż opracowywana.") }}

+

Składnia

+
var curElement = document.activeElement;
+
+

Przykład

+

Specyfikacja

+

Zarządzanie fokusem

+

 

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/document.activeElement", "es": "es/DOM/element.activeElement", "fr": "fr/DOM/document.activeElement", "ja": "ja/DOM/document.activeElement" } ) }}

diff --git a/files/pl/web/api/document/alinkcolor/index.html b/files/pl/web/api/document/alinkcolor/index.html new file mode 100644 index 0000000000..82e8dda6cd --- /dev/null +++ b/files/pl/web/api/document/alinkcolor/index.html @@ -0,0 +1,24 @@ +--- +title: document.alinkColor +slug: Web/API/Document/alinkColor +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/alinkColor +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca bądź ustawia kolor aktywnych odnośników w ciele dokumentu.

+

Składnia

+
kolor = HTMLBodyElement.aLinkColor
+HTMLBodyElement.aLinkColor =kolor
+
+

Parametry

+ +

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

+

{{ languages( { "en": "en/DOM/document.alinkColor", "es": "es/DOM/document.alinkColor" } ) }}

diff --git a/files/pl/web/api/document/anchors/index.html b/files/pl/web/api/document/anchors/index.html new file mode 100644 index 0000000000..e1681f5372 --- /dev/null +++ b/files/pl/web/api/document/anchors/index.html @@ -0,0 +1,38 @@ +--- +title: document.anchors +slug: Web/API/Document/anchors +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/anchors +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

anchors zwraca listę wszystkich kotwic w dokumencie.

+ +

Składnia

+ +
listaWęzłów = document.anchors
+
+ +

Przykład

+ +
if ( document.anchors.length >= 5 ) {
+    dump("dump found too many anchors");
+    window.location = "http://www.google.com";
+}
+
+ +

Uwagi

+ +

Ze względu na zgodność wsteczną, zwracany zestaw kotwic zawiera tylko kotwice posiadające atrybut name, bez tych które posiadają jedynie atrybut id.

+ +

Specyfikacja

+ +

DOM Level 2 HTML: anchors

+ +

{{ languages( { "en": "en/DOM/document.anchors", "es": "es/DOM/document.anchors", "ja": "ja/DOM/document.anchors" } ) }}

diff --git a/files/pl/web/api/document/applets/index.html b/files/pl/web/api/document/applets/index.html new file mode 100644 index 0000000000..719c43b33b --- /dev/null +++ b/files/pl/web/api/document/applets/index.html @@ -0,0 +1,26 @@ +--- +title: document.applets +slug: Web/API/Document/applets +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/applets +--- +

{{ ApiRef() }}

+

Podsumowanie

+

applets zwraca uporządkowaną listę apletów umieszczonych w dokumencie.

+

Składnia

+
listaWęzłów = document.applets
+
+

Przykład

+
// (Kiedy wiesz, że drugi aplet jest tym,
+// którego szukasz)
+my_java_app = document.applets[1];
+
+

Specyfikacja

+

applets

+
+  
+

{{ languages( { "en": "en/DOM/document.applets", "es": "es/DOM/document.applets" } ) }}

diff --git a/files/pl/web/api/document/bgcolor/index.html b/files/pl/web/api/document/bgcolor/index.html new file mode 100644 index 0000000000..cdc5731cbf --- /dev/null +++ b/files/pl/web/api/document/bgcolor/index.html @@ -0,0 +1,33 @@ +--- +title: document.bgColor +slug: Web/API/Document/bgColor +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/bgColor +--- +

{{ ApiRef() }}

+

Podsumowanie

+

{{ Deprecated_header() }} Własność + + bgColor + pobiera/zwraca kolor tła dokumentu.

+

Składnia

+
kolor = document.bgColor
+document.bgColor =kolor
+
+

Parametry

+ +

Przykład

+
document.bgColor = "darkblue";
+
+

Notes

+

Domyślną wartością tej własności w Mozilli Firefox jest kolor biały (#ffffff w systemie szesnastkowym).

+

Własność document.bgColor jest wycofywana DOM Level 2 HTML. Zalecanym rozwiązaniem alternatywnym jest użycie stylu CSS background-color, gdy możemy uzyskać dostęp bezpośrednio przez DOM za pomocą własnościdocument.body.style.backgroundColor. Innym alternatywnym rozwiązaniem jest document.body.bgColor, chociaż to rozwiązanie jest także wycofywane w HTML 4.01 na rzecz rozwiązania wykorzystującego CSS .

+

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

+

{{ languages( { "en": "en/DOM/document.bgColor", "es": "es/DOM/document.bgColor" } ) }}

diff --git a/files/pl/web/api/document/body/index.html b/files/pl/web/api/document/body/index.html new file mode 100644 index 0000000000..1ae1aa480e --- /dev/null +++ b/files/pl/web/api/document/body/index.html @@ -0,0 +1,31 @@ +--- +title: document.body +slug: Web/API/Document/body +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/body +--- +

{{ ApiRef() }}

+

Podsumowanie

+

body zwraca węzeł <body> lub <frameset> z bieżącego dokumentu.

+

Składnia

+
objRef = document.body
+document.body =objRef
+
+

Przykład

+
// HTML: <body id="oldBodyElement"></body>
+alert(document.body.id); // "oldBodyElement"
+var aNewBodyElement = document.createElement("body");
+aNewBodyElement.id = "newBodyElement";
+document.body = aNewBodyElement;
+alert(document.body.id); // "newBodyElement"
+
+

Uwagi

+

document.body to element zawierający treść dokumentu. W dokumentach z elementem <body> własność zwraca tenże element, w dokumentach z definicją ramek zwracany jest najbardziej zewnętrzny element <frameset>.

+

Mimo, że body można samemu ustawić, jego zmiana spowoduje skuteczne usunięcie wszystkich potomków istniejącego elementu <body>.

+

Specyfikacja

+

body

+

{{ languages( { "en": "en/DOM/document.body", "es": "es/DOM/document.body" } ) }}

diff --git a/files/pl/web/api/document/characterset/index.html b/files/pl/web/api/document/characterset/index.html new file mode 100644 index 0000000000..4d7fa83359 --- /dev/null +++ b/files/pl/web/api/document/characterset/index.html @@ -0,0 +1,26 @@ +--- +title: document.characterSet +slug: Web/API/Document/characterSet +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/characterSet +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca kodowanie znaków dokumentu.

+

Składnia

+
ciąg = document.characterSet
+
+

Przykład

+
<button onclick="alert(document.characterSet);">Pokaż kodowanie znaków</button>
+// zwraca kodowanie znaków dokumentu, takie jak "ISO-8859-1 lub UTF-8"
+
+

Uwagi

+

Jest to zestaw znaków użyty przy renderowaniu strony, niekoniecznie taki, jak zadeklarowany w kodzie strony (użytkownik może narzucić własne kodowanie).

+

Kompletną listę dostępnych zestawów znaków znajdziesz tu: http://www.iana.org/assignments/character-sets.

+

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

+

{{ languages( { "en": "en/DOM/document.characterSet", "es": "es/DOM/document.characterSet" } ) }}

diff --git a/files/pl/web/api/document/clear/index.html b/files/pl/web/api/document/clear/index.html new file mode 100644 index 0000000000..fdeaf2e52e --- /dev/null +++ b/files/pl/web/api/document/clear/index.html @@ -0,0 +1,19 @@ +--- +title: document.clear +slug: Web/API/Document/clear +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document/clear +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda clear czyści dokument, usuwając całą jego zawartość.

+

Składnia

+
document.clear()
+
+

Przykład

+
<button label="empty" onclick="document.clear();" />
+
+

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

diff --git a/files/pl/web/api/document/close/index.html b/files/pl/web/api/document/close/index.html new file mode 100644 index 0000000000..b325beb8cc --- /dev/null +++ b/files/pl/web/api/document/close/index.html @@ -0,0 +1,26 @@ +--- +title: document.close +slug: Web/API/Document/close +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document/close +--- +
+ {{APIRef}}
+
+  
+

Podsumowanie

+

Metoda document.close() kończy zapis do otwartego dokumentu.

+

Składnia

+
document.close()
+
+

Przykład

+
// otwieramy dokument do zapisu
+// i kończymy zamknięciem poprzez close()
+document.open();
+document.write("<P>The only content</P>.");
+document.close();
+
+

Specyfikacja

+

close

diff --git a/files/pl/web/api/document/compatmode/index.html b/files/pl/web/api/document/compatmode/index.html new file mode 100644 index 0000000000..a2750f2ad8 --- /dev/null +++ b/files/pl/web/api/document/compatmode/index.html @@ -0,0 +1,32 @@ +--- +title: document.compatMode +slug: Web/API/Document/compatMode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/compatMode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, czy dokument renderowany jest w trybie zgodności wstecznej (ang. + + quirks mode + ), czy też w trybie standardów (ang. + + strict mode + ).

+

Składnia

+
tryb = document.compatMode
+
+

Parametry

+ +

Przykład

+
if ( document.compatMode == "BackCompat" ){
+  //wykonaj coś dla trybu zgodności
+}
+
+

{{ languages( { "en": "en/DOM/document.compatMode" } ) }}

diff --git a/files/pl/web/api/document/cookie/index.html b/files/pl/web/api/document/cookie/index.html new file mode 100644 index 0000000000..a711e9c1d2 --- /dev/null +++ b/files/pl/web/api/document/cookie/index.html @@ -0,0 +1,49 @@ +--- +title: document.cookie +slug: Web/API/Document/cookie +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/cookie +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Pobiera/ustawia listę ciasteczek powiązanych z dokumentem.

+ +

Składnia

+ +
listaCiasteczek = document.cookie
+document.cookie = listaCiasteczek
+
+ +

Parametry

+ + + +

Przykład

+ +
// ta funkcja ustawia dwa ciasteczka
+// a następnie wyświetla je w ostrzeżeniu
+function sgCookie() {
+  document.cookie = "name=oeschger";
+  document.cookie = "favorite_food=tripe";
+  alert(document.cookie);
+}
+// wyświetli: name=oeschger;favorite_food=tripe
+
+ +

Uwagi

+ +

Jeżeli nie ma ciasteczek powiązanych z tym dokumentem, funkcja zwraca pusty ciąg. Zauważ również, że nie możesz użyć tej własności, bu ustawić więcej niż jedno ciasteczko za jednym razem.

+ +

Specyfikacja

+ +

cookie

+ +

{{ languages( { "en": "en/DOM/document.cookie", "es": "es/DOM/document.cookie" } ) }}

diff --git a/files/pl/web/api/document/createattribute/index.html b/files/pl/web/api/document/createattribute/index.html new file mode 100644 index 0000000000..ad996d5161 --- /dev/null +++ b/files/pl/web/api/document/createattribute/index.html @@ -0,0 +1,29 @@ +--- +title: document.createAttribute +slug: Web/API/Document/createAttribute +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document/createAttribute +--- +

{{ ApiRef() }}

+

Podsumowanie

+

createAttribute tworzy nowy atrybut w bieżącym elemencie.

+

Składnia

+
atrybut = element.createAttribute(nazwa)
+
+

Parametry

+ +

Przykład

+
d = document.getElementById("div1");
+p = d.createAttribute("proportion");
+p.value = "100";
+
+

Uwagi

+

Zwracany jest węzeł typu Attribute. Kiedy masz już ten węzeł, tak jak w powyzszym przykładzie, możesz ustawić jego wartość za pomocą własności value. DOM nie wymusza typu atrybutów, jakie mogą zostać dodane w ten sposób do konkretnych elementów.

+

Specyfikacja

+

createAttribute

+

{{ languages( { "en": "en/DOM/document.createAttribute", "fr": "fr/DOM/document.createAttribute" } ) }}

diff --git a/files/pl/web/api/document/createdocumentfragment/index.html b/files/pl/web/api/document/createdocumentfragment/index.html new file mode 100644 index 0000000000..e6bf6e6da3 --- /dev/null +++ b/files/pl/web/api/document/createdocumentfragment/index.html @@ -0,0 +1,43 @@ +--- +title: document.createDocumentFragment +slug: Web/API/Document/createDocumentFragment +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/createDocumentFragment +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Tworzy pusty fragment dokumentu.

+ +

Składnia

+ +
var fragmentDokumentu = document.createDocumentFragment();
+
+ +

fragmentDokumentu jest odniesieniem do pustego obiektu DocumentFragment.

+ +

Przykład

+ +
var frag = document.createDocumentFragment();
+frag.appendChild(document.createTextNode('Ipsum Lorem'));
+document.body.appendChild(frag);
+
+ +

Uwagi

+ +

DocumentFragment jest minimalnym obiektem dokumentu, który nie posiada rodzica. Obsługuje on następujące metody DOM 2: appendChild, cloneNode, hasAttributes, hasChildNodes, insertBefore, normalize, removeChild, replaceChild.

+ +

Obsługuje on również następujące własności DOM 2: attributes, childNodes, firstChild, lastChild, localName, namespaceURI, nextSibling, nodeName, nodeType, nodeValue, ownerDocument, parentNode, prefix, previousSibling, textContent.

+ +

Różne inne metody potrafią pobrać fragment dokumentu jako argument (na przykład metody interfejsu Node takie jak appendChild i insertBefore), w przypadku których dodawane lub wstawiane są dzieci fragmentu, nie zaś same fragmenty.

+ +

Specyfikacja

+ +

createDocumentFragment

+ +

{{ languages( { "en": "en/DOM/document.createDocumentFragment" } ) }}

diff --git a/files/pl/web/api/document/createelement/index.html b/files/pl/web/api/document/createelement/index.html new file mode 100644 index 0000000000..bf657b4103 --- /dev/null +++ b/files/pl/web/api/document/createelement/index.html @@ -0,0 +1,74 @@ +--- +title: document.createElement +slug: Web/API/Document/createElement +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/createElement +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Tworzy element podanego typu. Zauważ, że zwracana instancja implementuje interfejs Element, zatem można manipulować atrybutami bezpośrednio na zwróconym obiekcie.

+ +

Składnia

+ +
''element'' = document.createElement(''typ'')
+
+ +

Parametry

+ + + +

Przykład

+ +
<html>
+<head>
+<title>||Praca z elementami||</title>
+</head>
+
+<script type="text/javascript">
+var my_div = null;
+var newDiv = null;
+
+function addElement()
+{
+  // tworzy nowy element div
+  // i daje jego zawartość
+  newDiv = document.createElement("div");
+  newDiv.innerHTML = "<h1>Hi there and greetings!</h1>";
+
+  // add the newly created element and it's content into the DOM
+  my_div = document.getElementById("org_div1");
+  document.body.insertBefore(newDiv, my_div);
+}
+
+</script>
+
+<body onload="addElement()">
+    <div id='org_div1'> The text above has been created dynamically.</div>
+</body>
+</html>
+
+ +

Uwagi

+ +

Jeżeli znane są atrybuty o domyślnych wartościach, zostaną automatycznie utworzone i przypisane do elementu węzły tychże atrybutów.

+ +

Aby utworzyć element o uściślonej nazwie i URI przestrzeni nazw, użyj metody createElementNS.

+ +

Specyfikacja

+ +

createElement

+ + + +
+ +

{{ languages( { "en": "en/DOM/document.createElement", "fr": "fr/DOM/document.createElement", "it": "it/DOM/document.createElement", "ja": "ja/DOM/document.createElement", "ko": "ko/DOM/document.createElement" } ) }}

diff --git a/files/pl/web/api/document/createevent/index.html b/files/pl/web/api/document/createevent/index.html new file mode 100644 index 0000000000..1064131504 --- /dev/null +++ b/files/pl/web/api/document/createevent/index.html @@ -0,0 +1,134 @@ +--- +title: document.createEvent +slug: Web/API/Document/createEvent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/createEvent +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Tworzy obiekt obsługi zdarzenia o określonym typie. Utworzony obiekt powinien zostać najpierw zainicjalizowany, a następnie przekazany do metody dispatchEvent elementu.

+

Składnia

+
var zdarzenie =document.createEvent(typ);
+
+ +

Przykład

+

dispatchEvent - przykład [pl]

+

Uwagi

+

Nazwy typów zdarzeń, które można przekazać do createEvent określane są przez + + moduły zdarzeń + . Niektóre moduły zdarzeń zdefiniowane są w specyfikacjach DOM Events, niektóre moduły w innych specyfikacjach (jak np. SVG), a pewne typy zdarzeń są specyficzne dla Gecko.

+

Szczegóły znajdziesz w poniższej tabeli.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Moduł zdarzeńTyp do przekazania w createEventMetoda używana do inicjalizacji zdarzenia
DOM Level 2 Events
Moduł zdarzeń interfejsu użytkownika"UIEvents"event.initUIEvent
Moduł zdarzeń myszy"MouseEvents"event.initMouseEvent
Moduł zdarzeń mutacji"MutationEvents"event.initMutationEvent
Moduł zdarzeń HTML"HTMLEvents"event.initEvent
DOM Level 3 Events
Moduł zdarzeń interfejsu użytkownika"UIEvent", "UIEvents"event.initUIEvent
Moduł zdarzeń myszy"MouseEvent", "MouseEvents"event.initMouseEvent
Moduł zdarzeń mutacji"MutationEvent", "MutationEvents"event.initMutationEvent
Moduł zdarzeń mutacji nazw (nie zaimplementowany przez Gecko - czerwiec 2006)"MutationNameEvent"event.initMutationNameEvent
Moduł zdarzeń tekstowych"TextEvent" (Gecko obsługuje też "TextEvents")event.initTextEvent
Moduł zdarzeń klawiatury"KeyboardEvent" (Gecko obsługuje też "KeyEvents")event.initKeyboardEvent
Moduł podstawowych zdarzeń"Event" (Gecko obsługuje też "Events")event.initEvent
SVG 1.1 Scripting
SVG"SVGEvents" (Gecko obsługuje też "SVGEvent")event.initEvent
"SVGZoomEvents" (Gecko obsługuje też "SVGZoomEvent")event.initUIEvent
Inne typy zdarzeń obsługiwane przez Gecko Gecko-related information is taken from nsEventDispatcher::CreateEvent code - see lxr.m.o
-"MouseScrollEvents", "PopupEvents"event.initMouseEvent
"PopupBlockedEvents"event.initPopupBlockedEvent
"XULCommandEvent", "XULCommandEvents"event.initCommandEvent
+

Niektóre zdarzenia mogą być tworzone przy użyciu dwóch nazw typów, ponieważ w specyfikacji DOM Level 3 Events zmieniono nazwy z liczby mnogiej na pojedynczą, pozostawiając nazwy w liczbie mnogiej dla zgodności wstecznej.

+

Specyfikacja

+

DOM Level 2 Events: createEvent

+

DOM Level 3 Events: createEvent

+

 

+
+  
+

{{ languages( { "en": "en/DOM/document.createEvent", "es": "es/DOM/document.createEvent", "ja": "ja/DOM/document.createEvent" } ) }}

diff --git a/files/pl/web/api/document/createrange/index.html b/files/pl/web/api/document/createrange/index.html new file mode 100644 index 0000000000..75dbacfe83 --- /dev/null +++ b/files/pl/web/api/document/createrange/index.html @@ -0,0 +1,29 @@ +--- +title: document.createRange +slug: Web/API/Document/createRange +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/createRange +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca nowy objekt Range.

+

Składnia

+
range = document.createRange();
+
+

range jest utworzonym objektem range.

+

Przykład

+
var range = document.createRange();
+range.setStart(startNode, startOffset);
+range.setEnd(endNode, endOffset);
+
+

Uwagi

+

Gdy tylko Range jest utworzony, musisz określić jego punkty graniczne zanim będziesz mógł użyć większości jego metod.

+

Specyfikacja

+

DOM Level 2 Range: DocumentRange.createRange

+
+  
+

{{ languages( { "en": "en/DOM/document.createRange", "es": "es/DOM/document.createRange" } ) }}

diff --git a/files/pl/web/api/document/createtextnode/index.html b/files/pl/web/api/document/createtextnode/index.html new file mode 100644 index 0000000000..1fe0f9bd27 --- /dev/null +++ b/files/pl/web/api/document/createtextnode/index.html @@ -0,0 +1,62 @@ +--- +title: document.createTextNode +slug: Web/API/Document/createTextNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/createTextNode +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Tworzy nowy węzeł tekstowy.

+ +

Składnia

+ +
var tekst = document.createTextNode(tresc)
+
+ +

Parametry

+ + + +

Przykład

+ +
<!DOCTYPE html>
+<html lang="en">
+<head>
+<title>createTextNode - przyklad</title>
+<script>
+function dodajWezelTekstowy(tekst) {
+  var nowytekst = document.createTextNode(tekst),
+      p1 = document.getElementById("p1");
+
+  p1.appendChild(nowytekst);
+}
+</script>
+</head>
+
+<body>
+  <button onclick="dodajWezelTekstowy('TAK! ');">TAK!</button>
+  <button onclick="dodajWezelTekstowy('NIE! ');">NIE!</button>
+  <button onclick="dodajWezelTekstowy('JASNE! ');">JASNE!</button>
+
+  <hr />
+
+  <p id="p1">Pierwsza linia paragrafu.</p>
+</body>
+</html>
+ +

Specyfikacja

+ +

createTextNode

+ +
 
+ +

{{ languages( { "en": "en/DOM/document.createTextNode", "fr": "fr/DOM/document.createTextNode", "ko": "ko/DOM/document.createTextNode" } ) }}

diff --git a/files/pl/web/api/document/defaultview/index.html b/files/pl/web/api/document/defaultview/index.html new file mode 100644 index 0000000000..905a966998 --- /dev/null +++ b/files/pl/web/api/document/defaultview/index.html @@ -0,0 +1,24 @@ +--- +title: document.defaultView +slug: Web/API/Document/defaultView +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/defaultView +--- +

{{ ApiRef() }}

+

 

+

Podsumowanie

+

document.defaultView zwraca odnośnik do domyślnego AbstractView dokumentu, lub null jeśli żadny nie jest dostępne

+

Składnia

+
var docDView = document.defaultView;
+
+

Własność tylko do odczytu.

+

Uwagi

+

document.defaultView jest częścią interfejsu DOM poziomu 2 DocumentView.

+

document.defaultView jest głównie odnośnikiem do okna obiektu dla dokumentu, jednakże nie jest to zdefiniowane w specyfikacji i nie można się na tym opierać we wszystkich środowiskach zwłaszcza, że nie wszystkie przeglądarki to implementują. it would probably be useful to provide concrete examples here

+

Specyfikacja

+

DOM Level 2 Views: defaultView

+

{{ languages( { "en": "en/DOM/document.defaultView" } ) }}

diff --git a/files/pl/web/api/document/designmode/index.html b/files/pl/web/api/document/designmode/index.html new file mode 100644 index 0000000000..3956fa8d9e --- /dev/null +++ b/files/pl/web/api/document/designmode/index.html @@ -0,0 +1,53 @@ +--- +title: Document.designMode +slug: Web/API/Document/designMode +translation_of: Web/API/Document/designMode +--- +
{{ApiRef()}}
+ +

document.designMode kontroluje czy dokument może być edytowany. Dopuszczalne wartości to "on" (włączona edycja) oraz "off" (wyłączona edycja). Zgodnie ze specyfikacją, wartość domyślna to "off". Firefox stosuje ten standard. Dla wcześniejszych wersji Chrome oraz IE domyślną wartością było "inherit". Od wersji Chrome 43, standardem jest wartość "off", a "inherit" nie jest wspierane. W IE 6-10, wartość jest używana naprzemiennie.

+ +

Składnia

+ +
var mode = document.designMode;
+document.designMode = "on" || "off";
+ +

Przykład

+ +

Spraw aby element {{HTMLElement("iframe")}} był edytowalny:

+ +
iframeNode.contentDocument.designMode = "on";
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', '#making-entire-documents-editable:-the-designmode-idl-attribute', 'designMode')}}{{Spec2('HTML WHATWG')}}Definicja
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("api.Document.designMode")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/document/doctype/index.html b/files/pl/web/api/document/doctype/index.html new file mode 100644 index 0000000000..4894005b15 --- /dev/null +++ b/files/pl/web/api/document/doctype/index.html @@ -0,0 +1,21 @@ +--- +title: document.doctype +slug: Web/API/Document/doctype +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/doctype +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca definicję typu bieżącego dokumentu (DTD).

+

Składnia

+
ciąg = document.doctype
+
+

Uwagi

+

Atrybut doctype jest tylko do odczytu. Jeżeli nie ma DTD w dokumencie, zwrócone zostaje NULL.

+

Specyfikacja

+

docType

+

{{ languages( { "en": "en/DOM/document.doctype" } ) }}

diff --git a/files/pl/web/api/document/documentelement/index.html b/files/pl/web/api/document/documentelement/index.html new file mode 100644 index 0000000000..bc729c829f --- /dev/null +++ b/files/pl/web/api/document/documentelement/index.html @@ -0,0 +1,60 @@ +--- +title: document.documentElement +slug: Web/API/Document/documentElement +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/documentElement +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Tylko do odczytu

+ +

Zwraca Element będący bezpośrednim dzieckiem document (na przykład dla dokumentów HTML jest to element <html>).

+ +

Składnia

+ +
varelement = document.documentElement;
+
+ +

Przykład

+ +
actual_doc = document.documentElement;
+first_tier = actual_doc.childNodes;
+//first_tier to bezpośrednie dzieci HTML
+for (var i = 0; i < first_tier.length; i++) {
+   //zrób cos z każdym dzieckiem HTML
+   //poprzez first_tier[i]
+}
+
+ +
var rootElement = document.documentElement;
+var firstTier = rootElement.childNodes;
+// firstTier jest NodeList bezpośredniego dziecka elementu głównego
+for (var i = 0; i < firstTier.length; i++) {
+   // zrób coś z każdym dzieckiem HTML głównego elementu
+   // as firstTier[i]
+}
+
+ +

Uwagi

+ +

Ta własność tylko do odczytu jest udogodnieniem w przechwytywaniu elementu HTML, powiązanego z każdym prawidłowym dokumentem HTML.

+ +

Powyżej typowy przykład: potrzebujesz w rzeczywistości elementu HTML, aby mieć dostęp do wszystkich jego dzieci, więc używasz tej własności obiektu document, aby go przejąć.

+ +

Zauważ też, że zazwyczaj document zawiera jeden węzeł-dziecko - HTML - który sam zawiera wszystkie elementy faktycznego dokumentu jako listę węzłów-dzieci (nodeList).

+ +

Specyfikacja

+ +

DOM Level 2 Core: Document.documentElement

+ + + +
+ +

{{ languages( { "en": "en/DOM/document.documentElement", "es": "es/DOM/document.documentElement", "fr": "fr/DOM/document.documentElement", "ja": "ja/DOM/document.documentElement" } ) }}

diff --git a/files/pl/web/api/document/domain/index.html b/files/pl/web/api/document/domain/index.html new file mode 100644 index 0000000000..e64ad2e641 --- /dev/null +++ b/files/pl/web/api/document/domain/index.html @@ -0,0 +1,30 @@ +--- +title: document.domain +slug: Web/API/Document/domain +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/domain +--- +

{{ ApiRef() }}

+

Podsumowanie

+

domain pobiera/ustawia domenę bieżącego dokumentu.

+

Składnia

+
ciąg = document.domain
+document.domain =ciąg
+
+

Przykład

+
bad_domain = "www.love.com";
+if ( document.domain == bad_domain ) {
+   window.close();
+}
+// jeśli dokument to www.love.com/good.html,
+// to skrypt zamknie okno
+
+

Uwagi

+

Właściwość zwraca NULL jezeli nie można zidentyfikować serwera. W specyfikacji DOM własność tą oznaczono jako tylko do oczytu, jednak Mozilla pozwala na jej modyfikację.

+

Specyfikacja

+

domain

+

{{ languages( { "en": "en/DOM/document.domain" } ) }}

diff --git a/files/pl/web/api/document/drag_event/index.html b/files/pl/web/api/document/drag_event/index.html new file mode 100644 index 0000000000..ccc5d55cbb --- /dev/null +++ b/files/pl/web/api/document/drag_event/index.html @@ -0,0 +1,333 @@ +--- +title: drag +slug: Web/API/Document/drag_event +tags: + - DOM + - Zdarzenie + - przeciągnij i upuść +translation_of: Web/API/Document/drag_event +--- +
{{APIRef}}
+ +

Zdarzenie przeciągania uruchamiane jest po przeciągnięciu elementu lub tekstu (co kilkaset milisekund).

+ +

Ogólne informacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
BąbelkowanieTak
CancelableTak
Obiekt docelowy{{domxref("Document")}}, {{domxref("Element")}}
Interfejs{{domxref("DragEvent")}}
Domyślna akcjaKontynuuje operacje przeciągania i upuszczania
+ +

Właściwości

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropertyTypeDescription
target {{readonlyInline}}EventTargetThe element that was underneath the element being dragged.
type {{readonlyInline}}DOMStringThe type of event.
bubbles {{readonlyInline}}BooleanWhether the event normally bubbles or not
cancelable {{readonlyInline}}BooleanWhether the event is cancellable or not?
view {{readonlyInline}}WindowProxydocument.defaultView (window of the document)
detail {{readonlyInline}}long (float)0.
dataTransferDataTransferThe data that underlies a drag-and-drop operation, known as the drag data store. Protected mode.
currentTarget {{readonlyInline}}EventTargetThe node that had the event listener attached.
relatedTarget {{readonlyInline}}EventTargetFor mouseover, mouseout, mouseenter and mouseleave events: the target of the complementary event (the mouseleave target in the case of a mouseenter event). null otherwise.
screenX {{readonlyInline}}longThe X coordinate of the mouse pointer in global (screen) coordinates.
screenY {{readonlyInline}}longThe Y coordinate of the mouse pointer in global (screen) coordinates.
clientX {{readonlyInline}}longThe X coordinate of the mouse pointer in local (DOM content) coordinates.
clientY {{readonlyInline}}longThe Y coordinate of the mouse pointer in local (DOM content) coordinates.
button {{readonlyInline}}unsigned shortThe button number that was pressed when the mouse event was fired: Left button=0, middle button=1 (if present), right button=2. For mice configured for left handed use in which the button actions are reversed the values are instead read from right to left.
buttons {{readonlyInline}}unsigned shortThe buttons being pressed when the mouse event was fired: Left button=1, Right button=2, Middle (wheel) button=4, 4th button (typically, "Browser Back" button)=8, 5th button (typically, "Browser Forward" button)=16. If two or more buttons are pressed, returns the logical sum of the values. E.g., if Left button and Right button are pressed, returns 3 (=1 | 2). More info.
mozPressure {{readonlyInline}}floatThe amount of pressure applied to a touch or tabdevice when generating the event; this value ranges between 0.0 (minimum pressure) and 1.0 (maximum pressure).
ctrlKey {{readonlyInline}}booleantrue if the control key was down when the event was fired. false otherwise.
shiftKey {{readonlyInline}}booleantrue if the shift key was down when the event was fired. false otherwise.
altKey {{readonlyInline}}booleantrue if the alt key was down when the event was fired. false otherwise.
metaKey {{readonlyInline}}booleantrue if the meta key was down when the event was fired. false otherwise.
+ +

Przykład

+ +
<div class="dropzone">
+  <div id="draggable" draggable="true" ondragstart="event.dataTransfer.setData('text/plain',null)">
+    This div is draggable
+  </div>
+</div>
+<div class="dropzone"></div>
+<div class="dropzone"></div>
+<div class="dropzone"></div>
+
+<style>
+  #draggable {
+    width: 200px;
+    height: 20px;
+    text-align: center;
+    background: white;
+  }
+
+  .dropzone {
+    width: 200px;
+    height: 20px;
+    background: blueviolet;
+    margin-bottom: 10px;
+    padding: 10px;
+  }
+</style>
+
+<script>
+  var dragged;
+
+  /* events fired on the draggable target */
+  document.addEventListener("drag", function( event ) {
+
+  }, false);
+
+  document.addEventListener("dragstart", function( event ) {
+      // store a ref. on the dragged elem
+      dragged = event.target;
+      // make it half transparent
+      event.target.style.opacity = .5;
+  }, false);
+
+  document.addEventListener("dragend", function( event ) {
+      // reset the transparency
+      event.target.style.opacity = "";
+  }, false);
+
+  /* events fired on the drop targets */
+  document.addEventListener("dragover", function( event ) {
+      // prevent default to allow drop
+      event.preventDefault();
+  }, false);
+
+  document.addEventListener("dragenter", function( event ) {
+      // highlight potential drop target when the draggable element enters it
+      if ( event.target.className == "dropzone" ) {
+          event.target.style.background = "purple";
+      }
+
+  }, false);
+
+  document.addEventListener("dragleave", function( event ) {
+      // reset background of potential drop target when the draggable element leaves it
+      if ( event.target.className == "dropzone" ) {
+          event.target.style.background = "";
+      }
+
+  }, false);
+
+  document.addEventListener("drop", function( event ) {
+      // prevent default action (open as link for some elements)
+      event.preventDefault();
+      // move dragged elem to the selected drop target
+      if ( event.target.className == "dropzone" ) {
+          event.target.style.background = "";
+          dragged.parentNode.removeChild( dragged );
+          event.target.appendChild( dragged );
+      }
+
+  }, false);
+</script>
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("HTML WHATWG", "interaction.html#dndevents", "drag event")}}{{Spec2("HTML WHATWG")}} 
{{SpecName("HTML5.1", "editing.html#dndevents", "drag event")}}{{Spec2("HTML5.1")}}Initial definition
+ +

Obsługiwane przeglądarki

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support4{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.9.1")}}10123.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewChrome for AndroidEdgeFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatIE("10")}}{{CompatNo}}{{CompatNo}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/api/document/embeds/index.html b/files/pl/web/api/document/embeds/index.html new file mode 100644 index 0000000000..ca0ab4ff2f --- /dev/null +++ b/files/pl/web/api/document/embeds/index.html @@ -0,0 +1,22 @@ +--- +title: document.embeds +slug: Web/API/Document/embeds +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/embeds +--- +

{{ ApiRef() }}

+

Podsumowanie

+

embeds zwraca listę obiektów OBJECT zagnieżdżonych w bieżącym dokumencie.

+

Składnia

+
listaWęzłów = document.embeds
+
+

Specyfikacja

+

{{ DOM0() }}

+


+ MSDN: embeds collection

+

{{ languages( { "en": "en/DOM/document.embeds" } ) }}

diff --git a/files/pl/web/api/document/execcommand/index.html b/files/pl/web/api/document/execcommand/index.html new file mode 100644 index 0000000000..0718107051 --- /dev/null +++ b/files/pl/web/api/document/execcommand/index.html @@ -0,0 +1,280 @@ +--- +title: Document.execCommand() +slug: Web/API/Document/execCommand +tags: + - API + - DOM + - Method + - NeedsBrowserCompatibility + - NeedsExample + - Reference + - edytor +translation_of: Web/API/Document/execCommand +--- +
+ +
Kiedy dokument HTML jest przełączony w tryb designMode, obiekt dokumentu udostępnia metodę execCommand, która pozwala uruchomić komendy manipulujące edytowalnym obszarem. Większość poleceń wpływa na zaznaczony obszar (pogrubienie, kursywa itd.), podczas gdy inne wstawiają nowe elementy (dodawanie linku) lub wpływają na całą linię (wcięcia). Przy użyciu contentEditable, wywołanie execCommand() wpływa na aktywny edytowalny element.
+ +

Składnia

+ +
bool = document.execCommand(aCommandName, aShowDefaultUI, aValueArgument)
+
+ +

Zwracane wartości

+ +

Obiekt {{jsxref('Boolean')}}, który zwraca false, jeśli polecenie jest niewspierane lub włączone. Uwaga: Zwraca prawdę tylko jeśli jest częścią UI, to znaczy - nie jest używana do sprawdzania wsparcia przeglądarki przed renderowaniem elementu, który wywołuje polecenie. 

+ +

Parametry

+ +
+
aCommandName
+
Typu {{domxref("DOMString")}} - określanazwę polecenia do wykonania. Zobacz {{anch("Commands")}}, aby wyświetlić listę poleceń.
+
aShowDefaultUI
+
Typu {jsxref("Boolean")}} - wskazuje czy domyślny interfejs użytkownika powinien być pokazany. Nie jest implementowane przez Mozillę.
+
aValueArgument
+
W przypadku komend wymagających wprowadzenia argumentu (takiego jak insertImage, gdzie jest to URL do grafiki do wstawienia), jest to {{domxref("DOMString")}} przekazujący te informacje. Podaj null, jeśli niewymagany.
+
+ +

Polecenia

+ +
+
backColor
+
Zmienia kolor tła. W trybie styleWithCss zmieia kolor jedynie zawierającego elementu. Wymaga podania ciągu znaków{{cssxref("<color>")}} jako wartości argumentu. Zwróć uwagę na to, że Internet Explorer używa tego do zmiany koloru tła tekstu.
+
bold
+
Włącza/wyłącza pogrubienie w zaznaczeniu lub miejscu wstawiania. IE używa znacznika {{HTMLElement("strong")}} zamiast {{HTMLElement("b")}}.
+
contentReadOnly
+
Sprawia, że dokument jest zawartość jest tylko do odczytu lub edytowalna. Wymaga prawdy/fałszu jako wartości argumentu. (Nie wspierany przez IE).
+
copy
+
Kopiuje zaznaczenie do schowkka. Warunki włączenia tego zachowania różnią się między przeglądarkami i zmieniają się w czasie. Sprawdź tabelę zgodności, aby określić, czy możesz użyć w swoim przypadku.
+
createLink
+
Wstawia link z zaznaczenia (wymaga zaznaczenia). HREF URI musi być podany jako wartość argumentu. URI musi zawierać co najmniej jeden zak, może być białym znakiem (IE utworzy link z wartością null).
+
cut
+
Usuwa zaznaczenie kopiując do schowka. Warunki włączenia tego zachowania różnią się między przeglądarkami i zmieniają się w czasie. Sprawdź tabelę zgodności, aby określić, czy możesz użyć w swoim przypadku.
+
decreaseFontSize
+
Wstawia znacznik {{HTMLElement("small")}} wokół zaznaczenia lub w miejscu wstawienia. (Nie wspierane przez IE.)
+
defaultParagraphSeparator
+
Zmienia separator akapitu używany podczas tworzenia nowych akapitów w edytowalnych regionach tekstowych.  Zobacz Differences in markup generation po więcej szczegółów.
+
delete
+
Usuwa zaznaczenie.
+
enableInlineTableEditing
+
Włącza lub wyłącza wstawianie wierszy i kolumn oraz elementy sterujące usuwaniem. (Nie obsługiwane przez Internet Explorer.)
+
enableObjectResizing
+
Umożliwia lub uniemożliwia zmianę rozmiaru uchwytów na obrakach lub innych skalowalnych obiektów.  (Nie wspierane przez IE)
+
fontName
+
Zmienia nazwę czcionki dla zaznaczenia lub w punkcie wstawiania. Wymaga ciągu znaków (np. "Arial") jako wartości argumentu.
+
fontSize
+
Zmienia rozmiar czcionki dla zaznaczenia lub w punkcie wstawiania. Wymaga rozmiaru czcionki HTML (1-7) jako wartości argumentu.
+
foreColor
+
Zmienia kolor czcionki dla zaznaczenia lub w punkcie wstawiania. Wymaga wartości koloru (w postaci ciągu znaków) jako wartości argumentu.
+
formatBlock
+
Wstawia tag stylu blokowego dla linii w zaznaczeniu, zastępując blokowy element zawierający linię, jeśli taki istnieje (w Firefoxie, BLOCKQUOTE jest wyjątkiem - zawinie blokowy element zawierający).  Wymaga ciągu znaków oznaczającego znacznik jako wartość argumentu. Można użyć praktycznie wszystkich (np. "H1", "P", "DL", "BLOCKQUOTE). (IE wspiera jedynie H1-H6, "ADDRESS", PRE, które jeszcze muszą zawierać nawiasy znaczników <>, tak jak "<h1">).
+
forwardDelete
+
Usuwa znak przed pozycją kursora.  Działa jak wciśnięcie klawisza Delete.
+
heading
+
Wstawia tag nagłówka naokoło zaznaczenia lub w miejscu wstawiania. Wymaga ciągu znaków oznaczającego nazwę tagu jako wartości argumentu (np. "H1", "H6"). (Nie wspierane przez IE ani Safari).
+
hiliteColor
+
Zmienia kolor tła dla zaznaczenia lub w miejscu wstawiania. Wymaga ciągu znaków w postaci wartości kolorów jako wartości argumentu. Do użycia tej funkcji jest wymagane użycie CSS. (Nie wspierane przez IE).
+
increaseFontSize
+
Wstawia tag BIG naokoło zaznaczenia lub w miejscu wstawiania. (Nie wspierane przez IE).
+
indent
+
Wcina wiersz zawierający zaznaczenie lub punkt wstawiania. W Firefixie, jeśli zaznaczenie obejmuje wiele linii na różnych poziomach wcięcia, jedynie ostatnie wcięte linie zostaną wcięte.
+
insertBrOnReturn
+
Kontroluje, czy klawisz Enter wstawia tag BR, czy dzieli elemet blokowy na dwa (Nie wspierane przez IE)
+
insertHorizontalRule
+
Wstawia poziomą linię w miejscu wstawiania (usuwa zaznaczenie).
+
insertHTML
+
Wstawia ciąg znaków w postaci kodu HTML (usuwa zaznaczenie). Wymaga poprawnego kodu jako wartość argumentu. (Nie wspierane prze
+
insertImage
+
Wstawia grafikę w punkcie wstawiania (usuwa zaznaczenie). Wymaga ciągu znaków w postaci SRC URI jako wartości argumentu. URI musi zawierać co najmniej jeden znak (może być to biały znak). (Nie wspierane przez IE).
+
insertOrderedList
+
Wstawia numerowaną listę dla zaznaczenia lub w punkcie wstawiania.
+
insertUnorderedList
+
Wstawia punktowaną listę dla zaznaczenia lub w punkcie wstawiania.
+
insertParagraph
+
Wstawia akapit naokoło zaznaczenia lub w danej linii. (IE wstawia akapit w miejscu wstaawiania i usuwa zaznaczenie).
+
insertText
+
Wstawia dany tekst w miejsce wstawiania (usuwa zaznaczenie).
+
italic
+
Włącza/wyłącza pochylenie dla zaznaczenia lub w miejscu wstawiania (IE używa tagu EM zamiast I).
+
justifyCenter
+
Wyśrodkowuje zaznaczenie lub miejsce wstawiania.
+
justifyFull
+
Justuje zaznaczenie lub miejsce wstawiania.
+
justifyLeft
+
Wyrównuje do lewej zaznaczenie lub miejsce wstawiania.
+
justifyRight
+
Wyrównuje do prawej zaznaczenie lub miejsce wstawiaia.
+
outdent
+
Wysuwa linię zawierającą zaznaczenie lub punkt wstawiania.
+
paste
+
Wstawia zawartość schowka w miejscu wstawiania (zastępuje zaznaczenie). Nie działa dla zawartości z internetu. Zobacz [1]
+
redo
+
Ponawia ostatnio cofniętą komendę.
+
removeFormat
+
Usuwa całe formatowanie z zaznaczenia.
+
selectAll
+
Zaznacza całą zawartość z edytowalnego obszaru.
+
strikeThrough
+
Włącza/wyłącza przekreślenie dla zaznaczenia lub w punkcie wstawiania.
+
subscript
+
Włącza/wyłącza indeks dolny dla zaznaczenia lub w punkcie wstawiania.
+
superscript
+
Włącza/wyłącza indeks górny dla zaznaczenia lub w punkcie wstawiania.
+
underline
+
Włącza/wyłącza podkreślenie dla zaznaczenia lub w punkcie wstawiania.
+
undo
+
Cofa ostatnio wykonaną komendę.
+
unlink
+
Usuwa tag kotwicy z zaznaczonego linku.
+
useCSS {{Deprecated_inline}}
+
Przełącza użycie HTML/CSS dla generowanego kodu. Wymaga prawdy/fałszu jako wartości argumentu. UWAGA: dla CSS wymaga fałszu, dla HTML - prawdy. (Nie jest wspierane przez IE). Deprecjonowana właściwość. Użyj styleWithCSS
+
styleWithCSS
+
Zastępuje useCSS; działa normalnie - dla CSS wymaga prawdy, fałsz generuje HTML.
+
+ +

Example

+ +

Zobacz how to use w CodePen.

+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML Editing', '#execcommand()', 'execCommand')}}{{Spec2('HTML Editing')}}Initial definition
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}[1]{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
insertBrOnReturn{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
copy/cut{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(41)}}92910
defaultParagraphSeparator{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoDesktop(55)}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}[1]{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
insertBrOnReturn{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
copy/cut{{CompatNo}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile(41)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}
defaultParagraphSeparator{{CompatNo}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile(55)}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}
+
+ +

[1] Przed przeglądarką Firefox 41 w pliku preferencji user.js trzeba było włączyć obsługę schowka. Aby uzyskać więcej informacji, zobacz Krótki przewodnik po preferencjach Mozilli. Jeśli polecenie nie było obsługiwane lub włączone, execCommand rzucał wyjątek zamiast zwracać false. W Firefoxie 41 i nowszych, schowek może zostać zapisany w dowolnym programie obsługi zdarzeń read the clipboard. WebExtensions can interact with the clipboard.

+ +

Przed przeglądarką Firefox 41 w pliku preferencji user.js trzeba było włączyć obsługę schowka. Aby uzyskać więcej informacji, zobacz Krótki przewodnik po preferencjach Mozilli. Jeśli polecenie nie było obsługiwane lub włączone, execCommand podnosił wyjątek zamiast zwracać fałsz. W przeglądarce Firefox 41 i nowszych schowek może zostać zapisany w dowolnej obsłudze zdarzeń, która może spowodować wyskoczenie okna (częściowo zaufane skrypty), ale żadna treść internetowa nie może odczytać schowka. WebExtensions mogą wchodzić w interakcje ze schowkiem.

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/document/fgcolor/index.html b/files/pl/web/api/document/fgcolor/index.html new file mode 100644 index 0000000000..a9f0287372 --- /dev/null +++ b/files/pl/web/api/document/fgcolor/index.html @@ -0,0 +1,28 @@ +--- +title: document.fgColor +slug: Web/API/Document/fgColor +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/fgColor +--- +

{{ ApiRef() }}

+

Podsumowanie

+

fgColor pobiera/ustawia kolor pierwszoplanowy (kolor tekstu) bieżącego dokumentu.

+

Składnia

+
kolor = document.fgColor
+document.fgColor =kolor
+
+

Parametry

+ +

Przykład

+
document.fgColor = "white";
+document.bgColor = "darkblue";
+
+

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

+

{{ languages( { "en": "en/DOM/document.fgColor" } ) }}

diff --git a/files/pl/web/api/document/firstchild/index.html b/files/pl/web/api/document/firstchild/index.html new file mode 100644 index 0000000000..c2bc145b41 --- /dev/null +++ b/files/pl/web/api/document/firstchild/index.html @@ -0,0 +1,36 @@ +--- +title: document.firstChild +slug: Web/API/Document/firstChild +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/firstChild +--- +

{{ ApiRef() }}

+

Podsumowanie

+

document.firstChild zwraca pierwszy węzeł z listy bezpośrednich dzieci dokumentu.

+

Składnia

+
dziecko = document.firstChild
+
+

Parametry

+ +

Przykład

+
function fChild() {
+  f = document.firstChild;
+  alert(f.tagName);
+}
+// wyświetli: HTML
+
+

Uwagi

+

Zauważ, że możesz powrócić do drzewa DOM z tą własnością, by przejąć te węzły potomne, których potrzebujesz, ponieważ prawie zawsze firstChild zwraca element HTML.

+

Specyfikacja

+

firstChild

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/document.firstChild", "es": "es/DOM/document.firstChild", "fr": "fr/DOM/document.firstChild", "ja": "ja/DOM/document.firstChild" } ) }}

diff --git a/files/pl/web/api/document/forms/index.html b/files/pl/web/api/document/forms/index.html new file mode 100644 index 0000000000..dcba1e18e0 --- /dev/null +++ b/files/pl/web/api/document/forms/index.html @@ -0,0 +1,45 @@ +--- +title: document.forms +slug: Web/API/Document/forms +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/forms +--- +

{{ ApiRef() }}

+

Podsumowanie

+

forms zwraca listę elementów FORM z bieżącego dokumentu.

+

Składnia

+
listaWęzłów = document.forms
+
+

Przykład

+
<html>
+
+<head>
+<title> document.forms example</title>
+</head>
+
+<body>
+<form id="robby">
+ <input type="button" onclick="alert(document.forms[0].id);"
+ value="robby's form" />
+</form>
+
+<form id="dave">
+ <input type="button" onclick="alert(document.forms[1].id);"
+ value="dave's form" />
+</form>
+
+<form id="paul">
+ <input type="button" onclick="alert(document.forms[2].id);"
+ value="paul's form" />
+</form>
+
+</body>
+</html>
+
+

Specyfikacja

+

forms

+

{{ languages( { "en": "en/DOM/document.forms", "ja": "ja/DOM/document.forms" } ) }}

diff --git a/files/pl/web/api/document/getelementbyid/index.html b/files/pl/web/api/document/getelementbyid/index.html new file mode 100644 index 0000000000..51e1bd68c0 --- /dev/null +++ b/files/pl/web/api/document/getelementbyid/index.html @@ -0,0 +1,67 @@ +--- +title: document.getElementById +slug: Web/API/Document/getElementById +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/getElementById +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca element o określonym ID.

+ +

Składnia

+ +
var element = document.getElementById(id);
+
+ +

Parametry

+ + + +

Przykład

+ +
<html>
+<head>
+<title>Przykład getElementById</title>
+
+<script type="text/javascript">
+
+function changeColor(newColor)
+{
+ var elem = document.getElementById("para1");
+ elem.style.color = newColor;
+}
+</script>
+</head>
+
+<body>
+<p id="para1">Jakiś tekst</p>
+<button onclick="changeColor('blue');">niebieski</button>
+<button onclick="changeColor('red');">czerwony</button>
+</body>
+</html>
+
+ +

Uwagi

+ +

getElementById jest absolutną podstawą DOM. Jedną z najważniejszych zasad w programowaniu DOM jest unikalne identyfikowanie elementów, dzięki czemu można je przechwycić i manipulować nimi.

+ +

Jeżeli nie ma elementu o podanym ID, funkcja zwraca NULL. Zauważ też, że implementacja DOM musi wiedzieć, które atrybuty mają typ ID. Atrybuty o nazwie "ID" nie mają typu ID, o ile nie zostanie to tak zdefiniowane. Implementacje, które nie wiedzą, czy atrybuty mają typ ID czy nie, powinny zwracać NULL.

+ +

getElementById wprowadzono w DOM Level 2.

+ +

Specyfikacja

+ + + +

{{ languages( { "en": "en/DOM/document.getElementById", "fr": "fr/DOM/document.getElementById", "ja": "ja/DOM/document.getElementById" } ) }}

diff --git a/files/pl/web/api/document/getelementsbyclassname/index.html b/files/pl/web/api/document/getelementsbyclassname/index.html new file mode 100644 index 0000000000..a9e2037ac3 --- /dev/null +++ b/files/pl/web/api/document/getelementsbyclassname/index.html @@ -0,0 +1,82 @@ +--- +title: Document.getElementsByClassName() +slug: Web/API/Document/getElementsByClassName +tags: + - API + - DOM + - HTML5 + - Klasy +translation_of: Web/API/Document/getElementsByClassName +--- +

{{APIRef("DOM")}}

+ +

Zwraca obiekt podobny do tablicy, zawierający wszystkie elementy, które mają przypisaną daną klasę. Kiedy użyjemy tej funkcji w odniesieniu do elementu document, cały dokument jest przeszukiwany - na wszystkich poziomach.

+ +

Możesz również użyć funkcji {{domxref("Element.getElementsByClassName", "getElementsByClassName()")}} na dowolnym elemencie; wtedy zwróci jedynie elementy zawierające daną klasę, które zawierają się w obrębie elementu wskazanego przez nas.

+ +

Składnia

+ +
var elements = document.getElementsByClassName(names); // or:
+var elements = rootElement.getElementsByClassName(names);
+ + + +

Przykłady

+ +

Szukamy wszystkich elementów posiadających klasę 'test':

+ +
document.getElementsByClassName('test');
+ +

Szukamy elementów, które posiadają jednocześnie klasę 'red' oraz 'test':

+ +
document.getElementsByClassName('red test');
+ +

Szukamy elementów posiadających klasę 'test', w obrębie elementu o ID 'main':

+ +
document.getElementById('main').getElementsByClassName('test');
+ +

Możemy też użyć metody Array.prototype. W ten sposób znajdziemy wszystkie elementy div posiadające klasę 'test':

+ +
var testElements = document.getElementsByClassName('test');
+var testDivs = Array.prototype.filter.call(testElements, function(testElement){
+    return testElement.nodeName === 'DIV';
+});
+ +

Uwagi

+ +

Należy zwrócić uwagę na różnice w zwracanej wartości w zależności od składni (aby została zwrócona konkretna wartość należy posłużyć się indeksem):

+ +
<!doctype html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Document</title>
+</head>
+<body>
+    <div id="parent-id">
+        <p>hello word1</p>
+        <p class="test">hello word2</p>
+        <p >hello word3</p>
+        <p>hello word4</p>
+    </div>
+    <script>
+        var parentDOM = document.getElementById("parent-id");
+
+        var test=parentDOM.getElementsByClassName("test");//test is not target element
+        console.log(test);//HTMLCollection[1]
+
+        var testTarget=parentDOM.getElementsByClassName("test")[0];//here , this element is target
+        console.log(testTarget);//<p class="test">hello word2</p>
+    </script>
+</body>
+</html>
+ +

Specyfikacja

+ + diff --git a/files/pl/web/api/document/getelementsbyname/index.html b/files/pl/web/api/document/getelementsbyname/index.html new file mode 100644 index 0000000000..1cadc785de --- /dev/null +++ b/files/pl/web/api/document/getelementsbyname/index.html @@ -0,0 +1,35 @@ +--- +title: document.getElementsByName +slug: Web/API/Document/getElementsByName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/getElementsByName +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca listę elementów w dokumencie o żądanym atrybucie name.

+

Składnia

+
elementy = document.getElementsByName(nazwa)
+
+

Parametry

+ +

Przykład

+
// zwraca niektóre z DIV-ów
+<div name="up">200</div>
+<div name="up">145</div>
+<div name="down">146</div>
+<div name="other">178</div>
+up_divs = document.getElementsByName("up");
+dump(up_divs.item(0).tagName); // zwraca "div"
+
+

Uwagi

+

document.getElementsByName zwraca listę węzłów wszystkich elementów o zadanej wartości atrybutu name. W przeciwieństwie do getElementsByTagName, który analizuje samą nazwę elementu, ta metoda pracuje tylko na elementach, których atrybut name został wyraźnie podany.

+

Specyfikacja

+

getElementsByName

+

{{ languages( { "en": "en/DOM/document.getElementsByName", "fr": "fr/DOM/document.getElementsByName", "ja": "ja/DOM/document.getElementsByName" } ) }}

diff --git a/files/pl/web/api/document/getelementsbytagname/index.html b/files/pl/web/api/document/getelementsbytagname/index.html new file mode 100644 index 0000000000..b4db8f428d --- /dev/null +++ b/files/pl/web/api/document/getelementsbytagname/index.html @@ -0,0 +1,108 @@ +--- +title: document.getElementsByTagName +slug: Web/API/Document/getElementsByTagName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Document/getElementsByTagName +--- +

{{ ApiRef("DOM") }}

+ +

Podsumowanie

+ +

Zwraca listę elementów o podanej nazwie znacznika. Przeszukiwany jest cały dokument, łącznie z głównym węzłem.

+ +

Składnia

+ +
elements = document.getElementsByTagName(name)
+
+ + + +

Przykład

+ +

W poniższym przykładzie getElementsByTagName starts from a particular parent element, and searches topdown recursively through the DOM from that parent element, looking for child elements matching the tag name parameter.

+ +

Zauważ, że gdy węzeł, w którym przywołano getElementsByTagName, nie jest węzłem document, to w rzeczywistości użyta jest metoda element.getElementsByTagName.

+ +
<html>
+
+<head>
+<title>Przykład getElementsByTagName</title>
+
+<script type="text/javascript">
+
+function getAllParaElems()
+{
+  var allParas = document.getElementsByTagName("p");
+
+  var num = allParas.length;
+
+  alert("W tym dokumencie jest " + num + " elementów <p>");
+}
+
+
+function div1ParaElems()
+{
+  var div1 = document.getElementById("div1")
+  var div1Paras = div1.getElementsByTagName("p");
+
+  var num = div1Paras.length;
+
+  alert("W elemencie div1 znajduje się " + num + " elementów <p>");
+}
+
+
+function div2ParaElems()
+{
+  var div2 = document.getElementById("div2")
+  var div2Paras = div2.getElementsByTagName("p");
+
+  var num = div2Paras.length;
+
+  alert("W elemencie div2 znajduje się " + num + " elementów <p>");
+}
+
+</script>
+</head>
+
+<body style="border: solid green 3px">
+<p>Trochę zewnętrznego tekstu</p>
+<p>Trochę zewnętrznego tekstu</p>
+
+  <div id="div1" style="border: solid blue 3px">
+    <p>Trochę tekstu w div1</p>
+    <p>Trochę tekstu w div1</p>
+    <p>Trochę tekstu w div1</p>
+
+    <div id="div2" style="border: solid red 3px">
+    <p>Trochę tekstu w div2</p>
+    <p>Trochę tekstu w div2</p>
+    </div>
+  </div>
+
+<p>Trochę zewnętrznego tekstu</p>
+<p>Trochę zewnętrznego tekstu</p>
+
+<button onclick="getAllParaElems();">
+ pokaż wszystkie elementy p w dokumencie</button><br />
+
+<button onclick="div1ParaElems();">
+ pokaż wszystkie elementy p w elemencie div1</button><br />
+
+<button onclick="div2ParaElems();">
+ pokaż wszystkie elementy p w elemencie div2</button>
+
+</body>
+</html>
+
+ +

Specyfikacja

+ +

DOM Level 2 Core: Document.getElementsByTagName

diff --git a/files/pl/web/api/document/hasfocus/index.html b/files/pl/web/api/document/hasfocus/index.html new file mode 100644 index 0000000000..afaa6079af --- /dev/null +++ b/files/pl/web/api/document/hasfocus/index.html @@ -0,0 +1,25 @@ +--- +title: document.hasFocus +slug: Web/API/Document/hasFocus +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/hasFocus +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność hasFocus zwraca wartość true, jeżeli fokus jest zlokalizowany w dowolnym miejscu danego dokumentu. {{ Note("Ten atrybut jest częścią specyfikacji HTML 5, która jest wciąż opracowywana.") }}

+

Składnia

+
focused = document.hasFocus();
+
+

Przykład

+

Specyfikacja

+

Zarządzanie fokusem

+

 

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/document.hasFocus", "es": "es/DOM/element.hasFocus", "fr": "fr/DOM/document.hasFocus", "ja": "ja/DOM/document.hasFocus" } ) }}

diff --git a/files/pl/web/api/document/head/index.html b/files/pl/web/api/document/head/index.html new file mode 100644 index 0000000000..d5436385fa --- /dev/null +++ b/files/pl/web/api/document/head/index.html @@ -0,0 +1,110 @@ +--- +title: Document.head +slug: Web/API/Document/head +translation_of: Web/API/Document/head +--- +

{{APIRef("DOM")}}

+ +

Zwraca element {{HTMLElement("head")}} aktualnego dokumentu. Jeżeli występuje więcej niż jeden element <head>, zwrócony zostanie tylko pierwszy.

+ +

Syntax

+ +
var objRef = document.head;
+
+ +

Przykład

+ +
// in HTML: <head id="my-document-head">
+var aHead = document.head;
+
+alert(aHead.id); // "my-document-head";
+
+alert( document.head === document.querySelector("head") ); // true
+
+ +

Uwagi

+ +

document.head jest atrybutem tylko do odczytu. Próby przypisania mu wartości nie spowodują żadnego efektu czy skutku ubocznego (przejdą 'po cichu') lub, jeżeli pracujemy w ECMAScript Strict Mode w przeglądarce Gecko, zostanie rzucony TypeError.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG','dom.html#dom-document-head','Document.head')}}{{Spec2('HTML WHATWG')}}Initial definition.
{{SpecName('HTML5.1','dom.html#dom-document-head','Document.head')}}{{Spec2('HTML5.1')}} 
{{SpecName('HTML5 W3C','dom.html#dom-document-head','Document.head')}}{{Spec2('HTML5 W3C')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support4.0{{CompatGeckoDesktop("2")}}9.011.05.0
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatGeckoMobile("2")}}9.0{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/api/document/height/index.html b/files/pl/web/api/document/height/index.html new file mode 100644 index 0000000000..1f777a7eb5 --- /dev/null +++ b/files/pl/web/api/document/height/index.html @@ -0,0 +1,34 @@ +--- +title: document.height +slug: Web/API/Document/height +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/height +--- +

{{ ApiRef() }}

+

Podsumowanie

+

height pobiera/ustawia wysokość dokumentu.

+

Składnia

+
wysokość = document.height
+document.height =wysokość
+
+

Parametry

+ +

Przykład

+
// zmniejsz okno po załadowaniu
+function onLoad() {
+    document.height = "200";
+    document.width = "200";
+}
+
+

Uwagi

+

Zobacz także DOM:document.width.

+

Specyfikacja

+

{{ DOM0() }}

+

{{ languages( { "en": "en/DOM/document.height" } ) }}

diff --git a/files/pl/web/api/document/images/index.html b/files/pl/web/api/document/images/index.html new file mode 100644 index 0000000000..e7d21794da --- /dev/null +++ b/files/pl/web/api/document/images/index.html @@ -0,0 +1,31 @@ +--- +title: document.images +slug: Web/API/Document/images +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/images +--- +

{{ ApiRef() }}

+

Podsumowanie

+

document.images zwraca listę obrazków w dokumencie.

+

Składnia

+
listaWęzłów = document.images
+
+

Przykład

+
var ilist = document.images;
+for(var i = 0; i < ilist.length; i++) {
+    if(ilist[i] == "banner.gif") {
+         // found the banner
+    }
+}
+
+

 

+

Uwagi

+

document.images.length – własność, zwraca liczbę obrazków na stronie.

+

document.images jest częścią DOM HTML i działa tylko dla dokumentów HTML.

+

Specyfikacja

+

DOM Level 2 HTML: HTMLDocument.images

+

{{ languages( { "ru": "ru/DOM/document.images", "en": "en/DOM/document.images", "fr": "fr/DOM/document.images" } ) }}

diff --git a/files/pl/web/api/document/implementation/index.html b/files/pl/web/api/document/implementation/index.html new file mode 100644 index 0000000000..3fe4d51af0 --- /dev/null +++ b/files/pl/web/api/document/implementation/index.html @@ -0,0 +1,21 @@ +--- +title: document.implementation +slug: Web/API/Document/implementation +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/implementation +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca obiekt implementacji DOM powiązanej z bieżącym dokumentem.

+

Składnia

+
obiektDOMImplementation = document.DOMImplentation
+
+

Uwagi

+

Obiekt DOMImplementaion, jeżeli jest dostępny, stanowi specjalny obiekt zapewniający możliwość kontrolowania spraw poza pojedynczym dokumentem. Na przykład interfejs DOMImplementation zawiera metodę createDocumentType pozwalającą na tworzenie DTD dla jednego lub więcej dokumentów zarządzanych przez implementację.

+

Specyfikacja

+

implementation (?)

+

{{ languages( { "en": "en/DOM/document.implementation" } ) }}

diff --git a/files/pl/web/api/document/importnode/index.html b/files/pl/web/api/document/importnode/index.html new file mode 100644 index 0000000000..be2cdf6367 --- /dev/null +++ b/files/pl/web/api/document/importnode/index.html @@ -0,0 +1,57 @@ +--- +title: document.importNode +slug: Web/API/Document/importNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Document/importNode +--- +

{{ ApiRef("DOM") }}

+ +

Podsumowanie

+ +

Tworzy kopię węzła z zewnętrznego dokumentu, która może być umieszczona wewnątrz bieżącego dokumentu.

+ +

Składnia

+ +
var node = document.importNode(externalNode,deep);
+
+ +
+
node
+
Zaimportowany węzeł
+ Własność parentNode jest ustawiona na null, ponieważ nie został jeszcze wstawiony do drzewa dokumentu
+
externalNode
+
Węzeł, bądź DocumentFragment przeznaczony do zaimportowania do bieżącego dokumentu.
+
deep
+
Boolean mówiący, czy importować potomki externalNode
+
+ +

Przykład

+ +
var iframe = document.getElementsByTagName("iframe")[0];
+var oldNode = iframe.contentDocument.getElementById("myNode");
+var newNode = document.importNode(oldNode,true);
+document.getElementById("container").appendChild(newNode);
+
+ +

Uwagi

+ +

Pierwotny węzeł nie jest usunięty z oryginalnego dokumentu. Importowany węzeł jest klonem oryginału .

+ + +

Przed włączeniem węzłów pochodzących z zewnętrznych dokumentów do bieżącego dokumentu konieczne jest ich sklonowanie za + pomocą metody document.importNode() (lub zaadaptowanie przy użyciu metody document.adoptNode()). Więcej informacji na temat własności + Node.ownerDocument znajduje się na liście najczęściej zadawanych pytań na temat + DOM w witrynie W3C.

+ +

Aktualnie Firefox nie wymusza tej reguły (robił to przez pewien czas podczas cykli rozwojowych Firefoksa 3, ale zbyt + dużo stron przestawało działać po wymuszeniu tej reguły). Zachęcamy autorów stron do poprawienia ich kodu dla lepszej + kompatybilności w przyszłości.

+ +

Specyfikacja

+ +

DOM Level 2 Core: Document.importNode

diff --git a/files/pl/web/api/document/index.html b/files/pl/web/api/document/index.html new file mode 100644 index 0000000000..a5aa06d6dd --- /dev/null +++ b/files/pl/web/api/document/index.html @@ -0,0 +1,332 @@ +--- +title: document +slug: Web/API/Document +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document +--- +

{{ ApiRef() }}

+ +

Wprowadzenie

+ +

Obiekt document stanowi w DOM ogólny sposób reprezentowania dokumentów HTML, XHTML i XML. Poza ogólnym interfejsem dokumentu, w ponizszej liscie uwzgledniono takze DOM HTMLDocument, bedacy bardziej wyspecjalizowanym interfejsem, przeznaczonym do pracy z dokumentami HTML (np. wlasnosci takie jak document.cookie, document.alinkColor). Czesci tego bardziej wyspecjalizowanego interfejsu zostaly oznaczone gwiazdka (*).

+ +

document zawarty jest w obiekcie window i moze zawierac dowolna liczbe elementów.

+ +

Tak jak widac na ponizszej liscie, interfejsy document odpowiadaja za rzeczy takie jak typ dokumentu, jego cechy, jak kolory czy formatowanie, wtyczki i aplety przedstawiane uzytkownikowi, ale sa tu tez metody do tworzenia węzłów potomnych dokumentu, a takze elementy znajdujace sie zwykle w reprezentacji dokumentu, jak <BODY>.

+ +

Wlasnosci

+ +
+
document.alinkColor* {{ Deprecated_inline() }}
+
Zwraca lub ustawia kolor aktywnych odnośników w dokumencie.
+
+ +
+
document.anchors*
+
Zwraca listę wszystkich kotwic w dokumencie.
+
+ +
+
document.applets*
+
Zwraca uporządkowaną listę apletów w dokumencie.
+
+ +
+
document.bgColor* {{ Deprecated_inline() }}
+
Pobiera/ustawia kolor tła dokumentu.
+
+ +
+
document.body*
+
Zwraca węzeł elementu BODY w dokumencie.
+
+ +
+
document.characterSet
+
Zwraca nazwę zestawu znaków uzytego w dokumencie.
+
+ +
+
document.compatMode*
+
Wskazuje, czy dokument jest renderowany w trybie zgodności wstecznej czy w trybie standardów.
+
+ +
+
document.contentType
+
Zwraca Content-Type z nagłówka MIME bieżącego dokumentu.
+
+ +
+
document.cookie*
+
Zwraca rozdzielona średnikami listę ciasteczek dokumentu bądź zapisuje pojedyncze ciasteczko.
+
+ +
+
document.defaultView
+
Zwraca referencje do obiektu window.
+
+ +
+
document.designMode*
+
Pobiera/ustawia możliwość edytowania w trybie WYSIWYG za pomocą edytora Midas. Może zostać użyty wyłącznie w dokumentach HTML.
+
+ +
+
document.doctype
+
Zwraca definicje typu dokumentu (DTD).
+
+ +
+
document.documentElement
+
Zwraca element będący bezpośrednim dzieckiem dokumentu.W dokumentach <HTML> jest to zazwyczaj element.
+
+ +
+
document.documentURIObject {{ Fx_minversion_inline(3) }}
+
Zwraca obiekt nsIURI reprezentujący URI dokumentu. Własność ta jest wspomagana wyłącznie z kodu JavaScriptu.
+
+ +
+
document.domain*
+
Zwraca domenę bieżącego dokumentu.
+
+ +
+
document.embeds*
+
Zwraca listę obiektów (OBJECT) zagnieżdżonych w dokumencie.
+
+ +
+
document.fgColor* {{ Deprecated_inline() }}
+
Pobiera/ustawia kolor pierwszoplanowy (kolor tekstu) w dokumencie.
+
+ +
+
document.firstChild
+
Zwraca pierwszy węzeł spośród bezpośrednich dzieci dokumentu (zob. własność elementów firstChild).
+
+ +
+
document.forms*
+
Zwraca listę elementów FORM w dokumencie.
+
+ +
+
document.height*
+
Pobiera/ustawia wysokość dokumentu.
+
+ +
+
document.images*
+
Zwraca listę obrazków w dokumencie.
+
+ +
+
document.implementation*
+
Zwraca obiekt implementacji DOM powiązany z bieżącym dokumentem.
+
+ +
+
document.lastModified*
+
Zwraca datę ostatniej modyfikacji dokumentu.
+
+ +
+
document.linkColor* {{ Deprecated_inline() }}
+
Pobiera/ustawia kolor odnośników w dokumencie.
+
+ +
+
document.links*
+
Zwraca listę wszystkich odnośników w dokumencie.
+
+ +
+
document.location*
+
Zwraca URI bieżącego dokumentu.
+
+ +
+
document.namespaceURI
+
Zwraca przestrzeń nazw XML dokumentu.
+
+ +
+
document.plugins*
+
Zwraca listę dostępnych wtyczek.
+
+ +
+
document.popupNode
+
Zwraca węzeł, do którego odwoływał sie {{ XULElem("popup") }} (wyłącznie dokumenty XUL).
+
+ +
+
document.referrer*
+
Zwraca URI strony, która przekierowała do bieżącej strony.
+
+ +
+
document.styleSheets*
+
Zwraca listę obiektów typu stylesheet w bieżącym dokumencie.
+
+ +
+
document.title*
+
Zwraca tytuł bieżącego dokumentu.
+
+ +
+
document.tooltipNode
+
Zwraca węzeł, który jest bieżącym celem {{ XULElem("tooltip") }}.
+
+ +
+
document.URL
+
Zwraca ciąg znaków zawierający adres URL bieżącego dokumentu.
+
+ +
+
document.vlinkColor* {{ Deprecated_inline() }}
+
Pobiera/ustawia kolor odwiedzonych odnośników.
+
+ +
+
document.width*
+
Zwraca szerokość bieżącego dokumentu.
+
+ +

Metody

+ +
+
document.clear* {{ Deprecated_inline() }}
+
W wiekszosci nowoczesnych przegladarek wlacznie z Firefoksem oraz Internet Explorerem metoda ta nie robi nic.
+
+ +
+
document.close*
+
Konczy dopisywanie do strumienia dokumentu.
+
+ +
+
document.createAttribute
+
Tworzy i zwraca nowy wezel atrybutu.
+
+ +
+
document.createDocumentFragment
+
Tworzy nowy fragment dokumentu.
+
+ +
+
document.createElement
+
Tworzy nowy element o podanej nazwie.
+
+ +
+
document.createElementNS
+
Tworzy nowy element o podanej nazwie i URI przestrzeni nazw.
+
+ +
+
document.createNSResolver
+
Tworzy XPathNSResolver.
+
+ +
+
document.createTextNode
+
Tworzy nowy wezel tekstowy.
+
+ +
+
document.createTreeWalker
+
Tworzy obiekt TreeWalker.
+
+ +
+
document.createEvent
+
Tworzy obiekt zdarzenia.
+
+ +
+
document.createRange
+
Tworzy obiekt Range.
+
+ +
+
document.execCommand
+
Wykonuje komende dla edytora Midas.
+
+ +
+
document.evaluate
+
Wykonuje wyrazenie XPath.
+
+ +
+
document.getElementById
+
Zwraca referencje do elementu o podanym ID.
+
+ +
+
document.getElementsByName
+
Zwraca liste elementów o podanej nazwie.
+
+ +
+
document.getElementsByTagName
+
Zwraca liste elementów o danej nazwie znacznika.
+
+ +
+
document.importNode
+
Zwraca kopie wezla z zewnetrznego dokumentu.
+
+ +
+
document.loadOverlay
+
{{ Fx_minversion_inline(1.5) }} Laduje nakladke XUL. Dziala to tylko w dokumentach XUL.
+
+ +
+
document.open*
+
Otwiera strumien dokumentu do zapisu.
+
+ +
+
document.queryCommandEnabled*
+
Zwraca prawde, jesli komenda edytora Midas moze byc wykonana na biezacym zakresie.
+
+ +
+
document.queryCommandIndeterm*
+
Zwraca prawde, jesli komenda edytora Midas jest w stanie nieokreslonym dla biezacego zakresu.
+
+ +
+
document.queryCommandState*
+
Zwraca prawde, jesli komenda edytora Midas zostala wykonana na biezacym zakresie.
+
+ +
+
document.queryCommandValue*
+
Zwraca wartosc biezacego zakresu dla komendy edytora Midas.Wraz z Firefoksem 2.0.0.2 queryCommandValue zwróci pusty ciag jesli wartosc nie zostala ustawiona.
+
+ +
+
document.write*
+
Zapisuje tekst w dokumencie.
+
+ +
+
document.writeln*
+
Zapisuje linie tekstu w dokumencie.
+
+ +

 

+ +

{{ languages( { "en": "en/DOM/document", "es": "es/DOM/document", "fr": "fr/DOM/document", "ja": "ja/DOM/document", "zh-cn": "cn/DOM/document", "de" : "de/DOM/document" } ) }}

diff --git a/files/pl/web/api/document/lastmodified/index.html b/files/pl/web/api/document/lastmodified/index.html new file mode 100644 index 0000000000..a79e097ab8 --- /dev/null +++ b/files/pl/web/api/document/lastmodified/index.html @@ -0,0 +1,25 @@ +--- +title: document.lastModified +slug: Web/API/Document/lastModified +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/lastModified +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca datę i czas ostatniej modyfikacji dokumentu.

+

Składnia

+
ciąg = document.lastModified
+
+

Przykład

+
dump(document.lastModified);
+// zwróci np.: Tuesday, July 10, 2001 10:19:42
+
+

Uwagi

+

Zauważ, że lastModified będąc ciągiem nie może zostać łatwo użyte do porównywania dat modyfikacji między dokumentami.

+

Specyfikacja

+

(DOM Level 0 - brak w specyfikacji (?))

+

{{ languages( { "en": "en/DOM/document.lastModified" } ) }}

diff --git a/files/pl/web/api/document/linkcolor/index.html b/files/pl/web/api/document/linkcolor/index.html new file mode 100644 index 0000000000..ef025b4bfa --- /dev/null +++ b/files/pl/web/api/document/linkcolor/index.html @@ -0,0 +1,33 @@ +--- +title: document.linkColor +slug: Web/API/Document/linkColor +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/linkColor +--- +

{{ ApiRef() }}

+

Podsumowanie

+

{{ Deprecated_header() }} linkColor pobiera/ustawia kolor odnośników w dokumencie.

+

Składnia

+
kolor = document.linkColor
+document.linkColor =kolor
+
+

Parametry

+ +

Uwagi

+

document.linkColor jest przestarzałe w DOM Level 2 HTML.

+

Rekomendowaną alternatywą jest pobranie/ustawienie własności CSS {{ Cssxref("color") }} na elemencie HTML anchor (<a>) links (np: a {color:red;}).

+

Kolejną alternatywą document.body.link mimo, że jest przestarzałe w HTML 4.01 szczególnie przy użyciu alternatywnego CSS.

+

Przykład

+
document.linkColor = "blue";
+
+

Specyfikacja

+

{{ DOM0() }}

+

MSDN: Własność linkColor

+

{{ languages( { "en": "en/DOM/document.linkColor" } ) }}

diff --git a/files/pl/web/api/document/links/index.html b/files/pl/web/api/document/links/index.html new file mode 100644 index 0000000000..d4ed79c435 --- /dev/null +++ b/files/pl/web/api/document/links/index.html @@ -0,0 +1,30 @@ +--- +title: document.links +slug: Web/API/Document/links +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/links +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność links zwraca zestaw wszystkich elementów AREA i A z ustawioną wartością atrybutu href.

+

Składnia

+
listaWęzłów = document.links
+
+

Przykład

+
var links = document.links;
+for(var i = 0; i < links.length; i++) {
+  var linkHref = document.createTextNode(links[i].href);
+  var lineBreak = document.createElement("br");
+  document.body.appendChild(linkHref);
+  document.body.appendChild(lineBreak);
+}
+
+

Specyfikacja

+

links

+
+  
+

{{ languages( { "en": "en/DOM/document.links", "it": "it/DOM/document.links", "ja": "ja/DOM/document.links" } ) }}

diff --git a/files/pl/web/api/document/location/index.html b/files/pl/web/api/document/location/index.html new file mode 100644 index 0000000000..6a754d5c0d --- /dev/null +++ b/files/pl/web/api/document/location/index.html @@ -0,0 +1,37 @@ +--- +title: document.location +slug: Web/API/Document/location +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/location +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Pobiera URL bieżącego dokumentu.

+ +

Składnia

+ +
ciąg = document.location
+
+ +

Przykład

+ +
dump(document.location);
+// zwraca ciąg taki jak np.:
+// http://www.peoplemagazine.com/juicybits.html
+
+ +

Uwagi

+ +

document.location działa tak samo jak document.URL. Obydwie te własności są tylko do odczytu, w przeciwieństwie do window.location, które można ustawiać. Ponieważ document reprezentuje jeden dokument lub URL, nie można zmieniać jego lokalizacji.

+ +

Specyfikacja

+ +

DOM Level 0 - brak w specyfikacji.

+ +

{{ languages( { "en": "/en/DOM/document.location" } ) }}

diff --git a/files/pl/web/api/document/namespaceuri/index.html b/files/pl/web/api/document/namespaceuri/index.html new file mode 100644 index 0000000000..d6f9e8ac44 --- /dev/null +++ b/files/pl/web/api/document/namespaceuri/index.html @@ -0,0 +1,25 @@ +--- +title: document.namespaceURI +slug: Web/API/Document/namespaceURI +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/namespaceURI +--- +

{{ ApiRef() }}

+

Podsumowanie

+

namespaceURI zwraca przestrzeń nazw XML dokumentu.

+

Składnia

+
NSURI = document.namespaceURI
+
+

Parametry

+ +

Uwagi

+

DOM jako takie nie obsługuje ani nie wymaga walidacji przestrzeni nazw. Przeprowadzenie walidacji, jeśli jest taka potrzeba, zależy od aplikacji obsługującej DOM. Zauważ też, że prefiks przestrzeni nazw nie może zostać zmieniony, kiedy już raz zostanie przypisany węzłowi.

+

Specyfikacja

+

namespaceURI

+

{{ languages( { "en": "en/DOM/document.namespaceURI", "fr": "fr/DOM/document.namespaceURI" } ) }}

diff --git a/files/pl/web/api/document/open/index.html b/files/pl/web/api/document/open/index.html new file mode 100644 index 0000000000..2a7b0347b7 --- /dev/null +++ b/files/pl/web/api/document/open/index.html @@ -0,0 +1,40 @@ +--- +title: document.open +slug: Web/API/Document/open +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document/open +--- +

{{APIRef("DOM")}}

+ +

Podsumowanie

+ +

Metoda document.open otwiera strumień dokumentu do zapisu.

+ +

Składnia

+ +
document.open()
+
+ +

Przykład

+ +
//W tym przykładzie zawartość dokumentu jest
+//usuwana przy reinicjalizacji poprzez open()
+
+document.write("<html><p>wyczyść to</p></html>");
+document.open();
+//dokument jest pusty
+
+ +

Uwagi

+ +

Jeżeli dokument docelowy istnieje, metoda ta wyczyści go (zob. powyzszy przykład). document.open jest wywoływane również wtedy, gdy zostanie użyte document.write po załadowaniu dokumentu.

+ +

Specyfikacja

+ +

open

+ +
 
+ +

{{ languages( { "en": "en/DOM/document.open", "fr": "fr/DOM/document.open", "ja": "ja/DOM/document.open" } ) }}

diff --git a/files/pl/web/api/document/plugins/index.html b/files/pl/web/api/document/plugins/index.html new file mode 100644 index 0000000000..fb946ff710 --- /dev/null +++ b/files/pl/web/api/document/plugins/index.html @@ -0,0 +1,40 @@ +--- +title: document.plugins +slug: Web/API/Document/plugins +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/plugins +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca listę aktualnie zainstalowanych wtyczek.

+

Składnia

+
obiektPluginArray = document.plugins
+
+

Przykład

+

Poniższy przykład wyświetla informację o zainstalowanych wtyczkach dla dokumentu wysokiego poziomu. Zwróć uwagę na właściwości obiektu Plugin: length (dla tablicy wtyczek), name, filename i description.

+
 <script TYPE="text/javascript">
+  <!--
+   var L = navigator.plugins.length
+   document.write( L );
+   document.write("Plugins".bold());
+   document.write("<BR>");
+   document.write("Name | Filename | description".bold());
+   document.write("<BR>");
+   for(i=0; i<L; i++){
+     document.write(navigator.plugins[i].name);
+     document.write(" | ".bold());
+     document.write(navigator.plugins[i].filename);
+     document.write(" | ".bold());
+     document.write(navigator.plugins[i].description);
+     document.write("<BR>");
+   }
+  //-->
+ </script>
+
+

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

+

{{ languages( { "en": "en/DOM/document.plugins" } ) }}

diff --git a/files/pl/web/api/document/queryselector/index.html b/files/pl/web/api/document/queryselector/index.html new file mode 100644 index 0000000000..cecd7c4f14 --- /dev/null +++ b/files/pl/web/api/document/queryselector/index.html @@ -0,0 +1,159 @@ +--- +title: Document.querySelector() +slug: Web/API/Document/querySelector +tags: + - API + - DOM + - Metodă + - Referencje + - Selektory +translation_of: Web/API/Document/querySelector +--- +
{{ ApiRef("DOM") }}
+ +

Funkcja zwraca pierwszy element wewnątrz dokumentu, który pasuje do podanego selektora lub grupy selektorów.

+ +

Składnia

+ +
element = document.querySelector(selectors);
+
+ +

gdzie

+ + + +

Przykład

+ +

W tym przykladzie zostaje zwrócony pierwszy element w dokumencie o klasie "myclass":

+ +
var el = document.querySelector(".myclass");
+
+ +

Przykład: Powerful

+ +

Selectory mogą być naprawdę potężne, jak pokazano na poniższym przykładzie. Pierwszy element <input name="login"/> wewnątrz <div class="user-panel main"> w dokumencie zostaje zwrócony:

+ +
var el = document.querySelector("div.user-panel.main input[name='login']");
+
+ +

Uwagi

+ +

Jeśli nie znaleziono dopasowań - zwraca null. W przeciwnym wypadku zwraca pierwszy pasujący element.

+ +

Jeśli selektor zawiera ID i to ID zostaje wielokrotnie błędnie użyte w dokumencie, zwracany jest pierwszy pasujący element.

+ +

Gdy podana grupa selektorów jest nieprawidłowa, zwrócony zostaje wyjątek SYNTAX_ERR.

+ +

querySelector() został wprowadzony w API Selektorów.

+ +

Przekazany do funkcji querySelector łańcuch znaków (string) musi być zgodny ze składnią CSS.

+ +

Zgodnie z API Selektorów pseudoklasy CSS nigdy nie zwrócą żadnego elementu.

+ +

Aby użyć ID lub selektorów niezgodnych ze składnią CSS (np. ze względu na niewłaściwe użycie dwukropka czy spacji) należy poprzedzić niezgodny znak ukośnikiem wstecznym (backslash). Z racji, że w JavaScript backslash jest używany jako znak ucieczki chcąc użyć go w stringu należy wpisać go podwójnie(jeden dla stringa JavaScriptu i drugi raz dla querySelector):

+ +
<div id="foo\bar"></div>
+<div id="foo:bar"></div>
+
+<script>
+  console.log('#foo\bar')               // "#fooar"
+  document.querySelector('#foo\bar')    // Nie pasuje do żadnego elementu
+
+  console.log('#foo\\bar')              // "#foo\bar"
+  console.log('#foo\\\\bar')            // "#foo\\bar"
+  document.querySelector('#foo\\\\bar') // Odnosi się do pierwszego diva
+
+  document.querySelector('#foo:bar')    // Nie pasuje do żadnego elementu
+  document.querySelector('#foo\\:bar')  // Odnosi się do drugiego diva
+</script>
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName("Selectors API Level 2", "#interface-definitions", "document.querySelector()")}}{{Spec2("Selectors API Level 2")}}
{{SpecName("Selectors API Level 1", "#interface-definitions", "document.querySelector()")}}{{Spec2("Selectors API Level 1")}}Definicja wstępna
+ +

Zgodność z przeglądarkami

+ +

{{CompatibilityTable()}}

+ +
+ + + + + + + + + + + + + + + + + + + +
CechaChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Wsparcie podstawowe13.5 (1.9.1)
+ {{bug(416317)}}
8103.2 (525.3)
+ {{Webkitbug("16587")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
CechaAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Wsparcie podstawowe2.1yes910.03.2
+
+ + + +

Zobacz także

+ + + + diff --git a/files/pl/web/api/document/referrer/index.html b/files/pl/web/api/document/referrer/index.html new file mode 100644 index 0000000000..0667be8e4c --- /dev/null +++ b/files/pl/web/api/document/referrer/index.html @@ -0,0 +1,22 @@ +--- +title: document.referrer +slug: Web/API/Document/referrer +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/referrer +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca URI strony, która przekierowała na bieżącą stronę.

+

Składnia

+
ciąg = document.referrer
+
+

Uwagi

+

Jeżeli użytkownik otworzył stronę bezpośrednio (nie poprzez odnośnik, ale np. za pomocą zakładki), wartością tej właściwości jest pusty ciąg.

+

Zauważ też, że właściwość ta zwraca tylko ciąg tekstowy, nie daje dostępu do DOM strony odsyłającej.

+

Specyfikacja

+

referrer

+

{{ languages( { "en": "en/DOM/document.referrer" } ) }}

diff --git a/files/pl/web/api/document/releasecapture/index.html b/files/pl/web/api/document/releasecapture/index.html new file mode 100644 index 0000000000..7585229fe5 --- /dev/null +++ b/files/pl/web/api/document/releasecapture/index.html @@ -0,0 +1,31 @@ +--- +title: Document.releaseCapture() +slug: Web/API/Document/releaseCapture +translation_of: Web/API/Document/releaseCapture +--- +
{{ ApiRef("DOM") }} {{gecko_minversion_header("2.0")}}
+ +
 
+ +

Zwalnia śledzenie myszy, jeśli śledzenie jest ustawione na jakimś elemencie wewnątrz dokumentu. Możesz włączyć śledzenie wywołując {{domxref("element.setCapture()")}}.

+ +

Składnia

+ +
document.releaseCapture()
+
+ +

Po zwolnieniu śledzenia, zdarzenia myszy nie będą przekierowywane do elementu dla którego śledzenie było włączone.

+ +

Przykład

+ +

Zobacz przykład przykład dla {{domxref("element.setCapture()")}}.

+ +

Specyfikacja

+ +

Oparta na implementacji Internet Explorera.

+ +

Zobacz także

+ + diff --git a/files/pl/web/api/document/stylesheets/index.html b/files/pl/web/api/document/stylesheets/index.html new file mode 100644 index 0000000000..4c8312b281 --- /dev/null +++ b/files/pl/web/api/document/stylesheets/index.html @@ -0,0 +1,19 @@ +--- +title: document.styleSheets +slug: Web/API/Document/styleSheets +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/DocumentOrShadowRoot/styleSheets +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność styleSheets zwraca listę obiektów stylesheet w bieżącym dokumencie.

+

Składnia

+
listaWęzłów = document.styleSheets
+
+

Specyfikacja

+

DOM Level 2.

+

{{ languages( { "en": "en/DOM/document.styleSheets", "ja": "ja/DOM/document.styleSheets" } ) }}

diff --git a/files/pl/web/api/document/title/index.html b/files/pl/web/api/document/title/index.html new file mode 100644 index 0000000000..0a379426e5 --- /dev/null +++ b/files/pl/web/api/document/title/index.html @@ -0,0 +1,45 @@ +--- +title: document.title +slug: Web/API/Document/title +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/title +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Pobiera lub ustawia tytuł dokumentu.

+

Składnia

+
tytul =document.title;
+
+ +
document.title =nowyTytul;
+
+ +

Przykład

+
<html>
+<head>
+ <title>Hello World!</title>
+</head>
+<body>
+ <script>
+ alert(document.title); // wyswietla "Hello World!"
+ document.title = "Goodbye World!";
+ alert(document.title); // wyswietla "Goodbye World!"
+ </script>
+</body>
+</html>
+
+

Uwagi

+

Własność ta ma zastosowanie w HTML, SVG, XUL i innych dokumentach w Gecko.

+

Dla dokumentów HTML początkową wartością document.title jest zawartość tekstowa elementu <title>. Dla XUL-a jest to wartość atrybutu {{ XULAttr("title") }} elementu {{ XULElem("window") }} lub innego elementu XUL najwyższego poziomu.

+

W XUL-u próba dostępu do document.title zanim jeszcze dokument zostanie w pełni załadowany może skutkować niepożądanym zachowaniem (document.title może zwrócić pusty łańcuch znaków, a ustawienie document.title może nie mieć żadnego efektu).

+

Specyfikacja

+

DOM Level 2 HTML: document.title

+

{{ languages( { "en": "en/DOM/document.title" } ) }}

diff --git a/files/pl/web/api/document/url/index.html b/files/pl/web/api/document/url/index.html new file mode 100644 index 0000000000..90bb037e8b --- /dev/null +++ b/files/pl/web/api/document/url/index.html @@ -0,0 +1,25 @@ +--- +title: document.URL +slug: Web/API/Document/URL +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/URL +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca URL bieżącego dokumentu.

+

Składnia

+
ciąg = document.URL
+
+

Przykład

+
var currentURL = document.URL;
+alert(currentURL);
+
+

Uwagi

+

URL ma zastąpić używaną w DOM Level 0 własność document.location.href. Jednakże, w przeciwieństwie do niej, document.URL nie można ustawiać.

+

Specyfikacja

+

DOM Level 2 HTML: URL

+

{{ languages( { "en": "en/DOM/document.URL", "es": "es/DOM/document.URL", "ja": "ja/DOM/document.URL" } ) }}

diff --git a/files/pl/web/api/document/vlinkcolor/index.html b/files/pl/web/api/document/vlinkcolor/index.html new file mode 100644 index 0000000000..b33a53c482 --- /dev/null +++ b/files/pl/web/api/document/vlinkcolor/index.html @@ -0,0 +1,29 @@ +--- +title: document.vlinkColor +slug: Web/API/Document/vlinkColor +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/vlinkColor +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca/ustawia kolor odwiedzonych linków w dokumencie.

+

Składnia

+
kolor = document.vlinkColor
+document.vlinkColor =kolor
+
+

Parametry

+ +

Uwagi

+

Domyślną wartością tej własności jest + + purple + .

+

Specyfikacja

+

DOM Level 0 - brak w specyfikacji.

+

{{ languages( { "en": "en/DOM/document.vlinkColor" } ) }}

diff --git a/files/pl/web/api/document/width/index.html b/files/pl/web/api/document/width/index.html new file mode 100644 index 0000000000..af36011079 --- /dev/null +++ b/files/pl/web/api/document/width/index.html @@ -0,0 +1,28 @@ +--- +title: document.width +slug: Web/API/Document/width +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/width +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca szerokość bieżącego dokumentu w pikselach.

+

Nie obsługiwana przez IE.

+

Składnia

+
piksele = document.width
+
+

Przykład

+
function init() {
+  alert("Szerokość dokumentu wynosi " + document.width + " pikseli.");
+}
+
+

Uwagi

+

Zobacz także DOM:document.height.

+

Specyfikacja

+

{{ DOM0() }}

+

{{ languages( { "en": "en/DOM/document.width" } ) }}

diff --git a/files/pl/web/api/document/write/index.html b/files/pl/web/api/document/write/index.html new file mode 100644 index 0000000000..24daccf070 --- /dev/null +++ b/files/pl/web/api/document/write/index.html @@ -0,0 +1,38 @@ +--- +title: document.write +slug: Web/API/Document/write +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Document/write +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zapisuje ciąg tekstu w strumieniu dokumentu otwartym przez document.open.

+

Składnia

+
document.write(tekst)
+
+

Parametry

+ +

Przykład

+
document.open();
+document.write("<h1>witam!</h1>");
+document.close();
+
+

Uwagi

+

Zapis do dokumentu, który już się załadował, bez wywoływania document.open spowoduje automatyczne przeprowadzenie document.open. Zaleca się wywołanie document.close po skończeniu zapisu, aby poinformować przeglądarkę, by zakończyła ładowanie strony. Tekst, który zapisujesz, jest parsowany i trafia do modelu struktury dokumentu. W poniższym przykładzie element H1 staje się węzłem. Jeżeli wywołanie document.write() zostało zagnieżdżone bezpośrednio w kodzie HTML, nie spowoduje ono uruchomienia document.open. Np.:

+
 <div>
+  <script type="text/javascript">
+    document.write("<h1>Main title</h1>")
+  </script>
+ </div>
+
+

Specyfikacja

+

write

+
+  
+

{{ languages( { "en": "en/DOM/document.write", "fr": "fr/DOM/document.write", "ja": "ja/DOM/document.write" } ) }}

diff --git a/files/pl/web/api/document/writeln/index.html b/files/pl/web/api/document/writeln/index.html new file mode 100644 index 0000000000..f70d4f72a4 --- /dev/null +++ b/files/pl/web/api/document/writeln/index.html @@ -0,0 +1,41 @@ +--- +title: document.writeln +slug: Web/API/Document/writeln +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Document/writeln +--- +

{{APIRef("DOM")}}

+ +

Podsumowanie

+ +

Zapisuje w dokumencie ciąg tekstu, a po nim znak nowej linii.

+ +

Składnia

+ +
document.writeln(linia)
+
+ +

Parametry

+ + + +

Przykład

+ +
document.writeln("<p>podaj hasło:</p>");
+
+ +

Uwagi

+ +

document.writeln nie różni się niczym od document.write, poza tym, że dodaje na końcu znak nowego wiersza.

+ +

Specyfikacja

+ +

writeln

+ +
 
+ +

{{ languages( { "en": "en/DOM/document.writeln", "ja": "ja/DOM/document.writeln" } ) }}

diff --git a/files/pl/web/api/domapplicationsmanager/getall/index.html b/files/pl/web/api/domapplicationsmanager/getall/index.html new file mode 100644 index 0000000000..272c82b938 --- /dev/null +++ b/files/pl/web/api/domapplicationsmanager/getall/index.html @@ -0,0 +1,47 @@ +--- +title: DOMApplicationsManager.getAll() +slug: Web/API/DomApplicationsManager/getAll +translation_of: Archive/Marketplace/API/DOMApplicationsManager/getAll +--- +

  

+ +
{{ ApiRef("Apps") }}
+ +

{{ non-standard_header() }}

+ +

Summary

+ +

Lists all installed apps in the user's repository.

+ +

Syntax

+ +
window.navigator.mozApps.mgmt.getAll()
+
+ +

Return value

+ +

getAll() returns a pendingGetAll object. Callers are expected to set the onsuccess and onerror callback properties of the returned object.

+ +

pendingGetAll.result will be an array of App objects that contains all the apps installed in the current browser. pendingGetAll.result will be the empty list if no apps are installed. onerror will be called if a serious problem occurs while checking this.

+ +

This is a privileged call. navigator.mozApps.mgmt will be null if you do not have the privilege to query apps.

+ +

Errors

+ +

The following error can be returned in DOMRequest.error.

+ +
+
+ +
+
DENIED
+
Permission denied.
+
+ + + + + +

  

diff --git a/files/pl/web/api/domapplicationsmanager/index.html b/files/pl/web/api/domapplicationsmanager/index.html new file mode 100644 index 0000000000..e19495d68e --- /dev/null +++ b/files/pl/web/api/domapplicationsmanager/index.html @@ -0,0 +1,86 @@ +--- +title: DOMApplicationsManager +slug: Web/API/DOMApplicationsManager +tags: + - API + - Apps + - Apps API + - NeedsTranslation + - TopicStub +translation_of: Archive/Marketplace/API/DOMApplicationsManager +--- +

{{ ApiRef("Apps") }}

+ +

{{ non-standard_header() }}

+ +

Provides support for managing, and Open Web apps in a browser. A manager can be accessed via {{domxref("DOMApplicationsRegistry.mgmt", "Navigator.mozApps.mgmt")}}

+ +

Property

+ +
+
{{domxref("DOMApplicationsManager.oninstall")}}
+
Is an {{domxref("EventManager")}} call when install event is received.
+
{{domxref("DOMApplicationsManager.onuninstall")}}
+
Is an {{domxref("EventManager")}} call when uninstall event is received.
+
{{domxref("DOMApplicationsManager.onenablestatechange")}}
+
Is an {{domxref("EventManager")}} call when enablestatechange event is received.
+
+ +

Methods

+ +
+
{{ domxref("DOMApplicationsManager.getAll()") }}
+
Returns all applications.
+
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{ CompatUnknown() }}16.0{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{ CompatUnknown() }}16.0{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
+
+ +

 

diff --git a/files/pl/web/api/element/addeventlistener/index.html b/files/pl/web/api/element/addeventlistener/index.html new file mode 100644 index 0000000000..781ec7f3b6 --- /dev/null +++ b/files/pl/web/api/element/addeventlistener/index.html @@ -0,0 +1,109 @@ +--- +title: element.addEventListener +slug: Web/API/Element/addEventListener +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/EventTarget/addEventListener +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda addEventListener pozwala zarejestrować obserwatora zdarzeń dla określonego typu zdarzenia na elemencie.

+

Składnia

+
target.addEventListener(type, listener, useCapture);
+
+
+
+ type 
+
+ Łańcuch przedstawiający typ zdarzenia do nasłuchu.Need a link here
+
+ listener 
+
+ Obiekt, który otrzymuje zawiadomienie, gdy nastąpi zdarzenie określonego typu. Musi być zaimplementowanym obiektem interfejsu EventListener lub pojedynczą funkcją JavaScript.
+
+ useCapture 
+
+ Jeśli zostanie ustawione na true, useCapture wskazuje, że użytkownik chce przechwytywać zdarzenia. Po rozpoczęciu przechwytywania, wszystkie zdarzenia typu type będą przekazywane do naszego listener'a zanim zostaną wysłane do innych obiektów nasłuchujących (EventTarget) znajdujących się poniżej w drzewie DOM. Zdarzenia, które propagują w górę drzewa nie uruchamiają systemu nasłuchującego (listener) ustawionego na przechwytywanie.
+
+

Dla uzyskania szczegółowego objaśnienia zobacz DOM Level 3 Events.

+

Przykład

+
 <html>
+ <head>
+   <title>Przykład zdarzenia DOM</title>
+   <style type="text/css">
+     #t { border: 1px solid red }
+     #t1 { background-color: pink; }
+   </style>
+   <script type="text/javascript">
+
+   // Funkcja zmieniająca zawartość komórki tabeli t2
+   function modifyText() {
+     var t2 = document.getElementById("t2");
+     t2.firstChild.nodeValue = "Trzy";
+   }
+
+   // Funkcja dodająca obserwatora zdarzeń dla tabeli t
+   function load() {
+     var el = document.getElementById("t");
+     el.addEventListener("click", modifyText, false);
+   }
+
+   </script>
+ </head>
+ <body onload="load();">
+ <table id="t">
+   <tr><td id="t1">Jeden</td></tr>
+   <tr><td id="t2">Dwa</td></tr>
+ </table>
+ </body>
+ </html>
+
+

W powyższym przykładzie, funkcja modifyText() została zarejestrowana za pomocą addEventListener() do obsługi zdarzenia typu click na tabeli t. Kliknięcie w dowolnym miejscu tej tabeli rozpocznie propagowanie zdarzenia i wywoła funkcję modifyText().

+

Uwagi

+

Po co używać addEventListener?

+

addEventListener daje możliwość zarejestrowania obsługi zdarzenia według specyfikacji W3C DOM. Korzyści są następujące:

+ +

Alternatywne, starsze sposoby rejestracji zdarzeń są opisane poniżej.

+

Dodawanie nasłuchu podczas obsługi zdarzenia

+

Jeśli podczas obsługi zdarzenia zostanie dodany nowy obiekt nasłuchujący to zdarzenie, nie zostanie on uruchomiony dla tego zdarzenia. Może zostać wywołany podczas dalszego etapu przepływu zdarzeń(Event flow), np. w fazie propagowania zdarzenia w górę drzewa DOM.

+

Identyczne obiekty nasłuchujące

+

Jeśli kilka identycznych obiektów nasłuchujących zostanie zarejestrowanych dla tego samego zdarzenia (EventTarget) z tymi samymi parametrami to duplikaty są ignorowane. Obiekt nasłuchujący nie będzie wywołany więcej niż jeden raz. Powielone powiązania nie muszą być usuwane ręcznie za pomocą funkcji removeEventListener, ponieważ są one usuwane automatycznie.

+

Wartość this

+

Doczepianie akcji używając addEventListener() zmienia wartość this—zauważ, że wartość this ijest przekazywana funkcji przez zdarzenie.

+

W powyższym przykładzie, wartość this wewnątrz modifyText() gdy zostanie wywołana ze zdarzenia onclick event jest odwołaniem do tabeli 't'. Jeśli obsługa zdarzenia onclick jest dodana w źródle HTML:

+
<table id="t" onclick="modifyText();">
+  ...
+</table>
+
+

to wartość this wewnątrz funkcji modifyText() wywołanej z poziomu zdarzenia onclick będzie odwołaniem od obiektu globalnego(window).

+

Internet Explorer

+

W IE 8 i niższych należy użyć attachEvent zamiast standardowego addEventListener. By wspierać IE, powyższy przykład może zostać zmodyfikowany do:

+
if (el.addEventListener){
+  el.addEventListener('click', modifyText, false);
+} else if (el.attachEvent){
+  el.attachEvent('onclick', modifyText);
+}
+
+

Starsze sposoby dołączania zdarzeń

+

addEventListener() zostało wprowadzone wraz ze specyfikacją DOM 2 Events. Wcześniej, zdarzenia były dołączone jak pokazano poniżej:

+
// Using a function reference—note lack of '()'
+el.onclick = modifyText;
+
+// Używając deklaracji funkcji
+element.onclick = function(){
+                    // ... logika funkcji ...
+                  };
+
+

Ta metoda zastępuje istniejącą obsługę zdarzenia onclick na elemencie jeśli jest jakakolwiek. Podobnie do innych zdarzeń 'on' takich jak onblur, onkeypress, i tak dalej.

+

Ponieważ była to istotna część DOM 0, ta metoda jest bardzo szeroko wspierana i nie wymaga specjalnych kodów do różnych przeglądarek; stąd też jest to normalnie używana do dynamicznego zaczepienia obsługi zdarzenia jeśli nie potrzeba dodatkowych możliwości  addEventListener().

+

Specyfikacja

+

DOM Level 2 Events: addEventListener

+

{{ languages( { "en": "en/DOM/element.addEventListener", "fr": "fr/DOM/element.addEventListener", "ja": "ja/DOM/element.addEventListener" } ) }}

diff --git a/files/pl/web/api/element/appendchild/index.html b/files/pl/web/api/element/appendchild/index.html new file mode 100644 index 0000000000..ae2b141231 --- /dev/null +++ b/files/pl/web/api/element/appendchild/index.html @@ -0,0 +1,52 @@ +--- +title: element.appendChild +slug: Web/API/Element/appendChild +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/appendChild +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Metoda Node.appendChild() wstawia określony węzeł na koniec listy dzieci określonego rodzica. Jeśli węzeł ma już rodzica, jest on najpierw od niego oddzielany.

+ +

Składnia

+ +
var dziecko = element.appendChild(dziecko)
+
+ + + +

Opis

+ +

Metoda appendChild zwraca referencję do dodanego węzła. 

+ +

Przykład

+ +
// Tworzy nowy element paragrafu
+var p = document.createElement("p");
+
+// Wstawia go na koniec ciała dokumentu
+document.body.appendChild(p);
+
+ +

 

+ +

Uwagi

+ +

appendChild jest jedną z fundamentalnych metod w programowaniu z użyciem DOM. Metoda ta wstawia nowy węzeł do struktury DOM dokumentu HTML. Jest to druga część procesu stwórz-i-wstaw, podstawowego przy programowym budowaniu strony. Inne związane z tym metody to insertBefore, replaceChild i removeChild.

+ +

Jeśli dziecko jest referencją do węzła, który istnieje już w dokumencie, appendChild przenosi go z dotychczasowej pozycji w nowe miejsce (tj. nie ma potrzeby odzielać węzeł od jego rodzica przed wstawieniem go do innego węzła).

+ +

Specyfikacja

+ +

DOM Level 2 Core: appendChild

+ +

{{ languages( { "en": "en/DOM/element.appendChild", "fr": "fr/DOM/element.appendChild", "ja": "ja/DOM/element.appendChild" } ) }}

diff --git a/files/pl/web/api/element/attributes/index.html b/files/pl/web/api/element/attributes/index.html new file mode 100644 index 0000000000..5ae9839a79 --- /dev/null +++ b/files/pl/web/api/element/attributes/index.html @@ -0,0 +1,82 @@ +--- +title: element.attributes +slug: Web/API/Element/attributes +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/attributes +--- +

{{ ApiRef() }}

+

Podsumowanie

+

attributes zwraca kolekcję atrybutów określonych dla danego elementu.

+

Składnia i wartości

+
var kolekcjaAtrybutów = elementNodeReference.attributes;
+
+

Typem zwracanego obiektu kolekcji jest NamedNodeMap. Jeśli element nie ma określonych żadnych atrybutów, zwrócony obiekt ma zerową długość. Właściwość attributes jest tylko do odczytu.

+

kolekcjaAtrybutów to referencja do kolekcji atrybutów.

+

Przykład

+
// weź pierwszy element <p> z dokumentu
+var para = document.getElementsByTagName("p")[0];
+var atts = para.attributes;
+
+

Uwagi

+

Zwracany obiekt ma typ NamedNodeMap, nazywany także kolekcją, będący listą węzłów, a nie ciągów znakowych. Właściwości obiektów atrybutów dostępne są poprzez indeks, tak jak w poniższym przykładzie, który pobiera parę nazwa/wartość pierwszego atrybutu akapitu "p1":

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+"http://www.w3.org/TR/html4/strict.dtd">
+
+<html>
+
+ <head>
+  <title>Attributes example</title>
+  <script type="text/javascript">
+   function showFirstAttr()
+   {
+    var FirstParg = document.getElementById("p1");
+    var outputText = document.getElementById("result");
+
+    if (FirstParg.hasAttributes())
+    // sprawdźmy, czy FirstParg ma atrybuty
+     {
+      outputText.value = FirstParg.attributes[0].name + "->"
+                       + FirstParg.attributes[0].value;
+     }
+    else
+     {
+      outputText.value = "Brak atrybutów do wyświetlenia"
+     };
+   }
+  </script>
+ </head>
+
+<body>
+ <p id="p1" style="color: green;">Przykładowy akapit</p>
+ <form action="">
+  <p><input type="button" value="Pokaż nazwę i wartość pierwszego atrybutu"
+      onclick="showFirstAttr();">
+  <input id="result" type="text" value=""></p>
+ </form>
+</body>
+</html>
+
+

Obiekt z atrybutami jest kolekcją, która podobna jest do tablicy, ponieważ ma właściwość length, a do atrybutów można odnosić się poprzez indeks liczbowy, ale kolekcja nie posiada specjalnych metod, jakie mają tablice, jak join, split, itd.

+

Kolejność w kolekcji atrybutów nie jest wiarygodna - dwie przeglądarki po otrzymaniu takiego samego kodu znaczników mogą zwracać różnie uporządkowane obiekty attributes.

+

By uzyskać dostęp do konkretnego atrybutu, użyj metody getAttribute lub zapisu z użyciem kropki:

+
 // pokaż id elementu, jeśli element go posiada
+ if(element.id)
+  {
+   alert("id elementu to " + element.id);
+  }
+ else
+  {
+   alert("element nie ma id");
+  };
+
+

Specyfikacja

+ +

{{ languages( { "en": "en/DOM/element.attributes", "fr": "fr/DOM/element.attributes", "ja": "ja/DOM/element.attributes", "zh-cn": "cn/DOM/element.attributes" } ) }}

diff --git a/files/pl/web/api/element/blur/index.html b/files/pl/web/api/element/blur/index.html new file mode 100644 index 0000000000..1febd21617 --- /dev/null +++ b/files/pl/web/api/element/blur/index.html @@ -0,0 +1,21 @@ +--- +title: element.blur +slug: Web/API/Element/blur +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLOrForeignElement/blur +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda blur dezaktywuje bieżący element (usuwa focus).

+

Składnia

+
element.blur()
+
+

Specyfikacja

+

blur

+
+  
+

{{ languages( { "en": "en/DOM/element.blur", "fr": "fr/DOM/element.blur" } ) }}

diff --git a/files/pl/web/api/element/childnodes/index.html b/files/pl/web/api/element/childnodes/index.html new file mode 100644 index 0000000000..2f15d119e2 --- /dev/null +++ b/files/pl/web/api/element/childnodes/index.html @@ -0,0 +1,49 @@ +--- +title: element.childNodes +slug: Web/API/Element/childNodes +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/childNodes +--- +

{{ ApiRef() }}

+

Podsumowanie

+

childNodes zwraca kolekcję węzłów-dzieci elementu.

+

Składnia i wartości

+
var listaWęzłów = referencjaDoWęzłaElementu.childNodes;
+
+

listaWęzłów to uporządkowana kolekcja obiektów węzłów, będącymi dziećmi bieżącego elementu. Jeśli element nie ma dzieci, listaWęzłów jest pusta.

+

listaWęzłów to zmienna przechowująca listę węzłów. Lista taka ma typ NodeList. Właściwość childNodes jest tylko do odczytu.

+

Przykład

+
// parg to referencja do obiektu elementu <p>
+if (parg.hasChildNodes())
+// sprawdzamy czy obiekt nie jest pusty - czy ma dzieci
+ {
+   var children = parg.childNodes;
+   for (var i = 0; i < children.length; i++)
+   {
+   // zrob cos z kazdym dzieckiem jako children[i]
+   // uwaga: lista "żyje", dodawanie bądź usuwanie dzieci ją zmieni
+   };
+ };
+
+
// sposób na usunięcie wszystkich dzieci węzła
+// box to referencja do obiektu elementu, który ma dzieci
+while (box.firstChild)
+ {
+    //lista jest "żywa", więc będzie przeindeksowana po każdym wywołaniu
+    box.removeChild(box.firstChild);
+ };
+
+

Uwagi

+

Elementy kolekcji węzłów są obiektami, a nie łańcuchami. By pobrać dane z tych obiektów, musisz użyć ich atrybutów (np. referencjaDoWęzłaElementu.childNodes{{ mediawiki.external(1) }}.nodeName by pobrać nazwę).

+

Obiekt document ma dwoje dzieci: deklarację DOCTYPE i element HTML.

+

Specyfikacja

+ +

{{ languages( { "en": "en/DOM/element.childNodes", "fr": "fr/DOM/element.childNodes", "ja": "ja/DOM/element.childNodes", "zh-cn": "cn/DOM/element.childNodes" } ) }}

diff --git a/files/pl/web/api/element/classlist/index.html b/files/pl/web/api/element/classlist/index.html new file mode 100644 index 0000000000..5e7112b8d5 --- /dev/null +++ b/files/pl/web/api/element/classlist/index.html @@ -0,0 +1,264 @@ +--- +title: Element.classList +slug: Web/API/Element/classList +translation_of: Web/API/Element/classList +--- +
{{APIRef("DOM")}}
+ +

Element.classList jest właściwością tylko do odczytu, która zwraca zbiór live {{domxref("DOMTokenList")}} atrybutów klasy danego elementu.

+ +

Używanie classList stanowi wygodną alternatywę uzyskiwania dostępu do listy klas danego elementu w formie skompresowanego stringa poprzez {{domxref("element.className")}}.

+ +

Składnia

+ +
const elementClasses = elementNodeReference.classList;
+
+ +

elementClasses to DOMTokenList reprezentujący atrybuty klasy elementNodeReference. Jeśli atrybut klasy nie został określony lub jest pusty, elementClasses.length zwraca 0. Sam w sobie element.classList jest tylko do odczytu, ale można go mimo to modyfikować poprzez stosowanie metod add() i remove().

+ +

Metody

+ +
+
add( String [, String] )
+
Nadaje określone wartości klasy. Jeśli wartości te już istnieją w atrybucie elementu, wówczas zostają zignorowane.
+
remove( String [,String] )
+
Usuwa określone wartości klasy.
+
item ( Number )
+
Zwraca wartosć klasy wg indeksu w zbiorze.
+
toggle ( String [, force] )
+
Jeśli występuje tylko jeden argument: Przełącza wartość klasy, tzn. jeśli klasa istnieje, wówczas zostaje usunięta i zwraca false, jeśli nie, wówczas dodaje ją i zwraca true.
+ Jeśli występuje również drugi argument: Jeśli drugi argument uznawany jest za true, dodaje określoną wartość klasy, natomiast jeśli zostaje uznany za false, wówczas zostaje usunięty.
+
contains( String )
+
Sprawdza, czy określona wartość klasy istnieje w atrybucie klasy danego elementu.
+
+ +

Przykłady

+ +
// div jest obiektem odwołującym się do elementu <div> o klasie ="foo bar"
+div.classList.remove("foo");
+div.classList.add("anotherclass");
+
+// jeśli ustawiona jest widoczność usuwa ją, w przeciwnym wypadku dodaje
+div.classList.toggle("visible");
+
+// dodaj/usuń (add/remove) jest widoczne, w zależności od warunku testowego, i mniejsze od 10
+div.classList.toggle("visible", i < 10 );
+
+alert(div.classList.contains("foo"));
+
+// dodaj lub usuń złożone klasy
+div.classList.add("foo", "bar");
+div.classList.remove("foo", "bar");
+ +
+

Wersje Firefoxa wcześniejsze niż 26 nie implementują użycia niektórych argumentów metod dodaj/usuń/przełącz (add/remove/toggle). Zobacz https://bugzilla.mozilla.org/show_bug.cgi?id=814014

+
+ +

Polyfill

+ +
// Źródło: https://gist.github.com/k-gun/c2ea7c49edf7b757fe9561ba37cb19ca
+;(function() {
+    // pomocnicy
+    var regExp = function(name) {
+        return new RegExp('(^| )'+ name +'( |$)');
+    };
+    var forEach = function(list, fn, scope) {
+        for (var i = 0; i < list.length; i++) {
+            fn.call(scope, list[i]);
+        }
+    };
+
+    // obiekt listy klasy z podstawowymi metodami
+    function ClassList(element) {
+        this.element = element;
+    }
+
+    ClassList.prototype = {
+        add: function() {
+            forEach(arguments, function(name) {
+                if (!this.contains(name)) {
+                    this.element.className += this.element.className.length > 0 ? ' ' + name : name;
+                }
+            }, this);
+        },
+        remove: function() {
+            forEach(arguments, function(name) {
+                this.element.className =
+                    this.element.className.replace(regExp(name), '');
+            }, this);
+        },
+        toggle: function(name) {
+            return this.contains(name)
+                ? (this.remove(name), false) : (this.add(name), true);
+        },
+        contains: function(name) {
+            return regExp(name).test(this.element.className);
+        },
+        // bonus..
+        replace: function(oldName, newName) {
+            this.remove(oldName), this.add(newName);
+        }
+    };
+
+    // IE8/9, Safari
+    if (!('classList' in Element.prototype)) {
+        Object.defineProperty(Element.prototype, 'classList', {
+            get: function() {
+                return new ClassList(this);
+            }
+        });
+    }
+
+    // replace() wspierane przez pozostałe przeglądarki
+    if (window.DOMTokenList && DOMTokenList.prototype.replace == null) {
+        DOMTokenList.prototype.replace = ClassList.prototype.replace;
+    }
+})();
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecifikacjaStatusKomentarz
{{SpecName("HTML WHATWG", "dom.html#dom-classlist", "Element.classList")}}{{Spec2("HTML WHATWG")}}Note within the HTML specification related to the {{htmlattrxref("class")}} attribute.
{{SpecName("DOM WHATWG", "#dom-element-classlist", "Element.classList")}}{{Spec2("DOM WHATWG")}}Initial definition
{{SpecName("DOM4", "#dom-element-classlist", "Element.classList")}}{{Spec2("DOM4")}} 
+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Zgodność podstawowa812{{CompatGeckoDesktop(1.9.2)}}10[1]11.505.1
toggle() method's second argument2412{{CompatGeckoDesktop(24)}}{{CompatNo}}[2]157
Multiple arguments for add() & remove()2812{{CompatGeckoDesktop(26)}}{{CompatNo}}157
replace(){{CompatNo}}{{CompatUnknown}}{{CompatGeckoDesktop("49")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaAndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Wsparcie podstawowe3.012{{CompatGeckoMobile(1.9.2)}}10[1]11.105.0
toggle method's second argument4.412{{CompatGeckoMobile(24)}}{{CompatNo}}[2]{{CompatUnknown}}7.0
multiple arguments for add() & remove()4.412{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}7.0
replace(){{CompatNo}}{{CompatUnknown}}{{CompatGeckoDesktop("49")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

[1] Brak wsparcia dla elementów SVG. Zobacz raport w tej kwestii na stronie Microsoftu.
+ [2] Internet Explorer nigdy tego nie zimplementował. Zobacz raport w tej kwestii na stronie Microsoftu.

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/element/classname/index.html b/files/pl/web/api/element/classname/index.html new file mode 100644 index 0000000000..31f21befb2 --- /dev/null +++ b/files/pl/web/api/element/classname/index.html @@ -0,0 +1,37 @@ +--- +title: element.className +slug: Web/API/Element/className +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/className +--- +
+ {{APIRef}}
+
+  
+
+ Podsumowanie
+

className pobiera/ustawia wartość atrybutu class bieżącego elementu.

+

Składnia i wartości

+
var nazwaKlasy = referencjaDoWęzłaElementu.className;
+referencjaDoWęzłaElementu.className = nazwaKlasy;
+
+ +

Przykład

+
var elementNodeReference = document.getElementById("div1");
+
+if (elementNodeReference.className == "fixed") {
+  // pomiń elementy określonej klasy
+  goNextElement();
+};
+

Uwagi

+

Dla tej właściwości użyto nazwy className, a nie class, ponieważ "class" jest w wielu językach korzystających z DOM słowem kluczowym.

+

Specyfikacja

+ diff --git a/files/pl/web/api/element/click/index.html b/files/pl/web/api/element/click/index.html new file mode 100644 index 0000000000..5c0fe512d5 --- /dev/null +++ b/files/pl/web/api/element/click/index.html @@ -0,0 +1,23 @@ +--- +title: element.click +slug: Web/API/Element/click +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/click +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda click wywołuje kliknięcie na bieżącym elemencie.

+

Składnia

+
element.click()
+
+

Notatki

+

Metoda click symuluje zdarzenie kliknięcia na bieżącym elemencie. Zwykle używa się tego by wywołać obsługę zdarzenia przypisaną do elementu bieżącego bądź leżącego wyżej w "łańcuchu zdarzeń".

+

Specyfikacja

+

click

+
+  
+

{{ languages( { "en": "en/DOM/element.click", "fr": "fr/DOM/element.click" } ) }}

diff --git a/files/pl/web/api/element/clientheight/index.html b/files/pl/web/api/element/clientheight/index.html new file mode 100644 index 0000000000..7014fd35f5 --- /dev/null +++ b/files/pl/web/api/element/clientheight/index.html @@ -0,0 +1,47 @@ +--- +title: element.clientHeight +slug: Web/API/Element/clientHeight +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/clientHeight +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca wewnętrzną wysokość elementu w pikselach, włączając marginesy wewnętrzne ( + + padding + ), ale bez poziomego paska przewijania, obramowań i marginesów zewnętrznych ( + + margin + ).

+

clientHeight można wyliczyć jako (właśność height CSS) + (padding w CSS) - (wysokość poziomego paska przewijania (jeśli jest)).

+

Składnia i wartości

+
var h = element.clientHeight;
+
+

h to liczba całkowita reprezentująca clientHeight elementu w pikselach.

+

clientHeight jest tylko do odczytu.

+

Przykład

+
+
+

padding-top

+

Gentle, individualistic and very loyal, Birman cats fall between Siamese and Persian in character. If you admire cats that are non aggressive, that enjoy being with humans and tend to be on the quiet side, you may well find that Birman cats are just the felines for you.

+

Image:BirmanCat.jpgAll Birmans have colorpointed features, dark coloration of the face, ears, legs and tail.

+

Cat image and text coming from http://www.best-cat-art.com/

+

padding-bottom

+
+ LeftTopRightBottommargin-topmargin-bottomborder-topborder-bottom
+

Grafika:clientHeight.png

+

Specyfikacja

+

Nie należy do żadnej ze specyfikacji W3C.

+

Uwagi

+

clientHeight jest niestandardową właściwością, wprowadzoną w modelu obiektowym przeglądarki Internet Explorer.

+

Dokumentacja

+ +

{{ languages( { "en": "en/DOM/element.clientHeight", "fr": "fr/DOM/element.clientHeight", "ja": "ja/DOM/element.clientHeight", "zh-cn": "cn/DOM/element.clientHeight" } ) }}

diff --git a/files/pl/web/api/element/clientnode/index.html b/files/pl/web/api/element/clientnode/index.html new file mode 100644 index 0000000000..eb0550678b --- /dev/null +++ b/files/pl/web/api/element/clientnode/index.html @@ -0,0 +1,32 @@ +--- +title: element.cloneNode +slug: Web/API/Element/clientNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/cloneNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda cloneNode zwraca kopię bieżącego węzła.

+

Składnia

+
kopiaWęzła = element.cloneNode(głębokość)
+
+

Parametry

+ +

Przykład

+
p = document.getElementById("para1");
+p_prime = p.cloneNode(true);
+
+

Uwagi

+

Kopia węzła zwrócona przez cloneNode() nie ma rodzica. Podczas klonowania węzła skopiowane zostają wszystkie jego atrybuty i ich wartości, ale nie zostaje skopiowana treść zawarta w węźle, ponieważ treść ta przechowywana jest w węźle potomnym typu Text.

+

Głębokie klonowanie kopiuje i zwraca węzeł wraz z całym drzewem pod nim się znajdującym (w tym treścią z potomnych węzłów Text) .

+

Specyfikacja

+

DOM Level 2 Core: cloneNode

+
+  
+

{{ languages( { "en": "en/DOM/element.cloneNode", "fr": "fr/DOM/element.cloneNode", "ja": "ja/DOM/element.cloneNode", "pt": "pt/DOM/element.cloneNode", "zh-cn": "cn/DOM/element.cloneNode" } ) }}

diff --git a/files/pl/web/api/element/clientwidth/index.html b/files/pl/web/api/element/clientwidth/index.html new file mode 100644 index 0000000000..5cf48d16ad --- /dev/null +++ b/files/pl/web/api/element/clientwidth/index.html @@ -0,0 +1,47 @@ +--- +title: element.clientWidth +slug: Web/API/Element/clientWidth +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/clientWidth +--- +

{{ ApiRef() }}

+

Podsumowanie

+

clientWidth to wewnętrzna szerokość elementu w pikselach. Zawiera margines wewnętrzny ( + + padding + ), ale pomija pionowy pasek przewijania (jeśli jest obecny lub renderowany), obramowania i margines zewnętrzny ( + + margin + ).

+

Składnia i wartości

+
var w = element.clientWidth;
+
+

w to liczba całkowita odpowiadająca clientWidth elementu w pikselach. clientWidth jest tylko do odczytu.

+

Przykład

+
+
+

padding-top

+

Gentle, individualistic and very loyal, Birman cats fall between Siamese and Persian in character. If you admire cats that are non aggressive, that enjoy being with humans and tend to be on the quiet side, you may well find that Birman cats are just the felines for you.

+

Image:BirmanCat.jpgAll Birmans have colorpointed features, dark coloration of the face, ears, legs and tail.

+

Cat image and text coming from www.best-cat-art.com

+

padding-bottom

+
+ LeftTopRightBottommargin-topmargin-bottomborder-topborder-bottom{{ mediawiki.external('if IE') }}><span id="MrgLeft" style="position: absolute; left: 8px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-left</span><span id="BrdLeft" style="position: absolute; left: 33px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-left</span><span id="PdgLeft" style="position: absolute; left: 55px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">padding-left</span><span id="PdgRight" style="position: absolute; left: 275px; top: 60px; color: black; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl; white-space: nowrap;">padding-right</span><span id="BrdRight" style="position: absolute; left: 310px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-right</span><span id="MrgRight" style="position: absolute; left: 340px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-right</span><!{{ mediawiki.external('endif') }}
+

Image:clientWidth.png

+

Specyfikacja

+

Nie należy do żadnej ze specyfikacji W3C.

+

Uwagi

+

clientWidth został wprowadzony w modelu obiektowym DHTML przeglądarki Internet Explorer.

+

Dokumentacja

+ +
+  
+

{{ languages( { "en": "en/DOM/element.clientWidth", "fr": "fr/DOM/element.clientWidth" } ) }}

diff --git a/files/pl/web/api/element/dir/index.html b/files/pl/web/api/element/dir/index.html new file mode 100644 index 0000000000..5e20e1e6ad --- /dev/null +++ b/files/pl/web/api/element/dir/index.html @@ -0,0 +1,34 @@ +--- +title: element.dir +slug: Web/API/Element/dir +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/dir +--- +
+ {{ApiRef}}
+

Podsumowanie

+

Atrybut dir ustawia lub pobiera kierunek pisania tekstu dla zawartości bieżącego elementu.

+

Składnia i wartości

+
var bieżącyKierunekPisania = elementNodeReference.dir;
+elementNodeReference.dir = nowyKierunekPisania;
+
+

bieżącyKierunekPisania jest łańcuchem reprezentującym kierunek pisania tekstu bieżącego elementu. nowyKierunekPisania to zmienna łańcuchowa, której wartość reprezentuje kierunek pisania tekstu.

+

Możliwe wartości dir to ltr dla "od lewej do prawej" i rtl dla "od prawej do lewej".

+

Przykład

+
var parg = document.getElementById("para1");
+
+parg.dir = "rtl";
+// zmienia kierunek tekstu w paragrafie "para1"
+
+

Uwagi

+

Kierunek pisania tekstu elementu oznacza kierunek, w którym idzie tekst (do obsługi różnych języków). Języki arabski i hebrajski to typowe przykłady użycia kierunku rtl.

+

Obrazek może mieć atrybut dir ustawiony na rtl. W takim wypadku atrybuty title i alt będą sformatowane i wyświetlona jako rtl.

+

Jeśli tabela ma kierunek rtl, kolumny porządkowane są od prawej do lewej.

+

Specyfikacja

+ diff --git a/files/pl/web/api/element/dispatchevent/index.html b/files/pl/web/api/element/dispatchevent/index.html new file mode 100644 index 0000000000..266c570cfe --- /dev/null +++ b/files/pl/web/api/element/dispatchevent/index.html @@ -0,0 +1,43 @@ +--- +title: element.dispatchEvent +slug: Web/API/Element/dispatchEvent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/EventTarget/dispatchEvent +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Wywołuje zdarzenie w bieżącym elemencie.

+ +

Składnia

+ +
bool = element.dispatchEvent(event)
+
+ + + +

Uwagi

+ +

Jak pokazuje powyższy przykład, dispatchEvent to ostatni krok w procesie utwórz-zainicjuj-wywołaj, którego używa się by ręcznie wywołać zdarzenia w modelu zdarzeń implementacji.

+ +

Zdarzenie może zostać utworzone przy użyciu metody document.createEvent i zainicjowane za pomocą initEvent lub innej, bardziej wyspecjalizowanej metody, jak initMouseEvent albo initUIEvent.

+ +

Zobacz też dokumentację obiektu event.

+ +

Specyfikacja

+ +

DOM Level 2 Events: dispatchEvent

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/DOM/element.dispatchEvent", "es": "es/DOM/element.dispatchEvent", "fr": "fr/DOM/element.dispatchEvent", "ja": "ja/DOM/element.dispatchEvent" } ) }}

diff --git a/files/pl/web/api/element/firstchild/index.html b/files/pl/web/api/element/firstchild/index.html new file mode 100644 index 0000000000..20189ce803 --- /dev/null +++ b/files/pl/web/api/element/firstchild/index.html @@ -0,0 +1,101 @@ +--- +title: element.firstChild +slug: Web/API/Element/firstChild +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/firstChild +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

firstChild jest właściwością tylko do odczytu, która zwraca pierwszego potomka węzła lub wartość null, jeżeli węzeł nie ma potomków. Jeżeli węzeł jest elementem Document, wtedy zwraca pierwszy węzeł z listy swoich bezpośrednich dzieci.

+ +

Składnia i wartości

+ +
var elt = element.firstChild;
+
+ +

elt to referencja do pierwszego dziecka elementu, jeśli jest takie - w przeciwnym razie jest to null.

+ +

Przykład

+ +

Przeglądarki oparte o Gecko wstawiają do dokumentu węzły tekstowe reprezentujące białe znaki w kodzie. Dlatego pierwsze dziecko elementu może odnosić się do wstawionego węzła tekstowego, a nie elementu określonego przez następny znacznik w źródle strony.

+ +
<p id="para-01">
+  <span>Pierwszy span</span>
+</p>
+
+<script type="text/javascript">
+  var p01 = document.getElementById('para-01');
+  alert(p01.firstChild.nodeName)
+</script>
+
+ +

W powyższym przykładzie alert wyświetli '#text', ponieważ wstawiony jest węzeł tekstowy oznaczający przerwę między otwierającymi znacznikami <p> i <span> . Dowolny biały znak spowoduje wstawienie węzła tekstowego - zarówno pojedyncza spacja, jak i dowolna ilość spacji, nowych linii, znaków tabulacji itd.

+ +

Kolejny węzeł #text jest wstawiany między zamykającymi znacznikami </span> i </p>

+ +

Jeśli usunie się białe znaki ze źródła, nie zostaną wstawione węzły tekstowe, a element span stanie się pierwszym dzieckiem paragrafu.

+ +
<p id="para-01"><span>Pierwszy span</span></p>
+
+<script type="text/javascript">
+  var p01 = document.getElementById('para-01');
+  alert(p01.firstChild.nodeName)
+</script>
+
+ +

Teraz alert wyświetli 'SPAN'.

+ +

Uwagi

+ +

Więcej o problemach z węzłami-zjawami znajdziesz w {{ Bug(26179) }} (nie komentuj tego błędu!). Oto jeden ze sposobów na ominięcie problemu:

+ +
<!-- konwencjonalne formatowanie prowadzi do
+     zaśmiecenia drzewa dokumentu w Gecko
+ -->
+<div>
+ <ul>
+  <li>Pozycja 1</li>
+  <li>Pozycja 2</li>
+  <li>Pozycja 3</li>
+ </ul>
+</div>
+
+<!-- Formatowanie ustawione, by ominąć
+     problem węzłów-zjaw
+ -->
+<div
+ ><ul
+  ><li>Pozycja 1</li
+  ><li>Pozycja 2</li
+  ><li>Pozycja 3</li
+ ></ul
+></div>
+
+ +

Węzły bezdzietne

+ +

Własność zwraca null, jeśli bieżący węzeł jest bezdzietny.

+ +

Białe znaki i węzły dzieci

+ +

Węzły #text mogą być wstawione jako dzieci elementów takich jak TR pomimo że specyfikacja HTML pozwala tylko na TD jako ich dzieci. Z uwagi na XML białe znaki muszą zostać zachowane i gdzieś wstawione.

+ +

Ponieważ węzły #text nie są elementami HTML, białe znaki są tam wstawiane.

+ +

W3C DOM 3 FAQ: Why are some Text nodes empty?

+ +

Specyfikacja

+ +

DOM Level 1 Core: firstChild

+ +

DOM Level 2 Core: firstChild

+ +
+ +

{{ languages( { "en": "en/DOM/element.firstChild", "fr": "fr/DOM/element.firstChild", "ja": "ja/DOM/element.firstChild", "zh-cn": "cn/DOM/element.firstChild" } ) }}

diff --git a/files/pl/web/api/element/focus/index.html b/files/pl/web/api/element/focus/index.html new file mode 100644 index 0000000000..7f3eef32fa --- /dev/null +++ b/files/pl/web/api/element/focus/index.html @@ -0,0 +1,23 @@ +--- +title: element.focus +slug: Web/API/Element/focus +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLOrForeignElement/focus +--- +

{{ ApiRef() }}

+

Podsumowanie

+

focus aktywuje bieżący element (ustawia focus).

+

Składnia

+
element.focus()
+
+

Uwagi

+

Wywołanie metody focus() jest równoważne z zaznaczeniem elementu przez użytkownika.

+

Specyfikacja

+

focus

+
+  
+

{{ languages( { "en": "en/DOM/element.focus", "fr": "fr/DOM/element.focus" } ) }}

diff --git a/files/pl/web/api/element/getattribute/index.html b/files/pl/web/api/element/getattribute/index.html new file mode 100644 index 0000000000..da509fb349 --- /dev/null +++ b/files/pl/web/api/element/getattribute/index.html @@ -0,0 +1,43 @@ +--- +title: element.getAttribute +slug: Web/API/Element/getAttribute +translation_of: Web/API/Element/getAttribute +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

getAttribute zwraca wartość atrybutu o podanej nazwie.

+ +

Składnia

+ +
atrybut = element.getAttribute(nazwaAtrybutu)
+
+ + + +

Przykład

+ +
var div1 = document.getElementById("div1");
+var a = div1.getAttribute("align");
+alert(a); // pokaże wartość atrybutu "align" dla elementu o id="div1"
+
+ +

Uwagi

+ +

W zasadzie wszystkie przeglądarki (Firefox, Internet Explorer, nowsze wersje Opery, Safari, Konqueror oraz iCab) zwracają null, jeśli bieżący element nie posiada atrybutu o podanej nazwie. Specyfikacja DOM mówi, że w takiej sytuacji powinien być zwracany pusty ciąg znaków i niektórze implementacje DOM tak się zachowują. Zatem jeśli jest możliwe, że element nie posiada żądanego atrybutu, powinieneś użyć metody hasAttribute aby sprawdzić istnienie atrybutu zanim wywołasz getAttribute.

+ +

nazwaAtrybutu jest zazwyczaj zależna od wielkości liter, jednak nie w przypadku elementów HTML - wtedy wielkość liter nie ma znaczenia.

+ +

{{ DOMAttributeMethods() }}

+ +

Specyfikacja

+ +

DOM Level 2 Core: getAttribute (wprowadzono w DOM Level 1 Core)

+ +
 
+ +

{{ languages( { "en": "en/DOM/element.getAttribute", "fr": "fr/DOM/element.getAttribute", "ja": "ja/DOM/element.getAttribute" } ) }}

diff --git a/files/pl/web/api/element/getattributenode/index.html b/files/pl/web/api/element/getattributenode/index.html new file mode 100644 index 0000000000..0bdf977063 --- /dev/null +++ b/files/pl/web/api/element/getattributenode/index.html @@ -0,0 +1,36 @@ +--- +title: element.getAttributeNode +slug: Web/API/Element/getAttributeNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/getAttributeNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca określony atrybut elementu jako węzeł typu Attr.

+

Składnia

+
węzełAtrybutu = element.getAttributeNode(nazwaAtrybutu)
+
+ +

Przykład

+
// html: <div id="top" />
+t = document.getElementById("top");
+iNode = t.getAttributeNode("id");
+// iNode.value = "top"
+
+

Uwagi

+

Interfejs węzła Attr dziedziczy ze wspólnego interfejsu węzłów Node, ale węzły atrybutów nie stanowią części drzewa dokumentu. Wpólne atrybuty wszystkich węzłów, takie jak parentNode, previousSibling i nextSibling mają w przypadku węzłów Attr wartość null.

+

Do elementu, do którego należy atrybut, możesz odnosić się wykorzystując właściwość ownerElement.

+

Do pobrania wartości atrybutu używa się raczej metody getAttribute niż getAttributeNode.

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

getAttributeNode

+
+  
+

{{ languages( { "en": "en/DOM/element.getAttributeNode", "fr": "fr/DOM/element.getAttributeNode", "ja": "ja/DOM/element.getAttributeNode" } ) }}

diff --git a/files/pl/web/api/element/getattributenodens/index.html b/files/pl/web/api/element/getattributenodens/index.html new file mode 100644 index 0000000000..b1ec0f2281 --- /dev/null +++ b/files/pl/web/api/element/getattributenodens/index.html @@ -0,0 +1,39 @@ +--- +title: element.getAttributeNodeNS +slug: Web/API/Element/getAttributeNodeNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Element/getAttributeNodeNS +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca węzeł Attr dla atrybutu z daną przestrzenią nazw i nazwą.

+ +

Składnia

+ +
attributeNode = element.getAttributeNodeNS(namespace,nodeName)
+
+ + + +

== Przykład == TBD The example needs to be fixed pre> // html: <div id="top" /> t = document.getElementById("top"); specialNode = t.getAttributeNodeNS( "http://www.mozilla.org/ns/specialspace", "id"); // iNode.value = "full-top" </pre

+ +

Uwagi

+ +

getAttributeNodeNS is more specific than getAttributeNode in that it allows you to specify attributes that are part of a particular namespace. The corresponding setter method is setAttributeNodeNS.

+ +

{{ DOMAttributeMethods() }}

+ +

Specyfikacja

+ +

DOM Level 2 Core: getAttributeNodeNS

diff --git a/files/pl/web/api/element/getattributens/index.html b/files/pl/web/api/element/getattributens/index.html new file mode 100644 index 0000000000..1ece5594ec --- /dev/null +++ b/files/pl/web/api/element/getattributens/index.html @@ -0,0 +1,47 @@ +--- +title: element.getAttributeNS +slug: Web/API/Element/getAttributeNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/getAttributeNS +--- +

{{ ApiRef() }}

+

Podsumowanie

+

getAttributeNS zwraca ciąg z wartością atrybutu o podanej nazwie i przestrzeni nazw. Jeśli nie ma atrybutu o takiego atrybutu, zwrócone zostanie null bądź "" (pust ciąg) - zob. {{ Anch("Uwagi") }}.

+

Składnia

+
wartośćAtr =element.getAttributeNS(przestrzeńNazw,nazwa)
+
+

Parametry

+ +

Przykład

+
var div1 = document.getElementById("div1");
+var a = div1.getAttributeNS("www.mozilla.org/ns/specialspace/",
+                            "special-align");
+alert(a); // wyświetli zawartość special-align elementu div
+
+

Uwagi

+

getAttributeNS różni się od getAttribute tym, że pozwala Ci określić do jakiej przestrzeni nazw należy atrybut, tak jak w powyższym przykładzie, gdzie atrybut należał do fikcyjnej przestrzeni "specialspace".

+

W zasadzie wszystkie przeglądarki (Firefox, Internet Explorer, nowsze wersje Opery, Safari, Konqueror oraz iCab) zwracają null, jeśli bieżący element nie posiada atrybutu o podanej nazwie. Specyfikacja DOM mówi, że w takiej sytuacji powinien być zwracany pusty ciąg znaków i niektórze implementacje DOM tak się zachowują. Zatem jeśli jest możliwe, że element nie posiada żądanego atrybutu, powinieneś użyć metody hasAttributeNS aby sprawdzić istnienie atrybutu zanim wywołasz getAttributeNS.

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: getAttributeNS

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.getAttributeNS", "fr": "fr/DOM/element.getAttributeNS", "ja": "ja/DOM/element.getAttributeNS" } ) }}

diff --git a/files/pl/web/api/element/getboundingclientrect/index.html b/files/pl/web/api/element/getboundingclientrect/index.html new file mode 100644 index 0000000000..dc189b37af --- /dev/null +++ b/files/pl/web/api/element/getboundingclientrect/index.html @@ -0,0 +1,146 @@ +--- +title: Element.getBoundingClientRect() +slug: Web/API/Element/getBoundingClientRect +tags: + - API + - Metoda(2) + - Pudełko + - Widok CSSOM +translation_of: Web/API/Element/getBoundingClientRect +--- +
{{APIRef("DOM")}}
+ +

Metoda Element.getBoundingClientRect() zwraca rozmiar  oraz  położenie elementu względem okna widoku (viewport).

+ +

Składnia

+ +
rectObject = object.getBoundingClientRect();
+
+ +

Wynik

+ +

Zwrócony  jest obiekt DOMRect,  wyznaczony z tablicy prostokątów zwróconych przez  metodę getClientRects(), zastosowaną do danego elementu, czyli wyznaczony ze wszystkich pudełek  CSS związanych z danym elementem.

+ +

Zwrócony obiekt  DOMRect posiada następujące (tylko do odczytu) właściwości: left, top, right and bottom,  opisujące parametry otaczającego element pudełka w  pikselach. Właściwości top and left  oznaczają odległość od górnego-lewego rogu aktualnego okna widoku.

+ +
+

Uwaga: {{Gecko("1.9.1")}} dodało właściwości width and height do obiektu DOMRect.

+
+ +

Puste pudełka są całkowicie ignorowane. Jeśli wszystkie elementy pudełka są puste, to zwrócony prostokąt ma wysokość i szerokość równą zero zaś własności top oraz left dotyczą pierwszego pudełka CSS (w porządku kontekstowym) który zawiera dany element.

+ +

Efekt przewijania (scrolling) okna widoku  (lub dowolnego innego przewijalnego elementu) jest uwzględniany podczas wyznaczania otaczającego pudełka. Zatem, właściwości top oraz left zmieniają się natychmiast po dowolnym przewinięciu (są więc względne w stosunku do widoku, a więc nie są absolutne). W celu wyznaczenia absolutnego położenie elementu  należy do właściwości top oraz left dodać aktualne pozycje przesuwania (scrolling position)  (można je uzyskać za  pomocą window.scrollX and window.scrollY).

+ +

Skrypty wymagające  zgodności z różnymi przeglądarkami mogą korzystać z metod  window.pageXOffset oraz window.pageYOffset zamiast window.scrollX oraz window.scrollY. Skrypty które nie mają dostępu do  window.pageXOffset, window.pageYOffset, window.scrollX ani window.scrollY mogą stosować następujący kod :

+ +
// Zamiast scrollX
+(((t = document.documentElement) || (t = document.body.parentNode))
+  && typeof t.ScrollLeft == 'number' ? t : document.body).ScrollLeft
+// Zamiast scrollY
+(((t = document.documentElement) || (t = document.body.parentNode))
+  && typeof t.ScrollTop == 'number' ? t : document.body).ScrollTop
+
+ +

Przykład

+ +
// rect jest obiektem DOMRect z sześcioma własnościami: left, top, right, bottom, width, height
+var rect = obj.getBoundingClientRect();
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName("CSSOM View", "#the-getclientrects()-and-getboundingclientrect()-methods", "Element.getBoundingClientRect()")}}{{Spec2("CSSOM View")}}definicja początkowa
+ +

Uwagi

+ +

Metoda getBoundingClientRect() została wprowadzona po raz pierwszy w  modelu MS IE DHTML.

+ +

Wynik metody getBoundingClientRect() jest  obiektem zamrożonym.

+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
WłaściwośćChromeFirefox (Gecko)Internet ExplorerOperaSafari
Postawowe wsparcie1.0[1]{{CompatGeckoDesktop(1.9)}}4.0[2]{{CompatVersionUnknown}}4.0
width/height{{CompatVersionUnknown}}{{CompatGeckoDesktop(1.9.1)}}9{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
WłaściwośćAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Postawowe wsparcie2.01.0{{CompatGeckoMobile(1.9)}}6.0{{CompatVersionUnknown}}4.0
+
+ +

[1] specyfikacja CSS dla elementu 'use'  wskazującego na element  'symbol' wymaga aby domyślne wartości atrybutów  width oraz height elementu 'use' ustawione były na 100%. Również,  specyfikacja CSS dla atrybutów width oraz height elementu 'svg' wymaga 100%  jako wartości domyślne. Google Chrome nie przestrzega tych wymagań dla elementów  'use'. Chrome nie uwzględnia również  'stroke-width'. Zatem metoda   getBoundingClientRect() może zwrócić inny prostokąt w  Chrome  niż w Firefox.

+ +

[2] W IE8, oraz we wcześniejszych wersjach, obiekt  DOMRect zwrócony przez getBoundingClientRect() nie zawiera właściwości height ani width. Żadne dodatkowe właściwości (w tym height oraz width) nie mogą być dodane do tych obiektów DOMRect.

+ +

Począwszy od Gecko 12.0 {{geckoRelease("12.0")}}, efekt  transformacji CSS jest uwzględniany w algorytmie wyznaczania otaczającego pudełka (bounding rectangle).

+ +

Patrz również

+ + diff --git a/files/pl/web/api/element/getelementsbytagnamens/index.html b/files/pl/web/api/element/getelementsbytagnamens/index.html new file mode 100644 index 0000000000..81b82173d2 --- /dev/null +++ b/files/pl/web/api/element/getelementsbytagnamens/index.html @@ -0,0 +1,49 @@ +--- +title: element.getElementsByTagNameNS +slug: Web/API/Element/getElementsByTagNameNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Element/getElementsByTagNameNS +--- +

{{ ApiRef("DOM") }}

+ +

Podsumowanie

+ +

Zwraca listę elementów o danej nazwie znacznika należącej do danej przestrzeni nazw.

+ +

Składnia

+ +
elements =element.getElementsByTagNameNS(namespace,localName)
+
+ + + +

Przykład

+ +
// check the alignment on a number of cells in a table.
+var table = document.getElementById("forecast-table");
+var cells = table.getElementsByTagNameNS("www.mozilla.org/ns/specialspace/", "td");
+for (var i = 0; i < cells.length; i++) {
+    status = cells[i].getAttribute("status");
+    if ( status == "open") {
+        // grab the data
+    }
+}
+
+ +

Uwagi

+ +

element.getElementsByTagNameNS is similar to document.getElementsByTagNameNS, except that its search is restricted to those elements which are descendants of the specified element.

+ +

Specyfikacja

+ +

DOM Level 2 Core: Element.getElementsByTagNameNS

diff --git a/files/pl/web/api/element/hasattribute/index.html b/files/pl/web/api/element/hasattribute/index.html new file mode 100644 index 0000000000..e06d1f1fa2 --- /dev/null +++ b/files/pl/web/api/element/hasattribute/index.html @@ -0,0 +1,34 @@ +--- +title: element.hasAttribute +slug: Web/API/Element/hasAttribute +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/hasAttribute +--- +

{{ ApiRef() }}

+

Podsumowanie

+

hasAttribute zwraca wartość logiczną oznaczającą, czy element posiada określony atrybut czy nie.

+

Składnia

+
wynik = element.hasAttribute(nazwaAtrybutu)
+
+ +

Przykład

+
// przed ustawieniem wartości sprawdź, czy atrybut istnieje
+d = document.getElementById("div1");
+if(d.hasAttribute("align")){
+  d.setAttribute("align", "center");
+}
+
+

Uwagi

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: hasAttribute

+
+  
+

{{ languages( { "en": "en/DOM/element.hasAttribute", "fr": "fr/DOM/element.hasAttribute", "ja": "ja/DOM/element.hasAttribute" } ) }}

diff --git a/files/pl/web/api/element/hasattributens/index.html b/files/pl/web/api/element/hasattributens/index.html new file mode 100644 index 0000000000..13cc715dac --- /dev/null +++ b/files/pl/web/api/element/hasattributens/index.html @@ -0,0 +1,39 @@ +--- +title: element.hasAttributeNS +slug: Web/API/Element/hasAttributeNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/hasAttributeNS +--- +

{{ ApiRef() }}

+

Podsumowanie

+

hasAttributeNS zwraca wartość logiczną oznaczającą, czy bieżący element ma określony atrybut.

+

Składnia

+
wynik =element.hasAttributeNS(przestrzeńNazw,nazwaLokalna)
+
+ +

Przykład

+
// sprawdza czy jest taki atrybut
+// przed nadaniem mu wartości
+var d = document.getElementById("div1");
+if (d.hasAttributeNS(
+        "http://www.mozilla.org/ns/specialspace/",
+        "special-align")) {
+   d.setAttribute("align", "center");
+}
+
+

Uwagi

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: hasAttributeNS

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.hasAttributeNS", "fr": "fr/DOM/element.hasAttributeNS", "ja": "ja/DOM/element.hasAttributeNS" } ) }}

diff --git a/files/pl/web/api/element/hasattributes/index.html b/files/pl/web/api/element/hasattributes/index.html new file mode 100644 index 0000000000..2e1c7aea73 --- /dev/null +++ b/files/pl/web/api/element/hasattributes/index.html @@ -0,0 +1,28 @@ +--- +title: element.hasAttributes +slug: Web/API/Element/hasAttributes +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/hasAttributes +--- +

{{ ApiRef() }}

+

Podsumowanie

+

hasAttributes zwraca wartość logiczną zależnie od tego, czy element posiada jakiekolwiek atrybuty.

+

Składnia

+
[ true | false ] = element.hasAttributes
+
+

Przykład

+
t1 = document.getElementById("table-data");
+if ( t1.hasAttributes ) {
+    // zrób coś z
+    // t1.attributes
+}
+
+

Specyfikacja

+

hasAttributes

+
+  
+

{{ languages( { "en": "en/DOM/element.hasAttributes", "fr": "fr/DOM/element.hasAttributes", "it": "it/DOM/element.hasAttributes" } ) }}

diff --git a/files/pl/web/api/element/haschildnodes/index.html b/files/pl/web/api/element/haschildnodes/index.html new file mode 100644 index 0000000000..e21f22dedf --- /dev/null +++ b/files/pl/web/api/element/haschildnodes/index.html @@ -0,0 +1,28 @@ +--- +title: element.hasChildNodes +slug: Web/API/Element/hasChildNodes +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/hasChildNodes +--- +

{{ ApiRef() }}

+

Podsumowanie

+

hasChildNodes zwraca wartość logiczną określającą, czy element posiada dzieci czy nie.

+

Składnia

+
[ true | false ] = element.hasChildNodes()
+
+

Przykład

+
t1 = document.getElementById("table-data");
+if ( t1.hasChildNodes() ) {
+    // tabela ma dzieci }
+
+

Uwagi

+

Zauważ, że składnia element.hasChildNodes - bez nawiasów () - jest nieprawidłowa. Takie użycie zawsze zwraca true, oznaczające, że metoda o tej nazwie jest dostępna w obiekcie. Nie daj się nabrać.

+

Specyfikacja

+

hasChildNodes

+
+  
+

{{ languages( { "en": "en/DOM/element.hasChildNodes", "fr": "fr/DOM/element.hasChildNodes", "ja": "ja/DOM/element.hasChildNodes" } ) }}

diff --git a/files/pl/web/api/element/id/index.html b/files/pl/web/api/element/id/index.html new file mode 100644 index 0000000000..53ba49d3b0 --- /dev/null +++ b/files/pl/web/api/element/id/index.html @@ -0,0 +1,38 @@ +--- +title: element.id +slug: Web/API/Element/id +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/id +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność id jednoznacznie identyfikuje bieżący element.

+

Składnia i wartości

+
id_str = element.id
+element.id =id_str
+
+ +

Przykład

+
if (element.id != "main_loop")
+     goBack();
+
+

Uwagi

+

Nie ma ważniejszej własności w dziedzinie konstruowania stron niż + + id + . ID elementu jest tym, czego najczęściej używa się by go wydobyć (np. za pomocą getElementById) i pozwala ono manipulować węzłami niezależnie od innych węzłów. W HTML-u i w XUL-u id definiowane jest jako atrybut tak:

+
<td id="table-cell2" />
+
+

Jeśli zamierzasz używać DOM na swoich stronach dobrze jest przypisać tyle atrybutów id ile tylko będzie potrzebne. Zauważ też, że + + id + używa się również by powiązać reguły stylów CSS z poszczególnymi elementami.

+

Specyfikacja

+

id

+

{{ languages( { "en": "en/DOM/element.id", "fr": "fr/DOM/element.id", "ja": "ja/DOM/element.id", "zh-cn": "cn/DOM/element.id" } ) }}

diff --git a/files/pl/web/api/element/index.html b/files/pl/web/api/element/index.html new file mode 100644 index 0000000000..5a7c6be166 --- /dev/null +++ b/files/pl/web/api/element/index.html @@ -0,0 +1,677 @@ +--- +title: Element +slug: Web/API/Element +tags: + - DOM + - Gecko +translation_of: Web/API/Element +--- +

{{ ApiRef}}

+ +

Ten rozdział dostarcza zwięzłych informacji dla wszystkich metod, własności i zdarzeń dostępnych dla większości elementów HTML i XML w Gecko DOM.

+ +

Różne specyfikacje W3C mają zastosowanie do elementów:

+ + + +

Niniejsze interfejsy DOM łączą różne specyfikacje, jednak staramy się skoncentrować na rekomendacji DOM Level 2 HTML. Każda podstrona zawiera odnośnik do odpowiedniego fragmentu specyfikacji W3C DOM.

+ +

W tym miejscu "elementy" oznaczają ten interfejs, jaki mają wszystkie elementy HTML i XML. Istnieją również bardziej specjalizowane interfejsy dla poszczególnych elementów - np. BODY posiada dodatkowe funkcje i własności, podobnie tabele. W tym rozdziale omówiony jest tylko ten interfejs, jak współdzielą wszystkie elementy.

+ +

Własności

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NazwaOpisTypDostępność
attributesZwraca tablicę atrybutów elementu.NamedNodeMapWszystkie
childNodesZwraca tablicę węzłów potomnych elementu.NodeListWszystkie
classNamePobiera/ustawia klasę elementu.StringHTML, XUL
clientHeightZwraca wewnętrzną wysokość elementu.NumberHTML
clientWidthZwraca wewnętrzną szerokość elementu.NumberHTML
dirUstawia lub pobiera kierunek elementu.StringHTML, XUL
firstChildZwraca pierwsze dziecko bieżącego węzła lub null, jeśli ten element nie posiada węzła potomnego.NodeWszystkie
idPobiera/ustawia id elementu.StringHTML, XUL
innerHTMLPobiera/ustawia znacznik zawartości elementu.StringHTML
langOkreśla język bazowy dla wartość atrybutów i tekstowej zawartości elementu.StringHTML
lastChildZwraca ostatnie dziecko bieżącego węzła elementu lub null jeśli ten element nie posiada węzłów potomnych.NodeWszystkie
localNameZwraca lokalną część uściślonej nazwy węzła.StringWszystkie
NazwaOpisTypDostępność
namePobiera lub ustawia atrybut name - dostępne nie dla wszystkich elementów.StringHTML
namespaceURIURI przestrzeni nazw węzła lub null, jeśli jest bliżej nieokreślony.StringWszystkie
nextSiblingWęzeł bezpośrednio następny w drzewie dokumentu lub null jeżeli takiego nie ma.NodeWszystkie
nodeNameNazwa węzła.StringWszystkie
nodeTypeCyfra reprezentująca typ węzła. 1 oznacza element DOM.NumberWszystkie
nodeValueWartość węzła atrybutu, zawartość węzła tekstowego lub null dla elementu DOM.StringWszystkie
offsetHeightWysokość elementu, odnosząca się do układu strony.NumberHTML
offsetLeftOdległość pomiędzy lewą krawędzią elementu, a jego offsetParent lewej krawędzi.NumberHTML
offsetParentElement, od którego obliczane są wszystkie przesunięcia.ElementHTML
offsetTopOdległość pomiędzy górną krawędzią elementu, a jego offsetParent górnej krawędzi.NumberHTML
offsetWidthSzerokość elementu, odnosząca się do układu strony.NumberHTML
ownerDocumentDokument, którego węzeł jest w lub null jeśli węzeł nie znajduje się wewnątrz.DocumentWszystkie
NazwaOpisTypDostępność
parentNodeElement nadrzędny bieżącego węzła lub null jeżeli węzeł nie znajduje się wewnątrz dokumentu DOM.NodeWszystkie
prefixPrefiks przestrzeni nazw węzła lub null jeżeli nie określono prefiksa.StringWszystkie
previousSiblingWęzeł bezpośrednio poprzedni w drzewie dokumentu lub null jeżeli takiego nie ma.NodeWszystkie
scrollHeightThe scroll view height of an element.NumberHTML
scrollLeftPobiera/Ustawia liczbę pikseli, o którą zostanie przewinięta zawartość dokumentu.NumberHTML
scrollTopPobiera/Ustawia liczbę pikseli, o którą ma zostać przewinięta w górę zawartość elementu.NumberHTML
scrollWidthZwraca szerokość zawartości elementu w pikselach lub szerokość samego elementu.NumberHTML
styleObiekt reprezentujący deklaracje stylów elementu.CSSStyleHTML, XUL
tabIndexPobiera lub ustawia pozycję elementu w kolejności przechodzenia tabulatorem.NumberHTML
tagNameNazwa znacznika HTML danego elementu.StringWszystkie
textContentPobiera bądź ustawia tekstową treść elementu i jego potomków.StringWszystkie
+ +

 

+ +
+
attributes
+
Zwraca tablicę atrybutów elementu.
+
+ +
+
childNodes
+
Zwraca tablicę węzłów potomnych elementu
+
+ +
+
className
+
Pobiera/ustawia klasę elementu.
+
+ +
+
clientHeight
+
Własność DHTML-a, reprezentuje wewnętrzną wysokość elementu.
+
+ +
+
clientLeft
+
Długość od lewego obramowania elementu wyrażona w pikselach. Aktualnie nie obsługiwana.
+
+ +
+
clientTop
+
Długość od górnego obramowania elementu wyrażona w pikselach. Aktualnie nie obsługiwana.
+
+ +
+
clientWidth
+
Własność DHTML-a, reprezentuje wewnętrzną szerokość elementu.
+
+ +
+
dir
+
Pobiera/ustawia kierunkowość (ang. directionality) elementu.
+
+ +
+
firstChild
+
Zwraca pierwsze dziecko bieżącego węzła.
+
+ +
+
id
+
Pobiera/ustawia id elementu.
+
+ +
+
innerHTML
+
innerHTML zwraca całą zawartość elementu wraz ze znacznikami.
+
+ +
+
lang
+
Określa język bazowy dla wartość atrybutów i tekstowej zawartości elementu.
+
+ +
+
lastChild
+
Zwraca ostatnie dziecko bieżącego węzła.
+
+ +
+
length
+
Zwraca ilość elementów listy (np. childNodes).
+
+ +
+
localName
+
Zwraca lokalną część uściślonej nazwy węzła.
+
+ +
+
name
+
Pobiera lub ustawia atrybut name - dostępne nie dla wszystkich elementów.
+
+ +
+
namespaceURI
+
URI przestrzeni nazw węzła lub NULL, jeśli nie określono przestrzeni nazw.
+
+ +
+
nextSibling
+
Zwraca węzeł bezpośrednio następny w drzewie dokumentu.
+
+ +
+
nodeName
+
Zwraca nazwę biężącego węzła.
+
+ +
+
nodeType
+
Zwraca typ bieżącego węzła.
+
+ +
+
nodeValue
+
Zwraca wartość bieżącego węzła.
+
+ +
+
offsetHeight
+
offsetHeight jest własnością DHTML-a, zwracającą wysokość elementu względem układu.
+
+ +
+
offsetLeft
+
offsetLeft pobiera/ustawia ilość pikseli, jaka dzieli element od lewej strony wewnątrz węzła offsetParent.
+
+ +
+
offsetParent
+
offsetParent zwraca referencję do obiektu, w którym obecny element się znajduje (tj. rodzica).
+
+ +
+
offsetTop
+
offsetTop zwraca pozycję obecnego elementu względem góry węzła offsetParent.
+
+ +
+
offsetWidth
+
offsetWidth jest własnością DHTML-a, zwracającą szerokość elementu względem układu.
+
+ +
+
ownerDocument
+
Zwraca dokument, w którym znajduje się bieżący węzeł.
+
+ +
+
parentNode
+
Zwraca rodzica bieżącego węzła.
+
+ +
+
prefix
+
Zwraca prefiks przestrzeni nazw obecnego węzła bądź NULL, jeśli nie określono przestrzeni nazw.
+
+ +
+
previousSibling
+
Zwraca węzeł bezpośrednio poprzedni w drzewie dokumentu.
+
+ +
+
scrollHeight
+
Własność DHTML-a, zwraca wysokość zawartości elementu z paskiem przewijania.
+
+ +
+
scrollLeft
+
pobiera bądź ustawia liczbę pikseli, o którą zostanie przewinięta zawartość dokumentu. Kierunek przewijania odbywa się w lewo.
+
+ +
+
scrollTop
+
Własność DHTML-a, która ustawia bądź pobiera odległość między górą elementu a najwyższym punktem zawartości elementu z paskiem przewijania.
+
+ +
+
scrollWidth
+
Zwraca the width of the scroll view of an element.
+
+ +
+
style
+
Zwraca blok reguł stylów dla elementu.
+
+ +
+
tabIndex
+
Pobiera/ustawia pozycję elementu w porządku tabulacji.
+
+ +
+
tagName
+
Zwraca nazwę elementu.
+
+ +
+
textContent
+
Pobiera/ustawia zawartość tekstu elementu włączając jego potomków.
+
+ +

Metody

+ +
+
addEventListener
+
Pozwala zarejestrować obserwatora zdarzeń dla celu zdarzenia.
+
+ +
+
appendChild
+
Wstawia określony węzeł do listy węzłów dokumentu.
+
+ +
+
blur
+
Dezaktywuje bieżący element.
+
+ +
+
click
+
Wywołuje kliknięcie na elemencie.
+
+ +
+
cloneNode
+
Zwraca kopię bieżącego węzła.
+
+ +
+
dispatchEvent
+
Pozwala przekazać wywołania zdarzeń do modelu zdarzeń w implementacji DOM.
+
+ +
+
focus
+
Aktywuje bieżący element.
+
+ +
+
getAttribute
+
Zwraca wartość atrybutu o podanej nazwie.
+
+ +
+
getAttributeNS
+
Zwraca wartość atrybutu o podanej nazwie i przestrzeni nazw.
+
+ +
+
getAttributeNode
+
Zwraca atrybut elementu jako osobny węzeł.
+
+ +
+
getElementsByTagName
+
Zwraca elementy o podanej nazwie będące potomkami bieżącego elementu.
+
+ +
+
hasAttribute
+
Zwraca wartość logiczną zależnie od tego, czy element posiada atrybut o podanej nazwie.
+
+ +
+
hasAttributeNS
+
Zwraca wartość logiczną zależnie od tego, czy element posiada atrybut o podanej nazwie i przestrzeni nazw.
+
+ +
+
hasAttributes
+
Zwraca wartość logiczną zależnie od tego, czy element posiada jakiekolwiek atrybuty.
+
+ +
+
hasChildNodes
+
Zwraca wartość logiczną zależnie od tego, czy element posiada dzieci.
+
+ +
+
insertBefore
+
Metoda pozwala wstawić węzeł przed bieżącym elementem w DOM.
+
+ +
+
item
+
Zwraca węzeł z drzewa wg podanego indeksu.
+
+ +
+
normalize
+
Metoda zapisuje bieżący węzeł i całe drzewo znajdujące się wewnątrz w "znormalizowanej" formie.
+
+ +
+
removeAttribute
+
Usuwa atrybut elementu.
+
+ +
+
removeAttributeNode
+
Usuwa określony atrybut elementu.
+
+ +
+
removeChild
+
Usuwa węzeł potomny bieżącego elementu.
+
+ +
+
removeEventListener
+
Pozwala usunąć obserwatora zdarzeń z celu zdarzenia.
+
+ +
+
replaceChild
+
Metoda replaceChild() zastępuje węzeł potomny bieżącego elementu innym węzłem.
+
+ +
+
setAttribute
+
Dodaje nowy atrybut bądź zmienia wartość atrybutu bieżącego elementu.
+
+ +
+
setAttributeNS
+
Dodaje nowy atrybut bądź zmienia wartość atrybutu bieżącego elementu, wg podanej nazwy i przestrzeni nazw.
+
+ +
+
setAttributeNode
+
Dodaje nowy węzeł atrybutu do bieżącego elementu.
+
+ +
+
setAttributeNodeNS
+
Dodaje nowy węzeł atrybutu do bieżącego elementu wg podanej nazwy i przestrzeni nazw.
+
+ +
+
supports
+
Sprawdza, czy implementacja DOM pozwala na wykorzystanie konkretnej możliwości.
+
+ +

Uchwyty zdarzeń

+ +

Poniższe właściwości nie mogą być przypisane, tak jak uchwyty zdarzeń obiektów document czy window. Wszystkie poniższe własności służą tylko do odczytu - zwracają kod obsługi zdarzeń, jeżeli został on nadany elementowi w samym HTML-u bądź XML-u.

+ +

Są to właściwości odnoszące się do HTML dla atrybutów zdarzeń 'on'.

+ +

W przeciwieństwie do odpowiadających atrybutów, wartości tych właściwość są funkcjami lub jakimkolwiek innym obiektem implementowanym przez EventListener interfejs. Przypisanie atrybutu zdarzenia w HTML powoduje utworzenie funkcji opakowującej funkcji dla określonego kodu. Np. podając następujący HTML:

+ +
<div onclick="foo();">click me!</div>
+
+ +

Jeżeli element jest referencją do <div>, wartość element.onclick wynosi faktycznie:

+ +
function onclick(event) {
+   foo();
+}
+
+ +

Note how the event object is passed as parameter event to this wrapper function.

+ +
+
onblur
+
Zwraca kod obsługi zdarzenia blur.
+
+ +
+
onclick
+
Zwraca kod obsługi zdarzenia onclick.
+
+ +
+
ondblclick
+
Zwraca kod obsługi zdarzenia dblclick.
+
+ +
+
onfocus
+
Zwraca kod obsługi zdarzenia focus.
+
+ +
+
onkeydown
+
Zwraca kod obsługi zdarzenia keydown.
+
+ +
+
onkeypress
+
Zwraca kod obsługi zdarzenia keypress.
+
+ +
+
onkeyup
+
Zwraca kod obsługi zdarzenia keyup.
+
+ +
+
onmousedown
+
Zwraca kod obsługi zdarzenia mousedown.
+
+ +
+
onmousemove
+
Zwraca kod obsługi zdarzenia mousemove.
+
+ +
+
onmouseout
+
Zwraca kod obsługi zdarzenia mouseout.
+
+ +
+
onmouseover
+
Zwraca kod obsługi zdarzenia mouseover.
+
+ +
+
onmouseup
+
Zwraca kod obsługi zdarzenia mouseup.
+
+ +
+
onresize
+
Zwraca kod obsługi zdarzenia resize.
+
diff --git a/files/pl/web/api/element/innerhtml/index.html b/files/pl/web/api/element/innerhtml/index.html new file mode 100644 index 0000000000..dafe31adf1 --- /dev/null +++ b/files/pl/web/api/element/innerhtml/index.html @@ -0,0 +1,67 @@ +--- +title: element.innerHTML +slug: Web/API/Element/innerHTML +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/innerHTML +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

innerHTML ustawia lub pobiera zbiór zawartych w danym elemencie znaczników razem z ich treścią.

+ +

Składnia

+ +
var markup = element.innerHTML;
+element.innerHTML = markup;
+
+ + + +

Przykład

+ +
// HTML:
+// <div id="d"><p>Treść</p>
+// <p>Bardziej skomplikowane</p>
+// </div>
+
+d = document.getElementById("d");
+dump(d.innerHTML);
+
+// ciąg "<p>Treść</p><p>Bardziej skomplikowane</p>"
+// zostanie wyświetlony w oknie konsoli
+
+ +

Uwagi

+ +

Własność ta, nie będąca częścią specyfikacji W3C DOM, zapewnia możliwość łatwego zastąpienia całej zawartości elementu. Na przykład można wyczyścić wszystko co jest w body:

+ +
document.body.innerHTML = "";  // Zawartość body zostaje zastąpiona pustym ciągiem
+
+ +

Własność innerHTML różnych elementów, w tym BODY i HTML może zostać pobrana czy zastąpiona. Można jej użyć, by wyświetlić źródło zmodyfikowanej dynamicznie strony:

+ +
// Skopiuj jako pojedynczą linię i wklej do paska adresu
+javascript:x=document.body.innerHTML.replace(/</g,'&lt;').replace(/\n/g,'<br>'); document.body.innerHTML = x;
+
+ +

Ponieważ nie ma publicznej specyfikacji dla tej własności, jej implementacje różnią się. Na przykład po wprowadzeniu tekstu do pola tekstowego, IE zmieni zawartość atrybutu value elementu INPUT w innerHTML, a przeglądarki oparte o Gecko - nie.

+ +

Własności tej nigdy nie powinno się używać do zapisu części tabeli - zamiast niej należy skorzystać z metod W3C DOM. innerHTML można jednak użyć, by zapisać całą tabelę lub zmodyfikować zawartość pojedynczych komórek.

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +

Zobacz także

+ +

MSDN innerHTML

+ +

{{ languages( { "en": "en/DOM/element.innerHTML", "fr": "fr/DOM/element.innerHTML", "ja": "ja/DOM/element.innerHTML" } ) }}

diff --git a/files/pl/web/api/element/insertadjacenthtml/index.html b/files/pl/web/api/element/insertadjacenthtml/index.html new file mode 100644 index 0000000000..c3332ed337 --- /dev/null +++ b/files/pl/web/api/element/insertadjacenthtml/index.html @@ -0,0 +1,91 @@ +--- +title: Element.insertAdjacentHTML() +slug: Web/API/Element/insertAdjacentHTML +translation_of: Web/API/Element/insertAdjacentHTML +--- +
{{APIRef("DOM")}}
+ +

insertAdjacentHTML() metoda z {{domxref("Element")}} interfejsu analizuje specyficzny tekst jak HTML albo XML, wstawia wynik w drzewo DOM w określonej pozycji. to nie naprawia elementu jest użyty na a zatem nie jest zepsuty istniejący element w środku elementu. To unika ekstra kroków z serializacją, zrobienie tego jest wiele szybsze niż bezpośredni {{domxref("Element.innerHTML", "innerHTML")}} manipulation.

+ +

Syntax

+ +
element.insertAdjacentHTML(position, text);
+ +

Parametry

+ +
+
position
+
A {{domxref("DOMString")}} reprezentuje pozycję relatywną element-u musi być must be jeden z następujących ciągów: +
    +
  • 'beforebegin': przed element -em.
  • +
  • 'afterbegin': W środku element-u przed jego pierwszym dzieckiem.
  • +
  • 'beforeend': W środku elementu po jego ostatnim dziecku.
  • +
  • 'afterend': Po element-cie 
  • +
+
+
text
+
string analizuje HTML albo XML i włącza w drzewo.
+
+ +

Visualization of position names

+ +
<!-- beforebegin -->
+<p>
+  <!-- afterbegin -->
+  foo
+  <!-- beforeend -->
+</p>
+<!-- afterend -->
+ +
Note: beforebegin i afterend pozycja działa tylko jeśli node jest w drzewie DOM i ma rodzica elementu.
+ +

Przykład:

+ +
// <div id="one">one</div>
+var d1 = document.getElementById('one');
+d1.insertAdjacentHTML('afterend', '<div id="two">two</div>');
+
+// At this point, the new structure is:
+// <div id="one">one</div><div id="two">two</div>
+ +

Notes

+ +

Security considerations

+ +

When inserting HTML into a page by using insertAdjacentHTML(), be careful not to use user input that hasn't been escaped.

+ +

It is not recommended you use insertAdjacentHTML() when inserting plain text; instead, use the {{domxref("Node.textContent")}} property or the {{domxref("Element.insertAdjacentText()")}} method. This doesn't interpret the passed content as HTML, but instead inserts it as raw text.

+ +

Specification

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM Parsing', '#widl-Element-insertAdjacentHTML-void-DOMString-position-DOMString-text', 'Element.insertAdjacentHTML()')}}{{ Spec2('DOM Parsing') }} 
+ +

Browser compatibility

+ + + +

{{Compat("api.Element.insertAdjacentHTML")}}

+ +

See also

+ + diff --git a/files/pl/web/api/element/insertbefore/index.html b/files/pl/web/api/element/insertbefore/index.html new file mode 100644 index 0000000000..27c40ad945 --- /dev/null +++ b/files/pl/web/api/element/insertbefore/index.html @@ -0,0 +1,86 @@ +--- +title: element.insertBefore +slug: Web/API/Element/insertBefore +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/insertBefore +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Wstawia określony węzeł przed danym elementem jako dziecko aktualnego węzła.

+ +

Składnia

+ +
var wstawionyElement =elementRodzic.insertBefore(nowyElement,danyElement)
+
+ +

Jeżeli danyElement ma wartość null, nowyElement jest wstawiany na końcu listy węzłów potomnych.

+ + + +

Przykład

+ +
 <html>
+
+ <head>
+ <title>Gecko DOM insertBefore test</title>
+ </head>
+
+ <body>
+ <div>
+   <span id="childSpan">foo bar</span>
+ </div>
+
+ <script type="text/javascript">
+ // tworzy pusty węzeł elementu
+ // bez ID, jakichkolwiek atrybutów lub jakiejkolwiek zawartości
+ var sp1 = document.createElement("span");
+
+ // daje to atrybut id nazwany 'newSpan'
+ sp1.setAttribute("id", "newSpan");
+
+ // tworzy jakąś zawartość dla nowo powstałego elementu.
+ var sp1_content = document.createTextNode("Jest to nowy element span. ");
+
+ // zwraca się, która treść ma być do nowego elementu.
+ sp1.appendChild(sp1_content);
+
+ var sp2 = document.getElementById("childSpan");
+ var parentDiv = sp2.parentNode;
+
+ // wstawia nowy element do DOM przed sp2
+ parentDiv.insertBefore(sp1, sp2);
+ </script>
+
+ </body>
+ </html>
+
+ +

Nie istnieje metoda insertAfter, jednak można ją emulować poprzez kombinację insertBefore oraz nextSibling.

+ +

W powyższym przykładzie, sp1 może zostać wstawiona za sp2 przy użyciu:

+ +
parentDiv.insertBefore(sp1, sp2.nextSibling);
+
+ +

Jeżeli sp2 nie posiada następnego rodzeństwa i musi być ostatnim potomnym —sp2.nextSibling to zwróci null więc sp1 będzie wstawione na końcu listy węzłów potomnych (np. natychmiast po sp2).

+ +

Specyfikacja

+ +

insertBefore

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/DOM/element.insertBefore", "fr": "fr/DOM/element.insertBefore", "ja": "ja/DOM/element.insertBefore", "pt": "pt/DOM/element.insertBefore" } ) }}

diff --git a/files/pl/web/api/element/lang/index.html b/files/pl/web/api/element/lang/index.html new file mode 100644 index 0000000000..446c0817b9 --- /dev/null +++ b/files/pl/web/api/element/lang/index.html @@ -0,0 +1,40 @@ +--- +title: element.lang +slug: Web/API/Element/lang +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/lang +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność ta pozwala pobrać lub ustawić język bazowy wartości atrybutów i treści elementu.

+

Składnia i wartości

+
var languageUsed = elementNodeReference.lang;
+elementNodeReference.lang = NewLanguage;
+
+ +

Przykład

+
// poniższy fragment kodu porównuje język bazowy i odsyła
+// do innych URL na podstawie odczytanego kodu języka
+if (document.documentElement.lang == "en")
+   {
+    window.location.href = "Some_document.html.en";
+   }
+else if(document.documentElement.lang == "ru")
+   {
+    window.location.href = "Some_document.html.ru";
+   };
+
+

Uwagi

+

Kod języka zwracany przez w/w właściwość zgodny jest z kodami zdefiniowanymi w dokumencie RFC 1766. Przykładowo: "en" dla języka angielskiego, "ja" dla japońskiego, "es" dla hiszpańskiego itd. Domyślna wartość atrybutu to unknown. Wartość tego atrybutu ustawiana jest zwykle dla podstawowego (najwyższego) elementu dokumentu.

+

Specyfikacja

+

W3C DOM Level 2 HTML: lang

+
+  
+

{{ languages( { "en": "en/DOM/element.lang", "fr": "fr/DOM/element.lang", "ja": "ja/DOM/element.lang" } ) }}

diff --git a/files/pl/web/api/element/lastchild/index.html b/files/pl/web/api/element/lastchild/index.html new file mode 100644 index 0000000000..34475c02d7 --- /dev/null +++ b/files/pl/web/api/element/lastchild/index.html @@ -0,0 +1,28 @@ +--- +title: element.lastChild +slug: Web/API/Element/lastChild +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/lastChild +--- +

{{ ApiRef() }}

+

Podsumowanie

+

lastChild zwraca ostatnie dziecko węzła.

+

Składnia i wartości

+
ostatnieDziecko = element.lastChild
+
+

ostatnieDziecko to węzeł. Jeśli jego rodzicem jest element, dzieckiem jest na ogół węzeł elementu, komentarza lub węzeł tekstowy.

+

Przykład

+
tr = document.getElementById("row1");
+td_róg = tr.lastChild;
+
+

Uwagi

+

Jeżeli nie ma węzłów potomnych, zwracane jest null.

+

Specyfikacja

+

lastChild

+
+  
+

{{ languages( { "en": "en/DOM/element.lastChild", "fr": "fr/DOM/element.lastChild", "ja": "ja/DOM/element.lastChild" } ) }}

diff --git a/files/pl/web/api/element/length/index.html b/files/pl/web/api/element/length/index.html new file mode 100644 index 0000000000..ce5e1345ef --- /dev/null +++ b/files/pl/web/api/element/length/index.html @@ -0,0 +1,37 @@ +--- +title: element.length +slug: Web/API/Element/length +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NodeList/length +--- +

{{ ApiRef() }}

+

Podsumowanie

+

length zwraca liczbę elementów listy.

+

Składnia

+
liczbaElementów = nodeList.length
+
+

Parametry

+ +

Przykład

+
// wszystkie paragrafy z dokumentu
+items = document.getElementsByTagName("p");
+// są jakieś?
+if ( items.length ) {
+     // dodaj HTML z każdego elemntu listy
+     for (var i = 0; i < items.length; i++) {
+         gross += items[0].innerHTML;
+         // gross zawiera teraz cały HTML z paragrafów
+     }
+}
+
+

Uwagi

+

Właściwość length jest bardzo częsta w programowaniu z użyciem DOM. Używa się jej by sprawdzić, czy lista zawiera elementy oraz w pętli for, jak w powyższym przykładzie.

+

Specyfikacja

+

length

+

{{ languages( { "en": "en/DOM/element.length", "ja": "ja/DOM/element.length" } ) }}

diff --git a/files/pl/web/api/element/localname/index.html b/files/pl/web/api/element/localname/index.html new file mode 100644 index 0000000000..55b5649e31 --- /dev/null +++ b/files/pl/web/api/element/localname/index.html @@ -0,0 +1,64 @@ +--- +title: element.localName +slug: Web/API/Element/localName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/localName +--- +

{{ ApiRef() }}

+

Podsumowanie

+

localName zwraca lokalną część uściślonej nazwy węzła.

+

Składnia

+
nazwa = element.localName
+
+

Parametry

+ +

Przykład

+

(Musi obsługiwać treść XML typu, jak <tt>text/xml</tt> lub <tt>application/xhtml+xml</tt>.)

+
<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:svg="http://www.w3.org/2000/svg">
+<head>
+  <script><![CDATA[
+  function test() {
+    var text = document.getElementById('text');
+    var circle = document.getElementById('circle');
+
+    text.value = "<svg:circle> has:\n" +
+                 "localName = '" + circle.localName + "'\n" +
+                 "namespaceURI = '" + circle.namespaceURI + "'";
+  }
+  ]]></script>
+</head>
+<body onload="test()">
+  <textarea id="text" rows="4" cols="55"/>
+  <svg:svg version="1.1"
+    style="width:100%; height:100%; position:absolute; top:0; left:0; z-index:0;"
+    viewBox="0 0 100 100">
+    <svg:circle cx="50" cy="50" r="30" style="fill:#aaa" id="circle"/>
+  </svg:svg>
+</body>
+</html>
+
+

Uwagi

+

Dla węzłów typu innego niż ELEMENT_NODE i ATTRIBUTE_NODE oraz dla węzłów utworzonych za pomocą metod DOM Level 1, jak na przykład document.createElement, własność ta ma zawsze wartość NULL.

+

localname węzła to ta część uściślonej nazwy węzła, która znajduje się po dwukropku. Uściślone nazwy są zwykle używane w XML jako część przestrzeni nazw w poszczególnych dokumentach XML. Na przykład w uściślonej nazwie "ecomm:partners" nazwa lokalna to "partners", a "ecomm" to prefiks.

+
<ecomm:business id="soda_shop" type="brick_n_mortar">
+  <ecomm:partners>
+    <ecomm:partner id="1001">Tony's Syrup Warehouse
+    </ecomm:partner>
+  </ecomm:partner>
+</ecomm:business>
+
+

Prefiks - w tym wypadku "ecomm" - określa przestrzeń nazw, w której można użyć nazwy lokalnej.

+

Zobacz także

+

element.namespaceURI

+

Specyfikacja

+

localName

+
+  
+

{{ languages( { "en": "en/DOM/element.localName", "fr": "fr/DOM/element.localName", "ja": "ja/DOM/element.localName" } ) }}

diff --git a/files/pl/web/api/element/name/index.html b/files/pl/web/api/element/name/index.html new file mode 100644 index 0000000000..e1a9fa7f41 --- /dev/null +++ b/files/pl/web/api/element/name/index.html @@ -0,0 +1,60 @@ +--- +title: element.name +slug: Web/API/Element/name +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API +--- +

{{ ApiRef() }}

+

Podsumowanie

+

name pobiera lub ustawia atrybut name obiektu DOM. Ma zastosowanie tylko dla poniższych elementów: anchor, applet, form, frame, iframe, image, input, map, meta, object, option, param, select i textarea.

+

name można wykorzystać w metodzie getElementsByName, w obiekcie form i w kolekcji elements. Jeśli zostanie użyta dla formularza lub kolekcji elementów, właściwość tak może zwrócić jeden element lub ich kolekcję.

+

Składnia

+
HTMLElement.name = string;
+var elName = HTMLElement.name;
+
+var kontrolka = HTMLFormElement.nazwaElementu;
+var kolekcjaKontrolek = HTMLFormElement.elements.nazwaElementu;
+
+

Przykład

+
<form action="" name="formA">
+  <input type="text" value="foo">
+</form>
+
+<script type="text/javascript">
+
+  // pobierz referncję do pierwszego elementu formularza
+  var formElement = document.forms['formA'].elements[0];
+
+  // nadaj mu nazwę
+  formElement.name = 'inputA';
+
+  // i wyświetl jego wartość
+  alert(document.forms['formA'].elements['inputA'].value);
+
+</script>
+
+

uwagi

+

W przeglądarce Internet Explorer (IE) nie można modyfikować właściwości name obiektów DOM utworzonych za pomocą createElement.

+

Specyfikacja

+

Specyfikacja W3C DOM 2 HTML:

+ +

{{ languages( { "en": "en/DOM/element.name", "ja": "ja/DOM/element.name", "fr": "fr/DOM/element.name" } ) }}

diff --git a/files/pl/web/api/element/namespaceuri/index.html b/files/pl/web/api/element/namespaceuri/index.html new file mode 100644 index 0000000000..9f252ba570 --- /dev/null +++ b/files/pl/web/api/element/namespaceuri/index.html @@ -0,0 +1,39 @@ +--- +title: element.namespaceURI +slug: Web/API/Element/namespaceURI +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/namespaceURI +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca URI przestrzeni nazw tego węzła lub NULL, jeśli jej nie określono.

+

Składnia

+
przestrzeńNazw = element.namespaceURI
+
+

Parametry

+ +

Przykład

+

W poniższym wycinku kodu sprawdzane są localName i namespaceURI węzła. Jeśli namespaceURI jest zgodny ze zmienną zawierającą przestrzeń nazw dla XUL, węzeł jest uznawany za widget <browser /> w języku XUL.

+
if (node.localName == "browser"
+    && node.namespaceURI == kXULNSURI) {
+// xul browser
+this.viewee = node.webNavigation.document;
+//...
+}
+
+

Uwagi

+

Nie jest to wyznaczona wartość, będąca rezultatem przeszukiwania w oparciu o deklaracje przestrzeni nazw w zakresie, w jakim znajduje się element. Jest to jedynie URI takiej przestrzeni nazw, jaką nadano w momencie tworzenia elementu.

+

Dla węzłow typów innych niż ELEMENT_NODE i ATTRIBUTE_NODE oraz węzłów utworzonych metodami DOM Level 1, jak document.createElement, wartość tej właściwości to zawsze NULL.

+

Zgodnie ze specyfikacją Namespaces in XML atrybut nie dziedziczy przestrzeni nazw po elemencie, do którego jest przypisany. Jeśli atrybut nie ma bezpośrednio nadanej przestrzeni nazw, po prostu nie należy do żadnej przestrzeni.

+

Specyfikacja

+

namespaceURI

+

Przestrzenie nazw XML

+
+  
+

{{ languages( { "en": "en/DOM/element.namespaceURI", "fr": "fr/DOM/element.namespaceURI", "ja": "ja/DOM/element.namespaceURI" } ) }}

diff --git a/files/pl/web/api/element/nextsibling/index.html b/files/pl/web/api/element/nextsibling/index.html new file mode 100644 index 0000000000..17f1822a56 --- /dev/null +++ b/files/pl/web/api/element/nextsibling/index.html @@ -0,0 +1,63 @@ +--- +title: element.nextSibling +slug: Web/API/Element/nextSibling +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/nextSibling +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca węzeł znajdujący się w drzewie bezpośrednio za węzłem bieżącym.

+

Składnia i wartości

+
następnyElement = element.nextSibling
+
+

następnyElement to węzeł bezpośrednio następny w liście rodzeństwa (np. liście dzieci węzła parentNode). Następnym węzłem jest na ogół węzeł elementu, komentarza lub węzeł tekstowy.

+

Przykład

+
<div id="div-01">Here is div-01</div>
+<div id="div-02">Here is div-02</div>
+
+<script type="text/javascript">
+  var el = document.getElementById('div-01').nextSibling;
+  document.write('<p>Rodzeństwo div-01</p><ol>');
+  while (el) {
+    document.write('<li>' + el.nodeName + '</li>');
+    el = el.nextSibling;
+  }
+  document.write('</ol>');
+</script>
+
+/**************************************************
+  Po załadowaniu zostanie dopisane do strony:
+
+     Rodzeństwo div-01
+
+      1. #text
+      2. DIV
+      3. #text
+      4. SCRIPT
+      5. P
+      6. OL
+**************************************************/
+
+

Węzły tekstowe - #text - są w powyższym przykładzie wstawiane do modelu dokumentu w miejsce białych znaków między elementami (np. po znaczniku zamykającym jeden element, ale przed znacznikiem otwierającym następny element). Białe znaki nie są wstawiane przy wywołaniu document.write.

+

Poniższy przykład pokazuje, jak białe znaki wpływają na sąsiednie węzły komórek tabeli:

+
<table>
+  <tr>
+    <td id="cell1">cell1</td>
+    <td id="cell2">cell2</td>
+  </tr>
+  <tr>
+    <td id="cell3">cell3</td><td id="cell4">cell4</td></tr>
+</table>
+
+

nextSibling cell1 to węzeł tekstowy. Między komórkami drugiego rzędu tabeli nie ma białych znaków, dlatego rodzeństwo cell3 to tylko cell4. Podczas przechodzenia przez model dokumentu za pomocą nextSibling należy liczyć się z możliwością wystąpienia węzłów tekstowych.

+

Uwagi

+

Zwraca null, kiedy nie ma już więcej węzłów.

+

Specyfikacja

+

nextSibling

+
+  
+

{{ languages( { "en": "en/DOM/element.nextSibling", "fr": "fr/DOM/element.nextSibling", "ja": "ja/DOM/element.nextSibling" } ) }}

diff --git a/files/pl/web/api/element/nodename/index.html b/files/pl/web/api/element/nodename/index.html new file mode 100644 index 0000000000..93a54424a6 --- /dev/null +++ b/files/pl/web/api/element/nodename/index.html @@ -0,0 +1,98 @@ +--- +title: element.nodeName +slug: Web/API/Element/nodeName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/nodeName +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca nazwę węzła jako ciąg znaków.

+

Składnia

+
nazwa = element.nodeName
+
+

+ + nazwa + to ciąg znaków reprezentujący nazwę bieżącego elementu. nodeName to atrybut tylko do odczytu.

+

Uwagi

+

Poniżej przedstawione są wartości zwracane dla różnych typów węzłów:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
InterfejsnodeName
Attrtak samo jak Attr.name
CDATASection"#cdata-section"
Comment"#comment"
Document"#document"
DocumentFragment"#document-fragment"
DocumentTypetak samo jak DocumentType.name
Elementtak samo jak Element.tagName
Entitynazwa encji
EntityReferencenazwa refernecji do encji
Notationnazwa notacji
ProcessingInstructiontak samo jak ProcessingInstruction.target
Text"#text"
+

Przykład

+

Dane są poniższe znaczniki

+
<div id="d1">hello world</div>
+<input type="text" id="t"/>
+
+

i taki skrypt:

+
var div1 = document.getElementById("d1");
+var poleTekstowe = document.getElementById("t");
+poleTekstowe.value = div1.nodeName;
+
+

W XHTML-u (lub innym formacie XML) wartość pola tekstowego to "div". W HTML wartość ta to "DIV".

+

Zauważ, że można było użyć właściwości tagName, ponieważ dla elementów nodeName ma taką samą wartość jak tagName.

+

Specyfikacja

+

W3C DOM Level 2 Core: nodeName

+

W3C DOM Level 3 Core: nodeName

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.nodeName", "es": "es/DOM/element.nodeName", "fr": "fr/DOM/element.nodeName", "it": "it/DOM/element.nodeName", "ja": "ja/DOM/element.nodeName" } ) }}

diff --git a/files/pl/web/api/element/nodetype/index.html b/files/pl/web/api/element/nodetype/index.html new file mode 100644 index 0000000000..8f3825ea86 --- /dev/null +++ b/files/pl/web/api/element/nodetype/index.html @@ -0,0 +1,44 @@ +--- +title: element.nodeType +slug: Web/API/Element/nodeType +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/nodeType +--- +
+ {{ApiRef}}
+

Podsumowanie

+

Zwraca kod reprezentujący typ węzła.

+

Składnia

+
typ = document.nodeType
+
+

typ jest zmienną liczbową typu unsigned short o jednej z poniższych wartości:

+ +

Przykład

+

Ten przykład sprawdza czy pierwszy węzeł wewnątrz elementu document jest comment node, i jeśli nie jest, wyświetli wiadomość.

+
var node = document.documentElement.firstChild;
+
+if(node.nodeType != Node.COMMENT_NODE)
+  alert("You should comment your code well!");
+
+

Specyfikacja

+ diff --git a/files/pl/web/api/element/nodevalue/index.html b/files/pl/web/api/element/nodevalue/index.html new file mode 100644 index 0000000000..205871bba3 --- /dev/null +++ b/files/pl/web/api/element/nodevalue/index.html @@ -0,0 +1,85 @@ +--- +title: Node.nodeValue +slug: Web/API/Element/nodeValue +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/nodeValue +--- +
+ {{APIRef}}
+
+  
+
+ Podsumowanie
+

Zwraca wartość bieżącego węzła.

+

Składnia

+
wartość = document.nodeValue
+
+

wartość to ciąg znaków reprezentujący wartość elementu, jeśli taka istnieje.

+

Uwagi

+

Dla dokumentu nodeValue zwraca null. Dla węzłów tekstowych, komentarzy i CDATA nodeValue zwraca zawartość węzła. Dla węzłów atrybutów, zwracana jest wartość atrybutu.

+

Poniższa tabela przedstawia wartości zwracane dla różnych interfejsów:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
InterfejsnodeValue
Attrwartość atrybutu
CDATASectiontreść sekcji CDATA
Commenttreść komentarza
Documentnull
DocumentFragmentnull
DocumentTypenull
Elementnull
NamedNodeMapnull
EntityReferencenull
Notationnull
ProcessingInstructioncała treść, wyłączając cel
Texttreść węzła tekstowego
+

Jeśli nodeValue z definicji ma wartość null, ustawianie tej właściwości nie będzie mieć efektu.

+

Specyfikacja

+ diff --git a/files/pl/web/api/element/normalize/index.html b/files/pl/web/api/element/normalize/index.html new file mode 100644 index 0000000000..4dac3822cc --- /dev/null +++ b/files/pl/web/api/element/normalize/index.html @@ -0,0 +1,22 @@ +--- +title: element.normalize +slug: Web/API/Element/normalize +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/normalize +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda zapisuje określony węzeł i całe jego poddrzewo w "znormalizowanej" formie. W znormalizowanym poddrzewie żaden węzeł tekstowy nie jest pusty, nie ma również sąsiednich węzłów tekstowych.

+

Składnia

+
element.normalize()
+
+

Uwagi

+

Specyfikacja

+

DOM Level 2 Core: Node.normalize

+
+  
+

{{ languages( { "en": "en/DOM/element.normalize", "fr": "fr/DOM/element.normalize" } ) }}

diff --git a/files/pl/web/api/element/offsetheight/index.html b/files/pl/web/api/element/offsetheight/index.html new file mode 100644 index 0000000000..ce5fc2254e --- /dev/null +++ b/files/pl/web/api/element/offsetheight/index.html @@ -0,0 +1,61 @@ +--- +title: element.offsetHeight +slug: Web/API/Element/offsetHeight +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/offsetHeight +--- +

{{ ApiRef() }}

+ +

offsetHeight

+ +

Własność DHTML (Dynamic HyperText Markup Language), która daje wysokość relatywnego elementu do układu strony.

+ +

Składnia i wartości

+ +
varintElemOffsetHeight = document.getElementById(id_attribute_value).offsetHeight;
+
+ +

intElemOffsetHeightis a variable storing an integer corresponding to the offsetHeight pixel value of the element. offsetHeight is a read-only property.

+ +

Opis

+ +

Typically, an element's offsetHeight is a measurement which includes the element borders, the element vertical padding, the element horizontal scrollbar (if present, if rendered) and the element CSS height.

+ +

Przykład

+ +
+
+

padding-top

+ +

Gentle, individualistic and very loyal, Birman cats fall between Siamese and Persian in character. If you admire cats that are non aggressive, that enjoy being with humans and tend to be on the quiet side, you may well find that Birman cats are just the felines for you.

+ +

Image:BirmanCat.jpgAll Birmans have colorpointed features, dark coloration of the face, ears, legs and tail.

+ +

Cat image and text coming from www.best-cat-art.com

+ +

padding-bottom

+
+LeftTopRightBottommargin-topmargin-bottomborder-topborder-bottom{{ mediawiki.external('if IE') }}><span id="MrgLeft" style="position: absolute; left: 8px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-left</span><span id="BrdLeft" style="position: absolute; left: 33px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-left</span><span id="PdgLeft" style="position: absolute; left: 55px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">padding-left</span><span id="PdgRight" style="position: absolute; left: 275px; top: 60px; color: black; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl; white-space: nowrap;">padding-right</span><span id="BrdRight" style="position: absolute; left: 310px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-right</span><span id="MrgRight" style="position: absolute; left: 340px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-right</span><!{{ mediawiki.external('endif') }}
+ +

grafika:offsetHeight.png

+ +

Specyfikacja

+ +

offsetHeight is part of the MSIE's DHTML object model. offsetHeight is not part of any W3C specification or technical recommendation.

+ +

Uwagi

+ +

offsetHeight is a property of the DHTML object model which was first introduced by MSIE. It is sometimes referred as an element physical/graphical dimensions or an element's box height.

+ +

Dokumentacja

+ + diff --git a/files/pl/web/api/element/offsetleft/index.html b/files/pl/web/api/element/offsetleft/index.html new file mode 100644 index 0000000000..b0252f3363 --- /dev/null +++ b/files/pl/web/api/element/offsetleft/index.html @@ -0,0 +1,73 @@ +--- +title: element.offsetLeft +slug: Web/API/Element/offsetLeft +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/offsetLeft +--- +

{{ ApiRef("HTML DOM") }}

+ +

Podsumowanie

+ +

Zwraca ilość pikseli, jaką dzieligórny lewy róg bieżącego elementu od lewej strony wewnątrz węzła offsetParent.

+ +

Składnia

+ +
left =element.offsetLeft;
+
+ +

left jest liczbą całkowitą reprezentująca przesunięcie od lewej strony podane w pikselach.

+ +

Uwaga

+ +

offsetLeft returns the position the upper left edge of the element; not necessarily the 'real' left edge of the element. This is important for inline elements (such as span) in flowed text that wraps from one line to the next. The span may start in the middle of the line and wrap around to the beginning of the next line. The offsetLeft will refer to the left edge of the start of the span, not the left edge of text at the start of the second line. Therefore, a box with the left, top, width and height of offsetLeft, offsetTop, offsetWidth and offsetHeight will not be a bounding box for a span with wrapped text. (And, I can't figure out how to find the leftmost edge of such a span, sigh.)

+ +

Przykład

+ +
var colorTable = document.getElementById("t1");
+var tOLeft = colorTable.offsetLeft;
+
+if (tOLeft > 5) {
+  // duże lewe przesunięcie: zrób coś tutaj
+}
+
+ +

Przykład

+ +

Per the note above, this example shows a 'long' sentence that wraps within a div with a blue border, and a red box that one might think should describe the boundaries of the span.

+ +

Image:offsetLeft.jpg

+ +

Note: This is an image of the example, not a live rendering in the browser. This was done because script elements can't be included in the wiki page.

+ +
<div style="width: 300px; border-color:blue;
+  border-style:solid; border-width:1;">
+  <span>Short span. </span>
+  <span id="long">Long span that wraps withing this div.</span>
+</div>
+
+<div id="box" style="position: absolute; border-color: red;
+  border-width: 1; border-style: solid; z-index: 10">
+</div>
+
+<script>
+  var box = document.getElementById("box");
+  var long = document.getElementById("long");
+  box.style.left = long.offsetLeft + document.body.scrollLeft;
+  box.style.top = long.offsetTop + document.body.scrollTop;
+  box.style.width = long.offsetWidth;
+  box.style.height = long.offsetHeight;
+</script>
+
+ +

Zobacz także

+ +

offsetParent, offsetTop, offsetWidth, offsetHeight

+ +

Specyfikacja

+ +

Niestandardowa własność.

diff --git a/files/pl/web/api/element/offsetparent/index.html b/files/pl/web/api/element/offsetparent/index.html new file mode 100644 index 0000000000..c33d32b38c --- /dev/null +++ b/files/pl/web/api/element/offsetparent/index.html @@ -0,0 +1,28 @@ +--- +title: element.offsetParent +slug: Web/API/Element/offsetParent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/offsetParent +--- +

{{ ApiRef() }}

+

Podsumowanie

+

offsetParent zwraca referencję do obiektu, który jest najbliższym (w hierarchii zawierania się elementów) pozycjonowanym elementem. Jeżeli element nie jest pozycjonowany, offsetParent jest wówczas korzeń dokumentu (html w trybie zgodności ze standardami; body w trybie przybliżonym).

+

Składnia

+
parentObj = element.offsetParent
+
+

Parametry

+ +

Specyfikacja

+

DOM Level 0. + + Nie jest częścią specyfikacji. +

+
+  
+

{{ languages( { "en": "en/DOM/element.offsetParent", "fr": "fr/DOM/element.offsetParent" } ) }}

diff --git a/files/pl/web/api/element/offsetwidth/index.html b/files/pl/web/api/element/offsetwidth/index.html new file mode 100644 index 0000000000..b78d7b4136 --- /dev/null +++ b/files/pl/web/api/element/offsetwidth/index.html @@ -0,0 +1,70 @@ +--- +title: element.offsetWidth +slug: Web/API/Element/offsetWidth +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/HTMLElement/offsetWidth +--- +

{{ APIRef("HTML DOM") }}

+ +

offsetWidth

+ +

właściwość DHTML, która podaje szerokość elementu, odnosząca się do układu strony.

+ +

Składnia i wartości

+ +
var intElemOffsetWidth = document.getElementById(id_attribute_value).offsetWidth;
+
+ +

intElemOffsetWidth jest zmienną przechowującą liczbę całkowitą odpowiadającą wartości offsetWidth elementu i wyrażoną w pikselach. offsetWidth jest właściwością tylko do odczytu.

+ +

Opis

+ +

Zazwyczaj offsetWidth elementu obejmuje jego obramowanie, wewnętrzny margines (padding), pionowy pasek przewijania (jeśli jest obecny lub renderowany) i szerokość CSS elementu.

+ +

Przykład

+ +
+
+

padding-top

+ +

Gentle, individualistic and very loyal, Birman cats fall between Siamese and Persian in character. If you admire cats that are non aggressive, that enjoy being with humans and tend to be on the quiet side, you may well find that Birman cats are just the felines for you.

+ +

Image:BirmanCat.jpgAll Birmans have colorpointed features, dark coloration of the face, ears, legs and tail.

+ +

Cat image and text coming from www.best-cat-art.com

+ +

padding-bottom

+
+LeftTopRightBottommargin-topmargin-bottomborder-topborder-bottom{{ mediawiki.external('if IE') }}><span id="MrgLeft" style="position: absolute; left: 8px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-left</span><span id="BrdLeft" style="position: absolute; left: 33px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-left</span><span id="PdgLeft" style="position: absolute; left: 55px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">padding-left</span><span id="PdgRight" style="position: absolute; left: 275px; top: 60px; color: black; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl; white-space: nowrap;">padding-right</span><span id="BrdRight" style="position: absolute; left: 310px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-right</span><span id="MrgRight" style="position: absolute; left: 340px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-right</span><!{{ mediawiki.external('endif') }}
+ +

Image:offsetWidth.png

+ +

Specyfikacja

+ +

offsetWidth jest częścią modelu obiektowego MSIE DHTML. offsetWidth nie jest częścią żadnej specyfikacji W3C ani rekomendacji technicznej.

+ +

Uwagi

+ +

offsetWidth jest własnością modelu obiektowego DHTML, który został wprowadzony przez MSIE. Czasem określany jest jako fizyczny/graficzny wymiar elementu lub jako szerokość pudełka elementu.

+ +

Dokumentacja

+ + + +
+

Zobacz również

+
+ + diff --git a/files/pl/web/api/element/onclick/index.html b/files/pl/web/api/element/onclick/index.html new file mode 100644 index 0000000000..b6215b4c00 --- /dev/null +++ b/files/pl/web/api/element/onclick/index.html @@ -0,0 +1,66 @@ +--- +title: element.onclick +slug: Web/API/Element/onclick +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onclick +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Właściwość onclick zwraca kod obsługi zdarzenia onClick w bieżącym elemencie.

+

Składnia

+
element.onclick = refDoFunkcji;
+
+

gdzie refDoFunkcji to nazwa funkcji zadeklarowanej gdzie indziej bądź wyrażenie funkcyjne. Zob. Funkcje. - tego rodzialu jeszcze nie ma, a pod nazwa Funkcje jest cos innego

+

Przykład

+
<html>
+
+<head>
+<title>przykład zdarzenia onclick</title>
+
+<script type="text/javascript">
+
+function initElement()
+ {
+ var p = document.getElementById("foo");
+
+ // Uwaga: ani showAlert();, ani showAlert(param); tu NIE zadziałają
+ // potrzebna jest referencja do funkcji, a nie wywołanie funkcji
+ p.onclick = showAlert;
+ };
+
+function showAlert()
+ {
+ alert("wykryto zdarzenie onclick!")
+ }
+</script>
+
+<style type="text/css">
+<!--
+#foo {
+border: solid blue 2px;
+}
+-->
+</style>
+</head>
+
+<body onload="initElement()";>
+<span id="foo">Mój Element</span>
+<p>Kliknij na powyższy element.</p>
+</body>
+</html>
+
+

Można również użyć funkcji bezimiennej jak poniżej:

+
p.onclick = function() { alert("moot!"); };
+
+

Not going to confuse poor readers with this. You could also use a the Function constructor: <pre> p.onclick = Function( "alert('moot!')" ); </pre>

+

Uwagi

+

Zdarzenie click jest wywoływane, kiedy użytkownik kliknie na element. Zdarzenie to występuje po mousedown i mouseup.

+

Tylko jedna funkcja obsługi zdarzenia może zostać przypisana za jednym razem za pomocą tej właściwości. Możesz zamiast niej użyć metody addEventListener - jest bardziej elastyczna i stanowi część specyfikacji DOM Events.

+

Specyfikacja

+

{{ DOM0() }}

+

{{ languages( { "en": "en/DOM/element.onclick", "fr": "fr/DOM/element.onclick" } ) }}

diff --git a/files/pl/web/api/element/onkeypress/index.html b/files/pl/web/api/element/onkeypress/index.html new file mode 100644 index 0000000000..eb57c1936c --- /dev/null +++ b/files/pl/web/api/element/onkeypress/index.html @@ -0,0 +1,21 @@ +--- +title: element.onkeypress +slug: Web/API/Element/onkeypress +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onkeypress +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Właściwość onkeypress zawiera kod obsługi zdarzenia onKeyPress dla bieżącego elementu.

+

Składnia

+
element.onkeypress = kod obsługi zdarzenia
+
+

Uwagi

+

Zdarzenie keydown wywoływane jest, gdy użytkownik naciska klawisz na klawiaturze.

+

Specyfikacja

+

{{ DOM0() }}

diff --git a/files/pl/web/api/element/onkeyup/index.html b/files/pl/web/api/element/onkeyup/index.html new file mode 100644 index 0000000000..ad411b0e1a --- /dev/null +++ b/files/pl/web/api/element/onkeyup/index.html @@ -0,0 +1,24 @@ +--- +title: element.onkeyup +slug: Web/API/Element/onkeyup +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onkeyup +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Właściwość onkeyup zawiera kod obsługi zdarzenia keyup dla bieżącego elementu.

+

Składnia

+
kod obsługi zdarzenia = element.onkeyup
+
+

Uwagi

+

Zdarzenie keyup wywoływane jest, gdy użytkownik zwalnia naciśnięty klawisz na klawiaturze.

+

Specyfikacja

+

{{ DOM0() }}

+
+  
+

{{ languages( { "en": "en/DOM/element.onkeyup", "fr": "fr/DOM/element.onkeyup" } ) }}

diff --git a/files/pl/web/api/element/onmousedown/index.html b/files/pl/web/api/element/onmousedown/index.html new file mode 100644 index 0000000000..e616906126 --- /dev/null +++ b/files/pl/web/api/element/onmousedown/index.html @@ -0,0 +1,23 @@ +--- +title: element.onmousedown +slug: Web/API/Element/onmousedown +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onmousedown +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność onmousedown zwraca kod obsługi zdarzenia onMouseDown w bieżącym elemencie.

+

Składnia

+
event handling code = element.onMouseDown
+
+

Uwagi

+

Zdarzenie mousedown jest wywołane kiedy użytkownik naciśnie lewy przycisk.

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/element.onmousedown", "fr": "fr/DOM/element.onmousedown" } ) }}

diff --git a/files/pl/web/api/element/onmousemove/index.html b/files/pl/web/api/element/onmousemove/index.html new file mode 100644 index 0000000000..f54256c9f7 --- /dev/null +++ b/files/pl/web/api/element/onmousemove/index.html @@ -0,0 +1,29 @@ +--- +title: element.onmousemove +slug: Web/API/Element/onmousemove +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onmousemove +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Właściwość onmousemove zwraca kod obsługi zdarzenia mousemove w bieżącym elemencie.

+ +

Składnia

+ +
event handling code = element.onMouseMove
+
+ +

Uwagi

+ +

Zdarzenie mousemove jest wywoływane, kiedy użytkownik przesunie kursor myszy.

+ +

Specyfikacja

+ +

DOM Level 0. Nie jest częścią specyfikacji.

diff --git a/files/pl/web/api/element/ownerdocument/index.html b/files/pl/web/api/element/ownerdocument/index.html new file mode 100644 index 0000000000..0ecbed4869 --- /dev/null +++ b/files/pl/web/api/element/ownerdocument/index.html @@ -0,0 +1,30 @@ +--- +title: element.ownerDocument +slug: Web/API/Element/ownerDocument +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/ownerDocument +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność ownerDocument zwraca obiekt najwyższego poziomu - dokument, w którym znajduje się bieżący węzeł.

+

Składnia

+
dokument = element.ownerDocument
+
+

dokument to obiekt document, będący rodzicem bieżącego elementu.

+

Przykład

+
// dla danego elementu "p" znajdź element HTML najwyższego poziomu
+d = p.ownerDocument;
+html = d.documentElement;
+
+

Uwagi

+

Obiekt document zwracany przez tę własność jest głównym obiektem, w którym tworzone są wszystkie węzły-dzieci właściwego dokumentu HTML. Własność ta użyta na węźle, który sam jest dokumentem, zwraca NULL

+

Specyfikacja

+

ownerDocument

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.ownerDocument", "fr": "fr/DOM/element.ownerDocument", "ja": "ja/DOM/element.ownerDocument" } ) }}

diff --git a/files/pl/web/api/element/parentnode/index.html b/files/pl/web/api/element/parentnode/index.html new file mode 100644 index 0000000000..ec9bbceda0 --- /dev/null +++ b/files/pl/web/api/element/parentnode/index.html @@ -0,0 +1,34 @@ +--- +title: element.parentNode +slug: Web/API/Element/parentNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/parentNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność parentNode zwraca rodzica bieżącego elementu.

+

Składnia i wartości

+
rodzic = element.parentNode
+
+

rodzic jest rodzicem bieżącego węzła. Rodzicem elementu jest węzeł typu Element, Document lub DocumentFragment.

+

Przykład

+
text_field = document.getElementById("t");
+if ( div1.parentNode == document ){
+    text_field.setAttribute("value", "top-level");
+    // pole tekstowe wyświetli tekst "top-level" }
+
+

Uwagi

+

parentNode zwraca null dla poniższych typów węzłów: Attr, Document, DocumentFragment, Entity i Notation.

+

null zwracane jest także, gdy węzeł został utworzony, ale nie przypisano go jeszcze do drzewa.

+

Zobacz także

+

{{ Domxref("element.firstChild") }}, {{ Domxref("element.lastChild") }}, {{ Domxref("element.childNodes") }}, {{ Domxref("element.nextSibling") }}, {{ Domxref("element.previousSibling") }}.

+

Specyfikacja

+

DOM Level 2 Core: Node.parentNode

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.parentNode", "fr": "fr/DOM/element.parentNode", "it": "it/DOM/element.parentNode", "ja": "ja/DOM/element.parentNode" } ) }}

diff --git a/files/pl/web/api/element/prefix/index.html b/files/pl/web/api/element/prefix/index.html new file mode 100644 index 0000000000..c5ecdac392 --- /dev/null +++ b/files/pl/web/api/element/prefix/index.html @@ -0,0 +1,28 @@ +--- +title: element.prefix +slug: Web/API/Element/prefix +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/prefix +--- +

{{ ApiRef() }}

+

Podsumowanie

+

prefix zwraca prefiks przestrzeni nazw węzła lub null, jeśli nie określono prefiksu.

+

Składnia

+
string = element.prefix
+element.prefix =string
+
+

Przykłady

+
<x:div onclick="alert(this.prefix)"/>
+
+

Wyświetlone zostanie "x".

+

Uwagi

+

Własność ta działa tylko wtedy, gdy używany jest parser przetwarzający przestrzenie nazw, tj. gdy dokument serwowany jest z typem MIME XML. Własność nie działa dla dokumentów HTML.

+

Specyfikacja

+

Node.prefix (wprowadzona w DOM2)

+
+  
+

{{ languages( { "en": "en/DOM/element.prefix", "fr": "fr/DOM/element.prefix", "it": "it/DOM/element.prefix", "ja": "ja/DOM/element.prefix" } ) }}

diff --git a/files/pl/web/api/element/previoussibling/index.html b/files/pl/web/api/element/previoussibling/index.html new file mode 100644 index 0000000000..0199cfb1a7 --- /dev/null +++ b/files/pl/web/api/element/previoussibling/index.html @@ -0,0 +1,28 @@ +--- +title: element.previousSibling +slug: Web/API/Element/previousSibling +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/previousSibling +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca węzeł bezpośrednio poprzedzający bieżący węzeł w drzewie.

+

Składnia i wartości

+
pNode = elementNode.previousSibling
+
+

pNode to węzeł przed bieżącym na liście rodzeństwa (czyli liście dzieci rodzica). Węzeł poprzedzający element jest zwykle węzłem elementu, komentarza lub tekstowym.

+

Przykład

+
var n1 = n2.previousSibling;
+
+

Uwagi

+

Zwraca null, jeśli nie ma poprzedzających węzłów.

+

Specyfikacja

+

DOM Level 1 Core: previousSibling

+

DOM Level 2 Core: previousSibling

+
+  
+

{{ languages( { "en": "en/DOM/element.previousSibling", "fr": "fr/DOM/element.previousSibling", "ja": "ja/DOM/element.previousSibling" } ) }}

diff --git a/files/pl/web/api/element/queryselector/index.html b/files/pl/web/api/element/queryselector/index.html new file mode 100644 index 0000000000..62c6fe2561 --- /dev/null +++ b/files/pl/web/api/element/queryselector/index.html @@ -0,0 +1,180 @@ +--- +title: Element.querySelector() +slug: Web/API/Element/querySelector +translation_of: Web/API/Element/querySelector +--- +
{{APIRef("DOM")}}
+ +

Returns the first element that is a descendant of the element on which it is invoked that matches the specified group of selectors.

+ +

Syntax

+ +
element = baseElement.querySelector(selectors);
+
+ +

Parameters

+ +
+
selectors
+
A group of selectors to match the descendant elements of the {{domxref("Element")}} baseElement against; this must be valid CSS syntax, or a SyntaxError exception will occur. The first element found which matches this group of selectors is returned.
+
+ +

Return value

+ +

The first descendant element of baseElement which matches the specified group of selectors. The entire hierarchy of elements is considered when matching, including those outside the set of elements including baseElement and its descendants; in other words, selectors is first applied to the whole document, not the baseElement, to generate an initial list of potential elements. The resulting elements are then examined to see if they are descendants of baseElement. The first match of those remaining elements is returned by the querySelector() method.

+ +

If no matches are found, the returned value is null.

+ +

Exceptions

+ +
+
SyntaxError
+
The specified selectors are invalid.
+
+ +

Examples

+ +

Let's consider a few examples.

+ +

Find a specific element with specific values of an attribute

+ +

In this first example, the first {{HTMLElement("style")}} element which either has no type or has type "text/css" in the HTML document body is returned:

+ +
var el = document.body.querySelector("style[type='text/css'], style:not([type])");
+
+ +

The entire hierarchy counts

+ +

The next example, below, demonstrates that the hierarchy of the entire document is considered when applying selectors, so that levels which are outside the specified baseElement are still considered when locating matches.

+ +

HTML

+ +
<div>
+  <h5>Original content</h5>
+  <p>
+    inside paragraph
+    <span>inside span</span>
+    inside paragraph
+  </p>
+</div>
+<div>
+  <h5>Output</h5>
+  <div id="output"></div>
+</div>
+ +

JavaScript

+ +
var baseElement = document.querySelector("p");
+document.getElementById("output").innerHTML =
+         (baseElement.querySelector("div span").innerHTML);
+ +

Result

+ +

The result looks like this:

+ +

{{ EmbedLiveSample('The_entire_hierarchy_counts', 600, 160) }}

+ +

Notice how the "div span" selector still matches the {{HTMLElement("span")}} element, even though the baseElement excludes the {{domxref("div")}} element which is part of the specified selector.

+ +

The :scope pseudo-class restores the expected behavior, only matching selectors on descendants of the baseElement.

+ +

More examples

+ +

See {{domxref("Document.querySelector()")}} for additional examples of the proper format for the selectors.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM4','#dom-parentnode-queryselectorallselectors','querySelectorAll()')}}{{Spec2('DOM4')}} 
{{SpecName('Selectors API Level 2','#queryselectorall','querySelectorAll()')}}{{Spec2('Selectors API Level 2')}} 
{{SpecName('Selectors API Level 1','#queryselectorall','querySelectorAll()')}}{{Spec2('Selectors API Level 1')}} 
+ +

Browser compatibility

+ +

{{ CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatChrome(1)}}12{{CompatGeckoDesktop(1.9.1)}}9[1][2]{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)Firefox OS (Gecko)IE PhoneOpera MobileSafari MobileChrome for Android
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

[1] querySelector() is supported in IE8, but only for CSS 2.1 selectors.
+ [2] in IE8 and iE9 document must be in HTML5 mode (HTML5 doctype declaration present)

+ +

See also

+ + diff --git a/files/pl/web/api/element/removeattribute/index.html b/files/pl/web/api/element/removeattribute/index.html new file mode 100644 index 0000000000..9f3c2c4892 --- /dev/null +++ b/files/pl/web/api/element/removeattribute/index.html @@ -0,0 +1,36 @@ +--- +title: element.removeAttribute +slug: Web/API/Element/removeAttribute +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/removeAttribute +--- +

{{ ApiRef() }}

+

Podsumowanie

+

removeAttribute usuwa atrybut bieżącego elementu.

+

Składnia

+
element.removeAttribute(nazwaAtrybutu)
+
+ +

Przykład

+
// <div align="left" width="200px">
+document.getElementById("div1").removeAttribute("align");
+// teraz: <div width="200px">
+
+

Uwagi

+

Aby usunąć atrybut, powinieneś używać metody removeAttribute, a nie ustawiać wartość atrybutu na null za pomocą setAttribute.

+

Próba usunięcia nieistniejącego atrybutu elementu nie wyrzuca wyjątku.

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: removeAttribute (wprowadzono w DOM Level 1 Core)

+
+  
+

{{ languages( { "en": "en/DOM/element.removeAttribute", "fr": "fr/DOM/element.removeAttribute", "ja": "ja/DOM/element.removeAttribute" } ) }}

diff --git a/files/pl/web/api/element/removeattributenode/index.html b/files/pl/web/api/element/removeattributenode/index.html new file mode 100644 index 0000000000..82872fa822 --- /dev/null +++ b/files/pl/web/api/element/removeattributenode/index.html @@ -0,0 +1,37 @@ +--- +title: element.removeAttributeNode +slug: Web/API/Element/removeAttributeNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/removeAttributeNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

removeAttributeNode usuwa określony atrybut z bieżącego elementu.

+

Składnia

+
usuniętyAtr =element.removeAttributeNode(węzełAtrybutu)
+
+ +

Przykład

+
// <div id="top" align="center" />
+var d = document.getElementById("top");
+var d_align = d.getAttributeNode("align");
+d.removeAttributeNode(d_align);
+// align ma wartość domyślną - center,
+// więc usunięty atrybut jest od razu zastępowany:
+// <div id="top" align="center" />
+
+

Uwagi

+

Jeśli usuwany atrybut ma wartość domyślną, od razu zostanie nią zastąpiony. Zastępujący atrybut ma - jeśli mają tu one zastosowanie - taki sam URI przestrzeni nazw, nazwę lokalną oraz prefiks jak oryginalny węzeł.

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: removeAttributeNode (wprowadzono w DOM Level 1 Core)

+
+  
+

{{ languages( { "en": "en/DOM/element.removeAttributeNode", "fr": "fr/DOM/element.removeAttributeNode", "ja": "ja/DOM/element.removeAttributeNode" } ) }}

diff --git a/files/pl/web/api/element/removeattributens/index.html b/files/pl/web/api/element/removeattributens/index.html new file mode 100644 index 0000000000..88df27e6ca --- /dev/null +++ b/files/pl/web/api/element/removeattributens/index.html @@ -0,0 +1,35 @@ +--- +title: element.removeAttributeNS +slug: Web/API/Element/removeAttributeNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/removeAttributeNS +--- +

{{ ApiRef() }}

+

Podsumowanie

+

removeAttributeNS usuwa określony atrybut elementu.

+

Składnia

+
element.removeAttributeNS(przestrzeńNazw,nazwaAtrybutu);
+
+ +

Przykład

+
// <div id="div1" xmlns:special="http://www.mozilla.org/ns/specialspace"
+//      special:specialAlign="utterleft" width="200px" />
+d = document.getElementById("div1");
+d.removeAttributeNS("http://www.mozilla.org/ns/specialspace", "specialAlign");
+// teraz: <div id="div1" width="200px" />
+
+

Uwagi

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: removeAttributeNS

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.removeAttributeNS", "fr": "fr/DOM/element.removeAttributeNS", "ja": "ja/DOM/element.removeAttributeNS" } ) }}

diff --git a/files/pl/web/api/element/removechild/index.html b/files/pl/web/api/element/removechild/index.html new file mode 100644 index 0000000000..c07c36ab3b --- /dev/null +++ b/files/pl/web/api/element/removechild/index.html @@ -0,0 +1,36 @@ +--- +title: element.removeChild +slug: Web/API/Element/removeChild +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/removeChild +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda removeChild usuwa węzeł potomny elementu.

+

Składnia

+
stareDziecko =element.removeChild(dziecko)
+
+

Parametry

+ +

Przykład

+
// <div id="nadrzedny" align="center">
+//   <div id="zagniezdzony"></div>
+// </div>
+d = document.getElementById("nadrzedny");
+d_zagniezdzony = document.getElementById("zagniezdzony");
+usuwany_wezel = d.removeChild(d_zagniezdzony);
+
+

 

+

Specyfikacja

+

removeChild

+
+  
+

{{ languages( { "en": "en/DOM/element.removeChild", "fr": "fr/DOM/element.removeChild", "ja": "ja/DOM/element.removeChild" } ) }}

diff --git a/files/pl/web/api/element/replacechild/index.html b/files/pl/web/api/element/replacechild/index.html new file mode 100644 index 0000000000..dcb5686d44 --- /dev/null +++ b/files/pl/web/api/element/replacechild/index.html @@ -0,0 +1,53 @@ +--- +title: element.replaceChild +slug: Web/API/Element/replaceChild +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/replaceChild +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zastępuje dziecko węzła innym węzłem.

+

Składnia

+
węzełZastąpiony =węzełRodzic.replaceChild(noweDziecko,stareDziecko);
+
+ +

Przykład

+
// <div>
+//  <span id="childSpan">foo bar</span>
+// </div>
+
+// utwórz węzeł pustego elementu
+// bez ID, atrybutów i zawartości
+var sp1 = document.createElement("span");
+
+// nadaj mu ID 'newSpan'
+sp1.setAttribute("id", "newSpan");
+
+// utwórz jakąś zawartość dla nowego elementu
+var sp1_content = document.createTextNode("Nowy element span.");
+
+// wstaw tę zawartość
+sp1.appendChild(sp1_content);
+
+// stwórz referencję do istniejącego węzła, który ma zostać zastąpiony
+var sp2 = document.getElementById("childSpan");
+var parentDiv = sp2.parentNode;
+
+// zastąp istniejący węzeł sp2 elementem span sp1
+parentDiv.replaceChild(sp1, sp2);
+
+
+

Specyfikacja

+

DOM Level 1 Core: replaceChild

+

DOM Level 2 Core: replaceChild

+
+  
+

{{ languages( { "en": "en/DOM/element.replaceChild", "fr": "fr/DOM/element.replaceChild", "ja": "ja/DOM/element.replaceChild" } ) }}

diff --git a/files/pl/web/api/element/scrollleft/index.html b/files/pl/web/api/element/scrollleft/index.html new file mode 100644 index 0000000000..e6c526c23b --- /dev/null +++ b/files/pl/web/api/element/scrollleft/index.html @@ -0,0 +1,58 @@ +--- +title: element.scrollLeft +slug: Web/API/Element/scrollLeft +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/scrollLeft +--- +

{{ ApiRef() }}

+

Podsumowanie

+

scrollLeft pobiera bądź ustawia liczbę pikseli, o którą zostanie przewinięta zawartość dokumentu. Kierunek przewijania odbywa się w lewo.

+

Składnia i wartości

+
// Pobierz wartość przewinięcia w pikselach
+var sLeft = element.scrollLeft;
+
+

sLeft jest wartością liczbową reprezentującą ilość pikseli, o które element został przewinięty w lewo.

+
// Ustaw wartość przewinięcia w pikselach
+element.scrollLeft = 10;
+
+

scrollLeft może przyjąć dowolną wartość liczbową, jednakże:

+ +

Przykład

+
<script type="text/javascript">
+
+function doScrollLeft(el, p)
+{
+  el.scrollLeft = p;
+}
+
+</script>
+
+<div id="aDiv"
+     style="width: 100px; height: 200px; overflow: auto;"
+>
+<script type="text/javascript">
+for (var i=0; i<100; ++i){
+  document.write(i + '-FooBar-FooBar-FooBar<br>');
+}
+</script>
+</div>
+<br>
+<input type="button" value="Scroll left 50"
+       onclick="doScrollLeft(document.getElementById('aDiv'), 50);"
+>
+
+

Specyfikacja

+

To nie jest żadna część specyfikacji W3C.

+

Powiązania

+

MSDN scrollLeft

+
+  
+

{{ languages( { "en": "en/DOM/element.scrollLeft", "fr": "fr/DOM/element.scrollLeft" } ) }}

diff --git a/files/pl/web/api/element/scrolltop/index.html b/files/pl/web/api/element/scrolltop/index.html new file mode 100644 index 0000000000..a79c23d9ff --- /dev/null +++ b/files/pl/web/api/element/scrolltop/index.html @@ -0,0 +1,70 @@ +--- +title: element.scrollTop +slug: Web/API/Element/scrollTop +translation_of: Web/API/Element/scrollTop +--- +

{{APIRef}}

+ +

scrollTop pobiera bądź ustawia liczbę pikseli, o którą ma zostać przewinięta w górę zawartość elementu.

+ +

Składnia i wartości

+ +
// Pobierz wartość przewinięcia w pikselach
+var  intElemScrollTop = element.scrollTop;
+
+ +

intElemScrollTop jest liczbą całkowitą reprezentującą ilość pikseli, o które element został przewinięty w górę.

+ +
// Ustaw wartość przewinięcia w pikselach
+element.scrollTop = intValue;
+
+ +

scrollTop może przyjąć dowolną wartość liczbową, jednakże:

+ + + +

Opis

+ +

Element scrollTop jest miarą odległości od góry elementu do najwyższej krawędzi jego widzialnej zawartości.

+ +

Kiedy zawartość elementu nie powoduje powstania pionowego paska przewijania, wartość scrollTop jest domyślnie ustawiona na 0.

+ +

Przykład

+ +
+
+

padding-top

+ +

Gentle, individualistic and very loyal, Birman cats fall between Siamese and Persian in character. If you admire cats that are non aggressive, that enjoy being with humans and tend to be on the quiet side, you may well find that Birman cats are just the felines for you.

+ +

Image:BirmanCat.jpgAll Birmans have colorpointed features, dark coloration of the face, ears, legs and tail.

+ +

Cat image and text coming from www.best-cat-art.com

+ +

padding-bottom

+
+LeftTopRightBottommargin-topmargin-bottomborder-topborder-bottom{{ mediawiki.external('if IE') }}><span id="MrgLeft" style="position: absolute; left: 8px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-left</span><span id="BrdLeft" style="position: absolute; left: 33px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-left</span><span id="PdgLeft" style="position: absolute; left: 55px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">padding-left</span><span id="PdgRight" style="position: absolute; left: 275px; top: 60px; color: black; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl; white-space: nowrap;">padding-right</span><span id="BrdRight" style="position: absolute; left: 310px; top: 65px; color: white; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">border-right</span><span id="MrgRight" style="position: absolute; left: 340px; top: 65px; font: bold 13px Arial, sans-serif !important; writing-mode: tb-rl;">margin-right</span><!{{ mediawiki.external('endif') }}
+ +

Image:scrollTop.png

+ +

Nie mamy interaktywnej demonstracji jak ma to miejsce w dokumentacji Gecko DOM.

+ +

Specyfikacja

+ +

scrollTop jest częścią obiektowego modelu MSIE. scrollTop nie jest częścią żadnej specyfikacji W3C lub rekomendacji technicznej.

+ +

Uwagi

+ +

scrollTop jest własnością obiektowego modelu DHTML (Dynamic HyperText Markup Language), który po raz pierwszy został wprowadzony przez MSIE. Własność ta jest zdefiniowana jako odległość do górnej krawędzi widoku elementu przewijanego.

+ +

Dokumentacja

+ + diff --git a/files/pl/web/api/element/scrollwidth/index.html b/files/pl/web/api/element/scrollwidth/index.html new file mode 100644 index 0000000000..42cb1a96f1 --- /dev/null +++ b/files/pl/web/api/element/scrollwidth/index.html @@ -0,0 +1,32 @@ +--- +title: element.scrollWidth +slug: Web/API/Element/scrollWidth +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/scrollWidth +--- +

{{ ApiRef() }}

+

Podsumowanie

+

scrollWidth jest własnością tylko do odczytu, która zwraca szerokość zawartości elementu w pikselach lub szerokość samego elementu - w zależności od tego, która z tych wartości jest większa.

+

Składnia i wartości

+
var xScrollWidth = element.scrollWidth;
+
+

xScrollWidth jest szerokością zawartości elementu element w pikselach.

+

Przykład

+
<div id="aDiv"
+     style="width: 100px; height: 200px; overflow: auto;"
+>-FooBar-FooBar-FooBar</div>
+<br>
+<input type="button" value="Show scrollWidth"
+       onclick="alert(document.getElementById('aDiv').scrollWidth);">
+
+

Specyfikacja

+

Nie ma specyfikacji W3C dla scrollWidth.

+

Dokumentacja

+

MSDN scrollWidth reference

+
+  
+

{{ languages( { "en": "en/DOM/element.scrollWidth", "fr": "fr/DOM/element.scrollWidth" } ) }}

diff --git a/files/pl/web/api/element/setattribute/index.html b/files/pl/web/api/element/setattribute/index.html new file mode 100644 index 0000000000..79f649526e --- /dev/null +++ b/files/pl/web/api/element/setattribute/index.html @@ -0,0 +1,34 @@ +--- +title: element.setAttribute +slug: Web/API/Element/setAttribute +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/setAttribute +--- +

{{ ApiRef() }}

+

Podsumowanie

+

setAttribute dodaje nowy lub zmienia wartość atrybutu w bieżącym elemencie.

+

Składnia

+
element.setAttribute(nazwa,wartość)
+
+

Parametry

+ +

Przykład

+
d = document.getElementById("d1");
+d.setAttribute("align", "center");
+
+

Uwagi

+

Jeśli istnieje już atrybut o danej nazwie, jego wartość zostaje zmieniona na wartość podaną w wywołaniu setAttribute. Jeśli nie istnieje taki atrybut, zostanie on utworzony.

+

Pomimo, że getAttribute zwraca null jeśli atrybut nie istnieje, do usuwania atrybutów powinieneś używać metody removeAttribute, a nie element.setAttribute(attr, null).

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: setAttribute (wprowadzono w DOM Level 1 Core)

+
+  
+

{{ languages( { "en": "en/DOM/element.setAttribute", "fr": "fr/DOM/element.setAttribute", "ja": "ja/DOM/element.setAttribute" } ) }}

diff --git a/files/pl/web/api/element/setattributenode/index.html b/files/pl/web/api/element/setattributenode/index.html new file mode 100644 index 0000000000..dbf836f80c --- /dev/null +++ b/files/pl/web/api/element/setattributenode/index.html @@ -0,0 +1,40 @@ +--- +title: element.setAttributeNode +slug: Web/API/Element/setAttributeNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/setAttributeNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

setAttributeNode dodaje do elementu nowy węzeł typu Attr.

+

Składnia

+
zastąpionyAtr = element.setAttributeNode(atrybut)
+
+

Parametry

+ +

Przykład

+
// <div id="raz" align="left">raz</div>
+// <div id="dwa">dwa</div>
+d1 = document.getElementById("raz");
+d2 = document.getElementById("dwa");
+a = d1.getAttributeNode("align");
+d2.setAttributeNode(a);
+alert(d2.attributes[1].value)
+// wypisze: "left"
+
+

Uwagi

+

Jeżeli istnieje już atrybut o danej nazwie, zostanie on zastąpiony nowym atrybutem i zwrócony jako wynik funkcji.

+

Tej metody używa się rzadko - do zmiany atrybutów elementu zwykle wykorzystywana jest metoda setAttribute.

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: setAttributeNode (wprowadzono w DOM Level 1 Core

+
+  
+

{{ languages( { "en": "en/DOM/element.setAttributeNode", "fr": "fr/DOM/element.setAttributeNode", "ja": "ja/DOM/element.setAttributeNode" } ) }}

diff --git a/files/pl/web/api/element/setattributenodens/index.html b/files/pl/web/api/element/setattributenodens/index.html new file mode 100644 index 0000000000..5633d0367e --- /dev/null +++ b/files/pl/web/api/element/setattributenodens/index.html @@ -0,0 +1,41 @@ +--- +title: element.setAttributeNodeNS +slug: Web/API/Element/setAttributeNodeNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/setAttributeNodeNS +--- +

{{ ApiRef() }}

+

Podsumowanie

+

setAttributeNodeNS dodaje nowy węzeł atrybutu z określoną nazwą i przestrzenią nazw.

+

Składnia

+
replacedAttr = element.setAttributeNodeNS(namespace,attributeNode)
+
+ +

Przykład

+
// <div id="one" special-align="utterleft">one</div>
+// <div id="two">two</div>
+
+var myns = "http://www.mozilla.org/ns/specialspace";
+var d1 = document.getElementById("one");
+var d2 = document.getElementById("two");
+var a = d1.getAttributeNodeNS(myns, "special-align");
+var d2.setAttributeNodeNS(myns, a);
+
+alert(d2.attributes[1].value) // zwraca: `utterleft'
+
+

Uwagi

+

Jeśli określony atrybut istnieje dla elementu, to jest on zastępowany nowym i zwracany.

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: setAttributeNodeNS

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.setAttributeNodeNS", "fr": "fr/DOM/element.setAttributeNodeNS", "ja": "ja/DOM/element.setAttributeNodeNS" } ) }}

diff --git a/files/pl/web/api/element/setattributens/index.html b/files/pl/web/api/element/setattributens/index.html new file mode 100644 index 0000000000..c721111e36 --- /dev/null +++ b/files/pl/web/api/element/setattributens/index.html @@ -0,0 +1,33 @@ +--- +title: element.setAttributeNS +slug: Web/API/Element/setAttributeNS +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/setAttributeNS +--- +

{{ ApiRef() }}

+

Podsumowanie

+

setAttributeNS dodaje nowy lub zmienia wartość istniejącego atrybutu o podanej nazwie i przestrzeni nazw.

+

Składnia

+
element.setAttributeNS(przestrzeńNazw,nazwa,wartość)
+
+ +

Przykład

+
var d = document.getElementById("d1");
+d.setAttributeNS("http://www.mozilla.org/ns/specialspace", "align", "center");
+
+

Uwagi

+

{{ DOMAttributeMethods() }}

+

Specyfikacja

+

DOM Level 2 Core: setAttributeNS

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.setAttributeNS", "fr": "fr/DOM/element.setAttributeNS", "ja": "ja/DOM/element.setAttributeNS" } ) }}

diff --git a/files/pl/web/api/element/style/index.html b/files/pl/web/api/element/style/index.html new file mode 100644 index 0000000000..4736774e83 --- /dev/null +++ b/files/pl/web/api/element/style/index.html @@ -0,0 +1,52 @@ +--- +title: element.style +slug: Web/API/Element/style +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/ElementCSSInlineStyle/style +--- +

{{ ApiRef("DOM") }}

+ +

Podsumowanie

+ +

Zwraca obiekt reprezentujący atrybut style elementu.

+ +

Przykład

+ +
var div = document.getElementById("div1");
+div.style.marginTop = ".25in";
+
+ +

Uwagi

+ +

Ponieważ własność style reprezentuje atrybut style, który ma najwyższy priorytet w kaskadzie CSS, własność ta jest użyteczna by ustawić styl określonego elementu. Nie przyda się jednak do sprawdzania stylu elementu, ponieważ zależy ona tylko od atrybutu style, a nie od reguł stylów określonych gdziekolwiek indziej. Możesz użyć window.getComputedStyle, by sprawdzić styl elementu.

+ +

Zobacz listę własności CSS dostępnych w DOM, gdzie znajdziesz też dodatkowe uwagi o zastosowaniu własności style.

+ +

Ogólnie rzecz biorąc, lepiej jest użyć własność style zamiast elt.setAttribute('style', '...'), ponieważ użycie style nie nadpisze innych własności CSS, które mogły być wcześniej określone atrybutem style.

+ +

Styli nie można ustawiać poprzez przekazywania łańcucha znaków do atrybutu style (tylko odczyt), np. elt.style = "color: blue;". Jest to niemożliwe ponieważ atrybut stylu zwraca obiekt CSSStyleDeclaration . Zamiast tego, możesz ustawić poszczególne własności atrybutu style w ten sposób:

+ +
elt.style.color = "blue";  // Directly
+
+var st = elt.style;
+st.color = "blue";  // Indirectly
+
+ +

Poniższy kod wyświetli nazwy wszystkich własności stylu, wartości ustawione dla elementu elt oraz dziedziczone 'przeliczone'' wartości:

+ +
var elt = document.getElementById("elementIdHere");
+var out = "";
+var st = elt.style;
+var cs = window.getComputedStyle(z, null);
+for (x in st)
+  out += "  " + x + " = '" + st[x] + "' > '" + cs[x] + "'\n";
+
+ +

Specyfikacja

+ +

DOM Level 2 Style: ElementCSSInlineStyle.style

diff --git a/files/pl/web/api/element/tabindex/index.html b/files/pl/web/api/element/tabindex/index.html new file mode 100644 index 0000000000..d8fdd6ce7d --- /dev/null +++ b/files/pl/web/api/element/tabindex/index.html @@ -0,0 +1,31 @@ +--- +title: element.tabIndex +slug: Web/API/Element/tabIndex +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLOrForeignElement/tabIndex +--- +
+ {{APIRef}}
+
+  
+
+ Podsumowanie
+

Pobiera/ustawia kolejność tabulacji dla bieżącego elementu.

+

Składnia

+
element.tabIndex = indeks
+
+ +

Przykład

+
var b1 = document.getElementById("button1");
+
+b1.tabIndex = 1;
+

Specyfikacja

+ diff --git a/files/pl/web/api/element/tagname/index.html b/files/pl/web/api/element/tagname/index.html new file mode 100644 index 0000000000..61972df98c --- /dev/null +++ b/files/pl/web/api/element/tagname/index.html @@ -0,0 +1,37 @@ +--- +title: element.tagName +slug: Web/API/Element/tagName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Element/tagName +--- +

{{ ApiRef() }}

+

Podsumowanie

+

tagName zwraca nazwę elementu.

+

Składnia

+
nazwaElementu = element.tagName
+
+ +

Przykład

+

Dane są takie znaczniki:

+
<span id="born">Kiedy przyszedłem na świat...</span>
+
+

i taki skrypt:

+
var span = document.getElementById("born");
+alert(span.tagName);
+
+

W XHTML-u (lub innym formacie XML) wyświetlone zostanie "span", a w HTML - "SPAN".

+

Uwagi

+

W XML-u tagName zachowuje wielkość liter. W HTML-u tagName zwraca nazwę elementu w formie kanonicznej - wielkimi literami. Wartość tagName jest taka sama jak wartość nodeName.

+

Specyfikacja

+

tagName

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/element.tagName", "es": "es/DOM/element.tagName", "fr": "fr/DOM/element.tagName", "ja": "ja/DOM/element.tagName" } ) }}

diff --git a/files/pl/web/api/element/textcontent/index.html b/files/pl/web/api/element/textcontent/index.html new file mode 100644 index 0000000000..f667ea2889 --- /dev/null +++ b/files/pl/web/api/element/textcontent/index.html @@ -0,0 +1,41 @@ +--- +title: element.textContent +slug: Web/API/Element/textContent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Node/textContent +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Pobiera lub ustawia zawartość tekstową węzła i jego potomków.

+

Składnia

+
tekst = element.textContent
+element.textContent = "przykładowy tekst"
+
+

Przykład

+
// Dany jest taki fragment w HTML:
+//   <div id="divA">To jest <span>jakiś</span> tekst</div>
+
+// Pobierz zawartość tekstową:
+var tekst = document.getElementById("divA").textContent;
+// |tekst| zawiera: "To jest jakiś tekst".
+
+// Ustaw zawartość:
+document.getElementById("divA").textContent = "To jest jakiś tekst";
+// teraz HTML elementu divA to <div id="divA">To jest jakiś tekst</div>
+
+

Uwagi

+ +

Specyfikacja

+

textContent

+
+  
+

{{ languages( { "en": "en/DOM/element.textContent", "fr": "fr/DOM/element.textContent", "it": "it/DOM/element.textContent" } ) }}

diff --git a/files/pl/web/api/event/altkey/index.html b/files/pl/web/api/event/altkey/index.html new file mode 100644 index 0000000000..2c8c2f6d9f --- /dev/null +++ b/files/pl/web/api/event/altkey/index.html @@ -0,0 +1,31 @@ +--- +title: event.altKey +slug: Web/API/Event/altKey +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/altKey +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, czy klawisz <alt> był wciśnięty przy wywołaniu zdarzenia.

+

Składnia

+
bool = event.altKey
+
+

Przykład

+
 function goInput(e) {
+ // sprawdza przycisk <alt>
+   if e.altKey {
+      // przekazuje zdarzenie dalej
+      superSizeOutput(e);
+   }
+   else {
+     doOutput(e);
+   }
+ }
+
+
+  
+

{{ languages( { "en": "en/DOM/event.altKey", "ja": "ja/DOM/event.altKey" } ) }}

diff --git a/files/pl/web/api/event/bubbles/index.html b/files/pl/web/api/event/bubbles/index.html new file mode 100644 index 0000000000..2372296028 --- /dev/null +++ b/files/pl/web/api/event/bubbles/index.html @@ -0,0 +1,31 @@ +--- +title: event.bubbles +slug: Web/API/Event/bubbles +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Event/bubbles +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, czy zdarzenie bąbelkuje przez model dokumentu czy nie.

+

Składnia

+
bool = event.bubbles
+
+

Przykład

+
 function goInput(e) {
+  // sprawdza czy zdarzenie bąbelkuje
+  if not e.bubbles {
+     // i jeśli nie - przekazuje je dalej
+     passItOn(e);
+  }
+  // jeśli bąbelkuje:
+  doOutput(e)
+}
+
+

 

+
+  
+

{{ languages( { "en": "en/DOM/event.bubbles", "es": "es/DOM/event.bubbles", "ja": "ja/DOM/event.bubbles" } ) }}

diff --git a/files/pl/web/api/event/button/index.html b/files/pl/web/api/event/button/index.html new file mode 100644 index 0000000000..5f796093fb --- /dev/null +++ b/files/pl/web/api/event/button/index.html @@ -0,0 +1,66 @@ +--- +title: event.button +slug: Web/API/Event/button +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/button +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, który przycisk myszy wywołał zdarzenie.

+

Składnia

+
var kodPrzycisku = event.button;
+
+

Zwraca całkowitą wartość liczbową oznaczającą przycisk, który zmienił stan:

+ +

Faktyczna kolejność przycisków może być różna, zależnie od konfiguracji urządzenia wskazującego.

+

Przykład

+
<script type="text/javascript">
+
+function whichButton(e)
+{
+  // obsłuż różne modele obsługi zdarzeń
+  var e = e || window.event;
+  var btnCode;
+
+  if ('object' == typeof e){
+    btnCode = e.button;
+
+    switch (btnCode){
+      case 0  : alert('Kliknięto lewym przyciskiem');
+                break;
+      case 1  : alert('Kliknięto środkowym przyciskiem');
+                break;
+      case 2  : alert('Kliknięto prawym przyciskiem');
+                break;
+      default : alert('Nieoczekiwany kod: ' + btnCode);
+    }
+  }
+}
+
+</script>
+
+<p onclick="whichButton(event);">Kliknij tu myszą...</p>
+
+
+

Uwagi

+

Ponieważ kliknięcia myszy są często przechwytywane przez interfejs uzytkownika, w niektórych okolicznościach może być trudno wykryć przyciski inne niż ten dla standardowego kliknięcia (tj. zazwyczaj lewy).

+

Użytkownicy mogą zmienić konfigurację przycisków swoich urządzeń wskazujących, tak że nawet jeśli własność + + button + wynosi zero, niekoniecznie musiał być naciśnięty przycisk znajdujący się fizycznie po lewej stronie. Jednak zachowanie w takiej sytuacji powinno być takie, jak gdyby kliknięto lewy przycisk w standardowym układzie.

+

Specyfikacja

+

DOM Level 2 Events: button

+
+  
+

{{ languages( { "en": "en/DOM/event.button", "ja": "ja/DOM/event.button" } ) }}

diff --git a/files/pl/web/api/event/cancelable/index.html b/files/pl/web/api/event/cancelable/index.html new file mode 100644 index 0000000000..4a6ed741bb --- /dev/null +++ b/files/pl/web/api/event/cancelable/index.html @@ -0,0 +1,34 @@ +--- +title: event.cancelable +slug: Web/API/Event/cancelable +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Event/cancelable +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Wskazuje, czy zdarzenie można anulować.

+ +

Składnia

+ +
bool = event.cancelable
+
+ +

Uwagi

+ +

To, czy zdarzenie może być anulowane czy nie jest określane w momencie, kiedy zdarzenie jest tworzone. Aby anulować zdarzenie, użyj metody preventDefault na tym zdarzeniu, dzięki czemu nie zostanie wykonana akcja - domyślny rezultat tego zdarzenia.

+ +

Specyfikacja

+ +

cancelable

+ + + +
+ +

{{ languages( { "en": "en/DOM/event.cancelable", "es": "es/DOM/event.cancelable", "ja": "ja/DOM/event.cancelable" } ) }}

diff --git a/files/pl/web/api/event/cancelbubble/index.html b/files/pl/web/api/event/cancelbubble/index.html new file mode 100644 index 0000000000..64b0a32f88 --- /dev/null +++ b/files/pl/web/api/event/cancelbubble/index.html @@ -0,0 +1,15 @@ +--- +title: event.cancelBubble +slug: Web/API/Event/cancelBubble +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/cancelBubble +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, czy zostało anulowane bąbelkowanie tego zdarzenia.

+

Składnia

+
bool = event.cancelBubble
+
+

{{ languages( { "en": "en/DOM/event.cancelBubble" } ) }}

diff --git a/files/pl/web/api/event/charcode/index.html b/files/pl/web/api/event/charcode/index.html new file mode 100644 index 0000000000..6600e6c1dd --- /dev/null +++ b/files/pl/web/api/event/charcode/index.html @@ -0,0 +1,27 @@ +--- +title: event.charCode +slug: Web/API/Event/charCode +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/KeyboardEvent/charCode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca kod Unicode dla klawisza znaku, który został wciśnięty, w zdarzeniu keypress.

+

Składnia

+
znak = event.charCode
+
+

Parametry

+ +

Uwagi

+

W zdarzeniu keypress kod Unicode wciśniętego klawisza jest przechowywany albo we własności keyCode albo w charCode, nigdy w obydwu. Jeśli wciśnięcie klawisza skutkowałoby wprowadzeniem znaku (np. 'a'), charCode ustawiany jest dla kodu tego znaku, z uwzględnieniem wielkości (małe lub duże litery) znaku (np. bierze pod uwagę, czy wciśnięto klawisz shift). W przeciwnym przypadku, naciśnięty klawisz przechowywany jest w keyCode.

+

charCode nigdy nie jest ustawiany w zdarzeniach keydown i keyup. W tych przypadkach ustawiany jest keyCode.

+

Aby pobrać kod klawisza niezależnie, czy jest przechowywany w keyCode czy w charCode, sprawdź właściwość which.

+

Znaki wprowadzane poprzez IME nie są rejestrowane poprzez keyCode ani charCode. (IME - program pozwalający wprowadzać skomplikowane znaki, np. japońskie bądź chińskie - przyp. tłum.)

+

Listę wartości charCode związanych z poszczególnymi klawiszami możesz znaleźć uruchamiając Przykład 7: Wyświetlanie stałych obiektu event.

+

Specyfikacja

+

Nie należy do specyfikacji. Zobacz nsIDOMKeyEvent.

+

{{ languages( { "en": "en/DOM/event.charCode" } ) }}

diff --git a/files/pl/web/api/event/clientx/index.html b/files/pl/web/api/event/clientx/index.html new file mode 100644 index 0000000000..dd0dcb3e09 --- /dev/null +++ b/files/pl/web/api/event/clientx/index.html @@ -0,0 +1,25 @@ +--- +title: event.clientX +slug: Web/API/Event/clientX +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/clientX +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca poziomą współrzędną zdarzenia w obszarze klienta.

+

Przykład

+
 function checkClientClickMap(e) {
+   if e.clientX < 50 {
+     doRedButton(); }
+   if 50 <= e.clientX < 100 {
+     doYellowButton(); }
+   if e.clientX >= 100 {
+     doRedButton(); } }
+
+

Uwagi

+

Zobacz też clientY.

+

Specyfikacja

+

clientX

+

{{ languages( { "en": "en/DOM/event.clientX" } ) }}

diff --git a/files/pl/web/api/event/clienty/index.html b/files/pl/web/api/event/clienty/index.html new file mode 100644 index 0000000000..1ad6315f89 --- /dev/null +++ b/files/pl/web/api/event/clienty/index.html @@ -0,0 +1,16 @@ +--- +title: event.clientY +slug: Web/API/Event/clientY +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/clientY +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca pionową współrzędną zdarzenia w obszarze klienta.

+

Uwagi

+

Zobacz też clientX, wraz z przykładem wykorzystania.

+

Specyfikacja

+

clientY

+

{{ languages( { "en": "en/DOM/event.clientY" } ) }}

diff --git a/files/pl/web/api/event/ctrlkey/index.html b/files/pl/web/api/event/ctrlkey/index.html new file mode 100644 index 0000000000..53bda61a1e --- /dev/null +++ b/files/pl/web/api/event/ctrlkey/index.html @@ -0,0 +1,26 @@ +--- +title: event.ctrlKey +slug: Web/API/Event/ctrlKey +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/ctrlKey +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, czy klawisz <ctrl> był wciśnięty podczas wywołania zdarzenia.

+

Składnia

+
bool = event.ctrlKey
+
+

Przykład

+
 function goInput(e) {
+ // sprawdza ctrlKey
+   if e.ctrlKey
+        // i przekazuje zdarzenie dalej
+     superSizeOutput(e);
+   else
+     doOutput(e)
+
+

Specyfikacja

+

ctrlKey

+

{{ languages( { "en": "en/DOM/event.ctrlKey" } ) }}

diff --git a/files/pl/web/api/event/currenttarget/index.html b/files/pl/web/api/event/currenttarget/index.html new file mode 100644 index 0000000000..f6c5c3c752 --- /dev/null +++ b/files/pl/web/api/event/currenttarget/index.html @@ -0,0 +1,25 @@ +--- +title: event.currentTarget +slug: Web/API/Event/currentTarget +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Event/currentTarget +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Pozwala zidentyfikować obecnie zarejestrowany element docelowy zdarzenia.

+

Składnia

+
referencjaDoWęzła = event.currentTarget
+
+

Parametry

+ +

Przykład

+
 if e.currentTarget != t_el
+    resetEventEngine();
+
+

Specyfikacja

+

currentTarget

+

{{ languages( { "en": "en/DOM/event.currentTarget" } ) }}

diff --git a/files/pl/web/api/event/eventphase/index.html b/files/pl/web/api/event/eventphase/index.html new file mode 100644 index 0000000000..c7f0deb5fb --- /dev/null +++ b/files/pl/web/api/event/eventphase/index.html @@ -0,0 +1,40 @@ +--- +title: event.eventPhase +slug: Web/API/Event/eventPhase +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Event/eventPhase +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje która faza przepływu zdarzenia jest aktualnie przetwarzana.

+

Składnia

+
faza = event.eventPhase
+
+

Parametry

+ + + + + + + + + + + + + + + + + + + +
1CAPTURING_PHASEfaza przechwytywania
2AT_TARGETzdarzenie przy elemencie docelowym
3BUBBLING_PHASEfaza bąbelkowania
+

Specyfikacja

+

eventPhase

+

{{ languages( { "en": "en/DOM/event.eventPhase" } ) }}

diff --git a/files/pl/web/api/event/index.html b/files/pl/web/api/event/index.html new file mode 100644 index 0000000000..8b5dd22105 --- /dev/null +++ b/files/pl/web/api/event/index.html @@ -0,0 +1,179 @@ +--- +title: Event +slug: Web/API/Event +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Event +--- +

{{ ApiRef() }}

+ +

Wprowadzenie

+ +

W tym rozdziale opiszemy model zdarzeń DOM Level 2 jaki implementuje Gecko. Opisany zostanie obiekt event, a także interfejsy do rejestrowania zdarzeń dla węzłów DOM, uchwyty i obserwatorzy zdarzeń; przedstawione zostanie też kilka dłuższych przykładów pokazujących relacje między różnymi interfejsami.

+ +

Dostępny jest też doskonały diagram, który jasno przedstawia trzy fazy przepływu zdarzeń w DOM.

+ +

Interfejs DOM event

+ +

Interfejs DOM event reprezentowany jest przez obiekty event przekazywane do uchwytów zdarzeń różnych elementów DOM. Poniższy, prosty przykład pokazuje, jak przekazać i manipulować obiektem event w funkcji obsługi zdarzenia.

+ +
function foo(e) {
+  //funkcje obsługi zdarzeń - takie jak ta
+  //otrzymują referencję do zdarzenia, jakie
+  //obsługują (w tym przypadku "e")
+  alert(e);
+}
+table_el.onclick = foo;
+
+ +

Powyższy przykład jest skrajnie prosty, przedstawia jednak ważną cechę obsługi zdarzeń w Gecko DOM - obiekty event wykorzystywane są zwykle w funkcjach obsługi zdarzeń. Kiedy masz już referencję do obiektu event, możesz korzystać z wszystkich metod i własności opisanych w tym rozdziale.

+ +

Zob. także Przykład 5: Propagowanie zdarzeń w rozdziale Przykłady użycia DOM, by zobaczyć bardziej szczegółowo, jak zdarzenia przechodzą przez DOM.

+ +

Uchwyty zdarzeń

+ +

Oprócz opisanego tutaj obiektu event, Gecko DOM dostarcza również metod do rejestrowania obserwatorów zdarzeń (ang.event listener ) na węzłach DOM, usuwania zdarzeń z obserwatorów oraz wywoływania zdarzeń z poziomu DOM. Te trzy metody opisano w rozdziale Elementy w DOM. Razem z uchwytami zdarzeń elementów HTML i XML stanowią one główny punkt wyjścia dla zdarzeń w DOM.

+ +

Możesz także przekazać do funkcji obsługi zdarzenia referencję do obiektu event poprzez predefiniowany parametr o nazwie event. Jest to bardzo podobne do sposobu, w jaki działa this, ale tyczy się obiektów zdarzeń, a nie elementów.

+ +
<html>
+<head>
+<title>Przykład użycia parametru z obiektem event</title>
+
+<script type="text/javascript">
+
+function showCoords(evt){
+  alert(
+    "clientX value: " + evt.clientX + "\n"
+    + "clientY value: " + evt.clientY + "\n"
+  );
+}
+
+</script>
+</head>
+
+<body onmousedown="showCoords(event)">
+<p>Kliknij gdziekolwiek na tej stronie, aby wyświetlić współrzędne położenia myszy.</p>
+</body>
+</html>
+
+ +

Używanie predefiniowanego parametru event pozostawia dalej możliwość przekazywania innych parametrów do funkcji obsługującej zdarzenie, jeśli jest taka potrzeba.

+ +
<html>
+<head>
+<title>Przykład użycia parametru z obiektem event wraz z dodatkowymi parametrami</title>
+
+<script type="text/javascript">
+
+var par2 = 'hello';
+var par3 = 'world!';
+
+function showCoords(evt, p2, p3){
+  alert(
+    "clientX value: " + evt.clientX + "\n"
+    + "clientY value: " + evt.clientY + "\n"
+    + "p2: " + p2 + "\n"
+    + "p3: " + p3 + "\n"
+  );
+}
+
+</script>
+</head>
+
+<body onmousedown="showCoords(event, par2, par3)">
+<p>Kliknij gdziekolwiek na tej stronie, aby wyświetlić współrzędne położenia myszy.</p>
+</body>
+</html>
+
+ +

Własności

+ +
+
event.altKey
+
Zwraca wartość logiczną wskazującą, czy klawisz <alt> był wciśnięty podczas zdarzenia.
+
event.bubbles
+
Zwraca wartość logiczną wskazującą, czy zdarzenie bąbelkuje przez model dokumentu czy nie.
+
event.button
+
Zwraca przycisk myszy.
+
event.cancelBubble
+
{{ Deprecated_inline() }} Zwraca wartość logiczną wskazującą, czy bąbelkowanie zdarzenia zostało anulowane czy nie.
+
event.cancelable
+
Zwraca wartość logiczną wskazującą, czy zdarzenie można anulować.
+
event.charCode
+
Zwraca kod Unicode klawisza znaku, który został wciśnięty podczas zdarzenia keypress.
+
event.clientX
+
Zwraca poziomą pozycję zdarzenia w obszarze klienta.
+
event.clientY
+
Zwraca pionową pozycję zdarzenia w obszarze klienta.
+
event.ctrlKey
+
Zwraca wartość logiczną wskazującą, czy klawisz <ctrl> był wciśnięty podczas zdarzenia.
+
event.currentTarget
+
Zwraca referencję do obecnie zarejestrowanego celu zdarzenia.
+
event.detail
+
Zwraca szczegółową informację o zdarzeniu zależnie od jego typu.
+
event.eventPhase
+
Wskazuje która faza przepływu zdarzenia jest aktualnie przetwarzana.
+
event.isChar
+
Zwraca wartość logiczną oznaczającą, czy w zdarzeniu pojawił się klawisz znaku czy nie.
+
event.keyCode
+
Zwraca kod Unicode dla klawisza nie będącego znakiem w zdarzeniu keypress lub dowolnego klawisza w każdym innym zdarzeniu związanym z klawiaturą.
+
event.layerX
+
Zwraca poziomą współrzędną miejsca, gdzie wystąpiło zdarzenie, względem bieżącej warstwy.
+
event.layerY
+
Zwraca pionową współrzędną miejsca, gdzie wystąpiło zdarzenie, względem bieżącej warstwy.
+
event.metaKey
+
Zwraca wartość logiczną wskazującą, czy klawisz meta był wciśnięty podczas zdarzenia.
+
event.pageX
+
Zwraca poziomą współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całej strony.
+
event.pageY
+
Zwraca pionową współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całej strony.
+
event.relatedTarget
+
Wskazuje na drugi cel zdarzenia.
+
event.screenX
+
Zwraca poziomą współrzędną miejsca, gdzie wystąpiło zdarzenie, względem ekranu.
+
event.screenY
+
Zwraca pionową współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całego ekranu.
+
event.shiftKey
+
Zwraca wartość logiczną wskazującą, czy klawisz <shift> był wciśnięty podczas zdarzenia.
+
event.target
+
Zwraca referencję do elementu, do którego zdarzenie zostało pierwotnie wysłane.
+
event.timeStamp
+
Zwraca czas, kiedy o którym zdarzenie zostało utworzone.
+
event.type
+
Zwraca nazwę zdarzenia.
+
event.view
+
Wskazuje widok (AbstractView), w którym wygenerowane zostało zdarzenie.
+
event.which
+
Zwraca kod Unicode klawisza w zdarzeniu związanym z klawiaturą, niezależnie od tego, czy klawisz jest znakiem.
+
+ +

Metody

+ +
+
event.initEvent
+
Metoda używana do zainicjalizowania wartości dla zdarzenia utworzonego przez interfejs DocumentEvent.
+
event.initKeyEvent
+
Inicjalizuje zdarzenie klawiatury. Gecko-specific.
+
event.initMouseEvent
+
Inicjalizuje zdarzenie myszy po jego utworzeniu.
+
event.initUIEvent
+
Inicjalizuje zdarzenie interfejsu użytkownika po jego utworzeniu.
+
event.preventBubble
+
{{ Obsolete_inline() }} Zabezpiecza zdarzenie przed bąbelkowaniem. Ta metoda jest przestarzała ze względu na standard stopPropagation i jest usunięta w Gecko 1.9.
+
event.preventCapture
+
{{ Obsolete_inline() }} Ta metoda jest przestarzała ze względu na standard stopPropagation i jest usunięta w Gecko 1.9.
+
event.preventDefault
+
Anuluje zdarzenie (jeśli można je anulować).
+
event.stopPropagation
+
Zatrzymuje dalsze propagowanie bieżącego zdarzenia w DOM.
+
+ + + +
+ +

{{ languages( { "en": "en/DOM/event", "es": "es/DOM/event", "fr": "fr/DOM/event", "ja": "ja/DOM/event" } ) }}

diff --git a/files/pl/web/api/event/initevent/index.html b/files/pl/web/api/event/initevent/index.html new file mode 100644 index 0000000000..47af034ed8 --- /dev/null +++ b/files/pl/web/api/event/initevent/index.html @@ -0,0 +1,45 @@ +--- +title: event.initEvent +slug: Web/API/Event/initEvent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Event/initEvent +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda służy do zainicjalizowania zdarzenia utworzonego za pomocą interfejsu DocumentEvent

+

Składnia

+
event.initKeyEvent(type,bubbles,cancelable)
+
+

Parametry

+
+
+ type
+
+ Typ zdarzenia.
+
+ bubbles
+
+ Wartość logiczna wskazująca, czy zdarzenie ma bąbelkować czy nie (zob. bubbles).
+
+ cancelable
+
+ Wartość logiczna wskazująca, czy zdarzenie może zostać anulowane (zob. cancelable).
+
+

Przykład

+
// utwórz zdarzenie kliknięcia, które bąbelkuje
+// i nie może być anulowane
+event.initEvent("click", true, false);
+
+

Uwagi

+

Zdarzenia inicjalizowane w ten sposób muszą zostać utworzone za pomocą metody createEvent interfejsu DocumentEvent. Metoda initEvent musi być wywołana by ustawić zdarzenie przed jego wywołaniem (za pomocą dispatchEvent).

+

Specyfikacja

+

initEvent

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/event.initEvent", "es": "es/DOM/event.initEvent", "fr": "fr/DOM/event.initEvent", "ja": "ja/DOM/event.initEvent" } ) }}

diff --git a/files/pl/web/api/event/initmouseevent/index.html b/files/pl/web/api/event/initmouseevent/index.html new file mode 100644 index 0000000000..e9de804697 --- /dev/null +++ b/files/pl/web/api/event/initmouseevent/index.html @@ -0,0 +1,86 @@ +--- +title: event.initMouseEvent +slug: Web/API/Event/initMouseEvent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/initMouseEvent +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Inicjuje zdarzenie myszy po jego utworzeniu (za pomocą metody createEvent interfejsu DocumentEvent).

+

Składnia

+
event.initMouseEvent(type,canBubble,cancelable,view,detail,screenX,screenY,clientX,clientY,ctrlKey,altKey,shiftKey,metaKey,button,relatedTarget);
+
+
+
+ type
+
+ łańcuch znaków do ustawienia typu zdarzeń. Możliwe typy dla zdarzeń myszy: click, mousedown, mouseup, mouseover, mousemove, mouseout.
+
+ canBubble
+
+ czy zdarzenie bąbelkuje. Ustawia wartość event.bubbles.
+
+ cancelable
+
+ czy domyślna akcja zdarzenia może być anulowana. Ustawia Ustawia wartość event.cancelable.
+
+ view
+
+ AbstractView zdarzenia. You should pass the window object here. Ustawia wartość event.view.
+
+ detail
+
+ wartość licznika kliknięć myszą. Ustawia wartość event.detail.
+
+ screenX
+
+ współrzędna x względem ekranu. Ustawia wartość event.screenX.
+
+ screenY
+
+ współrzędna y względem ekranu. Ustawia wartość event.screenY.
+
+ clientX
+
+ współrzędna x w obszarze klienta. Ustawia wartość event.clientX.
+
+ clientY
+
+ współrzędna y w obszarze klienta. Ustawia wartość event.clientY.
+
+ ctrlKey
+
+ czy klawisz control był wciśnięty podczas zdarzenia. Ustawia wartość event.ctrlKey.
+
+ altKey
+
+ czy klawisz alt był wciśnięty podczas zdarzenia. Ustawia wartość event.altKey.
+
+ shiftKey
+
+ czy klawisz shift był wciśnięty podczas zdarzenia. Ustawia wartość event.shiftKey.
+
+ metaKey
+
+ czy klawisz meta był wciśnięty podczas zdarzenia. Ustawia wartość event.metaKey.
+
+ button
+
+ zdarzenie myszy event.button.
+
+ relatedTarget
+
+ zdarzenie related EventTarget. Stosowane tylko z kilkoma typami zdarzeń (np. mouseover i mouseout). W innych przypadkach, zwraca null.
+
+

Przykład

+

 

+

Specyfikacja

+

DOM Level 2 Events: initMouseEvent

+

 

+
+  
+

{{ languages( { "en": "en/DOM/event.initMouseEvent", "es": "es/DOM/event.initMouseEvent" } ) }}

diff --git a/files/pl/web/api/event/inituievent/index.html b/files/pl/web/api/event/inituievent/index.html new file mode 100644 index 0000000000..3a20fef39d --- /dev/null +++ b/files/pl/web/api/event/inituievent/index.html @@ -0,0 +1,49 @@ +--- +title: event.initUIEvent +slug: Web/API/Event/initUIEvent +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/initUIEvent +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Inicjalizuje utworzone wcześniej zdarzenie interfejsu użytkownika.

+

Składnia

+
event.initUIEvent(type,canBubble,cancelable,view,detail)
+
+

Parametry

+
+
+ type
+
+ typ zdarzenia
+
+ canBubble
+
+ Wartość logiczna wskazująca, czy zdarzenie ma bąbelkować czy nie (zob. bubbles).
+
+ cancelable
+
+ Wartość logiczna wskazująca, czy zdarzenie może zostać anulowane (zob. cancelable).
+
+ view
+
+ widok (AbstractView) powiązany z tym zdarzeniem
+
+ detail
+
+ liczba określająca szczegółową informację dla tego zdarzenia; dla zdarzeń myszy jest to liczba kliknięć w danym miejscu ekranu (zwykle 1).
+
+

Przykład

+
e = document.createEvent("UIEvents");
+// tworzy zdarzenie kliknięcia, które bąbelkuje, może być
+// anulowane i którego widok i szczegółowa informacja
+// to odpowiednio window i 1
+e.initUIEvent("click", true, true, window, 1);
+
+

Specyfikacja

+

initUIEvent

+

{{ languages( { "en": "en/DOM/event.initUIEvent" } ) }}

diff --git a/files/pl/web/api/event/ischar/index.html b/files/pl/web/api/event/ischar/index.html new file mode 100644 index 0000000000..fc7a7dfec9 --- /dev/null +++ b/files/pl/web/api/event/ischar/index.html @@ -0,0 +1,24 @@ +--- +title: event.isChar +slug: Web/API/Event/isChar +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/isChar +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca wartość logiczną oznaczającą, czy w zdarzeniu pojawił się klawisz znaku czy nie.

+

Składnia

+
bool = event.isChar
+
+

Example

+
 if e.isChar
+   echoInput(e.type);
+ }
+
+

Notes

+

Niektórze kombinacje klawiszy mogą wywyoływać zdarzenia bez wystąpienia znaku (np. ctrl + alt). Wtedy isChar zwraca fałsz. isChar może być użyty, kiedy funkcje obsługujące zdarzenie potrzebują np. wyświetlić wprowadzony znak na ekranie.

+

Specyfikacja

+

Nie należy do specyfikacji.

+

{{ languages( { "en": "en/DOM/event.isChar" } ) }}

diff --git a/files/pl/web/api/event/keycode/index.html b/files/pl/web/api/event/keycode/index.html new file mode 100644 index 0000000000..a11c37d4b0 --- /dev/null +++ b/files/pl/web/api/event/keycode/index.html @@ -0,0 +1,23 @@ +--- +title: event.keyCode +slug: Web/API/Event/keyCode +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/KeyboardEvent/keyCode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca kod Unicode dla klawisza nie będącego znakiem w zdarzeniu keypress lub dowolnego klawisza w każdym innym zdarzeniu związanym z klawiaturą.

+

Składnia

+
klawisz = event.keyCode
+
+

Parametry

+ +

Uwagi

+

Zobacz opis właściwości charCode.

+

Specyfikacja

+

Nie należy do specyfikacji. Zobacz nsIDOMKeyEvent.

+

{{ languages( { "en": "en/DOM/event.keyCode" } ) }}

diff --git a/files/pl/web/api/event/layerx/index.html b/files/pl/web/api/event/layerx/index.html new file mode 100644 index 0000000000..5a69b4c864 --- /dev/null +++ b/files/pl/web/api/event/layerx/index.html @@ -0,0 +1,15 @@ +--- +title: event.layerX +slug: Web/API/Event/layerX +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/layerX +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca poziomą współrzędną miejsca, gdzie wystąpiło zdarzenie, względem bieżącej warstwy.

+

Składnia

+
liczba = event.layerX
+
+

{{ languages( { "en": "en/DOM/event.layerX" } ) }}

diff --git a/files/pl/web/api/event/layery/index.html b/files/pl/web/api/event/layery/index.html new file mode 100644 index 0000000000..f610d08357 --- /dev/null +++ b/files/pl/web/api/event/layery/index.html @@ -0,0 +1,17 @@ +--- +title: event.layerY +slug: Web/API/Event/layerY +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/layerY +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca pionową współrzędną miejsca, gdzie wystąpiło zdarzenie, względem bieżącej warstwy.

+

Składnia

+
liczba = event.layerY
+
+

Specyfikacja

+

Nie należy do specyfikacji.

+

{{ languages( { "en": "en/DOM/event.layerY" } ) }}

diff --git a/files/pl/web/api/event/metakey/index.html b/files/pl/web/api/event/metakey/index.html new file mode 100644 index 0000000000..a2c2758fb3 --- /dev/null +++ b/files/pl/web/api/event/metakey/index.html @@ -0,0 +1,30 @@ +--- +title: event.metaKey +slug: Web/API/Event/metaKey +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/metaKey +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca wartość logiczną wskazującą, czy klawisz <meta> był wciśnięty podczas wywołania zdarzenia.

+

Przykład

+
 function goInput(e) {
+ // sprawdza metaKey
+   if (e.metaKey) {
+        // i przekazuje zdarzenie dalej
+     superSizeOutput(e);
+
+    } else {
+     doOutput(e);
+    }
+ }
+
+

Uwagi

+

Na niekótrych platformach metaKey może obsługiwać klawisz o innej nazwie.

+

Specyfikacja

+

metaKey

+

{{ languages( { "en": "en/DOM/event.metaKey" } ) }}

diff --git a/files/pl/web/api/event/pagex/index.html b/files/pl/web/api/event/pagex/index.html new file mode 100644 index 0000000000..98c3c3e1ed --- /dev/null +++ b/files/pl/web/api/event/pagex/index.html @@ -0,0 +1,17 @@ +--- +title: event.pageX +slug: Web/API/Event/pageX +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/pageX +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca poziomą współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całej strony.

+

Składnia

+
liczba = event.pageX
+
+

{{ languages( { "en": "en/DOM/event.pageX", "es": "es/DOM/event.pageX" } ) }}

diff --git a/files/pl/web/api/event/pagey/index.html b/files/pl/web/api/event/pagey/index.html new file mode 100644 index 0000000000..d82e2237df --- /dev/null +++ b/files/pl/web/api/event/pagey/index.html @@ -0,0 +1,15 @@ +--- +title: event.pageY +slug: Web/API/Event/pageY +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/pageY +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca pionową współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całej strony.

+

Składnia

+
liczba = event.pageY
+
+

{{ languages( { "en": "en/DOM/event.pageY" } ) }}

diff --git a/files/pl/web/api/event/relatedtarget/index.html b/files/pl/web/api/event/relatedtarget/index.html new file mode 100644 index 0000000000..c67389532a --- /dev/null +++ b/files/pl/web/api/event/relatedtarget/index.html @@ -0,0 +1,56 @@ +--- +title: event.relatedTarget +slug: Web/API/Event/relatedTarget +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/relatedTarget +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje na drugi cel zdarzenia.

+

Składnia

+
eventTarget = event.relatedTarget
+
+

Parametry

+ +

Przykład

+
var rel = event.relatedTarget;
+// dump("LEAVING " + (rel ? rel.localName : "null") + "\n");
+// relatedTarget is null when the titletip is first shown:
+// a mouseout event fires because the mouse is exiting
+// the main window and entering the titletip "window".
+// relatedTarget is also null when the mouse exits the main
+// window completely, so count how many times relatedTarget
+// was null after titletip is first shown and hide popup
+// the 2nd time
+if (!rel) {
+  ++this._mouseOutCount;
+  if (this._mouseOutCount > 1)
+    this.hidePopup();
+  return;
+}
+// find out if the node we are entering is one of our
+// anonymous children
+while (rel) {
+  if (rel == this)
+    break;
+  rel.parentNode;
+}
+// if the entered node is not a descendant of ours, hide
+// the tooltip
+if (rel != this && this._isMouseOver) {
+  this.hidePopup();
+}
+
+

Uwagi

+

Za specyfikacją W3C: "Obecnie ten atrybuty używany jest przy zdarzeniu mouseover, gdzie kieruje do EventTarget, jaki opuściło urządzenie wskazujące oraz przy zdarzeniu mouseout, gdzie kieruje do EventTarget, w który weszło urządzenie wskazujące."

+

Powyzszy przykład jest typowy - właściwość relatedTarget używana jest by znaleźć, jeśli jest związany z tym zdarzeniem, kolejny element. Zdarzenia takie jak najechanie myszą ( + + mouseover + ) są powiązane z konkretnym elementem docelowym, ale mogą też angażować drugi cel, jak np. element opuszczany przez mysz w momencie, gdy najechania na główny cel.

+

Specyfikacja

+

relatedTarget

+

{{ languages( { "en": "en/DOM/event.relatedTarget" } ) }}

diff --git a/files/pl/web/api/event/screenx/index.html b/files/pl/web/api/event/screenx/index.html new file mode 100644 index 0000000000..5bafc490da --- /dev/null +++ b/files/pl/web/api/event/screenx/index.html @@ -0,0 +1,33 @@ +--- +title: event.screenX +slug: Web/API/Event/screenX +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/screenX +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca poziomą współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całego ekranu.

+

Składnia

+
liczbaPikseli = event.screenX
+
+

Parametry

+ +

Przykład

+
 function checkClickMap(e) {
+   if e.screenX < 50
+     doRedButton();
+   if 50 <= e.screenX < 100
+     doYellowButton();
+   if e.screenX >= 100
+     doRedButton();
+ }
+
+

Uwagi

+

Kiedy złapiesz zdarzenie w oknie, dokumencie czy innym obszernym elemencie możesz pobrać współrzędne tego zdarzenia (np. kliknięcia) i obsłużyć je prawidłowo, tak jak pokazuje powyższy przykład.

+

Specyfikacja

+

screenX

+

{{ languages( { "en": "en/DOM/event.screenX" } ) }}

diff --git a/files/pl/web/api/event/screeny/index.html b/files/pl/web/api/event/screeny/index.html new file mode 100644 index 0000000000..8b59c5a5e6 --- /dev/null +++ b/files/pl/web/api/event/screeny/index.html @@ -0,0 +1,23 @@ +--- +title: event.screenY +slug: Web/API/Event/screenY +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/screenY +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca pionową współrzędną miejsca, gdzie wystąpiło zdarzenie, względem całego ekranu.

+

Składnia

+
liczbaPikseli = event.screenY
+
+

Parametry

+ +

Uwagi

+

Kiedy złapiesz zdarzenie w oknie, dokumencie czy innym obszernym elemencie możesz pobrać współrzędne tego zdarzenia (np. kliknięcia) i obsłużyć je prawidłowo. Zobacz przykład do screenX.

+

Specyfikacja

+

screenY

+

{{ languages( { "en": "en/DOM/event.screenY" } ) }}

diff --git a/files/pl/web/api/event/shiftkey/index.html b/files/pl/web/api/event/shiftkey/index.html new file mode 100644 index 0000000000..1c09a012ce --- /dev/null +++ b/files/pl/web/api/event/shiftkey/index.html @@ -0,0 +1,26 @@ +--- +title: event.shiftKey +slug: Web/API/Event/shiftKey +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/MouseEvent/shiftKey +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wskazuje, czy klawisz <shift> był wciśnięty przy wywołaniu zdarzenia.

+

Składnia

+
bool = event.shiftKey
+
+

Przykład

+
 function goInput(e) {
+ // sprawdza shiftKey
+   if e.shiftKey
+       // i przekazuje zdarzenie dalej
+     superSizeOutput(e);
+   else
+     doOutput(e)
+
+

Specyfikacja

+

shiftKey

+

{{ languages( { "en": "en/DOM/event.shiftKey" } ) }}

diff --git a/files/pl/web/api/event/stoppropagation/index.html b/files/pl/web/api/event/stoppropagation/index.html new file mode 100644 index 0000000000..3026d761b3 --- /dev/null +++ b/files/pl/web/api/event/stoppropagation/index.html @@ -0,0 +1,26 @@ +--- +title: event.stopPropagation +slug: Web/API/Event/stopPropagation +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Event/stopPropagation +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przerywa dalsze propagowanie bieżącego zdarzenia.

+

Składnia

+
event.stopPropagation()
+
+

Przykład

+
e.stopPropagation();
+
+

Uwagi

+

Przykład 5: Propagowanie zdarzeń w rozdziale Przykłady użycia DOM dokładniej obrazuje użycie tej metody i propagowanie zdarzeń w DOM.

+

Specyfikacja

+

DOM Level 2 Events: stopPropagation

+
+  
+

{{ languages( { "en": "en/DOM/event.stopPropagation", "ja": "ja/DOM/event.stopPropagation" } ) }}

diff --git a/files/pl/web/api/event/target/index.html b/files/pl/web/api/event/target/index.html new file mode 100644 index 0000000000..b9df9f7b4f --- /dev/null +++ b/files/pl/web/api/event/target/index.html @@ -0,0 +1,27 @@ +--- +title: event.target +slug: Web/API/Event/target +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Event/target +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca referencję do elementu, do którego zdarzenie zostało pierwotnie wysłane.

+

Składnia

+
referencjaDoEventTarget = event.target
+
+

Parametry

+ +

Przykład

+
 d = document.getElementById("d1");
+ if e.target != d
+    resetGame();
+ // nie nasze zdarzenie
+
+

Specyfikacja

+

target

+

{{ languages( { "en": "en/DOM/event.target" } ) }}

diff --git a/files/pl/web/api/event/timestamp/index.html b/files/pl/web/api/event/timestamp/index.html new file mode 100644 index 0000000000..daead28251 --- /dev/null +++ b/files/pl/web/api/event/timestamp/index.html @@ -0,0 +1,47 @@ +--- +title: event.timeStamp +slug: Web/API/Event/timeStamp +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Event/timeStamp +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca czas (w milisekundach od momentu Epoch), kiedy zdarzenie zostało utworzone.

+

Składnia

+
number = event.timeStamp
+
+

Przykład

+
<html>
+<head>
+
+<title>Przykład timeStamp</title>
+
+<script type="text/javascript">
+var curr_time = null;
+
+function getTime(evt) {
+  curr_time = evt.timeStamp;
+  document.getElementById("time").firstChild.nodeValue = curr_time;
+}
+</script>
+</head>
+
+<body onkeypress="getTime(event)">
+
+<p>Naciśnij jakikolwiek klawisz, aby pobrać aktualny timestamp
+dla zdarzenia onkeypress.</p>
+<p>timeStamp: <span id="time">-</span></p>
+
+</body>
+</html>
+
+

 

+

Uwagi

+

Ta własność działa tylko wtedy, gdy system obsługuje ją dla danego zdarzenia.

+

Specyfikacja

+

timestamp

+

{{ languages( { "en": "en/DOM/event.timeStamp" } ) }}

diff --git a/files/pl/web/api/event/type/index.html b/files/pl/web/api/event/type/index.html new file mode 100644 index 0000000000..dfc2875af1 --- /dev/null +++ b/files/pl/web/api/event/type/index.html @@ -0,0 +1,19 @@ +--- +title: event.type +slug: Web/API/Event/type +tags: + - DOM + - Wszystkie_kategorie +translation_of: Web/API/Event/type +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca nazwę zdarzenia (niewrażliwe na wielkość znaków).

+

Składnia

+
string = event.type
+
+

Uwagi

+

type jest nazwą XML-ową.

+

Specyfikacja

+

type

+

{{ languages( { "en": "en/DOM/event.type" } ) }}

diff --git a/files/pl/web/api/event/view/index.html b/files/pl/web/api/event/view/index.html new file mode 100644 index 0000000000..57af70a587 --- /dev/null +++ b/files/pl/web/api/event/view/index.html @@ -0,0 +1,23 @@ +--- +title: event.view +slug: Web/API/Event/view +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/UIEvent/view +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Atrybut view identyfikuje widok (interfejs AbstractView), w którym wygenerowane zostało zdarzenie.

+

Składnia

+
referencjaDoAbstractView = event.view
+
+

Parametry

+ +

Specyfikacja

+

view

+

{{ languages( { "en": "en/DOM/event.view" } ) }}

diff --git a/files/pl/web/api/file/file/index.html b/files/pl/web/api/file/file/index.html new file mode 100644 index 0000000000..0a1525bdc8 --- /dev/null +++ b/files/pl/web/api/file/file/index.html @@ -0,0 +1,68 @@ +--- +title: File.File() +slug: Web/API/File/File +tags: + - API +translation_of: Web/API/File/File +--- +

{{APIRef("File")}}

+ +

Konstruktor File() tworzy nową instancję obiektu {{domxref("File")}}.

+ +

Składnia

+ +
File(bity, nazwa [, opcje]);
+ +

Parameters

+ +
+
bity
+
{{jsxref("Array")}} (Tablica) obiektów {{jsxref("ArrayBuffer")}}, {{domxref("ArrayBufferView")}}, {{domxref("Blob")}} lub {{domxref("DOMString")}} — albo miks takich obiektów. Zawartość pliku jest zakodowana w UTF-8.
+
nazwa
+
Obiekt {domxref("USVString")}} reprezentujący nazwę pliku albo ścieżkę do niego.
+
opcje {{optional_inline}}
+
Obiekt opcji, który zawiera opcjonalne atrybuty pliku. Dostępne są następujące możliwości: +
    +
  • type: (typ) - Obiekt {{domxref("DOMString")}} reprezentujący typ MIME zawartości pliku. Domyślnie "".
  • +
  • lastModified: (ostatnio modyfikowany) Liczba reprezentująca liczbę milisekund pomiędzy Unix time epoch i datą ostatniej modyfikacji pliku. Domyślnie - wartość {{jsxref("Date.now()")}}.
  • +
+
+
+ +

Przykład

+ +
var plik = new File(["foo"], "foo.txt", {
+  type: "text/plain",
+});
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecificationStatusKomentarz
{{SpecName('File API')}}{{Spec2('File API')}}Podstawowa definicja
+ +

Kompatybilność między przeglądarkami

+ +
+ + +

{{Compat("api.File.File")}}

+
+ +

Zobacz także

+ + diff --git a/files/pl/web/api/file/index.html b/files/pl/web/api/file/index.html new file mode 100644 index 0000000000..50caf5366b --- /dev/null +++ b/files/pl/web/api/file/index.html @@ -0,0 +1,112 @@ +--- +title: File +slug: Web/API/File +tags: + - API + - File API + - Interface + - NeedsTranslation + - Reference + - TopicStub + - Web +translation_of: Web/API/File +--- +
{{APIRef}}
+ +

The File interface provides information about files and allows JavaScript in a web page to access their content.

+ +

File objects are generally retrieved from a {{domxref("FileList")}} object returned as a result of a user selecting files using the {{HTMLElement("input")}} element, from a drag and drop operation's {{domxref("DataTransfer")}} object, or from the mozGetAsFile() API on an {{domxref("HTMLCanvasElement")}}. In Gecko, privileged code can create File objects representing any local file without user interaction (see {{anch("Implementation notes")}} for more information.)

+ +

A File object is a specific kind of a {{domxref("Blob")}}, and can be used in any context that a Blob can. In particular, {{domxref("FileReader")}}, {{domxref("URL.createObjectURL()")}}, {{domxref("ImageBitmapFactories.createImageBitmap()", "createImageBitmap()")}}, and {{domxref("XMLHttpRequest", "", "send()")}} accept both Blobs and Files.

+ +

See Using files from web applications for more information and examples.

+ +

{{InheritanceDiagram}}

+ +

Constructor

+ +
+
{{domxref("File.File", "File()")}}
+
Returns a newly constructed File.
+
+ +

Properties

+ +
+
{{domxref("File.lastModified")}} {{readonlyinline}}
+
Returns the last modified time of the file, in millisecond since the UNIX epoch (January 1st, 1970 at Midnight).
+
{{domxref("File.lastModifiedDate")}} {{readonlyinline}} {{deprecated_inline}} {{gecko_minversion_inline("15.0")}}
+
Returns the last modified Date of the file referenced by the File object.
+
{{domxref("File.name")}} {{readonlyinline}}
+
Returns the name of the file referenced by the File object.
+
{{domxref("File.webkitRelativePath")}} {{readonlyinline}} {{non-standard_inline}}
+
Returns the path the URL of the {{domxref("File")}} is relative to.
+
+ +

File implements {{domxref("Blob")}}, so it also has the following properties available to it:

+ +
+
{{domxref("File.size")}} {{readonlyinline}}
+
Returns the size of the file in bytes.
+
{{domxref("File.type")}} {{readonlyinline}}
+
Returns the MIME type of the file.
+
+ +

Methods

+ +

The File interface doesn't define any methods, but inherits methods from the {{domxref("Blob")}} interface:

+ +
+
{{domxref("Blob.slice()", "Blob.slice([start[, end[, contentType]]])")}}
+
Returns a new Blob object containing the data in the specified range of bytes of the source Blob.
+
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('File API')}}{{Spec2('File API')}}Initial definition
+ +

Browser compatibility

+ +
+ + +

{{Compat("api.File")}}

+
+ +

 

+ +

Implementation notes

+ + + +

See also

+ + diff --git a/files/pl/web/api/geolocation_api/index.html b/files/pl/web/api/geolocation_api/index.html new file mode 100644 index 0000000000..5b53252074 --- /dev/null +++ b/files/pl/web/api/geolocation_api/index.html @@ -0,0 +1,92 @@ +--- +title: Geolocation API +slug: Web/API/Geolocation_API +translation_of: Web/API/Geolocation_API +--- +
{{securecontext_header}}{{DefaultAPISidebar("Geolocation API")}}
+ +

Geolokalizacja API umożliwia użytkownikowi zapewnić ich lokalizację do aplikacji internetowych, jeśli zechcą. Ze względów prywatności użytkownik jest proszony o zgodę na zgłoszenie informacji o lokalizacji.

+ +

Rozszerzenia Web, które chcą korzystać z obiektu Geolokalizacja, muszą dodać "geolocation"uprawnienie do swojego manifestu. System operacyjny użytkownika poprosi użytkownika o zezwolenie na dostęp do lokalizacji przy pierwszym żądaniu.

+ +

Pojęcia i użycie

+ +

Często będziesz chciał odzyskać informacje o lokalizacji użytkownika w swojej aplikacji internetowej, na przykład wykreślić jego lokalizację na mapie lub wyświetlić spersonalizowane informacje dotyczące ich lokalizacji.

+ +

The Geolocation API is accessed via a call to {{domxref("Navigator.geolocation", "navigator.geolocation")}}; this will cause the user's browser to ask them for permission to access their location data. If they accept, then the browser will use the best available functionality on the device to access this information (for example, GPS).

+ +

The developer can now access this location information in a couple of different ways:

+ + + +

In both cases, the method call takes up to three arguments:

+ + + +

For further information on Geolocation usage, read Using the Geolocation API.

+ +

Interfaces

+ +
+
{{domxref("Geolocation")}}
+
The main class of this API — contains methods to retrieve the user's current position, watch for changes in their position, and clear a previously-set watch.
+
{{domxref("GeolocationPosition")}}
+
Represents the position of a user. A GeolocationPosition instance is returned by a successful call to one of the methods contained inside {{domxref("Geolocation")}}, inside a success callback, and contains a timestamp plus a {{domxref("GeolocationCoordinates")}} object instance.
+
{{domxref("GeolocationCoordinates")}}
+
Represents the coordinates of a user's position; a GeolocationCoordinates instance contains latitude, longitude, and other important related information.
+
{{domxref("GeolocationPositionError")}}
+
A GeolocationPositionError is returned by an unsuccessful call to one of the methods contained inside {{domxref("Geolocation")}}, inside an error callback, and contains an error code and message.
+
{{domxref("Navigator.geolocation")}}
+
The entry point into the API. Returns a {{domxref("Geolocation")}} object instance, from which all other functionality can be accessed.
+
+ +

Dictionaries

+ +
+
{{domxref("PositionOptions")}}
+
Represents an object containing options to pass in as a parameter of {{domxref("Geolocation.getCurrentPosition()")}} and {{domxref("Geolocation.watchPosition()")}}.
+
+ +

Examples

+ +

{{page("/en-US/docs/Web/API/Geolocation_API/Using_the_Geolocation_API","Examples")}}

+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("Geolocation")}}{{Spec2("Geolocation")}}
+ +

Kompatybilność z przeglądarkami

+ +

{{Compat("api.Geolocation")}}

+ +

Dostępność

+ +

Ponieważ Google często zapewnia lokalizację w oparciu o Wi-Fi, waniliowy interfejs API geolokalizacji może być niedostępny w Chinach. Możesz korzystać z usług lokalnych dostawców zewnętrznych, takich jak Baidu , Autonavi lub Tencent . Usługi te wykorzystują adres IP użytkownika i / lub lokalną aplikację do zapewnienia lepszego pozycjonowania.

+ +

Zobacz też

+ + diff --git a/files/pl/web/api/globaleventhandlers/index.html b/files/pl/web/api/globaleventhandlers/index.html new file mode 100644 index 0000000000..9238474923 --- /dev/null +++ b/files/pl/web/api/globaleventhandlers/index.html @@ -0,0 +1,714 @@ +--- +title: GlobalEventHandlers +slug: Web/API/GlobalEventHandlers +tags: + - API + - DOM + - GlobalEventHandlers + - HTML DOM + - Mixin + - NeedsTranslation + - Reference + - TopicStub + - events +translation_of: Web/API/GlobalEventHandlers +--- +
{{ApiRef("HTML DOM")}}
+ +

The GlobalEventHandlers mixin describes the event handlers common to several interfaces like {{domxref("HTMLElement")}}, {{domxref("Document")}}, or {{domxref("Window")}}. Each of these interfaces can, of course, add more event handlers in addition to the ones listed below.

+ +
+

Note: GlobalEventHandlers is a mixin and not an interface; you can't actually create an object of type GlobalEventHandlers.

+
+ +

Properties

+ +

This interface doesn't include any properties except for the event handlers listed below.

+ +

Event handlers

+ +

These event handlers are defined on the {{domxref("GlobalEventHandlers")}} mixin, and implemented by {{domxref("HTMLElement")}}, {{domxref("Document")}}, {{domxref("Window")}}, as well as by {{domxref("WorkerGlobalScope")}} for Web Workers.

+ +
+
+
{{domxref("GlobalEventHandlers.onabort")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("abort")}} event is raised.
+
{{domxref("GlobalEventHandlers.onanimationcancel")}} {{Non-standard_inline}}
+
An {{domxref("EventHandler")}} called when an {{event("animationcancel")}} event is sent, indicating that a running CSS animation has been canceled.
+
{{domxref("GlobalEventHandlers.onanimationend")}} {{Non-standard_inline}}
+
An {{domxref("EventHandler")}} called when an {{event("animationend")}} event is sent, indicating that a CSS animation has stopped playing.
+
{{domxref("GlobalEventHandlers.onanimationiteration")}} {{Non-standard_inline}}
+
An {{domxref("EventHandler")}} called when an {{event("animationiteration")}} event has been sent, indicating that a CSS animation has begun playing a new iteration of the animation sequence.
+
{{domxref("GlobalEventHandlers.onanimationstart")}} {{Non-standard_inline}}
+
An {{domxref("EventHandler")}} called when an {{event("animationstart")}} event is sent, indicating that a CSS animation has started playing.
+
{{domxref("GlobalEventHandlers.onauxclick")}} {{Non-standard_inline}}
+
An {{domxref("EventHandler")}} called when an {{event("auxclick")}} event is sent, indicating that a non-primary button has been pressed on an input device (e.g. a middle mouse button).
+
{{domxref("GlobalEventHandlers.onblur")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("blur")}} event is raised.
+
{{domxref("GlobalEventHandlers.onerror")}}
+
Is an {{domxref("OnErrorEventHandler")}} representing the code to be called when the {{event("error")}} event is raised.
+
{{domxref("GlobalEventHandlers.onfocus")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("focus")}} event is raised.
+
{{domxref("GlobalEventHandlers.oncancel")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("cancel")}} event is raised.
+
{{domxref("GlobalEventHandlers.oncanplay")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("canplay")}} event is raised.
+
{{domxref("GlobalEventHandlers.oncanplaythrough")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("canplaythrough")}} event is raised.
+
{{domxref("GlobalEventHandlers.onchange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("change")}} event is raised.
+
{{domxref("GlobalEventHandlers.onclick")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("click")}} event is raised.
+
{{domxref("GlobalEventHandlers.onclose")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("close")}} event is raised.
+
{{domxref("GlobalEventHandlers.oncontextmenu")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("contextmenu")}} event is raised.
+
{{domxref("GlobalEventHandlers.oncuechange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("cuechange")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondblclick")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dblclick")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondrag")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("drag")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondragend")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dragend")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondragenter")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dragenter")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondragexit")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dragexit")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondragleave")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dragleave")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondragover")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dragover")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondragstart")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("dragstart")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondrop")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("drop")}} event is raised.
+
{{domxref("GlobalEventHandlers.ondurationchange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("durationchange")}} event is raised.
+
{{domxref("GlobalEventHandlers.onemptied")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("emptied")}} event is raised.
+
{{domxref("GlobalEventHandlers.onended")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("ended")}} event is raised.
+
{{domxref("GlobalEventHandlers.ongotpointercapture")}}
+
+

Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("gotpointercapture")}} event type is raised.

+
+
{{domxref("GlobalEventHandlers.oninput")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("input")}} event is raised.
+
{{domxref("GlobalEventHandlers.oninvalid")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("invalid")}} event is raised.
+
{{domxref("GlobalEventHandlers.onkeydown")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("keydown")}} event is raised.
+
{{domxref("GlobalEventHandlers.onkeypress")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("keypress")}} event is raised.
+
{{domxref("GlobalEventHandlers.onkeyup")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("keyup")}} event is raised.
+
{{domxref("GlobalEventHandlers.onload")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("load")}} event is raised.
+
{{domxref("GlobalEventHandlers.onloadeddata")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("loadeddata")}} event is raised.
+
{{domxref("GlobalEventHandlers.onloadedmetadata")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("loadedmetadata")}} event is raised.
+
{{domxref("GlobalEventHandlers.onloadend")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("loadend")}} event is raised (when progress has stopped on the loading of a resource.)
+
{{domxref("GlobalEventHandlers.onloadstart")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("loadstart")}} event is raised (when progress has begun on the loading of a resource.)
+
{{domxref("GlobalEventHandlers.onlostpointercapture")}}
+
+

Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("lostpointercapture")}} event type is raised.

+
+
{{domxref("GlobalEventHandlers.onmousedown")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mousedown")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmouseenter")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mouseenter")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmouseleave")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mouseleave")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmousemove")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mousemove")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmouseout")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mouseout")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmouseover")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mouseover")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmouseup")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mouseup")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmousewheel")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("mousewheel")}} event is raised.
+
{{ domxref("GlobalEventHandlers.onwheel") }}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("wheel")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpause")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pause")}} event is raised.
+
{{domxref("GlobalEventHandlers.onplay")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("play")}} event is raised.
+
{{domxref("GlobalEventHandlers.onplaying")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("playing")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerdown")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerdown")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointermove")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointermove")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerup")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerup")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointercancel")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointercancel")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerover")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerover")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerout")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerout")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerenter")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerevent")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerleave")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerleave")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerlockchange")}} {{experimental_inline}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerlockchange")}} event is raised.
+
{{domxref("GlobalEventHandlers.onpointerlockerror")}} {{experimental_inline}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("pointerlockerror")}} event is raised.
+
{{domxref("GlobalEventHandlers.onprogress")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("progress")}} event is raised.
+
{{domxref("GlobalEventHandlers.onratechange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("ratechange")}} event is raised.
+
{{domxref("GlobalEventHandlers.onreset")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("reset")}} event is raised.
+
{{domxref("GlobalEventHandlers.onscroll")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("scroll")}} event is raised.
+
{{domxref("GlobalEventHandlers.onseeked")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("seeked")}} event is raised.
+
{{domxref("GlobalEventHandlers.onseeking")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("seeking")}} event is raised.
+
{{domxref("GlobalEventHandlers.onselect")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("select")}} event is raised.
+
{{domxref("GlobalEventHandlers.onselectstart")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("selectionchange")}} event is raised, i.e. when the user starts to make a new text selection on a web page.
+
{{domxref("GlobalEventHandlers.onselectionchange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("selectionchange")}} event is raised, i.e. when the text selected on a web page changes.
+
{{domxref("GlobalEventHandlers.onshow")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("show")}} event is raised.
+
{{domxref("GlobalEventHandlers.onsort")}} {{experimental_inline}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("sort")}} event is raised.
+
{{domxref("GlobalEventHandlers.onstalled")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("stalled")}} event is raised.
+
{{domxref("GlobalEventHandlers.onsubmit")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("submit")}} event is raised.
+
{{domxref("GlobalEventHandlers.onsuspend")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("suspend")}} event is raised.
+
{{domxref("GlobalEventHandlers.ontimeupdate")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("timeupdate")}} event is raised.
+
{{domxref("GlobalEventHandlers.onvolumechange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("volumechange")}} event is raised.
+
{{domxref("GlobalEventHandlers.ontouchcancel")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("touchcancel")}} event is raised.
+
{{domxref("GlobalEventHandlers.ontouchend")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("touchend")}} event is raised.
+
{{domxref("GlobalEventHandlers.ontouchmove")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("touchmove")}} event is raised.
+
{{domxref("GlobalEventHandlers.ontouchstart")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("touchstart")}} event is raised.
+
{{domxref("GlobalEventHandlers.ontransitioncancel")}}
+
An {{domxref("EventHandler")}} called when a {{event("transitioncancel")}} event is sent, indicating that a CSS transition has been cancelled.
+
{{domxref("GlobalEventHandlers.ontransitionend")}}
+
An {{domxref("EventHandler")}} called when a {{event("transitionend")}} event is sent, indicating that a CSS transition has finished playing.
+
{{domxref("GlobalEventHandlers.onwaiting")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("waiting")}} event is raised.
+
+
+ +

Methods

+ +

This interface defines no methods.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("Selection API",'', 'Extension to GlobalEventHandlers')}}{{Spec2('Selection API')}}Adds onselectionchange.
{{SpecName('Pointer Lock', '#extensions-to-the-document-interface', 'Extension of Document')}}{{Spec2('Pointer Lock')}}Adds onpointerlockchange and onpointerlockerror on {{domxref("Document")}}. It is experimentally implemented on GlobalEventHandlers.
{{SpecName('HTML WHATWG', '#globaleventhandlers', 'GlobalEventHandlers')}}{{Spec2('HTML WHATWG')}}No change since the latest snapshot, {{SpecName("HTML5.1")}}.
{{SpecName('HTML5.1', '#globaleventhandlers', 'GlobalEventHandlers')}}{{Spec2('HTML5.1')}}Snapshot of {{SpecName("HTML WHATWG")}}. Added onsort since the {{SpecName("HTML5 W3C")}} snapshot.
{{SpecName("HTML5 W3C", "#globaleventhandlers", "GlobalEventHandlers")}}{{Spec2('HTML5 W3C')}}Snapshot of {{SpecName("HTML WHATWG")}}. Creation of GlobalEventHandlers (properties where on the target before it).
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureFirefox (Gecko)ChromeEdgeInternet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
oncanplay, oncanplaythrough, ondurationchange, onemptied, onended, onloadeddata, onloadedmetadata, onloadstart, onpause, onplay, onplaying, onprogress, onratechange, onseeked, onseeking, onstalled, ontimeupdate, onvolumechange, onwaiting{{CompatGeckoDesktop(1.9.1)}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onsuspend{{CompatGeckoDesktop(1.9.2)}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop{{CompatGeckoDesktop(1.9.1)}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onmouseenter, onmouseleave{{CompatGeckoDesktop(10)}}{{CompatChrome(30.0)}}{{CompatUnknown}}5.517{{CompatUnknown}}
ondragexit{{CompatNo}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
oncancel{{CompatNo}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onclose{{CompatNo}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
oncuechange{{CompatNo}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onmousewheel{{CompatNo}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onsort {{experimental_inline}}{{CompatNo}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onmozfullscreenchange, onmozfullscreenerror {{non-standard_inline}}{{CompatVersionUnknown}}{{CompatVersionUnknown}} {{property_prefix("-webkit")}}
+ {{CompatVersionUnknown}} (unprefixed)
{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
onpointerlockchange, onpointerlockerror{{CompatGeckoDesktop(10)}}[1]{{CompatVersionUnknown}}[2] {{property_prefix("-webkit")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
onpointercancel, onpointerdown, onpointerup, onpointermove, onpointerout, onpointerover, onpointerenter, onpointerleave{{CompatVersionUnknown}}[3]{{CompatChrome(55.0)}}{{CompatVersionUnknown}}10{{CompatUnknown}}{{CompatUnknown}}
onselectionchange{{CompatGeckoDesktop(43)}}[4]{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
ontouchend, ontouchcancel, ontouchmove, ontouchstart{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
animationstart, animationend, animationcancel, animationiteration{{CompatGeckoDesktop(51)}}{{CompatVersionUnknown}} {{property_prefix("-webkit")}}
+ {{CompatVersionUnknown}} (unprefixed)
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
ongotpointercapture, onlostpointercapture{{CompatUnknown}}{{CompatChrome(57.0)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatOpera(44)}}{{CompatUnknown}}
onauxclick{{CompatGeckoDesktop(53)}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
onwheel{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroid WebviewEdgeFirefox Mobile (Gecko)AndroidIE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile(1.9.1)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
oncanplay, oncanplaythrough, ondurationchange, onemptied, onended, onloadeddata, onloadedmetadata, onloadstart, onpause, onplay, onplaying, onprogress, onratechange, onseeked, onseeking, onstalled, ontimeupdate, onvolumechange, onwaiting{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatGeckoMobile(1.9.1)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
onmouseenter, onmouseleave{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatGeckoMobile(10)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
onsuspend{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatGeckoMobile(1.9.2)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
ondragexit{{CompatNo}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}
oncancel{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
onclose{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
oncuechange{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
onmousewheel{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
onsort{{CompatNo}}{{CompatUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}
onmozfullscreenchange, onmozfullscreenerror {{non-standard_inline}}{{CompatVersionUnknown}} {{property_prefix("-webkit")}}
+ {{CompatVersionUnknown}} (unprefixed)
{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}} {{property_prefix("-webkit")}}
+ {{CompatVersionUnknown}} (unprefixed)
onpointerlockchange, onpointerlockerror{{CompatNo}}{{CompatUnknown}}{{CompatGeckoMobile(10)}}[1]{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}
onpointercancel, onpointerdown, onpointerup, onpointermove, onpointerout, onpointerover, onpointerenter, onpointerleave{{CompatChrome(55.0)}}{{CompatUnknown}}{{CompatVersionUnknown}}[3]{{CompatNo}}10{{CompatNo}}{{CompatNo}}{{CompatChrome(55.0)}}
onselectionchange{{CompatNo}}{{CompatUnknown}}{{CompatGeckoMobile(43)}}[4]{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}
ontouchend, ontouchcancel, ontouchmove, ontouchstart{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
animationstart, animationend, animationcancel, animationiteration{{CompatVersionUnknown}} {{property_prefix("-webkit")}}
+ {{CompatVersionUnknown}} (unprefixed)
{{CompatUnknown}}{{CompatGeckoMobile(51)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}} {{property_prefix("-webkit")}}
+ {{CompatVersionUnknown}} (unprefixed)
ongotpointercapture, onlostpointercapture{{CompatChrome(57.0)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatOperaMobile(44)}}{{CompatUnknown}}{{CompatChrome(57.0)}}
onauxclick{{CompatVersionUnknown}}{{CompatNo}}{{CompatGeckoMobile(53)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}
onwheel{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

[1] In Gecko this is implemented as onmozpointerlockchange, onmozpointerlockerror.

+ +

[2] In Blink this is implemented as onwebkitpointerlockchange, onwebkitpointerlockerror.

+ +

[3] This is implemented behind the dom.w3c_pointer_events.enabled preference, defaulting to false.

+ +

[4] This is implemented behind the dom.select_events.enabled preference, that default to false, except on Nightly.

+ +

See also

+ + diff --git a/files/pl/web/api/globaleventhandlers/onblur/index.html b/files/pl/web/api/globaleventhandlers/onblur/index.html new file mode 100644 index 0000000000..1a1779b37f --- /dev/null +++ b/files/pl/web/api/globaleventhandlers/onblur/index.html @@ -0,0 +1,85 @@ +--- +title: GlobalEventHandlers.onblur +slug: Web/API/GlobalEventHandlers/onblur +translation_of: Web/API/GlobalEventHandlers/onblur +--- +
{{ApiRef("HTML DOM")}}
+ +

Właściwość onblur należy do Globalnych Uchwytów Zdarzeń ({{domxref("GlobalEventHandlers")}}) i jest Uchwytem Zdarzenia ({{domxref("EventHandler")}}), który służy do obsługi zdarzenia {{event("blur")}}. Jest on dostępny dla następujących elementów: {{domxref("Element")}}, {{domxref("Document")}}, oraz {{domxref("Window")}}.

+ +

Zdarzenie blur zachodzi, gdy dany element traci "focus" (np. podczas opuszczenia inputa tekstowego).

+ +
+

Notatka: Przeciwieństwem onblur jest {{domxref("GlobalEventHandlers.onfocus", "onfocus")}}.

+
+ +

Składnia

+ +
cel.onblur = jakasFunkcja();
+
+ +

Wartość

+ +

jakasFunkcja jest nazwą funkcji albo wyrażeniem funkcji. Jeżeli nie podano argumentu, celowi zostanie przypisana odpowiednia wartość obiektu {{domxref("FocusEvent")}}.

+ +

Przykład

+ +

Przykład użycia onblur oraz {{domxref("GlobalEventHandlers.onfocus", "onfocus")}} do zmiany tekstu w elemencie {{HtmlElement("input")}}.

+ +

HTML

+ +
<input type="text" value="CLICK HERE">
+
+ +

JavaScript

+ +
let input = document.querySelector('input');
+
+input.onblur = inputBlur;
+input.onfocus = inputFocus;
+
+function inputBlur() {
+  input.value = 'Focus has been lost';
+}
+
+function inputFocus() {
+  input.value = 'Focus is here';
+}
+ +

Rezultat

+ +

Kliknij na pole, a następnie obok niego i obserwuj jak zmienia się jego zawartość.

+ +

{{EmbedLiveSample('Przykład')}}

+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG','webappapis.html#handler-onblur','onblur')}}{{Spec2('HTML WHATWG')}}
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("api.GlobalEventHandlers.onblur")}}

+ +

W przeciwieństwie do IE, w którym prawie każdy element może otrzymać efekt zdarzenia blur, tylko kilka elementów z tym zdarzeniem, działa na przeglądarkach opartych o silnik Gecko.

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/globaleventhandlers/onfocus/index.html b/files/pl/web/api/globaleventhandlers/onfocus/index.html new file mode 100644 index 0000000000..bd4a30d6b5 --- /dev/null +++ b/files/pl/web/api/globaleventhandlers/onfocus/index.html @@ -0,0 +1,87 @@ +--- +title: GlobalEventHandlers.onfocus +slug: Web/API/GlobalEventHandlers/onfocus +translation_of: Web/API/GlobalEventHandlers/onfocus +--- +
{{ApiRef("HTML DOM")}}
+ +

Właściwość onfocus należy do Globalnych Uchwytów Zdarzeń ({{domxref("GlobalEventHandlers")}}) i jest Uchwytem Zdarzenia ({{domxref("EventHandler")}}), który służy do obsługi zdarzenia {{event("focus")}}.

+ +

Zdarzenie focus zachodzi, gdy użytkownik aktywuje element (np. wejdzie w pole tekstowe {{HtmlElement("input")}}).

+ +

Dla elementów onfocus, które nie są inputem, należy dodać atrybut {{htmlattrxref("tabindex")}} (przeczytaj Tworzenie dostępności klawiatury z powrotem po więcej informacji).

+ +
+

Notatka: Przeciwieństwem onfocus jest {{domxref("GlobalEventHandlers.onblur", "onblur")}}.

+
+ +

Składnia

+ +
cel.onfocus = jakasFunkcja;
+
+ +

Wartość

+ +

jakasFunkcja jest nazwą funkcji lub wyrażeniem funkcji. Jeżeli nie podano argumentu, celowi zostanie przypisana odpowiednia wartość obiektu {{domxref("FocusEvent")}}.

+ +

Przykład

+ +

Przykład użycia {{domxref("GlobalEventHandlers.onblur", "onblur")}} oraz onfocus do zmiany tekstu w elemencie {{HtmlElement("input")}}.

+ +

HTML

+ +
<input type="text" value="CLICK HERE">
+
+ +

JavaScript

+ +
let input = document.querySelector('input');
+
+input.onblur = inputBlur;
+input.onfocus = inputFocus;
+
+function inputBlur() {
+  input.value = 'Focus has been lost';
+}
+
+function inputFocus() {
+  input.value = 'Focus is here';
+}
+ +

Result

+ +

Kliknij na pole, a następnie obok niego i obserwuj jak zmienia się jego zawartość.

+ +

{{EmbedLiveSample('Example')}}

+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG','webappapis.html#handler-onfocus','onfocus')}}{{Spec2('HTML WHATWG')}} 
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("api.GlobalEventHandlers.onfocus")}}

+ +

W przeciwieństwie do IE, w którym prawie każdy element może otrzymać efekt zdarzenia focus , prawie wszystkie elementy z tym zdarzeniem nie działają na przeglądarkach opartych o silnik Gecko.

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/htmlcanvaselement/capturestream/index.html b/files/pl/web/api/htmlcanvaselement/capturestream/index.html new file mode 100644 index 0000000000..19b796017e --- /dev/null +++ b/files/pl/web/api/htmlcanvaselement/capturestream/index.html @@ -0,0 +1,73 @@ +--- +title: HTMLCanvasElement.captureStream() +slug: Web/API/HTMLCanvasElement/captureStream +translation_of: Web/API/HTMLCanvasElement/captureStream +--- +
{{APIRef("Media Capture and Streams")}}{{SeeCompatTable}}
+ +
 
+ +
Metoda HTMLCanvasElement.captureStream() zwraca {{domxref("CanvasCaptureMediaStream")}} który jest wideo w czasie rzeczywistym z powierzchni elementu <canvas>.
+ +

Składnia

+ +
MediaStream = canvas.captureStream(frameRate);
+
+ +

Parametry

+ +
+
frameRate {{optional_inline}}
+
Liczba zmiennoprzecinkowa podójnej precyzji wskazuje na częstotliwość przechwytywania każdej klatki. W przypadku braku parametru nowa klatka będzie przechwytywana przy każdej zmianie {{HTMLElement("canvas")}}; jeśli ustawiona na 0, przechwycona zostanie pojedyńcza klatka.
+
+ +

Wartość zwrtona

+ +

Odniesienie do obiektu {{domxref("MediaStream")}}. 

+ +

Przykład

+ +
// Zlokalizuj element canvas do przechwycenia
+var canvasElt = document.querySelector('canvas');
+
+// Rozpocznij stream
+var stream = canvasElt.captureStream(25); // 25 FPS
+
+// Wykonuj na nim czynności
+// Np. Prześlij stream na inny komputer używając RTCPeerConnection
+innyKomputer.addStream(stream);
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Media Capture DOM Elements', '#widl-HTMLCanvasElement-captureStream-CanvasCaptureMediaStream-double-frameRate', 'HTMLCanvasElement.captureStream()')}}{{Spec2('Media Capture DOM Elements')}}Definicja początkowa
+ +

Zgodność przeglądarek

+ + + +

{{Compat("api.HTMLCanvasElement.captureStream")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/api/htmlcanvaselement/getcontext/index.html b/files/pl/web/api/htmlcanvaselement/getcontext/index.html new file mode 100644 index 0000000000..e60fddc51e --- /dev/null +++ b/files/pl/web/api/htmlcanvaselement/getcontext/index.html @@ -0,0 +1,129 @@ +--- +title: HTMLCanvasElement.getContext() +slug: Web/API/HTMLCanvasElement/getContext +translation_of: Web/API/HTMLCanvasElement/getContext +--- +
{{APIRef("Canvas API")}}
+ +

Metoda HTMLCanvasElement.getContext() zwraca kontekst pola roboczego {{HTMLElement("canvas")}}, lub {{jsxref("null")}} jeśli  identyfikator kontekstu nie jest wspierany.

+ +

Składnia

+ +
var ctx = canvas.getContext(contextType);
+var ctx = canvas.getContext(contextType, contextAttributes);
+
+ +

Parametry

+ +
+
contextType
+
Jest nim {{domxref("DOMString")}} zawierający identyfikator kontekstu pola roboczego powiązanego z {{HTMLElement("canvas")}}. Możliwe wartości to: +
    +
  • "2d",  tworzy obiekt {{domxref("CanvasRenderingContext2D")}} reprezentujący dwuwymiarowy kontekst renderowania.
  • +
  • "webgl" (lub "experimental-webgl"), tworzy obiekt {{domxref("WebGLRenderingContext")}} reprezentujący trójwymiarowy kontekst renderowania. Ten kontekst dostępny jest tylko w przeglądarkach w których zaimplementowana jest wersja 1 WebGL (OpenGL ES 2.0).
  • +
  • "webgl2" tworzy obiekt {{domxref("WebGL2RenderingContext")}} reprezentujący trójwymiarowy kontekst renderowania. Ten kontekst dostępny jest tylko w przeglądarkach w których zaimplementowana jest wersja 2 WebGL (OpenGL ES 3.0). {{experimental_inline}}
  • +
  • "bitmaprenderer" tworzy {{domxref("ImageBitmapRenderingContext")}}, który zapewnia możliwość zastąpenia treści {{HTMLElement("canvas")}}  na podaną {{domxref("ImageBitmap")}}.
  • +
+ +
+

Nota: Identyfikator "experimental-webgl" jest używany przy nowych wdrożeniach WebGL. Wdrożenia te nie uzyskały zgodności z pakietem testowym lub sterowniki graficzne platformy nie są jeszcze stabilne. Grupa Khronos certyfikuje wdrożenia WebGL zgodnie z regułami zgodności.

+
+
+
contextAttributes
+
+

Można użyć kilku własności kontekstu przy tworzeniu kontekstu renderowania, dla przykładu: 

+ +
const gl = canvas.getContext('webgl', {
+  antialias: false,
+  depth: false
+});
+
+
Własności kontekstu 2d: +
    +
  • alpha: Boolean wskazujacy czy canvas zawiera kanał alpha. Jeśli ustawione na false, przeglądarka wie, że tło zawsze jest nieprzeźroczyste, co może przyspieszyć rysowanie przeźroczystych treści i obrazków.  
  • +
  • {{non-standard_inline}} (Gecko only) willReadFrequently: Boolean wskazujący czy wiele operacji read-back zostało zaplanowanych. Spowoduje wymuszenie użycia oprogramowania (zamiast przyśpieszenia sprzętowego) 2D canvas i może pomóc w oszczędności pamięci przy częstym wywoływaniu {{domxref("CanvasRenderingContext2D.getImageData", "getImageData()")}}. Opcja ta jest dostepna tylko jeśli flaga gfx.canvas.willReadFrequently.enable jest ustawiona na true (która, domyślnie, dotyczy tylko B2G/Firefox OS).
  • +
  • {{non-standard_inline}} (Blink only) storage: String wskazujacy jaka pamięć jest używana (domyślnie jest to "stała" ).
  • +
+ Własności kontekstu WebGL: + +
    +
  • alpha: Boolean wskazujacy czy canvas zawiera bufor alpha.
  • +
  • depth: Boolean wskazujący czy bufor rysunku posiada bufor głębi o wartości co przynajmniej 16 bitów.
  • +
  • stencil: Boolean wskazujący czy bufor rysunku posiada bufor matrycy o wartości przynajmniej 8 bitów. 
  • +
  • antialias: Boolean wskazujący czy używany ma być anti-aliasing.
  • +
  • premultipliedAlpha: Boolean wskazujący czy projektant strony założył, że  bufor rysunku zawiera kolory ze wstepnie pomnożoną alfą.
  • +
  • preserveDrawingBuffer: Jeśli ustawiona na true, bufory nie zostaną wyczyszczone i zachowają swoje wartości, dopóki nie zostaną wyczyszczone lub nadpisane przez autora.
  • +
  • failIfMajorPerformanceCaveat: Boolean wskazujący czy kontekst będzie tworzony, jeśli wydajność systemu jest niska.
  • +
+
+
+ +

Wartości zwrotne

+ +

{{domxref("RenderingContext")}} jest też

+ + + +

Jeśli contextType nie może dopasować możliwych kontekstów rysowania, null zostanie zwrócony.

+ +

Przykłady

+ +

Wykorzystując element {{HTMLElement("canvas")}}:

+ +
<canvas id="canvas" width="300" height="300"></canvas>
+
+ +

Kontekst 2d uzyskać można za pomocą kodu: 

+ +
var canvas = document.getElementById('canvas');
+var ctx = canvas.getContext('2d');
+console.log(ctx); // CanvasRenderingContext2D { ... }
+
+ +

Tworzy to kontekst renderowania 2D, po którym można rysować.

+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', "scripting.html#dom-canvas-getcontext", "HTMLCanvasElement.getContext")}}{{Spec2('HTML WHATWG')}}Brak zmian od ostatniego snapshota, {{SpecName('HTML5 W3C')}}
{{SpecName('HTML5.1', "scripting-1.html#dom-canvas-getcontext", "HTMLCanvasElement.getContext")}}{{Spec2('HTML5.1')}}
{{SpecName('HTML5 W3C', "scripting-1.html#dom-canvas-getcontext", "HTMLCanvasElement.getContext")}}{{Spec2('HTML5 W3C')}}Snapshot {{SpecName('HTML WHATWG')}} zawiera początkową definicje.
+ +

Zgodność przeglądarek

+ + + +

{{Compat("api.HTMLCanvasElement.getContext")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/api/htmlcanvaselement/height/index.html b/files/pl/web/api/htmlcanvaselement/height/index.html new file mode 100644 index 0000000000..0ff266ff84 --- /dev/null +++ b/files/pl/web/api/htmlcanvaselement/height/index.html @@ -0,0 +1,79 @@ +--- +title: HTMLCanvasElement.height +slug: Web/API/HTMLCanvasElement/height +translation_of: Web/API/HTMLCanvasElement/height +--- +
+
+
{{APIRef("Canvas API")}}
+ +
 
+ +
Własność HTMLCanvasElement.height wyrażana jest w dodatniej liczbie całkowitej odpowiada za atrybut height elemetu HTML <canvas> i jest interpretowany w pikselach CSS. Jeśli atrybut nie został określony, lub została przypisana do niego nieprawidłowa wartość, np. negatywna, zostanie użyta domyślna wartość 150.
+ +
 
+ +
To jedna z dwóch własności kontrolujących wielkość {{HTMLElement("canvas")}}, druga z nich to {{domxref("HTMLCanvasElement.width")}}.
+
+
+ +

Składnia

+ +
var pxl = canvas.height;
+canvas.height = pxl;
+
+ +

Przykłady

+ +

Biorąc pod uwagę element {{HTMLElement("canvas")}}:

+ +
<canvas id="canvas" width="300" height="300"></canvas>
+
+ +

Można sprawdzić jego wysokość za pomocą kodu:

+ +
var canvas = document.getElementById('canvas');
+console.log(canvas.height); // 300
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', "scripting.html#attr-canvas-height", "HTMLCanvasElement.height")}}{{Spec2('HTML WHATWG')}} +

Brak zmian od ostatniego snapshota, {{SpecName('HTML5 W3C')}}

+
{{SpecName('HTML5.1', "scripting-1.html#attr-canvas-height", "HTMLCanvasElement.height")}}{{Spec2('HTML5.1')}} 
{{SpecName('HTML5 W3C', "scripting-1.html#attr-canvas-height", "HTMLCanvasElement.height")}}{{Spec2('HTML5 W3C')}}Snapshot {{SpecName('HTML WHATWG')}} zawierający początkową definicje.
+ +

Zgodność przeglądarek

+ + + +

{{Compat("api.HTMLCanvasElement.height")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/api/htmlcanvaselement/index.html b/files/pl/web/api/htmlcanvaselement/index.html new file mode 100644 index 0000000000..21deee3bf0 --- /dev/null +++ b/files/pl/web/api/htmlcanvaselement/index.html @@ -0,0 +1,97 @@ +--- +title: HTMLCanvasElement +slug: Web/API/HTMLCanvasElement +translation_of: Web/API/HTMLCanvasElement +--- +
+
{{APIRef("Canvas API")}}
+
+ +

Interfejs HTMLCanvasElement zapewnia własności i metody pozwalające na manipulację wygladem i prezentacją elementów canvas. Dodatkowo HTMLCanvasElement dziedziczy własności i metody interfejsu HTMLElement.

+ +

{{InheritanceDiagram(600, 120)}}

+ +

Własności

+ +

Własności dziedziczone są od rodzica, {{domxref("HTMLElement")}}.

+ +
+
{{domxref("HTMLCanvasElement.height")}}
+
Wyrażany w dodatniej liczbie całkowitej odpowiada za atrybut {{htmlattrxref("height", "canvas")}} elemetu HTML {{HTMLElement("canvas")}} i jest interpretowany w pikselach CSS. Jeśli atrybut nie został określony, lub została przypisana do niego nieprawidłowa wartość, np. negatywna, zostanie użyta domyślna wartość 150.
+
{{domxref("HTMLCanvasElement.width")}}
+
Wyrażany w dodatniej liczbie całkowitej odpowiada za atrybut {{htmlattrxref("width", "canvas")}} elemetu HTML {{HTMLElement("canvas")}} i jest interpretowany w pikselach CSS. Jeśli atrybut nie został określony, lub została przypisana do niego nieprawidłowa wartość, np. negatywna, zostanie użyta domyślna wartość 300.
+
+ +

Metody

+ +

Metody dziedziczone są od rodzica, {{domxref("HTMLElement")}}.

+ +
+
{{domxref("HTMLCanvasElement.captureStream()")}} {{experimental_inline}}
+
Zwraca {{domxref("CanvasCaptureMediaStream")}}, który jest wideo w czasie rzeczywistym z powierzchni elementu {{HTMLElement("canvas")}}.
+
{{domxref("HTMLCanvasElement.getContext()")}}
+
Zwraca pole robocze elementu {{HTMLElement("canvas")}}, lub null jeśli kontekst nie jest wspierany. Pole robocze pozwala na rysowanie na {{HTMLElement("canvas")}}. Wywołanie getContext z atrybutem "2d" zwraca obiekt {{domxref("CanvasRenderingContext2D")}}, natomiast wywołanie z "webgl" (lub "experimental-webgl") zwróci obiekt {{domxref("WebGLRenderingContext")}}. Ten kontekst jest dostepny tylko w przeglądarkach obsługujących WebGL.
+
+ +
+
{{domxref("HTMLCanvasElement.toDataURL()")}}
+
Zwraca data-URL reprezentujacy obraz w formacie określonym przez parametr type (domyślnie png). Zwracany obraz jest w rozdzielczości 96dpi.
+
{{domxref("HTMLCanvasElement.toBlob()")}}
+
Tworzy obiekt {{domxref("Blob")}} reprezentujący obraz zawierający się w {{HTMLElement("canvas")}}; ten plik może być buforowany z dysku lub przechowywany w pamięci wedle uznania user agent.
+
{{domxref("HTMLCanvasElement.transferControlToOffscreen()")}} {{experimental_inline}}
+
Przenosi kontrolę do obiektu {{domxref ("OffscreenCanvas")}}, w głównym wątku lub w module roboczym.
+
{{domxref("HTMLCanvasElement.mozGetAsFile()")}} {{non-standard_inline}} {{deprecated_inline}}
+
Zwraca obiekt {{domxref("File")}} reprezentujący obraz zawarty w {{HTMLElement("canvas")}}; plik oparty jest na pamięci, posiada określoną nazwę. Jeśli typ nie został okreslony, domyslnie jest to image/png.
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Media Capture DOM Elements', '#html-media-element-media-capture-extensions', 'HTMLCanvasElement')}}{{Spec2('Media Capture DOM Elements')}} +

Dodano metodę captureStream().

+
{{SpecName('HTML WHATWG', "#the-canvas-element", "HTMLCanvasElement")}}{{Spec2('HTML WHATWG')}} +

Metoda getContext() zwraca teraz {{domxref("RenderingContext")}} zamiast obiektu nieprzeźroczystego

+ +

Dodano metodę transferControlToOffscreen()

+
{{SpecName('HTML5.1', "scripting-1.html#the-canvas-element", "HTMLCanvasElement")}}{{Spec2('HTML5.1')}} 
{{SpecName('HTML5 W3C', "scripting-1.html#the-canvas-element", "HTMLCanvasElement")}}{{Spec2('HTML5 W3C')}}Definicja początkowa.
+ +

Zgodność przegladarek

+ +
+ + +

{{Compat("api.HTMLCanvasElement")}}

+
+ +

Zobacz też

+ + diff --git a/files/pl/web/api/htmlcanvaselement/width/index.html b/files/pl/web/api/htmlcanvaselement/width/index.html new file mode 100644 index 0000000000..3be0eabbf8 --- /dev/null +++ b/files/pl/web/api/htmlcanvaselement/width/index.html @@ -0,0 +1,79 @@ +--- +title: HTMLCanvasElement.width +slug: Web/API/HTMLCanvasElement/width +translation_of: Web/API/HTMLCanvasElement/width +--- +
+
+
{{APIRef("Canvas API")}}
+ +
 
+ +
+

Własność HTMLCanvasElement.width wyrażana jest w dodatniej liczbie całkowitej odpowiada za atrybut {{htmlattrxref("width", "canvas")}} elemetu HTML {{HTMLElement("canvas")}} i jest interpretowana w pikselach CSS. Jeśli atrybut nie został określony, lub została przypisana do niego nieprawidłowa wartość, np. negatywna, zostanie użyta domyślna wartość 300.

+ +

To jedna z dwóch własności kontrolujących wielkość {{HTMLElement("canvas")}}, druga z nich to {{domxref("HTMLCanvasElement.height")}}.

+
+
+
+ +

Składnia

+ +
var pxl = canvas.width;
+canvas.width = pxl;
+
+ +

Przykłady

+ +

Wykorzystując element {{HTMLElement("canvas")}}:

+ +
<canvas id="canvas" width="300" height="300"></canvas>
+
+ +

You can get the width of the canvas with the following code:

+ +

Informacje o szerokości {{HTMLElement("canvas")}} można uzyskać za pomocą kodu:

+ +
var canvas = document.getElementById('canvas');
+console.log(canvas.width); // 300
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', "scripting.html#attr-canvas-width", "HTMLCanvasElement.width")}}{{Spec2('HTML WHATWG')}}Brak zmian od ostatniego snapshota, {{SpecName('HTML5 W3C')}}
{{SpecName('HTML5.1', "scripting-1.html#attr-canvas-width", "HTMLCanvasElement.width")}}{{Spec2('HTML5.1')}} 
{{SpecName('HTML5 W3C', "scripting-1.html#attr-canvas-width", "HTMLCanvasElement.width")}}{{Spec2('HTML5 W3C')}}Snapshot {{SpecName('HTML WHATWG')}} zawierający początkową definicje.
+ +

Zgodność przegladarek

+ + + +

{{Compat("api.HTMLCanvasElement.width")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/api/htmlelement/dataset/index.html b/files/pl/web/api/htmlelement/dataset/index.html new file mode 100644 index 0000000000..fac7ec119f --- /dev/null +++ b/files/pl/web/api/htmlelement/dataset/index.html @@ -0,0 +1,134 @@ +--- +title: HTMLElement.dataset +slug: Web/API/HTMLElement/dataset +translation_of: Web/API/HTMLOrForeignElement/dataset +--- +
{{ APIRef("HTML DOM") }}
+ +

Właściwość dataset interfejsu {{domxref("HTMLElement")}} pozwala na odczyt/zapis niestandardowcyh atrybutów (data-*) elementu. Dostęp ten jest możliwy w HTMLu jak i w DOMie.  It is a map of DOMString, one entry for each custom data attribute. Zauważ że właściwość dataset można odczytać, ale nie zmieniać bezpośrednio. Zamiast tego, wszystkie zapisy muszą być wykonywane na pojedynczych polach dataset, które odpowiadają atrybutom danych. Note also that an HTML data-attribute and its corresponding DOM dataset.property do not share the same name, but they are always similar:

+ + + +

In addition to the information below, you'll find a how-to guide for using HTML data attributes in our article Using data attributes.

+ +

Zmiana nazw

+ +

dash-style to camelCase: A custom data attribute name is transformed to a key for the {{ domxref("DOMStringMap") }} entry with the following rules

+ + + +

camelCase to dash-style: The opposite transformation, that maps a key to an attribute name, uses the following rules:

+ + + +

The restriction in the rules above ensures that the two transformations are the inverse one of the other.

+ +

For example, the attribute named data-abc-def corresponds to the key abcDef.

+ + + +

Dostęp do wartości

+ + + + + +

Ustawianie wartości

+ + + +

Składnia

+ + + +

Przykłady

+ +
<div id="user" data-id="1234567890" data-user="johndoe" data-date-of-birth>John Doe</div>
+ +
const el = document.querySelector('#user');
+
+// el.id == 'user'
+// el.dataset.id === '1234567890'
+// el.dataset.user === 'johndoe'
+// el.dataset.dateOfBirth === ''
+
+// set the data attribute
+el.dataset.dateOfBirth = '1960-10-03';
+// Result: el.dataset.dateOfBirth === 1960-10-03
+
+delete el.dataset.dateOfBirth;
+// Result: el.dataset.dateOfBirth === undefined
+
+// 'someDataAttr' in el.dataset === false
+el.dataset.someDataAttr = 'mydata';
+// Result: 'someDataAttr' in el.dataset === true
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', "dom.html#dom-dataset", "HTMLElement.dataset")}}{{Spec2('HTML WHATWG')}}No change from latest snapshot, {{SpecName('HTML5.1')}}
{{SpecName('HTML5.1', "dom.html#dom-dataset", "HTMLElement.dataset")}}{{Spec2('HTML5.1')}}Snapshot of {{SpecName('HTML WHATWG')}}, no change from {{SpecName('HTML5 W3C')}}
{{SpecName('HTML5 W3C', "dom.html#dom-dataset", "HTMLElement.dataset")}}{{Spec2('HTML5 W3C')}}Snapshot of  {{SpecName('HTML WHATWG')}}, initial definition.
+ +

Browser compatibility

+ + + +

{{Compat("api.HTMLElement.dataset")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/api/htmlelement/index.html b/files/pl/web/api/htmlelement/index.html new file mode 100644 index 0000000000..d27d11fd7b --- /dev/null +++ b/files/pl/web/api/htmlelement/index.html @@ -0,0 +1,409 @@ +--- +title: HTMLElement +slug: Web/API/HTMLElement +tags: + - API + - HTML DOM + - Interface + - NeedsMobileBrowserCompatibility + - NeedsNewLayout + - NeedsTranslation + - Reference + - TopicStub +translation_of: Web/API/HTMLElement +--- +
+
{{ APIRef("HTML DOM") }}
+
+ +
 
+ +

The HTMLElement interface represents any HTML element. Some elements directly implement this interface, others implement it via an interface that inherits it.

+ +

Properties

+ +

Inherits properties from its parent, {{domxref("Element")}}, and implements those from {{domxref("GlobalEventHandlers")}} and {{domxref("TouchEventHandlers")}}.

+ +
+
{{domxref("HTMLElement.accessKey")}}
+
Is a {{domxref("DOMString")}} representing the access key assigned to the element.
+
{{domxref("HTMLElement.accessKeyLabel")}} {{readonlyInline}}
+
Returns a {{domxref("DOMString")}} containing the element's assigned access key.
+
{{domxref("HTMLElement.contentEditable")}}
+
Is a {{domxref("DOMString")}}, where a value of "true" means the element is editable and a value of "false" means it isn't.
+
{{domxref("HTMLElement.isContentEditable")}} {{readonlyInline}}
+
Returns a {{domxref("Boolean")}} that indicates whether or not the content of the element can be edited.
+
{{domxref("HTMLElement.contextMenu")}}
+
Is an {{domxref("HTMLMenuElement")}} representing the contextual menu associated with the element. It may be null
+
{{domxref("HTMLElement.dataset")}} {{readonlyInline}}
+
Returns a {{domxref("DOMStringMap")}} that allows access to read and write the element custom data attributes (data-*) .
+
{{domxref("HTMLElement.dir")}}
+
Is a {{domxref("DOMString")}}, reflecting the dir global attribute, representing the directionality of the element. Possible values are "ltr", "rtl", and "auto".
+
{{domxref("HTMLElement.draggable")}}
+
Is a {{jsxref("Boolean")}} indicating if the element can be dragged.
+
{{domxref("HTMLElement.dropzone")}} {{readonlyInline}}
+
Returns a {{domxref("DOMSettableTokenList")}} reflecting the dropzone global attribute and describing the behavior of the element regarding a drop operation.
+
{{domxref("HTMLElement.hidden")}}
+
Is a {{jsxref("Boolean")}} indicating if the element is hidden or not.
+
{{domxref("HTMLElement.itemScope")}} {{experimental_inline}}
+
Is a {{jsxref("Boolean")}}…
+
{{domxref("HTMLElement.itemType")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("DOMSettableTokenList")}}…
+
{{domxref("HTMLElement.itemId")}} {{experimental_inline}}
+
Is a {{domxref("DOMString")}}…
+
{{domxref("HTMLElement.itemRef")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("DOMSettableTokenList")}}…
+
{{domxref("HTMLElement.itemProp")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("DOMSettableTokenList")}}…
+
{{domxref("HTMLElement.itemValue")}} {{experimental_inline}}
+
Returns an {{jsxref("Object")}}…
+
{{domxref("HTMLElement.lang")}}
+
Is a {{domxref("DOMString")}} representing the language of an element's attributes, text, and element contents.
+
{{domxref("HTMLElement.offsetHeight")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a double containing the height of an element, relative to the layout.
+
{{domxref("HTMLElement.offsetLeft")}}{{readonlyInline}}{{experimental_inline}}
+
Returns a double, the distance from this element's left border to its offsetParent's left border.
+
{{domxref("HTMLElement.offsetParent")}}{{readonlyInline}}{{experimental_inline}}
+
Returns an {{domxref("Element")}} that is the element from which all offset calculations are currently computed.
+
{{domxref("HTMLElement.offsetTop")}}{{readonlyInline}}{{experimental_inline}}
+
Returns a double, the distance from this element's top border to its offsetParent's top border.
+
{{domxref("HTMLElement.offsetWidth")}}{{readonlyInline}}{{experimental_inline}}
+
Returns a double containing the width of an element, relative to the layout.
+
{{domxref("HTMLElement.properties")}} {{readonlyInline}}{{experimental_inline}}
+
Returns an {{domxref("HTMLPropertiesCollection")}}…
+
{{domxref("HTMLElement.spellcheck")}}{{ gecko_minversion_inline("1.9")}}
+
Is a {{jsxref("Boolean")}} that controls spell-checking. It is present on all HTML elements, though it hasn't an effect on all of them.
+
{{domxref("HTMLElement.style")}}
+
Is {{domxref("CSSStyleDeclaration")}}, an object representing the declarations of an element's style attributes.
+
{{domxref("HTMLElement.tabIndex")}}
+
Is a long representing the position of the element in the tabbing order.
+
{{domxref("HTMLElement.title")}}
+
Is a {{domxref("DOMString")}} containing the text that appears in a popup box when mouse is over the element.
+
{{domxref("HTMLElement.translate")}} {{experimental_inline}}
+
Is a {{jsxref("Boolean")}}
+
+ +

Event handlers

+ +

Most events properties, of the form onXYZ, are defined on the {{domxref("GlobalEventHandlers")}} or {{domxref("TouchEventHandlers")}}, implemented by HTMLElement. A few more are specific to HTMLElement.

+ +
+
{{ domxref("HTMLElement.oncopy") }}  {{ non-standard_inline() }}
+
Returns the event handling code for the copy event ({{bug("280959")}}).
+
{{ domxref("HTMLElement.oncut") }}  {{ non-standard_inline() }}
+
Returns the event handling code for the cut event ({{bug("280959")}}).
+
{{ domxref("HTMLElement.onpaste") }} {{ non-standard_inline() }}
+
Returns the event handling code for the paste event ({{bug("280959")}}).
+
{{domxref("TouchEventHandlers.ontouchstart")}} {{non-standard_inline}}
+
Returns the event handling code for the {{event("touchstart")}} event.
+
{{domxref("TouchEventHandlers.ontouchend")}} {{non-standard_inline}}
+
Returns the event handling code for the {{event("touchend")}} event.
+
{{domxref("TouchEventHandlers.ontouchmove")}} {{non-standard_inline}}
+
Returns the event handling code for the {{event("touchmove")}} event.
+
{{domxref("TouchEventHandlers.ontouchenter")}} {{non-standard_inline}}
+
Returns the event handling code for the {{event("touchenter")}} event.
+
{{domxref("TouchEventHandlers.ontouchleave")}} {{non-standard_inline}}
+
Returns the event handling code for the {{event("touchleave")}} event.
+
{{domxref("TouchEventHandlers.ontouchcancel")}} {{non-standard_inline}}
+
Returns the event handling code for the {{event("touchcancel")}} event.
+
+ +

Methods

+ +

Inherits methods from its parent, {{domxref("Element")}}.

+ +
+
{{domxref("HTMLElement.blur()")}}
+
Removes keyboard focus from the currently focused element.
+
{{domxref("HTMLElement.click()")}}
+
Sends a mouse click event to the element.
+
{{domxref("HTMLElement.focus()")}}
+
Makes the element the current keyboard focus.
+
{{domxref("HTMLElement.forceSpellCheck()")}} {{experimental_inline}}
+
Makes the spell checker runs on the element.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSSOM View', '#extensions-to-the-htmlelement-interface', 'HTMLElement')}}{{Spec2('CSSOM View')}}Added the following properties: offsetParent, offsetTop, offsetLeft, offsetWidth, and offsetHeight.
{{SpecName('HTML WHATWG', 'elements.html#htmlelement', 'HTMLElement')}}{{Spec2('HTML WHATWG')}}Added the following properties: translate, itemScope, itemType, itemId, itemRef, itemProp, properties, and itemValue.
+ Added the following method: forceSpellcheck().
+ Moved the onXYZ attributes to the {{domxref("GlobalEventHandlers")}} interface and added an inheritance from it.
{{SpecName('HTML5 W3C', 'dom.html#htmlelement', 'HTMLElement')}}{{Spec2('HTML5 W3C')}}Added the following properties: dataset, hidden, tabindex, accessKey, accessKeyLabel, draggable, dropzone, contentEditable, isContentEditable, contextMenu, spellcheck, commandType, commandLabel, commandIcon, commandHidden, commandDisabled, commandChecked, style, and all the onXYZ properties.
+ Moved the id and className properties to the {{domxref("Element")}} interface.
{{SpecName('DOM2 HTML', 'html.html#ID-011100101', 'HTMLElement')}}{{Spec2('DOM2 HTML')}}No change from {{SpecName('DOM2 HTML')}}
{{SpecName('DOM1', 'level-one-html.html#ID-011100101', 'HTMLElement')}}{{Spec2('DOM1')}}Initial definition.
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureFirefox (Gecko)ChromeInternet ExplorerOperaSafari
Basic support{{CompatGeckoDesktop("1.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.accessKey", "accessKey")}}{{CompatGeckoDesktop("5.0")}}17.0{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}(535.10)
{{domxref("HTMLElement.accessKeyLabel", "accessKeyLabel")}}{{CompatGeckoDesktop("8.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatNo}}{{WebkitBug(72715)}}
{{domxref("HTMLElement.blur()", "blur()")}}{{CompatGeckoDesktop("5.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.click()", "click()")}}{{CompatGeckoDesktop("5.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}(535.24)
{{domxref("HTMLElement.dataset", "dataset")}}{{CompatGeckoDesktop("6.0")}}9.0{{CompatUnknown}}11.105.1
{{domxref("HTMLElement.focus()", "focus()")}}{{CompatGeckoDesktop("5.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.contentEditable", "contentEditable")}}{{CompatGeckoDesktop("1.9")}}{{CompatVersionUnknown}}5.59{{CompatVersionUnknown}}
{{domxref("HTMLElement.spellcheck", "spellcheck")}}{{CompatGeckoDesktop("1.8.1")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.style", "style")}}{{CompatVersionUnknown}} (returns a {{domxref("CSS2Properties")}}, rather than a {{domxref("CSSStyleDeclaration")}}){{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
{{domxref("HTMLElement.forceSpellCheck", "forceSpellCheck()")}} {{experimental_inline}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
{{domxref("HTMLElement.dataset", "dataset")}}{{CompatGeckoDesktop("6.0")}}8.01111.106
{{domxref("HTMLElement.draggable", "draggable")}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}12.0{{CompatUnknown}}
{{domxref("HTMLElement.dropzone", "dropzone")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}12.0{{CompatNo}}
{{domxref("HTMLElement.offsetLeft", "offsetLeft")}}, {{domxref("HTMLElement.offsetTop", "offsetTop")}}, {{domxref("HTMLElement.offsetParent", "offsetParent")}}, {{domxref("HTMLElement.offsetHeight", "offsetHeight")}} and {{domxref("HTMLElement.offsetWidth", "offsetWidth")}} {{experimental_inline}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.translate", "translate")}} {{experimental_inline}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
{{domxref("HTMLElement.itemScope", "itemScope")}}, {{domxref("HTMLElement.itemType", "itemType")}}, {{domxref("HTMLElement.itemRef", "itemRef")}}, {{domxref("HTMLElement.itemId", "itemId")}}, {{domxref("HTMLElement.itemProp", "itemProp")}}, and {{domxref("HTMLElement.itemValue", "itemValue")}} {{experimental_inline}}{{CompatGeckoDesktop("6.0")}}{{CompatNo}}{{CompatNo}}11.60
+ (Removed in Opera 15)
{{CompatNo}}
{{domxref("HTMLElement.properties", "properties")}} {{experimental_inline}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.ontouchstart")}}, {{domxref("HTMLElement.ontouchend")}}, {{domxref("HTMLElement.ontouchmove")}}, {{domxref("HTMLElement.ontouchenter")}}, {{domxref("HTMLElement.ontouchleave")}}, and {{domxref("HTMLElement.ontouchcancel")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatUnknown}}{{CompatVersionUnknown}}
{{domxref("HTMLElement.oncopy")}}, {{domxref("HTMLElement.oncut")}}, and {{domxref("HTMLElement.onpaste")}} {{Non-standard_inline}}{{CompatGeckoDesktop("1.9")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureFirefox Mobile (Gecko)AndroidIE MobileOpera MobileSafari Mobile
Basic support +

{{CompatGeckoMobile("1.0")}}

+
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
{{domxref("HTMLElement.accessKey", "accessKey")}}{{CompatGeckoMobile("5.0")}}
{{domxref("HTMLElement.accessKeyLabel", "accessKeyLabel")}}{{CompatGeckoMobile("8.0")}}
{{domxref("HTMLElement.blur()", "blur()")}}{{CompatGeckoMobile("5.0")}}
{{domxref("HTMLElement.click()", "click()")}}{{CompatGeckoMobile("5.0")}}
{{domxref("HTMLElement.dataset", "dataset")}}{{CompatGeckoMobile("6.0")}}
{{domxref("HTMLElement.focus()", "focus()")}}{{CompatGeckoMobile("5.0")}}
{{domxref("HTMLElement.oncopy")}}, {{domxref("HTMLElement.oncut")}}, and {{domxref("HTMLElement.onpaste")}} {{Non-standard_inline}}{{CompatGeckoMobile("1.9")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/htmlformelement/acceptcharset/index.html b/files/pl/web/api/htmlformelement/acceptcharset/index.html new file mode 100644 index 0000000000..c71b52269f --- /dev/null +++ b/files/pl/web/api/htmlformelement/acceptcharset/index.html @@ -0,0 +1,33 @@ +--- +title: HTMLFormElement.acceptCharset +slug: Web/API/HTMLFormElement/acceptCharset +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/acceptCharset +--- +

 

+ +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

acceptCharset Zwraca listę obsługiwanych przez formularz zestawów znaków dla danego elementu FORM. Lista ta będzie oddzielona przecinkiem lub spacją.

+ +

Składnia

+ +
string = form.acceptCharset;
+
+ +

Przykład

+ +
inputs = document.forms["myform"].acceptCharset
+
+ +

Specyfikacja

+ +

DOM Level 2 HTML: acceptCharset

+ +

{{ languages( { "en": "en/DOM/form.acceptCharset" } ) }}

diff --git a/files/pl/web/api/htmlformelement/action/index.html b/files/pl/web/api/htmlformelement/action/index.html new file mode 100644 index 0000000000..ba03220cd0 --- /dev/null +++ b/files/pl/web/api/htmlformelement/action/index.html @@ -0,0 +1,36 @@ +--- +title: HTMLFormElement.action +slug: Web/API/HTMLFormElement/action +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/action +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

action pobiera/ustawia akcję dla elementu FORM.

+ +

Składnia

+ +
string = form.action
+form.action =
+string
+
+ +

Przykład

+ +

form.action = "/cgi-bin/publish";

+ +

Uwagi

+ +

Akcja w formularzu jest programem, który jest wykonywany na serwerze kiedy formularz zostanie wysłany. Ta własność może być odzyskiwana lub ustawiana.

+ +

Specyfikacja

+ +

DOM Level 2 HTML: action

+ +

{{ languages( { "ja": "ja/DOM/form.action", "en": "en/DOM/form.action" } ) }}

diff --git a/files/pl/web/api/htmlformelement/elements/index.html b/files/pl/web/api/htmlformelement/elements/index.html new file mode 100644 index 0000000000..929f7c7640 --- /dev/null +++ b/files/pl/web/api/htmlformelement/elements/index.html @@ -0,0 +1,36 @@ +--- +title: HTMLFormElement.elements +slug: Web/API/HTMLFormElement/elements +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/elements +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

elements zwraca kolekcję HTMLCollection wszystkich kontrolek zawartych w elemencie FORM.

+ +

Do konkretnego elementu możesz odnosić się poprzez indeks lub za pomocą nazwy (name) bądź id tego elementu.

+ +

Składnia

+ +
listaWęzłów =
+HTMLFormElement.elements
+
+ +

Przykłady

+ +
var inputs = document.getElementById("form1").elements;
+var inputByIndex = inputs[2];
+var inputByName = inputs["login"];
+
+ +

Specyfikacja

+ +

Specyfikacja W3C DOM 2 HTML: elements

+ +

{{ languages( { "en": "en/DOM/form.elements", "ja": "ja/DOM/form.elements" } ) }}

diff --git a/files/pl/web/api/htmlformelement/encoding/index.html b/files/pl/web/api/htmlformelement/encoding/index.html new file mode 100644 index 0000000000..aabd43e66f --- /dev/null +++ b/files/pl/web/api/htmlformelement/encoding/index.html @@ -0,0 +1,15 @@ +--- +title: HTMLFormElement.encoding +slug: Web/API/HTMLFormElement/encoding +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/encoding +--- +

 

+ +

{{ ApiRef() }} encoding jest alternatywną nazwą dla elementu enctype w obiekcie DOM FormElement.

+ +

{{ languages( { "en": "en/DOM/form.encoding" } ) }}

diff --git a/files/pl/web/api/htmlformelement/enctype/index.html b/files/pl/web/api/htmlformelement/enctype/index.html new file mode 100644 index 0000000000..2a90fe13a9 --- /dev/null +++ b/files/pl/web/api/htmlformelement/enctype/index.html @@ -0,0 +1,39 @@ +--- +title: HTMLFormElement.enctype +slug: Web/API/HTMLFormElement/enctype +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/enctype +--- +

 

+ +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

enctype pobiera/ustawia typ zawartości elementu FORM.

+ +

Składnia

+ +
string = form.enctype
+form.enctype =
+string
+
+ +

Przykład

+ +
form.enctype = "application/x-www-form-urlencoded";
+
+ +

Uwagi

+ +

Typem kodowania jest ogólnie "application/x-www-form-urlencoded".

+ +

Specyfikacja

+ +

DOM Level 2 HTML: enctype

+ +

{{ languages( { "en": "en/DOM/form.enctype" } ) }}

diff --git a/files/pl/web/api/htmlformelement/index.html b/files/pl/web/api/htmlformelement/index.html new file mode 100644 index 0000000000..3c0d1ade95 --- /dev/null +++ b/files/pl/web/api/htmlformelement/index.html @@ -0,0 +1,143 @@ +--- +title: HTMLFormElement +slug: Web/API/HTMLFormElement +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement +--- +

{{ ApiRef() }}

+ +

Interfejs elementu HTML FORM

+ +

Elementy FORM mają wszystkie właściwości i metody innych elementów HTML, tak jak opisano w rozdziale o elementach. Jednocześnie mają one bardziej wyspecjalizowany interfejs HTMLFormElement.

+ +

Interfejs ten dostarcza metod do tworzenia i modyfikacji elementów FORM przy użyciu DOM. Poniższy przykład przedstawia, jak utworzyć nowy formularz, zmienić jego atrybuty i wysłać go.

+ +
// Utwórz formularz
+var f = document.createElement("form");
+
+// Dodaj do zawartości dokumentu
+document.body.appendChild(f);
+
+// Ustaw atrybuty oznaczające akcję i metodę wysyłania
+f.action = "/cgi-bin/some.cgi";
+f.method = "POST"
+
+// Wyślij formularz
+f.submit();
+
+ +

Z kolei poniższy dokument HTML przedstawia jak wydobyć informacje z formularza i nadać mu pewne atrybuty.

+ +
<title>Przykład formularza</title>
+<script type="text/javascript">
+  function getFormInfo() {
+    var info;
+
+    // Znajdź referencję do formularza poprzez kolekcję forms
+    var f = document.forms["formA"];
+    info = "f.elements: " + f.elements + "\n"
+         + "f.length: " + f.length + "\n"
+         + "f.name: " + f.elements + "\n"
+         + "f.acceptCharset: " + f.acceptCharset + "\n"
+         + "f.action: " + f.action + "\n"
+         + "f.enctype: " + f.enctype + "\n"
+         + "f.encoding: " + f.encoding + "\n"
+         + "f.method: " + f.method + "\n"
+         + "f.target: " + f.target;
+    document.forms["formA"].elements['tex'].value = info;
+  }
+
+  // Referencja do formularza jest przekazywana z atrybutu
+  // onclick przycisku za pomocą 'this.form'
+  function setFormInfo(f) {
+    f.method = "GET";
+    f.action = "/cgi-bin/evil_executable.cgi";
+    f.name   = "totally_new";
+  }
+</script>
+
+<h1>Przykład formularza</h1>
+
+<form name="formA" id="formA"
+ action="/cgi-bin/test" method="POST">
+ <p>Kliknij "info" by zobaczyć informację o formularzu,
+ "zmień" by zmienić ustawienia, a następnie ponownie "info"
+ by zobaczyć efekt zmian.</p>
+ <p>
+  <input type="button" value="info"
+   onclick="getFormInfo();">
+  <input type="button" value="zmień"
+   onclick="setFormInfo(this.form);">
+  <input type="reset" value="zresetuj">
+  <br>
+  <textarea id="tex" style="height:15em; width:20em">
+ </p>
+</form>
+
+ +

Własności

+ +
+
form.elements
+
Zwraca kolekcję wszystkich kontrolek zawartych w elemencie FORM.
+
+ +
+
form.length
+
Zwraca ilość kontrolek w elemencie FORM.
+
+ +
+
form.name
+
Zwraca ciąg z nazwą bieżącego elementu FORM.
+
+ +
+
form.acceptCharset
+
Zwraca listę obsługiwanych przez formularz zestawów znaków.
+
+ +
+
form.action
+
Pobiera/ustawia akcję dla elementu FORM.
+
+ +
+
form.enctype
+
Pobiera/ustawia typ zawartości wysyłanej przez formularz.
+
+ +
+
form.encoding
+
Pobiera/ustawia typ zawartości wysyłanej przez formularz.
+
+ +
+
form.method
+
Pobiera/ustawia metodę HTTP używaną do wysłania formularza.
+
+ +
+
form.target
+
Pobiera/ustawia okno docelowe akcji formularza (np. ramka, w której zostanie wyrenderowana zwrócona strona).
+
+ +

Metody

+ +
+
form.submit
+
Wysyła formularz
+
+ +
+
form.reset
+
Przywraca formularz do jego stanu początkowego
+
+ +
 
+ +

{{ languages( { "en": "en/DOM/form", "es": "es/DOM/form", "fr": "fr/DOM/form", "ja": "ja/DOM/form" } ) }}

diff --git a/files/pl/web/api/htmlformelement/length/index.html b/files/pl/web/api/htmlformelement/length/index.html new file mode 100644 index 0000000000..36c5c63349 --- /dev/null +++ b/files/pl/web/api/htmlformelement/length/index.html @@ -0,0 +1,33 @@ +--- +title: HTMLFormElement.length +slug: Web/API/HTMLFormElement/length +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/length +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

length zwraca liczbę kontrolek w elemencie FORM.

+ +

Składnia

+ +
integer = form.length
+
+ +

Przykład

+ +
if (document.getElementById("form1").length > 1) {
+  // więcej niż jedena kontrolka formularza jest tu
+}
+
+ +

Specyfikacja

+ +

DOM Level 2: length

+ +

{{ languages( { "ja": "ja/DOM/form.length", "en": "en/DOM/form.length" } ) }}

diff --git a/files/pl/web/api/htmlformelement/method/index.html b/files/pl/web/api/htmlformelement/method/index.html new file mode 100644 index 0000000000..d1829b02c6 --- /dev/null +++ b/files/pl/web/api/htmlformelement/method/index.html @@ -0,0 +1,35 @@ +--- +title: HTMLFormElement.method +slug: Web/API/HTMLFormElement/method +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/method +--- +

 

+ +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

method pobiera/ustawia metodę HTTP używaną do wysłania formularza.

+ +

Składnia

+ +
string = form.method
+form.method =
+string
+
+ +

Przykład

+ +
document.forms["myform"].method = "post";
+
+ +

Specyfikacja

+ +

DOM Level 2 HTML: method

+ +

{{ languages( { "ja": "ja/DOM/form.method", "en": "en/DOM/form.method" } ) }}

diff --git a/files/pl/web/api/htmlformelement/name/index.html b/files/pl/web/api/htmlformelement/name/index.html new file mode 100644 index 0000000000..673ab8f847 --- /dev/null +++ b/files/pl/web/api/htmlformelement/name/index.html @@ -0,0 +1,44 @@ +--- +title: HTMLFormElement.name +slug: Web/API/HTMLFormElement/name +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/name +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

name zwraca nazwą bieżącego elementu FORM jako łańcuch znaków.

+ +

Składnia

+ +
string = form.name
+form.name =
+string
+
+ +

Przykład

+ +
form1 = document.getElementById("form1").name;
+if (form1 != document.form.form1) {
+   // przeglądarka nie obsługuje tego odniesienia do formularza
+}
+
+ +

Uwagi

+ +

Uwaga, ta własność jest do odczytu/zapisu, która znaczy, że możemy zmienić lub ustawić nazwę formularza.

+ +

Jeśli Twój FORM zawiera element nazwany "nazwany_element", następnie ten element przesłania własność form.name, więc nie możesz uzyskać do niego dostępu.

+ +

Internet Explorer (IE) nie pozwala nazwie tworzonego elementu używać createElement() będącej ustawieniem lub modyfikacją używającą własność name property.

+ +

Specyfikacja

+ +

DOM Level 2 HTML: name

+ +

{{ languages( { "en": "en/DOM/form.name" } ) }}

diff --git a/files/pl/web/api/htmlformelement/reset/index.html b/files/pl/web/api/htmlformelement/reset/index.html new file mode 100644 index 0000000000..919b982cae --- /dev/null +++ b/files/pl/web/api/htmlformelement/reset/index.html @@ -0,0 +1,37 @@ +--- +title: HTMLFormElement.reset +slug: Web/API/HTMLFormElement/reset +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/reset +--- +

{{ APIRef }}

+ +

Podsumowanie

+ +

reset przywraca formularz do jego stanu początkowego.

+ +

Składnia

+ +
HTMLFormElement.reset()
+
+ +

Przykład

+ +
document.forms["myform"].reset();
+
+ +

Uwagi

+ +

Metoda ta robi to samo, co kliknięcie przycisku Wyczyść w formularzu.

+ +

Jeśli kontrolka formularza (jak np. przycisk Wyczyść) posiada nazwę lub id to przycisk Wyczyść będzie krył czyszczenie formularza.

+ +

Specyfikacja

+ +

DOM Level 2 HTML: reset

+ +

{{ languages( { "en": "en/DOM/form.reset" } ) }}

diff --git a/files/pl/web/api/htmlformelement/submit/index.html b/files/pl/web/api/htmlformelement/submit/index.html new file mode 100644 index 0000000000..078d02d4f5 --- /dev/null +++ b/files/pl/web/api/htmlformelement/submit/index.html @@ -0,0 +1,37 @@ +--- +title: HTMLFormElement.submit +slug: Web/API/HTMLFormElement/submit +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/submit +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

submit wysyła formularz.

+ +

Składnia

+ +
HTMLFormElement.submit()
+
+ +

Przykład

+ +
document.forms["myform"].submit()
+
+ +

Uwagi

+ +

Ta metoda działa tak samo jak naciśnięcie przycisku 'Wyślij' w formularzu.

+ +

Jeśli kontrolka formularza (taka jak przycisk Wyślij) posiada nazwę lub id zmiennej submit to będzie ona maskowała metodę submit formularza.

+ +

Specyfikacja

+ +

DOM Level 2 HTML: submit

+ +

{{ languages( { "ja": "ja/DOM/form.submit", "en": "en/DOM/form.submit" } ) }}

diff --git a/files/pl/web/api/htmlformelement/target/index.html b/files/pl/web/api/htmlformelement/target/index.html new file mode 100644 index 0000000000..f52fbe974b --- /dev/null +++ b/files/pl/web/api/htmlformelement/target/index.html @@ -0,0 +1,35 @@ +--- +title: HTMLFormElement.target +slug: Web/API/HTMLFormElement/target +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLFormElement/target +--- +

 

+ +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

target pobiera/ustawia element docelowy działania (np., w której ramce ma być wczytana zawartość strony).

+ +

Składnia

+ +
string = form.target
+form.target =
+string
+
+ +

Przykład

+ +
myForm.target = document.frames[1].name;
+
+ +

Specyfikacja

+ +

DOM Level 2 HTML: target

+ +

{{ languages( { "en": "en/DOM/form.target" } ) }}

diff --git a/files/pl/web/api/htmliframeelement/index.html b/files/pl/web/api/htmliframeelement/index.html new file mode 100644 index 0000000000..eaf5bb4fcb --- /dev/null +++ b/files/pl/web/api/htmliframeelement/index.html @@ -0,0 +1,288 @@ +--- +title: HTMLIFrameElement +slug: Web/API/HTMLIFrameElement +tags: + - API + - HTML DOM + - Interfejs + - Potrzebny przegląd + - Referencja +translation_of: Web/API/HTMLIFrameElement +--- +
{{APIRef("HTML DOM")}}
+ +

Interfejs HTMLIFrameElement dostarcza specjalne właściwości i metody (oprócz tych dziedziczonych po {{domxref("HTMLElement")}}) do manipulowania rozkładem i prezentacją wewnętrznych elementów ramki.

+ +

Właściwości

+ +

Dziedziczy właściwości od rodzica, {{domxref("HTMLElement")}}.

+ +
+
{{domxref("HTMLIFrameElement.align")}} {{obsolete_inline}}
+
{{domxref("DOMString")}} określający zawijanie ramki w stosunku do otaczającego kontekstu.
+
{{domxref("HTMLIFrameElement.allowfullscreen")}} {{experimental_inline}}
+
{{domxref("Boolean")}} określa, czy ramka ma zostać umieszczona w trybie pełnoekranowym. Zobacz Używanie trybu pełnoekranowego dla szczegółów.
+
{{domxref("HTMLIFrameElement.contentDocument")}} {{readonlyInline}}
+
Zwraca obiekt {{domxref("Document")}}, reprezentujący aktualny kontekst przeglądania w ramce.
+
{{domxref("HTMLIFrameElement.contentWindow")}} {{readonlyInline}}
+
Zwraca obiekt {{domxref("WindowProxy")}}, referencję do okna przeglądarki w ramce.
+
{{domxref("HTMLIFrameElement.frameBorder")}} {{obsolete_inline}}
+
{{domxref("DOMString")}} określający, czy tworzyć obramowania między ramkami.
+
{{domxref("HTMLIFrameElement.height")}}
+
{{domxref("DOMString")}} reprezentujący atrybut {{htmlattrxref("height", "iframe")}} oznaczający wysokość ramki.
+
{{domxref("HTMLIFrameElement.longDesc")}} {{obsolete_inline}}
+
{{domxref("DOMString")}} zawierający URI długiego opisu ramki.
+
{{domxref("HTMLIFrameElement.marginHeight")}} {{obsolete_inline}}
+
{{domxref("DOMString")}} oznaczający wysokość marginesu.
+
{{domxref("HTMLIFrameElement.marginWidth")}} {{obsolete_inline}}
+
{{domxref("DOMString")}} oznaczający szerokość marginesu.
+
{{domxref("HTMLIFrameElement.name")}}
+
{{domxref("DOMString")}} oznaczający atrybut {{htmlattrxref("name", "iframe")}}, zawierający nazwę ramki.
+
{{domxref("HTMLIFrameElement.sandbox")}}
+
{{domxref("DOMSettableTokenList")}} oznaczający atrybut {{htmlattrxref("sandbox", "iframe")}}, oznaczając dodatkowe ograniczenia na zachowanie zagnieżdżonej zawartości.
+
{{domxref("HTMLIFrameElement.scrolling")}} {{obsolete_inline}}
+
{{domxref("DOMString")}}, od którego zależy, czy przeglądarka ma dostarczyć paski przewijania.
+
{{domxref("HTMLIFrameElement.seamless")}} {{experimental_inline}}
+
{{domxref("Boolean")}}, odzwierciedlający atrybut {{htmlattrxref("seamless", "iframe")}} , oznaczający, że ramkę należy wyświetlać bezszwowo wewnątrz dokumentu rodzica.
+
{{domxref("HTMLIFrameElement.src")}}
+
Is a {{domxref("DOMString")}} that reflects the {{htmlattrxref("src", "iframe")}} HTML attribute, containing the address of the content to be embedded.
+
{{domxref("HTMLIFrameElement.srcdoc")}}
+
Is a {{domxref("DOMString")}} that represents the content to display in the frame.
+
{{domxref("HTMLIFrameElement.width")}}
+
Is a {{domxref("DOMString")}} that reflects the {{htmlattrxref("width", "iframe")}} HTML attribute, indicating the width of the frame.
+
+ +

Metody

+ +

Dziedziczy właściwości od rodzica, {{domxref("HTMLElement")}}.

+ +
+
{{domxref("HTMLIFrameElement.setNfcFocus")}}
+
Część Browser API systemu Firefox OS, ustala, czy element {{htmlelement("iframe")}} może otrzymać zdarzenie NFC.
+
+ +

Historia specyfikacji

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusOpis
{{SpecName('HTML WHATWG', "the-iframe-element.html#the-iframe-element", "HTMLIFrameElement")}}{{Spec2('HTML WHATWG')}}Dodano właściwość allowFullscreen.
{{SpecName('HTML5 W3C', "embedded-content-0.html#the-iframe-element", "HTMLIFrameElement")}}{{Spec2('HTML5 W3C')}}Następujące właściwości uznano za przestarzałe: scrolling, marginWidth, marginHeight, longDesc, frameBorder, and align.
+ Te zostały dodane: srcdoc, sandbox, seamless, and contentWindow.
{{SpecName('DOM2 HTML', 'html.html#ID-50708718', 'HTMLIFrameElement')}}{{Spec2('DOM2 HTML')}}Dodano właściwość contentDocument.
{{SpecName('DOM1', 'level-one-html.html#ID-50708718', 'HTMLIFrameElement')}}{{Spec2('DOM1')}}Początkowa definicja.
+ +

Kompatybliność przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
WłaściwośćChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support(Tak)1.0 (1.7 lub wcześniejsza)(Tak)(Tak)(Tak)
srcdoc4{{CompatGeckoDesktop(25)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
sandbox4{{CompatGeckoDesktop(17)}} [1]{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
seamless {{experimental_inline}}4Nieobsługiwane{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
contentDocument(Tak)(Tak)8.0 (dla wcześniejszych wersji używaj HTMLIFrameElement.contentWindow.document)(Tak)(Tak)
contentWindow{{CompatUnknown}}{{CompatUnknown}}(Tak){{CompatUnknown}}{{CompatUnknown}}
allowFullScreen {{experimental_inline}}17 {{property_prefix("-webkit")}}
+ Tylko codzienne wydania testowe
{{compatGeckoDesktop(9.0)}} {{property_prefix("-moz")}}
+ {{compatGeckoDesktop(18.0)}}
NieobsługiwaneNieobsługiwaneNieobsługiwane
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support(Tak){{CompatGeckoMobile(1.0)}}(Tak)(Tak)(Tak)
srcdoc4{{CompatGeckoMobile(25)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
sandbox4{{CompatGeckoMobile(17)}} [1]{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
seamless {{experimental_inline}}4{{CompatNo}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
contentDocument(Tak)(Tak){{CompatUnknown}}(Tak)(Tak)
contentWindow{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
allowFullScreen {{experimental_inline}}17 {{property_prefix("-webkit")}}
+ Tylko codzienne wydania testowe
{{compatGeckoMobile(9.0)}} {{property_prefix("-moz")}}
+ {{compatGeckoMobile(18.0)}}
NieobsługiwaneNieobsługiwaneNieobsługiwane
+
+ +

[1] Wcześniej, sandbox był obiektem {{domxref("DOMString")}} a nie {{domxref("DOMSettableTokenList")}}. Naprawiono to w Gecko 29.0 {{geckoRelease(29)}}) ({{bug(845067)}}). Inne przeglądarki mogą wciąż implementować to jako DOMString ponieważ  to późna zmiana w speyfikacji.

+ +

Uwagi do Firefox OS

+ +

Firefox OS rozszerza HTMLIFrameElement o obsługę elementów iframe przeglądarki. Te metody stworzono dla uprzywilejowanych aplikacji które chcą zaimplementować przeglądarkę jak aplikację na urządzenia z Firefox OS.Wtedy HTMLIFrameElement dziedziczy też od interfejsu {{domxref("EventTarget")}}. To learn how to implement such applications, see the Używanie API przeglądarki article.

+ +
+
{{domxref("HTMLIFrameElement.setVisible()","HTMLIFrameElement.setVisible(visible)")}}
+
Pozwala bezpośrednio zmienić widoczność ramek.
+
{{domxref("HTMLIFrameElement.getVisible()","HTMLIFrameElement.getVisible()")}}
+
Zwraca obecny stan widoczności ramki obiektem {{domxref("DOMRequest")}}.
+
{{domxref("HTMLIFrameElement.sendMouseEvent()","HTMLIFrameElement.sendMouseEvent(type, x, y, button, clickCount, modifiers)")}}
+
Wysyła zdarzenie myszy do przeglądarki.
+
{{domxref("HTMLIFrameElement.sendTouchEvent()","HTMLIFrameElement.sendTouchEvent(type, identifiers, touchesX, touchesY,radiisX, radiisY, rotationAngles, forces,count, modifiers)")}}
+
Wysyła zdarzenie dotknięcia do przeglądarki.
+
{{domxref("HTMLIFrameElement.goBack()","HTMLIFrameElement.goBack()")}}
+
Cofa przeglądarkę o 1 stronę w historii.
+
{{domxref("HTMLIFrameElement.goForward()","HTMLIFrameElement.goForward()")}}
+
Przechodzi dalej o 1 stronę w historii.
+
{{domxref("HTMLIFrameElement.reload()","HTMLIFrameElement.reload()")}}
+
Odświeża (ładuje ponownie) stronę internetową w przeglądarce.
+
{{domxref("HTMLIFrameElement.stop()","HTMLIFrameElement.stop()")}}
+
Zatrzymuje ładowanie zawartości ramki.
+
{{domxref("HTMLIFrameElement.purgeHistory()","HTMLIFrameElement.purgeHistory()")}}
+
Pozwala wyczyścić historię przeglądania.
+
{{domxref("HTMLIFrameElement.getScreenshot()","HTMLIFrameElement.getScreenshot(maxWidth, maxHeight)")}}
+
Robi zrzut ekranu, skalując do go rozmiaru maxWidth na maxHeight pikseli. Zwraca obiekt {{domxref("DOMRequest")}}.
+
{{domxref("HTMLIFrameElement.addNextPaintListener()","HTMLIFrameElement.addNextPaintListener()")}}
+
Dodaje odbiorcę zdarzenia powiadomianego, gdy ramka jest gotowa do odmalowania po raz pierwszy (Powiadamia się go, gdy pierwsze zdarzenie {{event("MozAfterPaint")}} jest odbierane z ramki.)
+
{{domxref("HTMLIFrameElement.removeNextPaintListener()","HTMLIFrameElement.removeNextPaintListener()")}}
+
Usuwa odbiorcę dodanego przez poprzednią funkcję.
+
{{domxref("HTMLIFrameElement.getCanGoBack()","HTMLIFrameElement.getCanGoBack()")}}
+
Zwraca obiekt {{domxref("DOMRequest")}} którego składowa result oznacza możliwość powrotu.
+
{{domxref("HTMLIFrameElement.getCanGoForward()","HTMLIFrameElement.getCanGoForward()")}}
+
Zwraca obiekt {{domxref("DOMRequest")}} którego składowa result oznacza możliwość powrotu.
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/api/htmlselectelement/index.html b/files/pl/web/api/htmlselectelement/index.html new file mode 100644 index 0000000000..967409aadc --- /dev/null +++ b/files/pl/web/api/htmlselectelement/index.html @@ -0,0 +1,166 @@ +--- +title: HTMLSelectElement +slug: Web/API/HTMLSelectElement +tags: + - API + - HTML DOM + - HTMLSelectElement + - Interface + - NeedsTranslation + - Reference + - TopicStub +translation_of: Web/API/HTMLSelectElement +--- +
{{APIRef("HTML DOM")}}
+ +

The HTMLSelectElement interface represents a {{HTMLElement("select")}} HTML Element. These elements also share all of the properties and methods of other HTML elements via the {{domxref("HTMLElement")}} interface.

+ +

{{InheritanceDiagram(600, 120)}}

+ +

Properties

+ +

This interface inherits the properties of {{domxref("HTMLElement")}}, and of {{domxref("Element")}} and {{domxref("Node")}}.

+ +
+
{{domxref("HTMLSelectElement.autofocus")}}
+
A {{jsxref("Boolean")}} reflecting the {{htmlattrxref("autofocus", "select")}} HTML attribute, which indicates whether the control should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified. {{gecko_minversion_inline("2.0")}}
+
{{domxref("HTMLSelectElement.disabled")}}
+
A {{jsxref("Boolean")}} reflecting the {{htmlattrxref("disabled", "select")}} HTML attribute, which indicates whether the control is disabled. If it is disabled, it does not accept clicks.
+
{{domxref("HTMLSelectElement.form")}}{{ReadOnlyInline}}
+
An {{domxref("HTMLFormElement")}} referencing the form that this element is associated with. If the element is not associated with of a {{HTMLElement("form")}} element, then it returns null.
+
{{domxref("HTMLSelectElement.labels")}}{{ReadOnlyInline}}
+
A {{domxref("NodeList")}} of {{HTMLElement("label")}} elements associated with the element.
+
{{domxref("HTMLSelectElement.length")}}
+
An unsigned long The number of {{HTMLElement("option")}} elements in this select element.
+
{{domxref("HTMLSelectElement.multiple")}}
+
A {{jsxref("Boolean")}} reflecting the {{htmlattrxref("multiple", "select")}} HTML attribute, which indicates whether multiple items can be selected.
+
{{domxref("HTMLSelectElement.name")}}
+
A {{domxref("DOMString")}} reflecting the {{htmlattrxref("name", "select")}} HTML attribute, containing the name of this control used by servers and DOM search functions.
+
{{domxref("HTMLSelectElement.options")}}{{ReadOnlyInline}}
+
An {{domxref("HTMLOptionsCollection")}} representing the set of {{HTMLElement("option")}} ({{domxref("HTMLOptionElement")}}) elements contained by this element.
+
{{domxref("HTMLSelectElement.required")}}
+
A {{jsxref("Boolean")}} reflecting the {{htmlattrxref("required", "select")}} HTML attribute, which indicates whether the user is required to select a value before submitting the form. {{gecko_minversion_inline("2.0")}}
+
{{domxref("HTMLSelectElement.selectedIndex")}}
+
A long reflecting the index of the first selected {{HTMLElement("option")}} element. The value -1 indicates no element is selected.
+
{{domxref("HTMLSelectElement.selectedOptions")}}{{ReadOnlyInline}}
+
An {{domxref("HTMLCollection")}} representing the set of {{HTMLElement("option")}} elements that are selected.
+
{{domxref("HTMLSelectElement.size")}}
+
A long reflecting the {{htmlattrxref("size", "select")}} HTML attribute, which contains the number of visible items in the control. The default is 1, unless multiple is true, in which case it is 4.
+
{{domxref("HTMLSelectElement.type")}}{{ReadOnlyInline}}
+
A {{domxref("DOMString")}} represeting the form control's type. When multiple is true, it returns "select-multiple"; otherwise, it returns "select-one".
+
{{domxref("HTMLSelectElement.validationMessage")}}{{ReadOnlyInline}}
+
A {{domxref("DOMString")}} representing a localized message that describes the validation constraints that the control does not satisfy (if any). This attribute is the empty string if the control is not a candidate for constraint validation (willValidate is false), or it satisfies its constraints.
+
{{domxref("HTMLSelectElement.validity")}}{{ReadOnlyInline}}
+
A {{domxref("ValidityState")}} reflecting the validity state that this control is in.
+
{{domxref("HTMLSelectElement.value")}}
+
A {{domxref("DOMString")}} reflecting the value of the form control. Returns the value property of the first selected option element if there is one, otherwise the empty string.
+
{{domxref("HTMLSelectElement.willValidate")}}{{ReadOnlyInline}}
+
A {{jsxref("Boolean")}} that indicates whether the button is a candidate for constraint validation. It is false if any conditions bar it from constraint validation.
+
+ +

Methods

+ +

This interface inherits the methods of {{domxref("HTMLElement")}}, and of {{domxref("Element")}} and {{domxref("Node")}}.

+ +
+
{{domxref("HTMLSelectElement.add()")}}
+
Adds an element to the collection of option elements for this select element.
+
{{domxref("HTMLSelectElement.blur()")}}{{obsolete_inline}}
+
Removes input focus from this element. This method is now implemented on {{domxref("HTMLElement")}}.
+
{{domxref("HTMLSelectElement.checkValidity()")}}
+
Checks whether the element has any constraints and whether it satisfies them. If the element fails its constraints, the browser fires a cancelable {{domxref("HTMLInputElement/invalid_event", "invalid")}} event at the element (and returns false).
+
{{domxref("HTMLSelectElement.focus()")}}{{obsolete_inline}}
+
Gives input focus to this element. This method is now implemented on {{domxref("HTMLElement")}}.
+
{{domxref("HTMLSelectElement.item()")}}
+
Gets an item from the options collection for this {{HTMLElement("select")}} element. You can also access an item by specifying the index in array-style brackets or parentheses, without calling this method explicitly.
+
{{domxref("HTMLSelectElement.namedItem()")}}
+
Gets the item in the options collection with the specified name. The name string can match either the id or the name attribute of an option node. You can also access an item by specifying the name in array-style brackets or parentheses, without calling this method explicitly.
+
{{domxref("HTMLSelectElement.remove()")}}
+
Removes the element at the specified index from the options collection for this select element.
+
{{domxref("HTMLSelectElement.reportValidity()")}}
+
This method reports the problems with the constraints on the element, if any, to the user. If there are problems, it fires a cancelable {{domxref("HTMLInputElement/invalid_event", "invalid")}} event at the element, and returns false; if there are no problems, it returns true.
+
{{domxref("HTMLSelectElement.setCustomValidity()")}}
+
Sets the custom validity message for the selection element to the specified message. Use the empty string to indicate that the element does not have a custom validity error.
+
+ +

Events

+ +

Listen to these events using {{domxref("EventTarget/addEventListener", "addEventListener()")}} or by assigning an event listener to the oneventname property of this interface:

+ +
+
{{domxref("HTMLElement/input_event", "input")}} event
+
Fires when the value of an {{HTMLElement("input")}}, {{HTMLElement("select")}}, or {{HTMLElement("textarea")}} element has been changed.
+
+ +

Example

+ +

Get information about the selected option

+ +
/* assuming we have the following HTML
+<select id='s'>
+    <option>First</option>
+    <option selected>Second</option>
+    <option>Third</option>
+</select>
+*/
+
+var select = document.getElementById('s');
+
+// return the index of the selected option
+console.log(select.selectedIndex); // 1
+
+// return the value of the selected option
+console.log(select.options[select.selectedIndex].value) // Second
+
+ +

A better way to track changes to the user's selection is to watch for the {{domxref("HTMLElement/change_event", "change")}} event to occur on the <select>. This will tell you when the value changes, and you can then update anything you need to. See the example provided in the documentation for the change event for details.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', '#htmlselectelement', 'HTMLSelectElement')}}{{Spec2('HTML WHATWG')}}Since the latest snapshot, {{SpecName('HTML5 W3C')}}, it adds the autocomplete property and the reportValidity() method.
{{SpecName('HTML5 W3C', 'forms.html#htmlselectelement', 'HTMLSelectElement')}}{{Spec2('HTML5 W3C')}}Is a snapshot of {{SpecName("HTML WHATWG")}}.
+ It adds the autofocus, form, required, labels, selectedOptions, willValidate, validity and validationMessage properties.
+ The tabindex property and the blur() and focus() methods have been moved to {{domxref("HTMLElement")}}.
+ The methods item(), namedItem(), checkValidity() and setCustomValidity().
{{SpecName('DOM2 HTML', 'html.html#ID-94282980', 'HTMLSelectElement')}}{{Spec2('DOM2 HTML')}}options now returns an {{domxref("HTMLOptionsCollection")}}.
+ length now returns an unsigned long.
{{SpecName('DOM1', 'level-one-html.html#ID-94282980', 'HTMLSelectElement')}}{{Spec2('DOM1')}}Initial definition
+ +

Browser compatibility

+ + + +

{{Compat("api.HTMLSelectElement")}}

+ +

See also

+ + diff --git a/files/pl/web/api/htmltableelement/caption/index.html b/files/pl/web/api/htmltableelement/caption/index.html new file mode 100644 index 0000000000..971efe057b --- /dev/null +++ b/files/pl/web/api/htmltableelement/caption/index.html @@ -0,0 +1,39 @@ +--- +title: HTMLTableElement.caption +slug: Web/API/HTMLTableElement/caption +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLTableElement/caption +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

caption zwraca podpis tabeli.

+ +

Składnia

+ +
string = table.caption
+
+ +

Przykład

+ +
if (table.caption) {
+  // zrób coś z podpisem
+}
+
+ +

Uwagi

+ +

Własność ta zwraca void dla tabel bez elementu caption.

+ +

Specyfikacja

+ +

caption

+ +

Interface HTMLTableCaptionElement

+ +

{{ languages( { "en": "en/DOM/table.caption", "fr": "fr/DOM/table.caption" } ) }}

diff --git a/files/pl/web/api/htmltableelement/index.html b/files/pl/web/api/htmltableelement/index.html new file mode 100644 index 0000000000..d5d5a838ca --- /dev/null +++ b/files/pl/web/api/htmltableelement/index.html @@ -0,0 +1,72 @@ +--- +title: HTMLTableElement +slug: Web/API/HTMLTableElement +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLTableElement +--- +
{{ ApiRef() }}
+ +

Interfejs elementu HTML Table

+ +

Obiekt table pozwala na dostęp do interfejsu HTMLTableElement, który udostępnia specjalne własności i metody (będące poza zwykłym interfejsem obiektu element; własności i metody elementu dostępne są poprzez dziedziczenie) do ustawiania układu i wyglądu tabel w języku HTML.

+ +

Własności

+ +
+
{{domxref("HTMLTableElement.caption")}}
+
opis tabeli.
+
{{domxref("HTMLTableElement.tHead")}}
+
nagłówek tabeli.
+
{{domxref("HTMLTableElement.tFoot")}}
+
stopka tabeli.
+
{{domxref("HTMLTableElement.rows")}} {{readonlyInline}}
+
rows - liczba wierszy tabeli.
+
{{domxref("HTMLTableElement.tBodies")}} {{readonlyInline}}
+
'ciała' tabeli (tbody).
+
+ +
+
{{domxref("HTMLTableElement.align")}} {{obsolete_inline}}
+
ustawia/pobiera wyrównanie tabeli.
+
{{domxref("HTMLTableElement.bgColor")}} {{obsolete_inline}}
+
ustawia/pobiera kolor tła tabeli.
+
{{domxref("HTMLTableElement.border")}} {{obsolete_inline}}
+
ustawia/pobiera obramowanie tabeli.
+
{{domxref("HTMLTableElement.cellPadding")}} {{obsolete_inline}}
+
ustawia/pobiera dopełnienie komórki.
+
{{domxref("HTMLTableElement.cellSpacing")}} {{obsolete_inline}}
+
ustawia/pobiera odstępy pomiędzy komórkami.
+
{{domxref("HTMLTableElement.frame")}} {{obsolete_inline}}
+
określa które krawędzie tabeli mają obramowanie.
+
{{domxref("HTMLTableElement.rules")}} {{obsolete_inline}}
+
określa które wewnętrzne krawędzie są widoczne.
+
{{domxref("HTMLTableElement.summary")}} {{obsolete_inline}}
+
ustawia/pobiera podsumowanie tabeli.
+
{{domxref("HTMLTableElement.width")}} {{obsolete_inline}}
+
ustawia/pobiera szerokość tabeli.
+
+ +

Metody

+ +
+
{{domxref("HTMLTableElement.createTHead()")}}
+
tworzy nagłówek tabeli.
+
{{domxref("HTMLTableElement.deleteTHead()")}}
+
usuwa nagłówek tabeli.
+
{{domxref("HTMLTableElement.createTFoot()")}}
+
tworzy stopkę tabeli.
+
{{domxref("HTMLTableElement.deleteTFoot()")}}
+
usuwa stopkę tabeli.
+
{{domxref("HTMLTableElement.createCaption()")}}
+
tworzy nowy opis tabeli.
+
{{domxref("HTMLTableElement.deleteCaption()")}}
+
usuwa opis tabeli.
+
{{domxref("HTMLTableElement.insertRow()")}}
+
wstawia nowy wiersz.
+
{{domxref("HTMLTableElement.deleteRow()")}}
+
usuwa wiersz.
+
diff --git a/files/pl/web/api/htmltableelement/tfoot/index.html b/files/pl/web/api/htmltableelement/tfoot/index.html new file mode 100644 index 0000000000..2d7467db81 --- /dev/null +++ b/files/pl/web/api/htmltableelement/tfoot/index.html @@ -0,0 +1,39 @@ +--- +title: HTMLTableElement.tFoot +slug: Web/API/HTMLTableElement/tFoot +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLTableElement/tFoot +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

tFoot zwraca element TFOOT tabeli.

+ +

Składnia

+ +
HTMLTableSectionElementObject = table.tFoot
+
+ +

Przykład

+ +
if (table.tFoot == my_foot) {
+ ...
+}
+
+ +

Uwagi

+ +

Ta własność zwraca VOID, jeśli nie istnieje element TFOOT.

+ +

Specyfikacja

+ +

tfoot

+ +

Interface HTMLTableSectionElement

+ +

{{ languages( { "en": "en/DOM/table.tFoot" } ) }}

diff --git a/files/pl/web/api/htmltableelement/thead/index.html b/files/pl/web/api/htmltableelement/thead/index.html new file mode 100644 index 0000000000..413fe6fde1 --- /dev/null +++ b/files/pl/web/api/htmltableelement/thead/index.html @@ -0,0 +1,45 @@ +--- +title: HTMLTableElement.tHead +slug: Web/API/HTMLTableElement/tHead +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/HTMLTableElement/tHead +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

tHead zwraca THEAD (nagłówek) tabeli.

+ +

Składnia

+ +
th_el = table.tHead
+
+ +

Parametry

+ + + +

Przykład

+ +
if (table.tHead == my_head_el) {
+   ...
+}
+
+ +

Uwagi

+ +

Ta własność zwraca VOID, jeśli nie istnieje element THEAD.

+ +

Specyfikacje

+ +

thead

+ +

Interface HTMLTableSectionElement

+ +

{{ languages( { "en": "en/DOM/table.tHead" } ) }}

diff --git a/files/pl/web/api/index.html b/files/pl/web/api/index.html new file mode 100644 index 0000000000..2a13d2b016 --- /dev/null +++ b/files/pl/web/api/index.html @@ -0,0 +1,11 @@ +--- +title: Lista Web API +slug: Web/API +tags: + - NeedsTranslation + - TopicStub +translation_of: Web/API +--- +

Kiedy piszemy kod w JavaScript dla sieci Web, możemy użyć wielu przydatnych API. Poniżej znajduje się lista dostępnych interfejsów (dokładnie, typów obiektów), które możesz wykorzystać podczas budowy swojej strony czy aplikacji internetowej.

+ +
{{APIListAlpha}}
diff --git a/files/pl/web/api/location/index.html b/files/pl/web/api/location/index.html new file mode 100644 index 0000000000..537d3bc90a --- /dev/null +++ b/files/pl/web/api/location/index.html @@ -0,0 +1,114 @@ +--- +title: Location +slug: Web/API/Location +tags: + - API + - HTML DOM + - Interface + - Location + - NeedsTranslation + - Reference + - TopicStub +translation_of: Web/API/Location +--- +

{{APIRef("HTML DOM")}}

+ +

The Location interface represents the location (URL) of the object it is linked to. Changes done on it are reflected on the object it relates to. Both the {{domxref("Document")}} and {{domxref("Window")}} interface have such a linked Location, accessible via {{domxref("Document.location")}} and {{domxref("Window.location")}} respectively.

+ +

Properties

+ +

The Location interface doesn't inherit any property, but implements those from {{domxref("URLUtils")}}.

+ +
+
{{domxref("Location.href")}}
+
Is a {{domxref("DOMString")}} containing the entire URL. If changed, the associated document navigates to the new page. It can be set from a different origin than the associated document.
+
{{domxref("Location.protocol")}}
+
Is a {{domxref("DOMString")}} containing the protocol scheme of the URL, including the final ':'.
+
{{domxref("Location.host")}}
+
Is a {{domxref("DOMString")}} containing the host, that is the hostname, a ':', and the port of the URL.
+
{{domxref("Location.hostname")}}
+
Is a {{domxref("DOMString")}} containing the domain of the URL.
+
{{domxref("Location.port")}}
+
Is a {{domxref("DOMString")}} containing the port number of the URL.
+
{{domxref("Location.pathname")}}
+
Is a {{domxref("DOMString")}} containing an initial '/' followed by the path of the URL.
+
{{domxref("Location.search")}}
+
Is a {{domxref("DOMString")}} containing a '?' followed by the parameters or "querystring" of the URL. Modern browsers provide URLSearchParams and URL.searchParams to make it easy to parse out the parameters from the querystring.
+
{{domxref("Location.hash")}}
+
Is a {{domxref("DOMString")}} containing a '#' followed by the fragment identifier of the URL.
+
{{domxref("Location.username")}}
+
Is a {{domxref("DOMString")}} containing the username specified before the domain name.
+
{{domxref("Location.password")}}
+
Is a {{domxref("DOMString")}} containing the password specified before the domain name.
+
{{domxref("Location.origin")}} {{readOnlyInline}}
+
Returns a {{domxref("DOMString")}} containing the canonical form of the origin of the specific location.
+
+ +

Methods

+ +

The Location interface doesn't inherit any method, but implements those from {{domxref("URLUtils")}}.

+ +
+
{{domxref("Location.assign()")}}
+
Loads the resource at the URL provided in parameter.
+
{{domxref("Location.reload()")}}
+
Reloads the resource from the current URL. Its optional unique parameter is a {{domxref("Boolean")}}, which, when it is true, causes the page to always be reloaded from the server. If it is false or not specified, the browser may reload the page from its cache.
+
{{domxref("Location.replace()")}}
+
Replaces the current resource with the one at the provided URL. The difference from the assign() method is that after using replace() the current page will not be saved in session {{domxref("History")}}, meaning the user won't be able to use the back button to navigate to it.
+
{{domxref("Location.toString()")}}
+
Returns a {{domxref("DOMString")}} containing the whole URL. It is a synonym for {{domxref("URLUtils.href")}}, though it can't be used to modify the value.
+
+ +

Examples

+ +
// Create anchor element and use href property for the purpose of this example
+// A more correct alternative is to browse to the URL and use document.location or window.location
+var url = document.createElement('a');
+url.href = 'https://developer.mozilla.org:8080/en-US/search?q=URL#search-results-close-container';
+console.log(url.href);      // https://developer.mozilla.org:8080/en-US/search?q=URL#search-results-close-container
+console.log(url.protocol);  // https:
+console.log(url.host);      // developer.mozilla.org:8080
+console.log(url.hostname);  // developer.mozilla.org
+console.log(url.port);      // 8080
+console.log(url.pathname);  // /en-US/search
+console.log(url.search);    // ?q=URL
+console.log(url.hash);      // #search-results-close-container
+console.log(url.origin);    // https://developer.mozilla.org
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', "browsers.html#the-location-interface", "Location")}}{{Spec2('HTML WHATWG')}}No change from {{SpecName("HTML5 W3C")}}.
{{SpecName('HTML5 W3C', "browsers.html#the-location-interface", "Location")}}{{Spec2('HTML5 W3C')}}Initial definition.
+ +

Browser compatibility

+ + + +

{{Compat("api.Location")}}

+ +

See also

+ + diff --git a/files/pl/web/api/location/reload/index.html b/files/pl/web/api/location/reload/index.html new file mode 100644 index 0000000000..fc859dbfd3 --- /dev/null +++ b/files/pl/web/api/location/reload/index.html @@ -0,0 +1,67 @@ +--- +title: Location.reload() +slug: Web/API/Location/reload +tags: + - API + - HTML-DOM + - Location + - Metodă +translation_of: Web/API/Location/reload +--- +

{{ APIRef("HTML DOM") }}

+ +

Metoda Location.reload() ponownie ładuje zasób z bieżącego adresu URL. Jej opcjonalnym i jednocześnie unikalnym parametrem jest parametr {{domxref("Boolean")}}. Jeśli przyjmie on wartość true, powoduje zawsze ponownie ładowanie strony z serwera. Jeśli jego wartość wynosi false lub nie jest zdefiniowana, przeglądarka może ponownie załadować stronę z pamięci podręcznej. Poza domyślnym zachowaniem pamięci cache, flaga forcedReload wpływa również na to, jak niektóre przeglądarki obsługują pozycję przewijania strony: zwykłe przeładowanie próbuje przywrócić pozycję przewijania po ponownym załadowaniu strony, natomiast w trybie wymuszonym (gdy parametr jest ustawiony na wartość true) nowy DOM zostaje wczytany ze scrollTop == 0.

+ +

Jeśli przypisanie nie może się wydarzyć z powodu naruszenia bezpieczeństwa, zostanie zgłoszony wyjątek {{domxref("DOMException")}} typu SECURITY_ERROR. Dzieje się tak, gdy pochodzenie skryptu wywołującego metodę różni się od pochodzenia strony opisanej przez obiekt {{domxref("Location")}} (zazwyczaj kiedy skrypt jest hostowany na innej domenie).

+ +

Składnia

+ +
object.reload(forcedReload);
+
+ +

Parametry

+ +
+
forcedReload {{optional_inline}}
+
Jest flagą {{domxref("Boolean")}}, która przyjmując wartość true, zawsze powoduje przeładowanie strony z serwera. Jeśli jej wartość to false lub nie została ona zdefiniowana, przeglądarka może wczytać stronę z pamięci podręczniej (pamięci cache).
+
+ +

Przykłady

+ +
// Przeładuj bieżącą stronę bez cache
+window.location.reload(true);
+ +

Lista specyfikacji

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', "history.html#dom-location-reload", "Location.reload()")}}{{Spec2('HTML WHATWG')}}Bez zmian od {{SpecName("HTML5 W3C")}}.
{{SpecName('HTML5 W3C', "browsers.html#dom-location-reload", "Location.reload()")}}{{Spec2('HTML5 W3C')}}Początkowa definicja.
+ +

Zgodność przeglądarek

+ + + +

{{Compat("api.Location.reload")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/api/mediaelementaudiosourcenode/index.html b/files/pl/web/api/mediaelementaudiosourcenode/index.html new file mode 100644 index 0000000000..81bbce3c25 --- /dev/null +++ b/files/pl/web/api/mediaelementaudiosourcenode/index.html @@ -0,0 +1,84 @@ +--- +title: MediaElementAudioSourceNode +slug: Web/API/MediaElementAudioSourceNode +translation_of: Web/API/MediaElementAudioSourceNode +--- +

{{APIRef("Web Audio API")}}

+ +
+

The MediaElementAudioSourceNode interface represents an audio source consisting of an HTML5 {{ htmlelement("audio") }} or {{ htmlelement("video") }} element. It is an {{domxref("AudioNode")}} that acts as an audio source.

+
+ +

A MediaElementSourceNode has no inputs and exactly one output, and is created using the {{domxref("AudioContext.createMediaElementSource")}} method. The amount of channels in the output equals the number of channels of the audio referenced by the {{domxref("HTMLMediaElement")}} used in the creation of the node, or is 1 if the {{domxref("HTMLMediaElement")}} has no audio.

+ + + + + + + + + + + + + + + + +
Number of inputs0
Number of outputs1
Channel countdefined by the media in the {{domxref("HTMLMediaElement")}} passed to the {{domxref("AudioContext.createMediaElementSource")}} method that created it.
+ +

Constructor

+ +
+
{{domxref("MediaElementAudioSourceNode.MediaElementAudioSourceNode", "MediaElementAudioSourceNode()")}}
+
Creates a new MediaElementAudioSourceNode object instance.
+
+ +

Properties

+ +

Inherits properties from its parent, {{domxref("AudioNode")}}.

+ +
+
{{domxref("MediaElementAudioSourceNode.mediaElement", "mediaElement")}} {{ReadOnlyInline}}
+
The {{domxref("HTMLMediaElement")}} used when constructing this MediaStreamAudioSourceNode.
+
+ +

Methods

+ +

Inherits methods from its parent, {{domxref("AudioNode")}}.

+ +

Example

+ +

{{page("/en-US/docs/Web/API/AudioContext.createMediaElementSource","Example")}}

+ +

Specification

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Web Audio API', '#mediaelementaudiosourcenode', 'MediaElementAudioSourceNode')}}{{Spec2('Web Audio API')}}
+ +

Browser compatibility

+ +
+ + +

{{Compat("api.MediaElementAudioSourceNode")}}

+
+ +

See also

+ + diff --git a/files/pl/web/api/midiaccess/index.html b/files/pl/web/api/midiaccess/index.html new file mode 100644 index 0000000000..6155b26b02 --- /dev/null +++ b/files/pl/web/api/midiaccess/index.html @@ -0,0 +1,70 @@ +--- +title: MIDIAccess +slug: Web/API/MIDIAccess +tags: + - API + - Interfejs +translation_of: Web/API/MIDIAccess +--- +

{{SeeCompatTable}}{{APIRef("Web MIDI API")}} 

+ +

Interfejs MIDIAccess pochodzący z Web MIDI API, dostarcza metod wyliczania urządzeń wejściowych i wyjściowych MIDI oraz dostępu do tych urządzeń.

+ +

Właściwości

+ +
+
{{domxref("MIDIAccess.inputs")}} {{readonlyinline}}
+
Zwraca instancję {{domxref("MIDIInputMap")}} dostarczając metod dostępu do wszystkich dostępnych portów wejśiowych MIDI.
+
{{domxref("MIDIAccess.outputs")}} {{readonlyinline}}
+
Zwraca instancję {{domxref("MIDIOutputMap")}} dostarczając metod dostępu do wszystkich dostępnych portów wyjśiowych MIDI.
+
{{domxref("MIDIAccess.sysexEnabled")}} {{readonlyinline}}
+
Parametr zerojedynkowy, wskazujący na wsparcie system exclusive dla obecnej instancji MIDIAccess.
+
+ +

Procedury obsługi zdarzeń

+ +
+
{{domxref("MIDIAccess.onstatechange")}}
+
Jest wywoływana za każdym razem, gdy nowy port MIDI zostaniedodany lub nastąpi zmiana stanu istniejącego portu.
+
+ +

Przykłady

+ +
navigator.requestMIDIAccess()
+  .then(function(access) {
+
+     // Get lists of available MIDI controllers
+     const inputs = access.inputs.values();
+     const outputs = access.outputs.values();
+
+     access.onstatechange = function(e) {
+
+       // Print information about the (dis)connected MIDI controller
+       console.log(e.port.name, e.port.manufacturer, e.port.state);
+     };
+  });
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('WebMIDI API','#midiaccess-interface')}}{{Spec2('WebMIDI API')}}Definicja wstępna.
+ +

Kompatybilność przeglądarek

+ +

{{Compat("api.MIDIAccess")}}

+ +
+ +
diff --git a/files/pl/web/api/mousescrollevent/index.html b/files/pl/web/api/mousescrollevent/index.html new file mode 100644 index 0000000000..ed0ab35316 --- /dev/null +++ b/files/pl/web/api/mousescrollevent/index.html @@ -0,0 +1,126 @@ +--- +title: MouseScrollEvent +slug: Web/API/MouseScrollEvent +translation_of: Web/API/MouseScrollEvent +--- +

{{APIRef("DOM Events")}}{{ non-standard_header() }}{{deprecated_header}}

+ +

The DOM MouseScrollEvent represents events that occur due to the user moving a mouse wheel or similar input device.

+ +

Use standardardized {{ domxref("WheelEvent") }} instead of this legacy event object if available.

+ +

Method overview

+ + + + + + + +
void initMouseScrollEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in nsIDOMAbstractView viewArg, in long detailArg, in long screenXArg, in long screenYArg, in long clientXArg, in long clientYArg, in boolean ctrlKeyArg, in boolean altKeyArg, in boolean shiftKeyArg, in boolean metaKeyArg, in unsigned short buttonArg, in nsIDOMEventTarget relatedTargetArg, in long axis);
+ +

Attributes

+ + + + + + + + + + + + + + +
AttributeTypeDescription
axislongIndicates scroll direction. Read only.
+ +

Constants

+ +

Delta modes

+ + + + + + + + + + + + + + + + + + + +
ConstantValueDescription
HORIZONTAL_AXIS0x01The event is caused by horizontal wheel operation.
VERTICAL_AXIS0x02The event is caused by vertical wheel operation.
+ +

Methods

+ +

initMouseScrollEvent()

+ +

See nsIDOMMouseScrollEvent::initMouseScrollEvent().

+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{ CompatNo() }}{{ CompatGeckoDesktop("1.9.1") }}{{ CompatNo() }}{{ CompatNo() }}{{ CompatNo() }}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{ CompatNo() }}{{ CompatGeckoMobile("1.9.1") }}{{ CompatNo() }}{{ CompatNo() }}{{ CompatNo() }}
+
+ +

See also

+ + diff --git a/files/pl/web/api/navigator/appcodename/index.html b/files/pl/web/api/navigator/appcodename/index.html new file mode 100644 index 0000000000..ec0da7157c --- /dev/null +++ b/files/pl/web/api/navigator/appcodename/index.html @@ -0,0 +1,30 @@ +--- +title: window.navigator.appCodeName +slug: Web/API/Navigator/appCodeName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorID/appCodeName +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca wewnętrzną nazwę "kodową" aktualnej przeglądarki.

+

Składnia

+
codeName = window.navigator.appCodeName
+
+

Parametry

+ +

Przykład

+
dump(window.navigator.appCodeName);
+
+

Uwagi

+

Mozilla, Netscape 6 i IE5 używają wewnętrznej nazwy "Mozilla".

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.navigator.appCodeName", "ja": "ja/DOM/window.navigator.appCodeName" } ) }}

diff --git a/files/pl/web/api/navigator/appname/index.html b/files/pl/web/api/navigator/appname/index.html new file mode 100644 index 0000000000..d651ac3682 --- /dev/null +++ b/files/pl/web/api/navigator/appname/index.html @@ -0,0 +1,29 @@ +--- +title: window.navigator.appName +slug: Web/API/Navigator/appName +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorID/appName +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca oficjalną nazwę przeglądarki.

+

Składnia

+
appName = window.navigator.appName
+
+

Parametry

+ +

Przykład

+
dump(window.navigator.appName);
+// dla NS6 wypisuje w konsoli "Navigator"
+
+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.navigator.appName", "ja": "ja/DOM/window.navigator.appName" } ) }}

diff --git a/files/pl/web/api/navigator/appversion/index.html b/files/pl/web/api/navigator/appversion/index.html new file mode 100644 index 0000000000..3d08f23cee --- /dev/null +++ b/files/pl/web/api/navigator/appversion/index.html @@ -0,0 +1,32 @@ +--- +title: window.navigator.appVersion +slug: Web/API/Navigator/appVersion +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorID/appVersion +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca wersję przeglądarki jako łańcuch znaków.

+

Składnia

+
ver = window.navigator.appVersion
+
+

Parametry

+ +

Przykład

+
if ( navigator.appVersion.charAt(0) == "5" ) {
+    // prawdopodobnie jest to piąta wersja przeglądarki
+ }
+
+

Uwagi

+

Własność window.navigator.userAgent również zawiera numer wersji przeglądarki (przykładowo: "Mozilla/5.0 (Windows; U; Win98; en-US; rv:0.9.2) Gecko/20010725 Netscape 6/6.1"), lecz powinniśmy mieć świadomość jak łatwo jest zmienić ciąg user-agent i "naśladować" inne przeglądarki, platformy lub pośredników użytkownika oraz jak bezmyślni są sami producenci przeglądarek w ustawianiu tej wartości. Własności window.navigator.appVersion i window.navigator.userAgent są dość często stosowane w kodzie "szpiegującym przeglądarki": skryptach, które próbują dowiedzieć się jakiej używasz przeglądarki i wyświetlić stosowną do niej stronę.

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.navigator.appVersion", "ja": "ja/DOM/window.navigator.appVersion" } ) }}

diff --git a/files/pl/web/api/navigator/buildid/index.html b/files/pl/web/api/navigator/buildid/index.html new file mode 100644 index 0000000000..2f35af6f92 --- /dev/null +++ b/files/pl/web/api/navigator/buildid/index.html @@ -0,0 +1,41 @@ +--- +title: Navigator.buildID +slug: Web/API/Navigator/buildID +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Navigator/buildID +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca identyfikator kompilacji przeglądarki.

+ +

Składnia

+ +
buildID =
+navigator.buildID;
+
+ +

buildID jest identyfikatorem kompilacji aplikacji, zwracanym jako łańcuch znakówi. ID kompilacji jest w formie <tt>YYYYMMDDHH</tt> (gdzie: Y - rok, M - miesiąc, D - dzień, H - godzina).

+ +

Przykład

+ +
dump(window.navigator.buildID);
+// wyświetla w konsoli "2006090803"
+
+ +

Uwaga

+ +

Dostępne w Firefoksie 2 (Gecko 1.8.1) i późniejszych. Zaimplementowane w {{ Bug(345993) }}.

+ +

Specyfikacja

+ +

Nie jest częścią żadnego publicznego standardu.

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.buildID", "ja": "ja/DOM/window.navigator.buildID" } ) }}

diff --git a/files/pl/web/api/navigator/cookieenabled/index.html b/files/pl/web/api/navigator/cookieenabled/index.html new file mode 100644 index 0000000000..43c12ee2de --- /dev/null +++ b/files/pl/web/api/navigator/cookieenabled/index.html @@ -0,0 +1,45 @@ +--- +title: Navigator.cookieEnabled +slug: Web/API/Navigator/cookieEnabled +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Navigator/cookieEnabled +--- +

{{ ApiRef() }}

+ +

Posumowanie

+ +

Zwraca wartość logiczną tylko do odczytu, wskazującą czy obsługa ciasteczek jest włączona, czy nie.

+ +

Składnia

+ +
var cookieEnabled = navigator.cookieEnabled;
+
+ + + +

Przykład

+ +
if (!navigator.cookieEnabled) {
+  // poinformuj użytkownika, że przy włączonych ciasteczkach
+  // strona jest bardziej użyteczna
+}
+
+ +

Uwagi

+ +

W związku z {{ Bug(230350) }}, cookieEnabled może zwracać błędny wynik w aplikacjach opartych o Gecko.

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.cookieEnabled", "ja": "ja/DOM/window.navigator.cookieEnabled" } ) }}

diff --git a/files/pl/web/api/navigator/index.html b/files/pl/web/api/navigator/index.html new file mode 100644 index 0000000000..6ef2055b7a --- /dev/null +++ b/files/pl/web/api/navigator/index.html @@ -0,0 +1,119 @@ +--- +title: Navigator +slug: Web/API/Navigator +translation_of: Web/API/Navigator +--- +

{{ apiref() }}

+ +

The Navigator interface represents the state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities.

+ +

A Navigator object can be retrieved using the read-only {{domxref("Window.navigator")}} property.

+ +

Properties

+ +

Doesn't inherit any property, but implements those defined in {{domxref("NavigatorID")}}, {{domxref("NavigatorLanguage")}}, {{domxref("NavigatorOnLine")}}, {{domxref("NavigatorGeolocation")}}, {{domxref("NavigatorPlugins")}}, {{domxref("NavigatorUserMedia")}}, and {{domxref("NetworkInformation")}}.

+ +

Standard

+ +
+
{{domxref("NavigatorID.appCodeName")}} {{readonlyInline}}{{experimental_inline}}
+
Returns the internal "code" name of the current browser. Do not rely on this property to return the correct value.
+
{{domxref("NavigatorID.appName")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("DOMString")}} with the official name of the browser. Do not rely on this property to return the correct value.
+
{{domxref("NavigatorID.appVersion")}} {{readonlyInline}}{{experimental_inline}}
+
Returns the version of the browser as a {{domxref("DOMString")}}. Do not rely on this property to return the correct value.
+
{{domxref("Navigator.battery")}} {{readonlyInline}}
+
Returns a {{domxref("BatteryManager")}} object you can use to get information about the battery charging status.
+
{{domxref("NetworkInformation.connection")}} {{readonlyInline}}{{experimental_inline}}
+
Provides a {{domxref("Connection")}} with information about the network connection of a device.
+
{{domxref("NavigatorGeolocation.geolocation")}} {{readonlyInline}}
+
Returns a {{domxref("Geolocation")}} object allowing accessing the location of the device.
+
{{domxref("NavigatorPlugins.javaEnabled")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("Boolean")}} flag indicating whether the host browser is Java-enabled or not.
+
{{domxref("NavigatorLanguage.language")}} {{readonlyInline}}
+
Returns a {{domxref("DOMString")}} representing the preferred language of the user, usually the language of the browser UI. The null value is returned when this is unknown.
+
{{domxref("NavigatorLanguage.languages")}} {{readonlyInline}}
+
Returns an array of {{domxref("DOMString")}} representing the languages known to the user, by order of preference.
+
{{domxref("NavigatorPlugins.mimeTypes")}} {{readonlyInline}}{{experimental_inline}}
+
Returns an {{domxref("MimeTypeArray")}} listing the MIME types supported by the browser.
+
{{domxref("NavigatorOnLine.onLine")}} {{readonlyInline}}
+
Returns a {{domxref("Boolean")}} indicating whether the browser is working online.
+
{{domxref("Navigator.oscpu")}}
+
Returns a string that represents the current operating system.
+
{{domxref("NavigatorID.platform")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a string representing the platform of the browser. Do not rely on this function to return a significant value.
+
{{domxref("NavigatorPlugins.plugins")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("PluginArray")}} listing the plugins installed in the browser.
+
{{domxref("NavigatorID.product")}} {{readonlyInline}} {{experimental_inline}}
+
Always returns 'Gecko', on any browser. This property is kept only for compatibility purpose.
+
{{domxref("NavigatorID.userAgent")}} {{readonlyInline}}
+
Returns the user agent string for the current browser.
+
{{domxref("Navigator.serviceWorker")}} {{readonlyInline}}
+
Returns a {{domxref("ServiceWorkerContainer")}} object, which provides access to registration, removal, upgrade, and communication with the {{domxref("ServiceWorker")}} objects for the associated document.
+
+ +

Non-standard

+ +
+
{{domxref("window.navigator.buildID", "navigator.buildID")}} {{non-standard_inline}}
+
Returns the build identifier of the browser (e.g., "2006090803").
+
{{domxref("Navigator.cookieEnabled")}} {{non-standard_inline}}
+
Returns a boolean indicating whether cookies are enabled in the browser or not.
+
{{domxref("navigator.doNotTrack")}} {{non-standard_inline}}
+
Reports the value of the user's do-not-track preference. When this value is "yes", your web site or application should not track the user.
+
{{domxref("navigator.id")}} {{non-standard_inline}}
+
Returns the {{domxref("window.navigator.id", "id")}} object which you can use to add support for BrowserID to your web site.
+
{{domxref("window.navigator.mozApps", "navigator.mozApps")}} {{non-standard_inline}}
+
Returns an {{domxref("window.navigator.mozApps", "Apps")}} object you can use to install, manage, and control Open Web apps.
+
{{domxref("Navigator.mozAudioChannelManager", "navigator.mozAudioChannelManager")}} {{non-standard_inline}}
+
The navigator.mozAudioChannelManager object provides access to the {{domxref("mozAudioChannelManager")}} interface, which is used to manage your Firefox OS device's audio channels, including setting what channel's volume to affect when the volume buttons are pressed inside a particular app.
+
{{domxref("window.navigator.mozNotification","navigator.mozNotification")}} {{deprecated_inline("22")}} {{non-standard_inline}}
+ {{domxref("window.navigator.webkitNotification","navigator.webkitNotification")}}
+
Returns a {{domxref("navigator.mozNotification", "notification")}} object you can use to deliver notifications to the user from your web application.
+
{{domxref("navigator.mozSocial")}} {{non-standard_inline}}
+
The Object, returned by the navigator.mozSocial property, is available within the social media provider's panel to provide functionality it may need.
+
{{domxref("window.navigator.productSub", "navigator.productSub")}} {{non-standard_inline}}
+
Returns the build number of the current browser (e.g., "20060909").
+
{{domxref("window.navigator.securitypolicy", "navigator.securitypolicy")}} {{non-standard_inline}}
+
Returns an empty string. In Netscape 4.7x, returns "US & CA domestic policy" or "Export policy".
+
{{domxref("window.navigator.standalone", "navigator.standalone")}} {{non-standard_inline}}
+
Returns a boolean indicating whether the browser is running in standalone mode. Available on Apple's iOS Safari only.
+
{{domxref("window.navigator.vendor", "navigator.vendor")}} {{non-standard_inline}}
+
Returns the vendor name of the current browser (e.g., "Netscape6").
+
{{domxref("window.navigator.vendorSub", "navigator.vendorSub")}} {{non-standard_inline}}
+
Returns the vendor version number (e.g. "6.1").
+
navigator.webkitPointer {{non-standard_inline}}
+
Returns a PointerLock object for the Mouse Lock API.
+
+ +

Methods

+ +

Doesn't inherit any method, but implements those defined in {{domxref("NavigatorID")}}, {{domxref("NavigatorContentUtils")}}, {{domxref("NavigatorUserMedia")}}, and {{domxref("NavigatorStorageUtils")}}.

+ +

Standard

+ +
+
{{domxref("NavigatorUserMedia.getUserMedia()")}}
+
After having prompted the user for permission, returns the audio or video stream associated to a camera or microphone on the local computer.
+
{{domxref("window.navigator.registerContentHandler", "navigator.registerContentHandler")}}
+
Allows web sites to register themselves as a possible handler for a given MIME type.
+
{{domxref("navigator.registerProtocolHandler", "navigator.registerProtocolHandler")}}
+
Allows web sites to register themselves as a possible handler for a given protocol.
+
{{domxref("NavigatorID.taintEnabled()")}} {{deprecated_inline("1.7.8")}} {{obsolete_inline("9.0")}} {{experimental_inline}}
+
Returns false. JavaScript taint/untaint functions removed in JavaScript 1.2.
+
{{domxref("Navigator.vibrate()")}} {{gecko_minversion_inline("11.0")}}
+
Causes vibration on devices with support for it. Does nothing if vibration support isn't available.
+
+ +

Non standard

+ +
+
{{domxref("window.navigator.mozIsLocallyAvailable", "navigator.mozIsLocallyAvailable")}} {{non-standard_inline}}
+
Lets code check to see if the document at a given URI is available without using the network.
+
{{domxref("window.navigator.mozPay", "navigator.mozPay")}} {{non-standard_inline}}
+
Allows in-app payment.
+
{{domxref("window.navigator.preference", "navigator.preference")}} {{obsolete_inline("2.0")}} {{non-standard_inline}}
+
Sets a user preference. This method is only available to privileged code and is obsolete; you should use the XPCOM Preferences API instead.
+
{{domxref("window.navigator.requestWakeLock", "navigator.requestWakeLock")}} {{non-standard_inline}}
+
Request a wake lock for a resource. A wake lock prevents a specific part of a device from being turned off automatically.
+
diff --git a/files/pl/web/api/navigator/javaenabled/index.html b/files/pl/web/api/navigator/javaenabled/index.html new file mode 100644 index 0000000000..291d27782e --- /dev/null +++ b/files/pl/web/api/navigator/javaenabled/index.html @@ -0,0 +1,39 @@ +--- +title: NavigatorPlugins.javaEnabled +slug: Web/API/Navigator/javaEnabled +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorPlugins/javaEnabled +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Ta metoda wskazuje czy w aktualnej przeglądarce została włączona obsługa Javy.

+ +

Składnia

+ +
result = window.navigator.javaEnabled()
+
+ +

Przykład

+ +
if (window.navigator.javaEnabled()) {
+   // przeglądarka posiada Javę
+}
+
+ +

Uwagi

+ +

Zwracana przez tę metodę wartość wskazuje czy Java jest włączona czy też nie - a nie czy przeglądarka w ogóle obsługuje Javę.

+ +

Specyfikacja

+ +

DOM Level 0. Nie jest częścią specyfikacji.

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.javaEnabled", "ja": "ja/DOM/window.navigator.javaEnabled" } ) }}

diff --git a/files/pl/web/api/navigator/language/index.html b/files/pl/web/api/navigator/language/index.html new file mode 100644 index 0000000000..1dcc4daabc --- /dev/null +++ b/files/pl/web/api/navigator/language/index.html @@ -0,0 +1,45 @@ +--- +title: NavigatorLanguage.language +slug: Web/API/Navigator/language +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorLanguage/language +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący wersję językową przeglądarki.

+ +

Składnia

+ +
lang = window.navigator.language
+
+ +

Parametry

+ + + +

Przykład

+ +
if ( window.navigator.language != "pl" ) {
+ doLangSelect(window.navigator.language);
+}
+
+ +

Uwagi

+ +

Ta własność pojawia się również jako część łańcucha znaków navigator.userAgent.

+ +

Specyfikacja

+ +

DOM Level 0. Nie jest częścią specyfikacji.

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.language", "ja": "ja/DOM/window.navigator.language" } ) }}

diff --git a/files/pl/web/api/navigator/mimetypes/index.html b/files/pl/web/api/navigator/mimetypes/index.html new file mode 100644 index 0000000000..371e75eff2 --- /dev/null +++ b/files/pl/web/api/navigator/mimetypes/index.html @@ -0,0 +1,40 @@ +--- +title: NavigatorPlugins.mimeTypes +slug: Web/API/Navigator/mimeTypes +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorPlugins/mimeTypes +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca obiekt MimeTypeArray, który zawiera listę obiektów MimeType reprezentujących typy MIME rozpoznawane przez przeglądarkę.

+ +

Składnia

+ +
mimeTypes = navigator.mimeTypes;
+
+ +

mimeTypes jest obiektem MimeTypeArray, który posiada zarówno własność length jak i metody item(index) oraz namedItem(name).

+ +

Przykład

+ +
  alert(window.navigator.mimeTypes.item(0).description); // wyświetli ostrzeżenie "Mozilla Default Plug-in"
+
+ +

Uwagi

+ +

Wartością własności type w zerowym elemencie (obiekt MimeType "Mozilla Default Plug-in") jest * zamiast typowego formatu MIME jak np. "image/x-macpaint"

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.mimeTypes", "ja": "ja/DOM/window.navigator.mimeTypes" } ) }}

diff --git a/files/pl/web/api/navigator/mozpermissionsettings/index.html b/files/pl/web/api/navigator/mozpermissionsettings/index.html new file mode 100644 index 0000000000..df0966e04e --- /dev/null +++ b/files/pl/web/api/navigator/mozpermissionsettings/index.html @@ -0,0 +1,33 @@ +--- +title: Navigator.mozPermissionSettings +slug: Web/API/Navigator/mozPermissionSettings +translation_of: Archive/B2G_OS/API/Navigator/mozPermissionSettings +--- +

{{APIRef("Firefox OS")}}{{ non-standard_header() }}

+ +

{{ B2GOnlyHeader2('certified') }}

+ +

Summary

+ +

Returns a {{ domxref("PermissionSettings") }} object you can use to get and set permissions of apps on the Firefox OS platform.

+ +

Syntax

+ +
var permissions = window.navigator.mozPermissionSettings;
+
+ +

Value

+ +

navigator.mozPermissionSettings is a {{domxref("PermissionSettings")}} object.

+ +

Specification

+ +

Not part of any specification.

+ +

See also

+ + diff --git a/files/pl/web/api/navigator/online/index.html b/files/pl/web/api/navigator/online/index.html new file mode 100644 index 0000000000..20bbd73fb0 --- /dev/null +++ b/files/pl/web/api/navigator/online/index.html @@ -0,0 +1,47 @@ +--- +title: NavigatorOnLine.onLine +slug: Web/API/Navigator/onLine +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorOnLine/onLine +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca wartość logiczną wskazującą czy przeglądarka jest w trybie online, czy nie.

+ +

Składnia

+ +
online =
+window.navigator.onLine;
+
+ + + +

Przykład

+ +
alert(navigator.onLine ? "Jesteś online" : "Jesteś offline");
+
+ +

Uwagi

+ +

Zobacz Zdarzenia Online/Offline‎, aby uzyskać bardziej szczegółowy opis tej własności, jak również nowych funkcji związanych z trybem offline, wprowadzonych w Firefoksie 3.

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +

Opisana w szkicu roboczym HTML 5

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.onLine", "fr": "fr/DOM/window.navigator.onLine", "ja": "ja/DOM/window.navigator.onLine" } ) }}

diff --git a/files/pl/web/api/navigator/oscpu/index.html b/files/pl/web/api/navigator/oscpu/index.html new file mode 100644 index 0000000000..69a9f9deb4 --- /dev/null +++ b/files/pl/web/api/navigator/oscpu/index.html @@ -0,0 +1,41 @@ +--- +title: Navigator.oscpu +slug: Web/API/Navigator/oscpu +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Navigator/oscpu +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący bieżący system operacyjny.

+ +

Składnia

+ +
oscpuInfo = window.navigator.oscpu
+
+ + + +

Przykład

+ +
function osInfo() {
+alert(window.navigator.oscpu);
+}
+// zwraca: Windows NT 6.0
+
+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.oscpu", "ja": "ja/DOM/window.navigator.oscpu" } ) }}

diff --git a/files/pl/web/api/navigator/platform/index.html b/files/pl/web/api/navigator/platform/index.html new file mode 100644 index 0000000000..3a73ee3c2e --- /dev/null +++ b/files/pl/web/api/navigator/platform/index.html @@ -0,0 +1,28 @@ +--- +title: window.navigator.platform +slug: Web/API/Navigator/platform +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorID/platform +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca łańcuch znaków reprezentujący platformę przeglądarki.

+

Składnia

+
platform =navigator.platform
+
+

platform jest łańcuchem znaków z jedną z następujących wartości: "Win32", "Linux i686", "MacPPC", "MacIntel" lub inną.

+

Przykład

+
alert(navigator.platform);
+
+

Uwagi

+

Jeśli Twój kod nie jest uprzywilejowany (chrome lub przynajmniej kod z uprawnieniem UniversalBrowserRead), może on otrzymać wartość opcji <tt>general.platform.override</tt> zamiast prawdziwej platformy.

+

Specyfikacja

+

{{ DOM0() }}

+
+  
+

{{ languages( { "en": "en/DOM/window.navigator.platform", "ja": "ja/DOM/window.navigator.platform" } ) }}

diff --git a/files/pl/web/api/navigator/plugins/index.html b/files/pl/web/api/navigator/plugins/index.html new file mode 100644 index 0000000000..c60d9f6614 --- /dev/null +++ b/files/pl/web/api/navigator/plugins/index.html @@ -0,0 +1,58 @@ +--- +title: NavigatorPlugins.plugins +slug: Web/API/Navigator/plugins +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorPlugins/plugins +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca obiekt PluginArray będący listą wszystkich wtyczek zainstalowanych w aplikacji.

+ +

Składnia

+ +
plugins = navigator.plugins;
+
+ +

plugins jest tabelą PluginArray zawierającą obiekty Plugin reprezentujące zainstalowane wtyczki.

+ +

Zwrócona wartość nie jest jest tablicą JavaScript, ale posiada własność length i obsługuje dostęp do poszczególnych elementów za pomocą notacji nawiasowej (plugins{{ mediawiki.external(2) }}) jak również poprzez metody item(index ) i namedItem("name" ).

+ +

Przykład

+ +

Poniższy przykład wyświetla wewnątrz zaawansowanego dokumentu informacje o zainstalowanych wtyczkach. Zauważ własności dostępne w obiekcie Plugin: name, filename i description.

+ +
<script type="text/javascript">
+   var L = navigator.plugins.length;
+   document.write(L.toString().bold() + " Plugin(s)".bold());
+   document.write("<br>");
+   document.write("Nazwa wtyczki | Nazwa pliku | Opis".bold());
+   document.write("<br>");
+   for(var i=0; i<L; i++) {
+     document.write(navigator.plugins[i].name);
+     document.write(" | ");
+     document.write(navigator.plugins[i].filename);
+     document.write(" | ");
+     document.write(navigator.plugins[i].description);
+     document.write("<br>");
+   }
+</script>
+
+ +

Uwagi

+ +

Obiekt Plugin wyświetla skromny interfejs w celu uzyskania informacji o różnych wtyczkach zainstalowanych w przeglądarce. Lista wtyczek jest również dostępna poprzez wprowadzenie about:plugins w pasku adresu.

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.plugins", "ja": "ja/DOM/window.navigator.plugins" } ) }}

diff --git a/files/pl/web/api/navigator/product/index.html b/files/pl/web/api/navigator/product/index.html new file mode 100644 index 0000000000..50d34a4a66 --- /dev/null +++ b/files/pl/web/api/navigator/product/index.html @@ -0,0 +1,38 @@ +--- +title: window.navigator.product +slug: Web/API/Navigator/product +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/NavigatorID/product +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Własność ta zwraca nazwę produktu bieżącej przeglądarki.

+

Składnia

+
productName = window.navigator.product
+
+

Parametry

+ +

Przykład

+
<script>
+function prod() {
+  dt = document.getElementById("d");
+  dt.innerHTML = window.navigator.product;
+}
+</script>
+<button onclick="prod();">produkt</button>
+<div id="d"> </div>
+// zwraca "Gecko"
+
+

Uwagi

+

Produkt jest tą częścią pełnego łańcucha identyfikatora przeglądarki, która następuje bezpośrednio po platformie. Na przykład, w identyfikatorze przeglądarki dla Netscape 6.1 produktem jest "Gecko", a pełny ciąg identyfikatora przeglądarki jest następujący: Mozilla/5.0 (Windows; U; Win98; en-US; rv:0.9.2) Gecko/20010725 Netscape6/6.1

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.navigator.product", "ja": "ja/DOM/window.navigator.product" } ) }}

diff --git a/files/pl/web/api/navigator/productsub/index.html b/files/pl/web/api/navigator/productsub/index.html new file mode 100644 index 0000000000..e5e580cbe9 --- /dev/null +++ b/files/pl/web/api/navigator/productsub/index.html @@ -0,0 +1,52 @@ +--- +title: Navigator.productSub +slug: Web/API/Navigator/productSub +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Navigator/productSub +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

productSub zwraca numer kompilacji bieżącej przeglądarki.

+ +

Składnia

+ +
prodSub = window.navigator.productSub
+
+ +

Parameters

+ + + +

Przykład

+ +
<script>
+function prodsub() {
+  dt = document.getElementById("d").childNodes[0];
+  dt.data = window.navigator.productSub;
+}
+</script>
+<button onclick="prodsub();">productSub</button>
+// zwraca: 20010725
+
+ +

Uwagi

+ +

W IE własność ta zwraca wartość nieokreśloną.

+ +

W Apple Safari własność zawsze zwraca 20030107.

+ +

Specyfikacja

+ +

DOM Level 0. Nie jest częścią specyfikacji.

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.productSub", "ja": "ja/DOM/window.navigator.productSub" } ) }}

diff --git a/files/pl/web/api/navigator/registercontenthandler/index.html b/files/pl/web/api/navigator/registercontenthandler/index.html new file mode 100644 index 0000000000..58f6f5dd39 --- /dev/null +++ b/files/pl/web/api/navigator/registercontenthandler/index.html @@ -0,0 +1,49 @@ +--- +title: Navigator.registerContentHandler +slug: Web/API/Navigator/registerContentHandler +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Navigator/registerContentHandler +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Pozwala stronom na zarejestrowanie się jako możliwe serwisy obsługujące zawartości konkretnego typu MIME.

+ +

{{ Note("Strony internetowe mogą zarejestrować tylko siebie jako serwisy obsługujące zawartość. Ze względów bezpieczeństwa nie jest możliwe, aby rozszerzenie lub strona internetowa zarejestrowały inną stronę do obsługi zawartości.") }}

+ +

Składnia

+ +
window.navigator.registerContentHandler(mimeType,
+uri,
+title);
+
+ + + +

Przykład

+ +
navigator.registerContentHandler("application/vnd.mozilla.maybe.feed",
+                                 "http://www.przyklad.tld/?foo=%s",
+                                 "Mój Czytnik Kanałów");
+
+ +

Uwagi

+ +

W Firefoksie 2 obsługiwane są tylko typy MIME application/vnd.mozilla.maybe.feed, application/atom+xml oraz application/rss+xml. Wszystkie wartości mają ten sam efekt, a zarejestrowane strony obsługujące otrzymają kanały we wszystkich wersjach Atom i RSS.

+ +

Specyfikacja

+ +

Określona przez szkic roboczy Web Applications 1.0 organizacji WHATWG.

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.registerContentHandler", "ja": "ja/DOM/window.navigator.registerContentHandler" } ) }}

diff --git a/files/pl/web/api/navigator/registerprotocolhandler/index.html b/files/pl/web/api/navigator/registerprotocolhandler/index.html new file mode 100644 index 0000000000..b5b040b91d --- /dev/null +++ b/files/pl/web/api/navigator/registerprotocolhandler/index.html @@ -0,0 +1,66 @@ +--- +title: Navigator.registerProtocolHandler +slug: Web/API/Navigator/registerProtocolHandler +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Firefox 3 + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Navigator/registerProtocolHandler +--- +

{{ ApiRef() }} {{ Fx_minversion_header(3) }}

+ +

Podsumowanie

+ +

Umożliwia zarejestrowanie witryny internetowej jako mechanizmu obsługi danego protokołu.

+ +

Składnia

+ +
window.navigator.registerProtocolHandler(protokół,
+uri,
+nazwa);
+
+ + + +

Przykład

+ +

Poniżej podano sposób rejestracji mechanizmu obsługi protokołu + mailto + przez przykładową aplikację internetową znajdującą się pod adresem http://www.example.com:

+ +
navigator.registerProtocolHandler("mailto",
+                                 "https://www.example.com/?uri=%s",
+                                 "Poczta internetowa");
+
+ +

W powyższym kodzie tworzona jest funkcja obsługi odnośników + mailto + , która powoduje przejście do przykładowej strony. Adres e-mail określony w odnośniku jest wstawiany do adresu URL.

+ +

Specyfikacja

+ +

Określone w specyfikacji WHATWG Web Applications 1.0, wersja robocza.

+ +

Zobacz także

+ + + +

 

+ +

 

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.navigator.registerProtocolHandler", "es": "es/DOM/window.navigator.registerProtocolHandler", "fr": "fr/DOM/window.navigator.registerProtocolHandler", "ja": "ja/DOM/window.navigator.registerProtocolHandler", "ko": "ko/DOM/window.navigator.registerProtocolHandler" } ) }}

diff --git a/files/pl/web/api/navigator/registerprotocolhandler/web-based_protocol_handlers/index.html b/files/pl/web/api/navigator/registerprotocolhandler/web-based_protocol_handlers/index.html new file mode 100644 index 0000000000..2a9863088c --- /dev/null +++ b/files/pl/web/api/navigator/registerprotocolhandler/web-based_protocol_handlers/index.html @@ -0,0 +1,107 @@ +--- +title: Obsługa protokołów przez aplikacje WWW +slug: Web/API/Navigator/registerProtocolHandler/Web-based_protocol_handlers +translation_of: Web/API/Navigator/registerProtocolHandler/Web-based_protocol_handlers +--- +

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU {{ Fx_minversion_header(3) }} +

+

Wprowadzenie

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +Często na stronach internetowych znaleźć można odnośniki do zasobów korzystających z protokołów innych niż http. Przykładem jednego z nich jest protokół mailto: +

+
<a href="mailto:webmaster@example.com">Napisz do webmastera</a>
+
+

Twórcy witryn internetowych używają odnośników mailto:, kiedy chcą zapewnić użytkownikom wygodny sposób na wysłanie wiadomości e-mail z poziomu strony WWW. Kiedy użytkownik aktywuje odnośnik, przeglądarka zwykle uruchamia domyślny program pocztowy określony w ustawieniach systemu operacyjnego. Można to określić jako desktopowy sposób obsługi protokołów. +

Aplikacje WWW również mogą zapewnić obsługę takich protokołów. Od kiedy coraz więcej rodzajów aplikacji przenoszonych jest do środowiska WWW, potrzeba takiej integracji jest coraz bardziej wyraźna. W istocie, istnieje szereg aplikacji WWW do obsługi poczty elektronicznej, które mogłyby przetwarzać odnośniki mailto. +

+

Rejestracja

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +

Ustawienie aplikacji jako mechanizmu obsługującego protokół nie jest skomplikowane. W zasadzie wystarczy, by witryna skorzystała z metody registerProtocolHandler(), by zarejestrować się w przeglądarce jako potencjalny mechanizm obsługi danego protokołu. Na przykład: +

+
navigator.registerProtocolHandler("mailto",
+                                  "https://www.example.com/?uri=%s",
+                                  "Przykładowa poczta");
+
+

gdzie parametrami są: +

+ +

Przeglądarka wykonując tę metodę wyświetli okno, w którym użytkownik będzie mógł wyrazić zgodę na zarejestrowanie aplikacji WWW jako mechanizmu obsługi protokołu. Firefox wyświetla następujące pytanie w obszarze powiadomień: +

Image:wph-notification.png +

{{ Note() }} +

+

Przykład

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html lang="pl">
+<head>
+  <title>Przykład rejestracji obsługi protokołów</title>
+  <script type="text/javascript">
+    navigator.registerProtocolHandler("fikcyjny", "http://starkravingfinkle.org/projects/wph/handler.php?value=%s", "Fikcyjny protokół");
+  </script>
+</head>
+<body>
+  <h1>Przykład rejestracji obsługi protokołów</h1>
+  <p>Strona ta zainstaluje mechanizm obsługi protokołów dla protokołu <code>fikcyjny:</code>.</p>
+</body>
+</html>
+
+

Aktywacja

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +Od tej pory kiedykolwiek użytkownik aktywuje odnośnik do zasobu o zarejestrowanym protokole, przeglądarka przekieruje żądanie do adresu URL dostarczonego podczas rejestracji. Firefox domyślnie poprosi uprzednio użytkownika o potwierdzenie tej czynności. +

Image:wph-launch.png +

+

Przykład

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html lang="pl">
+<head>
+  <title>Test obsługi protokołów</title>
+</head>
+<body>
+  <p>Widzieliście już kiedyś <a href="fikcyjny:to%20nie%20istnieje">coś takiego</a>?</p>
+</body>
+</html>
+
+

Obsługa protokołu

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +Kolejnym etapem jest obsłużenie żądania. Przeglądarka pobiera atrybut href odnośnika, łączy go z szablonem adresów URL podanym podczas rejestracji mechanizmu obsługi i wysyła do serwera żądanie HTTP GET z wynikowym adresem. Dla powyższego przykładu przeglądarka wyśle żądanie GET o następującym adresie: +

+
http://starkravingfinkle.org/projects/wph/handler.php?value=fikcyjny:to%20nie%20istnieje
+
+

Po stronie serwera można odebrać przekazany adres URL i wykonać żądane akcje. +

{{ Note("Kod po stronie serwera dostanie całą zawartość atrybutu href. Oznacza to, że serwer będzie musiał podczas przetworzyć otrzymany adres URL i oddzielić protokół od danych.") }} +

+

Przykład

+

UWAGA: PROSZE NIE UZYWAC EDYTOWANIA FRAGMENTOW, PSUJE ONO TRESC ARTYKULU +

+
<?php
+$value = "";
+if ( isset ( $_GET["value"] ) ) {
+  $value = $_GET["value"];
+}
+?>
+
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html lang="pl">
+<head>
+    <title>Obsługa protokołów - przykład</title>
+</head>
+<body>
+  <h1>Obsługa protokołów - przykład</h1>
+  <p>Strona ta otwierana jest po aktywowaniu odnośnika do zasobu o protokole <code>fikcyjny:</code>. Otrzymane dane:</p>
+  <textarea>
+<?php echo(urldecode($value)) ?>
+  </textarea>
+</body>
+</html>
+
+


+

+
+
+{{ languages( { "en": "en/Web-based_protocol_handlers", "fr": "fr/Gestionnaires_de_protocoles_web", "ja": "ja/Web-based_protocol_handlers" } ) }} diff --git a/files/pl/web/api/navigatorlanguage/index.html b/files/pl/web/api/navigatorlanguage/index.html new file mode 100644 index 0000000000..7d6b0751e7 --- /dev/null +++ b/files/pl/web/api/navigatorlanguage/index.html @@ -0,0 +1,148 @@ +--- +title: NavigatorLanguage +slug: Web/API/NavigatorLanguage +tags: + - API + - HTML-DOM + - NeedsTranslation + - No Interface + - Reference + - TopicStub +translation_of: Web/API/NavigatorLanguage +--- +

{{APIRef("HTML DOM")}}

+ +

NavigatorLanguage contains methods and properties related to the language of the navigator.

+ +

There is no object of type NavigatorLanguage, but other interfaces, like {{domxref("Navigator")}} or {{domxref("WorkerNavigator")}}, implement it.

+ +

Properties

+ +

The NavigatorLanguage interface doesn't inherit any property.

+ +
+
{{domxref("NavigatorLanguage.language")}} {{readonlyInline}}
+
Returns a {{domxref("DOMString")}} representing the preferred language of the user, usually the language of the browser UI. The null value is returned when this is unknown.
+
{{domxref("NavigatorLanguage.languages")}} {{readonlyInline}}
+
Returns an array of {{domxref("DOMString")}} representing the languages known to the user, by order of preference.
+
+ +

Methods

+ +

The NavigatorLanguage interface neither implements, nor inherit any method.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', '#navigatorlanguage', 'NavigatorLanguage')}}{{Spec2('HTML WHATWG')}}Since the {{SpecName('HTML5 W3C')}} snapshot, the languages property has been added.
{{SpecName('HTML5 W3C', '#navigatorlanguage', 'NavigatorLanguage')}}{{Spec2('HTML5 W3C')}}Initial specification; snapshot of  an early version{{SpecName('HTML WHATWG')}}.
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
languages37{{CompatGeckoDesktop("32")}}{{CompatNo}}24{{CompatNo}}
on {{domxref("WorkerNavigator")}}{{CompatUnknown}}{{CompatGeckoDesktop("35")}}{{CompatNo}}{{CompatUnknown}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
languages{{CompatUnknown}}{{CompatUnknown}} {{CompatGeckoMobile("32")}}{{CompatNo}}{{CompatUnknown}}{{CompatNo}}
on {{domxref("WorkerNavigator")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("35")}}{{CompatNo}}{{CompatUnknown}}{{CompatNo}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/navigatoronline/index.html b/files/pl/web/api/navigatoronline/index.html new file mode 100644 index 0000000000..11f6707c43 --- /dev/null +++ b/files/pl/web/api/navigatoronline/index.html @@ -0,0 +1,127 @@ +--- +title: NavigatorOnLine +slug: Web/API/NavigatorOnLine +tags: + - API + - HTML-DOM + - NeedsTranslation + - TopicStub +translation_of: Web/API/NavigatorOnLine +--- +

{{APIRef("HTML DOM")}}

+ +

The NavigatorOnLine interface contains methods and properties related to the connectivity status of the browser.

+ +

There is no object of type NavigatorOnLine, but other interfaces, like {{domxref("Navigator")}} or {{domxref("WorkerNavigator")}}, implement it.

+ +

Properties

+ +

The NavigatorOnLine interface doesn't inherit any property.

+ +
+
{{domxref("NavigatorOnLine.onLine")}} {{readonlyInline}}
+
Returns a {{domxref("Boolean")}} indicating whether the browser is working online.
+
+ +

Methods

+ +

The NavigatorOnLine interface neither implements, nor inherit any method.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', '#navigatoronline', 'NavigatorOnLine')}}{{Spec2('HTML WHATWG')}}No change from the latest snapshot, {{SpecName('HTML5 W3C')}}
{{SpecName('HTML5 W3C', '#navigatoronline', 'NavigatorOnLine')}}{{Spec2('HTML5 W3C')}}Snapshot of {{SpecName('HTML WHATWG')}} with its initial specification.
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
on {{domxref("WorkerNavigator")}}{{CompatUnknown}}{{CompatGeckoDesktop(29)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
on {{domxref("WorkerNavigator")}}{{CompatUnknown}}{{CompatGeckoMobile(29)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/navigatoronline/zdarzenia_online_i_offline/index.html b/files/pl/web/api/navigatoronline/zdarzenia_online_i_offline/index.html new file mode 100644 index 0000000000..d286acc4b0 --- /dev/null +++ b/files/pl/web/api/navigatoronline/zdarzenia_online_i_offline/index.html @@ -0,0 +1,84 @@ +--- +title: Zdarzenia online i offline +slug: Web/API/NavigatorOnLine/Zdarzenia_online_i_offline +tags: + - AJAX + - DOM + - Programowanie_WWW + - Wszystkie_kategorie +translation_of: Web/API/NavigatorOnLine/Online_and_offline_events +--- +

{{ Fx_minversion_header(3) }} W programie Firefox 3 zaimplementowano obsługę zdarzeń online i offline zdefiniowanych w specyfikacji WHATWG Web Applications 1.0. +

+

Omówienie

+

Do stworzenia dobrej aplikacji internetowej działającej w trybie offline konieczne jest istnienie sposobu na sprawdzenie, kiedy aplikacja faktycznie znajduje się w trybie offline. W niektórych przypadkach potrzebna jest także możliwość stwierdzenia, czy aplikacja powróciła do stanu „online”. W praktyce sprowadza się to do dwóch wymagań: +

+
  1. Konieczne jest stwierdzenie, kiedy użytkownik przełącza przeglądarkę w tryb online, aby można było przeprowadzić ponowną synchronizację z serwerem.
  2. Konieczne jest stwierdzenie, kiedy użytkownik przełącza przeglądarkę w tryb offline, aby można było odłożyć wysłanie żądania do serwera na później.
+

Zdarzenia online i offline pozwalają na uproszczenie powyższych procedur.

W aplikacji internetowej może także być konieczne wymuszenie przechowywania określonych dokumentów w pamięci podręcznej zasobów offline. W tym celu w kodzie sekcji HEAD należy wstawić znacznik LINK przedstawiony poniżej: +

+
<link rel="offline-resource" href="mój_zasób">
+
+

Przy przetwarzaniu kodu HTML przez program Firefox w wersji 3 lub nowszej dokumenty wymienione w znaczniku zostaną zapisane w specjalnej pamięci podręcznej zasobów offline. +

+

Interfejs API

+ +

navigator.onLine to własność, która zwraca wartość true lub false (true dla trybu online, false dla trybu offline). Własność ta jest aktualizowana za każdym razem, gdy użytkownik przełącza przeglądarkę w tryb offline, wybierając odpowiednie polecenie menu (w programie Firefox: Plik -> Pracuj w trybie offline). +

Ponadto ta własność powinna być aktualizowana zawsze, gdy w przeglądarce nie można nawiązać połączenia z siecią. Zgodnie ze specyfikacją: +

+
+Atrybut navigator.onLine musi zwracać wartość false, jeżeli w programie po kliknięciu odsyłacza przez użytkownika lub po wysłaniu przez skrypt żądania do zdalnej witryny nie można połączyć się z siecią (lub wiadomo, że taka próba nie powiedzie się)... +
+

W programie Firefox 2 ta własność jest aktualizowana przy przełączaniu przeglądarki między trybami online i offline oraz przy utracie lub ponownym nawiązaniu połączenia z siecią (dotyczy systemów Windows i Linux). +

Własność istnieje w starszych wersjach przeglądarek Firefox i Internet Explorer (obecna specyfikacja została oparta na tych właśnie wcześniejszych implementacjach), można zatem korzystać z niej już teraz. Automatyczne wykrywanie stanu połączenia sieciowego zostało wprowadzone w programie Firefox 2.

+

Zdarzenia "online" i "offline"

+

W programie Firefox 3 wprowadzono dwa nowe zdarzenia: "online" i "offline". Są one wywoływane w elemencie <body> każdej otwartej strony, gdy przeglądarka jest przełączana między trybem online i offline. Ponadto zdarzenie bąbelkuje od elementu document.body, poprzez element document, aż do elementu window. Żadnego ze zdarzeń nie można anulować (niemożliwe jest zablokowanie możliwości przełączania przeglądarki między trybami online i offline). +

Obserwatory (ang. event listeners) tych zdarzeń można zarejestrować na kilka sposobów: +

+ +

Przykład

+

Dostępny jest prosty przykład zastosowania, który pozwala na sprawdzenie działania zdarzeń. +XXX When mochitests for this are created, point to those instead and update this example -nickolay +

+
 <!doctype html>
+ <html>
+ <head>
+   <script>
+     function updateOnlineStatus(msg) {
+       var status = document.getElementById("status");
+       var condition = navigator.onLine ? "ONLINE" : "OFFLINE";
+       status.setAttribute("class", condition);
+       var state = document.getElementById("state");
+       state.innerHTML = condition;
+       var log = document.getElementById("log");
+       log.appendChild(document.createTextNode("Zdarzenie: " + msg + "; stan=" + condition + "\n"));
+     }
+     function loaded() {
+       updateOnlineStatus("load");
+       document.body.addEventListener("offline", function () {
+         updateOnlineStatus("offline")
+       }, false);
+       document.body.addEventListener("online", function () {
+         updateOnlineStatus("online")
+       }, false);
+     }
+   </script>
+   <style>...</style>
+ </head>
+ <body onload="loaded()">
+   <div id="status"><p id="state"></p></div>
+   <div id="log"></div>
+ </body>
+ </html>
+
+

Odsyłacze

+ +
+
+{{ languages( { "en": "en/Online_and_offline_events", "es": "es/Eventos_online_y_offline", "fr": "fr/\u00c9v\u00e8nements_online_et_offline", "ja": "ja/Online_and_offline_events", "pt": "pt/Eventos_online_e_offline" } ) }} diff --git a/files/pl/web/api/navigatorplugins/index.html b/files/pl/web/api/navigatorplugins/index.html new file mode 100644 index 0000000000..c009a19a07 --- /dev/null +++ b/files/pl/web/api/navigatorplugins/index.html @@ -0,0 +1,111 @@ +--- +title: NavigatorPlugins +slug: Web/API/NavigatorPlugins +tags: + - API + - Experimental + - HTML-DOM + - NeedsTranslation + - TopicStub +translation_of: Web/API/NavigatorPlugins +--- +

{{APIRef("HTML DOM")}}{{SeeCompatTable}}

+ +

The NavigatorPlugins interface contains methods and properties related to the plugins installed in the browser.

+ +

There is no object of type NavigatorPlugins, but other interfaces, like {{domxref("Navigator")}}, implement it.

+ +

Properties

+ +
+
{{domxref("NavigatorPlugins.mimeTypes")}} {{readonlyInline}}{{experimental_inline}}
+
Returns an {{domxref("MimeTypeArray")}} listing the MIME types supported by the browser.
+
{{domxref("NavigatorPlugins.plugins")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("PluginArray")}} listing the plugins installed in the browser.
+
+ +

Methods

+ +

The NavigatorPlugins interface doesn't inherit any method.

+ +
+
{{domxref("NavigatorPlugins.javaEnabled")}} {{readonlyInline}}{{experimental_inline}}
+
Returns a {{domxref("Boolean")}} flag indicating whether the host browser is Java-enabled or not.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', '#navigatorplugins', 'NavigatorPlugins')}}{{Spec2('HTML WHATWG')}}Initial definition.
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

See also

+ + diff --git a/files/pl/web/api/parentnode/childelementcount/index.html b/files/pl/web/api/parentnode/childelementcount/index.html new file mode 100644 index 0000000000..f3bbff6554 --- /dev/null +++ b/files/pl/web/api/parentnode/childelementcount/index.html @@ -0,0 +1,93 @@ +--- +title: ParentNode.childElementCount +slug: Web/API/ParentNode/childElementCount +translation_of: Web/API/ParentNode/childElementCount +--- +
{{ APIRef("DOM") }}
+ +

ParentNode.childElementCount jest właściwością tylko do odczytu zwraca ona liczbę o typie unsigned long, która zwraca ilość elementów dzieci w elemencie rodzicu.

+ +
+

Ta właściwość została początkowo zdefiniowana w interfejsie  {{domxref("ElementTraversal")}}. Interfejs ten {{domxref("Node")}}, posiadał 2 różne zestawy właściwości - te, które mają elementy dzieci i te elementy, które są dziećmi. Dzieci zostały przeniesione do interfejsu {{domxref("ChildNode")}}, a rodzice do {{domxref("ParentNode")}}. Jest to zmiana techniczna, która nie powinna mieć wpływu na kompatybilność.

+
+ +

Składnia

+ +
var liczbaDzieci = node.childElementCount;
+
+ +
+
liczbaDzieci
+
Wartość która zostanie zwrócona o typie unsigned long (maksymalnie 64 bitowa liczba całkowita dodatnia).
+
node
+
Objekt reprezentowany przez {{domxref("Document")}}, {{domxref("DocumentFragment")}}, lub {{domxref("Element")}}.
+
+ +

Przykład

+ +
var elementRodzic = document.getElementById('tata');
+if (elementRodzic.childElementCount > 0) {
+  // Zrób coś
+}
+
+ +

Łatka dla IE8 & IE9 & Safari

+ +

Ta właściwość jest niewspierana na przeglądarkach IE9 i poniżej oraz Safari, jest niewspierana dla obiektów Document i DocumentFragment.

+ +
;(function(constructor) {
+  if (constructor &&
+      constructor.prototype &&
+      constructor.prototype.childElementCount == null) {
+    Object.defineProperty(constructor.prototype, 'childElementCount', {
+      get: function() {
+        var i = 0, dzieci = 0, wezel, iloscElementow = this.childNodes;
+        while (wezel = iloscElementow[i++]) {
+          if (wezel.nodeType === 1) dzieci++;
+        }
+        return dzieci;
+      }
+    });
+  }
+})(window.Node || window.Element);
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('DOM WHATWG', '#dom-parentnode-childElementCount', 'ParentNode.childElementCount')}}{{Spec2('DOM WHATWG')}}Dzieli interfejs ElementTraversal na {{domxref("ChildNode")}} i ParentNode. Obecna właściwość jest zdefinionawa w tym drugim.
+ {{domxref("Document")}} i {{domxref("DocumentFragment")}} zaimlementowały już nowe interfejsy.
{{SpecName('Element Traversal', '#attribute-childElementCount', 'ElementTraversal.childElementCount')}}{{Spec2('Element Traversal')}} +

Na chwilę obecną dodano wstępną definicje do interfejsu ElementTraversal i wykorzystywana jest ona w klasie {{domxref("Element")}}.

+
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("api.ParentNode.childElementCount")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/api/parentnode/children/index.html b/files/pl/web/api/parentnode/children/index.html new file mode 100644 index 0000000000..1d8576d64b --- /dev/null +++ b/files/pl/web/api/parentnode/children/index.html @@ -0,0 +1,96 @@ +--- +title: ParentNode.children +slug: Web/API/ParentNode/children +tags: + - API + - Dzieci + - Dziecko + - Kolekcja HTML + - Potomek + - Potomkowie + - Właściwość + - węzeł +translation_of: Web/API/ParentNode/children +--- +
{{ APIRef("DOM") }}
+ +

The {{domxref("ParentNode")}} właściwość children jest właściwością tylko do odczytu (read-only) która zwraca aktualną kolekcję {{domxref("HTMLCollection")}} zawierającą wszystkie elementy podrzędne {{domxref("Element", "elements")}} węzła, na którym został wywołany.

+ +

Składnia

+ +
let children = node.children;
+ +

Value

+ +

{{ domxref("HTMLCollection") }} aktualna, uporządkowana kolekcja elementów DOM które są potomkami node. Możesz otrzymać pojedynczych potomków kolekcji używając albo {{domxref("HTMLCollection.item()", "item()")}} metody na kolekcji, albo używając notacji w stylu tablicowym języka JavaScript.

+ +

Jeżeli element node nie ma potomków, wtedy children jest pustą listą o długości 0 (length of 0).

+ +

Przykład

+ +
const foo = document.getElementById('foo');
+for (let i = 0; i < foo.children.length; i++) {
+  console.log(foo.children[i].tagName);
+}
+
+ +

Uzupełnienie

+ +
// Nadpisuje natywny prototyp 'children'.
+// Dodaje Document & DocumentFragment wsparcie dla IE9 & Safari.
+// Zwraca tablicę zamiast HTMLCollection.
+;(function(constructor) {
+  if (constructor &&
+    constructor.prototype &&
+    constructor.prototype.children == null) {
+    Object.defineProperty(constructor.prototype, 'children', {
+      get: function() {
+        let i = 0, node, nodes = this.childNodes, children = [];
+        while (node = nodes[i++]) {
+          if (node.nodeType === 1) {
+            children.push(node);
+          }
+        }
+        return children;
+      }
+    });
+  }
+})(window.Node || window.Element);
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM WHATWG', '#dom-parentnode-children', 'ParentNode.children')}}{{Spec2('DOM WHATWG')}}Wstępna definicja
+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("api.ParentNode.children")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/api/parentnode/index.html b/files/pl/web/api/parentnode/index.html new file mode 100644 index 0000000000..2cbf79f11c --- /dev/null +++ b/files/pl/web/api/parentnode/index.html @@ -0,0 +1,90 @@ +--- +title: ParentNode +slug: Web/API/ParentNode +tags: + - API + - DOM + - Finding Elements + - Finding Nodes + - Interface + - Locating Elements + - Locating Nodes + - Managing Elements + - Managing Nodes + - Mixin + - NeedsTranslation + - Node + - ParentNode + - Reference + - Selectors + - TopicStub +translation_of: Web/API/ParentNode +--- +
{{APIRef("DOM")}}
+ +

The ParentNode mixin contains methods and properties that are common to all types of {{domxref("Node")}} objects that can have children. It's implemented by {{domxref("Element")}}, {{domxref("Document")}}, and {{domxref("DocumentFragment")}} objects.

+ +

See Locating DOM elements using selectors to learn how to use CSS selectors to find nodes or elements of interest.

+ +

Properties

+ +
+
{{domxref("ParentNode.childElementCount")}} {{readonlyInline}}
+
Returns the number of children of this ParentNode which are elements.
+
{{domxref("ParentNode.children")}} {{readonlyInline}}
+
Returns a live {{domxref("HTMLCollection")}} containing all of the {{domxref("Element")}} objects that are children of this ParentNode, omitting all of its non-element nodes.
+
{{domxref("ParentNode.firstElementChild")}} {{readonlyInline}}
+
Returns the first node which is both a child of this ParentNode and is also an Element, or null if there is none.
+
{{domxref("ParentNode.lastElementChild")}} {{readonlyInline}}
+
Returns the last node which is both a child of this ParentNode and is an Element, or null if there is none.
+
+ +

Methods

+ +
+
{{domxref("ParentNode.append()")}} {{experimental_inline}}
+
Inserts a set of {{domxref("Node")}} objects or {{domxref("DOMString")}} objects after the last child of the ParentNode. {{domxref("DOMString")}} objects are inserted as equivalent {{domxref("Text")}} nodes.
+
{{domxref("ParentNode.prepend()")}} {{experimental_inline}}
+
Inserts a set of {{domxref("Node")}} objects or {{domxref("DOMString")}} objects before the first child of the ParentNode. {{domxref("DOMString")}} objects are inserted as equivalent {{domxref("Text")}} nodes.
+
{{domxref("ParentNode.querySelector()")}}
+
Returns the first {{domxref("Element")}} with the current element as root that matches the specified group of selectors.
+
{{domxref("ParentNode.querySelectorAll()")}}
+
Returns a {{domxref("NodeList")}} representing a list of elements with the current element as root that matches the specified group of selectors.
+
+ +

Specification

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('DOM WHATWG', '#parentnode', 'ParentNode')}}{{Spec2('DOM WHATWG')}}Split the ElementTraversal interface into {{domxref("ChildNode")}} and {{domxref("ParentNode")}}. The {{domxref("ParentNode.firstElementChild")}}, {{domxref("ParentNode.lastElementChild")}}, and {{domxref("ParentNode.childElementCount")}} properties are now defined on the latter. Added the {{domxref("ParentNode.children")}} property, and the {{domxref("ParentNode.querySelector()")}}, {{domxref("ParentNode.querySelectorAll()")}}, {{domxref("ParentNode.append()")}}, and {{domxref("ParentNode.prepend()")}} methods.
{{SpecName('Element Traversal', '#interface-elementTraversal', 'ElementTraversal')}}{{Spec2('Element Traversal')}}Added the initial definition of its properties to the ElementTraversal pure interface and used it on {{domxref("Element")}}.
+ +

Browser compatibility

+ + + +

{{Compat("api.ParentNode")}}

+ +

See also

+ + diff --git a/files/pl/web/api/powiadomienie/index.html b/files/pl/web/api/powiadomienie/index.html new file mode 100644 index 0000000000..e314c36a3a --- /dev/null +++ b/files/pl/web/api/powiadomienie/index.html @@ -0,0 +1,348 @@ +--- +title: Powiadomienie +slug: Web/API/powiadomienie +tags: + - API + - JS Powiadomienia + - Powiadomienia + - Powiadomienie +translation_of: Web/API/Notification +--- +

{{APIRef("Web Notifications")}}

+ +

Interfejs Powiadomień {{domxref('Notifications_API','Notifications API')}}  jest używany do konfigurowania i wyświetlania powiadomień komputerowych do użytkownika .

+ +

{{AvailableInWorkers}}

+ +

Konstruktor

+ +
+
{{domxref("Notification.Notification()")}}
+
Tworzy nową instancję obiektu {{domxref('Notification')}} .
+
+ +

Cechy

+ +

Statyczne Cechy

+ +

Te Cechy są dostępne tylko dla obiektu powiadomienia.

+ +
+
{{domxref("Notification.permission")}} {{readonlyinline}}
+
Linia reprezentująca obecne uprawnienia do wyświetlania powiadomień.Możliwe Wartośći to:denied(Użytkownik odmawia do wyświetlania powiadomień), granted(Użytkownik zaakceptował wyświetlanie powiadomień),albo default(Wybór użytkownika jest nieznany i dlatego przeglądarka zachowuje się jak przy odmowie).
+
+ +

Cechy Instancji

+ +

Te Cechy są dostępne tylko dla obiektu powiadomień.

+ +
+
{{domxref("Notification.title")}} {{readonlyinline}}
+
Tytuł powiadomienia jak określone w opcjach parametru konstruktora.
+
{{domxref("Notification.dir")}} {{readonlyinline}}
+
Kierunek tekstu powiadomienia jak określone w opcjach parametru konstruktora.
+
{{domxref("Notification.lang")}} {{readonlyinline}}
+
Język kodu powiadomienia jak określone w opcjach parametru konstruktora.
+
{{domxref("Notification.body")}} {{readonlyinline}}
+
Tekst powiadomienia jak określone w opcjach parametru konstruktora.
+
{{domxref("Notification.tag")}} {{readonlyinline}}
+
ID powiadomienia (jeżeli jakiekolwiek) jak określone w opcjach parametru konstruktora.
+
{{domxref("Notification.icon")}} {{readonlyinline}}
+
Url obrazku użytego w powiadomieniu jak określone w opcjach parametru konstruktora.
+
{{domxref("Notification.data")}} {{readonlyinline}}
+
Zwraca klon struktury daty powiadomienia.
+
{{domxref("Notification.silent")}} {{readonlyinline}}
+
Opisuje czy powiadomienie powinno być ciche,takie jak bez dźwięku czy wbiracji bez względu na ustawienia urządzenia.
+
+ +

Nie wspierane cechy

+ +

Pokazane Cechy są najbardziej aktualną ze specyfikacją, ale nie są wspierane narazie przez żadną przeglądarkę.Wskazane jest aby sprawdzać regularnie czy status się zaktualizował , i daj nam znać jeżeli znajdziesz nie aktualne informacje.

+ +
+
{{domxref("Notification.noscreen")}} {{readonlyinline}}
+
Określa, czy należy włączyć powiadomienia na ekranie urządzenia, czy też nie.
+
{{domxref("Notification.renotify")}} {{readonlyinline}}
+
Określa, czy użytkownik powinien być powiadamiany po nowym powiadomieniu i zastąpić stare powiadomienie.
+
{{domxref("Notification.sound")}} {{readonlyinline}}
+
Określa dźwięk do odtworzenia wraz z powiadomieniem,za miejscę podstawowego powiadomienia systemowego.
+
{{domxref("Notification.sticky")}} {{readonlyinline}}
+
Określa czy powiadomienie powinno być trudniejsze do usunięcia przez użytkownika, klejące 'sticky'.
+
{{domxref("Notification.vibrate")}} {{readonlyinline}}
+
Określa wibrację urządzenia do emisji przez urządzenie.
+
+ +

Obsługa zdarzeń

+ +
+
{{domxref("Notification.onclick")}}
+
Obsługa dla zdarzenia {{event("click")}}.Odpalane przy każdym kliknięciu powiadomienia.
+
{{domxref("Notification.onerror")}}
+
Obsługa dla zdarzenia {{event("error")}}.Odpalane przy każdym razie kiedy powiadomienie będzie napotykało błąd.
+
+ +

Przestarzała obsługa

+ +

Pokazana obsługa zdarzeń jest nadal wspierana w  sekcji poniższej {{anch("browser compatibility")}},ale nie pokazane w obecnej specyfikacji. I w związku z tym, aby bezpiecznie założyć, że są przestarzałe mogą przestać działać w przyszłych wersjach przeglądarek.

+ +
+
{{domxref("Notification.onclose")}}
+
Obsługa zdażenia {{event("close")}}. Zamyka powiadomienie.
+
{{domxref("Notification.onshow")}}
+
Obsługa zdażenia {{event("show")}}.Pokazuje gdy powiadomienie jest pokazywane.
+
+ +

Metoda

+ +

Statyczna metoda

+ +

Te metody są dostępne tylko dla obiektu powiadomień.

+ +
+
{{domxref("Notification.requestPermission()")}}
+
Requests permission from the user to display notifications.
+
+ +

Metoda instacji

+ +

Te cechy są dostępne tylko dla obiektu powiadomień albo to prototype. Obiekt powiadomień pobiera to z interfejsu {{domxref("EventTarget")}}.

+ +
+
{{domxref("Notification.close()")}}
+
Programowo zamyka powiadomienie.
+
+ +

Przykład

+ +

W podstawowtym HTMLu:

+ +
<button onclick="notifyMe()">Pokaż Powiadomienie!</button>
+ +

Jest to możliwe aby wysłać powiadomienie - tutaj pokazujemy jak łatwo i w kompletnym składzie kodu zobaczyć czy powiadomienia są wspierane,potem sprawdzić uprawnienia czy zostały nadane dla obecnego dźwięku powiadomień, potem sprawdź uprawnienia jeżeli potrzebne,przed wysłaniem powiadomienia. 

+ +
function notifyMe() {
+  // Sprawdzamy czy przeglądarka obsługuje powiadomienia.
+  if (!("Notification" in window)) {
+    alert("Ta przeglądarka nie obsługuje powiadomień");
+  }
+
+  // Sprawdźmy czy uprawnienia dla powiadomienia zostały nadane
+  else if (Notification.permission === "granted") {
+    // jeżeli są tworzymy powiadomienie
+    var notification = new Notification("Hi there!");
+  }
+
+  // W innym przypadku tworzymy zapytanie o uprawnienia
+  else if (Notification.permission !== 'denied') {
+    Notification.requestPermission(function (permission) {
+      //Jeżeli użytkownik zaakceptuje tworzymy powiadomienie
+      if (permission === "granted") {
+        var notification = new Notification("Hi there!");
+      }
+    });
+  }
+
+  // Na koniec, jeżeli użytkownik odmówił powiadomień i chcesz szanować go
+  // nie ma potrzeby dręczyć go zapytaniami
+}
+ +

{{EmbedLiveSample('Przyk%C5%82ad', '100%', 30)}}

+ +

W wielu przypadkach, nie potrzebujesz tworzyć nowych form. Dla przykładu, w naszym Emogotchi demo (see source code), Prosto odpalamy {{domxref("Notification.requestPermission")}} aby sprawdzać czy możemy dostać uprawnienia do wysyłania powiadomień: 

+ +
Notification.requestPermission();
+ +

Potem odpalamy funkcje spawnNotification() kiedy chcemy odpalić powiadomienie — to jest przekazywane do argumentu opisanego tekstu,ikony i tytułu który chcemy, potem tworzy konieczne opcje obiektu i odpala powiadomienie używając konstruktora {{domxref("Notification.Notification","Notification()")}}.

+ +
function spawnNotification(theBody,theIcon,theTitle) {
+  var options = {
+      body: theBody,
+      icon: theIcon
+  }
+  var n = new Notification(theTitle,options);
+}
+ +

Specifikacja

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Web Notifications')}}{{Spec2('Web Notifications')}}Living standard
+ +

Kompatybilność Przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Podstawowa usługa5{{property_prefix("webkit")}}[1]
+ 22
4.0 {{property_prefix("moz")}}[2]
+ 22
{{CompatNo}}256[3]
ikona5{{property_prefix("webkit")}}[1]
+ 22
4.0 {{property_prefix("moz")}}[2]
+ 22
{{CompatNo}}25{{CompatNo}}
Available in workers{{CompatUnknown}}{{CompatGeckoDesktop("41.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
silent{{CompatChrome(43.0)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
noscreen, renotify, sound, sticky{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatUnknown}} +

{{CompatVersionUnknown}}

+
4.0{{property_prefix("moz")}}[2]
+ 22
1.0.1{{property_prefix("moz")}}[2]
+ 1.2
{{CompatNo}}{{CompatUnknown}}{{CompatNo}} +

{{CompatVersionUnknown}}

+
icon{{CompatUnknown}}{{CompatVersionUnknown}}4.0{{property_prefix("moz")}}[2]
+ 22
1.0.1{{property_prefix("moz")}}[2]
+ 1.2
{{CompatNo}}{{CompatUnknown}}{{CompatNo}}{{CompatVersionUnknown}}
Available in workers{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("41.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
silent{{CompatNo}}{{CompatChrome(43.0)}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatChrome(43.0)}}
noscreen, renotify, sound, sticky{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

[1] Before Chrome 22, the support for notification followed an old prefixed version of the specification and used the {{domxref("window.navigator.webkitNotifications","navigator.webkitNotifications")}} object to instantiate a new notification.

+ +

Before Chrome 32, {{domxref("Notification.permission")}} was not supported.

+ +

Before Chrome 42, service worker additions were not supported.

+ +

[2] Prior to Firefox 22 (Firefox OS <1.2), the instantiation of a new notification must be done with the {{domxref("window.navigator.mozNotification", "navigator.mozNotification")}} object through its createNotification method.

+ +

Prior to Firefox 22 (Firefox OS <1.2), the Notification was displayed when calling the show method and supported only the click and close events.

+ +

Nick Desaulniers wrote a Notification shim to cover both newer and older implementations.

+ +

One particular Firefox OS issue is that you can pass a path to an icon to use in the notification, but if the app is packaged you cannot use a relative path like /my_icon.png. You also can't use window.location.origin + "/my_icon.png" because window.location.origin is null in packaged apps. The manifest origin field fixes this, but it is only available in Firefox OS 1.1+. A potential solution for supporting Firefox OS <1.1 is to pass an absolute URL to an externally hosted version of the icon. This is less than ideal as the notification is displayed immediately without the icon, then the icon is fetched, but it works on all versions of Firefox OS.

+ +

When using notifications  in a Firefox OS app, be sure to add the desktop-notification permission in your manifest file. Notifications can be used at any permission level, hosted or above: "permissions": { "desktop-notification": {} }

+ +

[3] Safari zaczeło wspierać powiadomienia z wersją Safari 6,ale tylko od Mac OSX 10.8+(Mountain Lion).

+ +

Zobacz Także

+ + diff --git a/files/pl/web/api/push_api/index.html b/files/pl/web/api/push_api/index.html new file mode 100644 index 0000000000..e889cb6c01 --- /dev/null +++ b/files/pl/web/api/push_api/index.html @@ -0,0 +1,167 @@ +--- +title: Push API +slug: Web/API/Push_API +translation_of: Web/API/Push_API +--- +
{{DefaultAPISidebar("Push API")}}{{SeeCompatTable}}
+ +

Push API daje aplikacjom web możliwość odbierania wiadomości przesłanych z serwera, niezależnie do tego czy aplikacja pracuje w tle, lub jest wogóle załadowana w przeglądarce internetowej. To pozwala programistom dostarczać (asynchronicznie) powiadomienia i aktualizacje do użytkowników którzy zezwolili na przesyłanie notyfikacj, w efekcie mamy lepszą komunikację z użytkownikiem, którzy dostają nowe treści w odpowiednim czasie.th timely new content.

+ +

Pojęcia i stosowanie

+ +

For an app to receive push messages, it has to have an active service worker. When the service worker is active, it can subscribe to push notifications, using {{domxref("PushManager.subscribe()")}}.

+ +

The resulting {{domxref("PushSubscription")}} includes all the information that the application needs to send a push message: an endpoint and the encryption key needed for sending data.

+ +

The service worker will be started as necessary to handle incoming push messages, which are delivered to the {{domxref("ServiceWorkerGlobalScope.onpush")}} event handler. This allows apps to react to push messages being received, for example, by displaying a notification (using {{domxref("ServiceWorkerRegistration.showNotification()")}}.)

+ +

Each subscription is unique to a service worker.  The endpoint for the subscription is a unique capability URL: knowledge of the endpoint is all that is necessary to send a message to your application. The endpoint URL therefore needs to be kept secret, or other applications might be able to send push messages to your application.

+ +

Activating a service worker to deliver a push message can result in increased resource usage, particularly of the battery. Different browsers have different schemes for handling this, there is currently no standard mechanism. Firefox allows a limited number (quota) of push messages to be sent to an application, although Push messages that generate notifications are exempt from this limit. The limit is refreshed each time the site is visited. In comparison, Chrome applies no limit, but requires that every push message causes a notification to be displayed.

+ +
+

Note: As of Gecko 44, the allowed quota of push messages per application is not incremented when a new notification fires, when another is still visible, for a period of three seconds. This handles cases where a burst of notifications is received, and not all generate a visible notification.

+
+ +
+

Note: Chrome versions earlier than 52 require you to set up a project on Google Cloud Messaging to send push messages, and use the associated project number and API key when sending push notifications. It also requires an app manifest, with some special parameters to use this service.

+
+ +

Interfejsy

+ +
+
{{domxref("PushEvent")}}
+
Represents a push action, sent to the global scope of a {{domxref("ServiceWorker")}}. It contains information sent from an application to a {{domxref("PushSubscription")}}.
+
{{domxref("PushManager")}}
+
Provides a way to receive notifications from third-party servers, as well as request URLs for push notifications. This interface has replaced the functionality offered by the obsolete {{domxref("PushRegistrationManager")}} interface.
+
{{domxref("PushMessageData")}}
+
Provides access to push data sent by a server, and includes methods to manipulate the received data.
+
{{domxref("PushSubscription")}}
+
Provides a subcription's URL endpoint, and allows unsubscription from a push service.
+
+ +

Wzbogacenia Service worker

+ +

The following additions to the Service Worker API have been specified in the Push API spec to provide an entry point for using Push messages. They also monitor and respond to push and subscription change events.

+ +
+
{{domxref("ServiceWorkerRegistration.pushManager")}} {{readonlyinline}}
+
Returns a reference to the {{domxref("PushManager")}} interface for managing push subscriptions including subscribing, getting an active subscription, and accessing push permission status. This is the entry point into using Push messaging.
+
{{domxref("ServiceWorkerGlobalScope.onpush")}}
+
An event handler fired whenever a {{Event("push")}} event occurs; that is, whenever a server push message is received.
+
{{domxref("ServiceWorkerGlobalScope.onpushsubscriptionchange")}}
+
An event handler fired whenever a {{Event("pushsubscriptionchange")}} event occurs; for example, when a push subscription has been invalidated, or is about to be invalidated (e.g. when a push service sets an expiration time.)
+
+ +

Przykłady

+ +

ServiceWorker Cookbook Mozilli zawiera dużo przydatnych przykładów Push.

+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("Push API")}}{{Spec2("Push API")}}Initial definition
+ +

Zgodność przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FunkcjonalnośćChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatChrome(42.0)}}{{CompatGeckoDesktop(44.0)}}[1][3]{{CompatNo}}[2]{{CompatUnknown}}{{CompatUnknown}}
{{domxref("PushEvent.data")}},
+ {{domxref("PushMessageData")}}
{{CompatNo}}{{CompatGeckoDesktop(44.0)}}[3]{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile(48.0)}}[4]{{CompatNo}}{{CompatUnknown}}[2]{{CompatUnknown}}{{CompatUnknown}}{{CompatChrome(42.0)}}
{{domxref("PushEvent.data")}},
+ {{domxref("PushMessageData")}}
{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile(48.0)}}[4]{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ + + +

Zobacz również

+ + diff --git a/files/pl/web/api/range/index.html b/files/pl/web/api/range/index.html new file mode 100644 index 0000000000..cabb00df2c --- /dev/null +++ b/files/pl/web/api/range/index.html @@ -0,0 +1,105 @@ +--- +title: range +slug: Web/API/Range +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Range +--- +

{{ ApiRef("DOM") }}Obiekt Range reprezentuje fragment dokumentu, który stanowi węzeł oraz część węzła tekstowego w danym dokumencie.

+ +

A range can be created using the createRange method of the Document object. Range objects can also be retrieved by using the getRangeAt method of the selection object.

+ +

Własności

+ +
+
collapsed
+
Returns a boolean indicating whether the range's start and end points are at the same position.
+
commonAncestorContainer
+
Returns the deepest Node that contains the startContainer and endContainer Nodes.
+
endContainer
+
Returns the Node within which the Range ends.
+
endOffset
+
Returns a number representing where in the endContainer the Range ends.
+
startContainer
+
Returns the Node within which the Range starts.
+
startOffset
+
Returns a number representing where in the startContainer the Range starts.
+
+ +

Metody

+ +

Metody pozycjonowania

+ +

Te metody ustawiają punkt początkowy i końcowy obiektu range.

+ +
+
setStart
+
Ustawia pozycję początkową obiektu range.
+
setEnd
+
Ustawia pozycję końcową obiektu range.
+
setStartBefore
+
Ustawia pozycję początkowa dla obiektu range w odniesieniu do innego węzła.
+
setStartAfter
+
Ustawia pozycję początkowa dla obiektu range w odniesieniu do innego węzła.
+
setEndBefore
+
Ustawia pozycję końcową dla obiektu range w odniesieniu do innego węzła.
+
setEndAfter
+
Ustawia pozycję końcową dla obiektu range w odniesieniu do innego węzła.
+
selectNode
+
Ustawia obiekt range, aby zawierał węzeł wraz z jego zawartością.
+
selectNodeContents
+
Ustawia obiekt range, aby zawierał zawartość węzła.
+
collapse
+
Zawija obiekt range do jednego z jego punktów granicznych.
+
+ +

Metody edytujące

+ +

These methods retrieve Nodes from a range and modify the contents of a range.

+ +
+
cloneContents
+
Returns a document fragment copying the nodes of a Range.
+
deleteContents
+
Removes the contents of a Range from the document.
+
extractContents
+
Moves contents of a Range from the document tree into a document fragment
+
insertNode
+
Insert a node at the start of a Range.
+
surroundContents
+
Moves content of a Range into a new node.
+
+ +

Inne metody

+ +
+
compareBoundaryPoints
+
Porównuje punkty graniczne dwóch obiektów range.
+
cloneRange
+
Zwraca obiekt range z punktami granicznymi identycznymi z klonowanym obiektem range.
+
detach
+
Releases Range from use to improve performance.
+
toString
+
Zwraca tekst z obiektu range.
+
+ +

Metody Gecko

+ +

Ta sekcja opisuje szczególne metody Range Mozilli nie będące częścią specyfikacji W3C DOM.

+ +
+
compareNode {{ Obsolete_inline() }}
+
Zwraca stałą opisującą czy węzeł znajduje się przed, za, wewnątrz lub otacza obiekt range .
+
comparePoint
+
Zwraca -1, 0 lub 1 wskazując czy punkt porównania występuje przed, wewnątrz lub za obiektem range.
+
createContextualFragment
+
Zwraca fragment dokumentu utworzony z danego łańcucha kodu.
+
intersectsNode {{ Obsolete_inline() }}
+
Zwraca wartość Boolean określającą czy dany węzeł przecina obiekt range.
+
isPointInRange
+
Zwraca wartość Boolean określającą czy dany punkt jest zawarty w obiekcie range.
+
diff --git a/files/pl/web/api/response/index.html b/files/pl/web/api/response/index.html new file mode 100644 index 0000000000..394a5a4a4d --- /dev/null +++ b/files/pl/web/api/response/index.html @@ -0,0 +1,132 @@ +--- +title: Response +slug: Web/API/Response +tags: + - API + - Experimental + - Fetch + - Fetch API + - Interface + - NeedsTranslation + - Reference + - Response + - TopicStub +translation_of: Web/API/Response +--- +
{{APIRef("Fetch API")}}
+ +

The Response interface of the Fetch API represents the response to a request.

+ +

You can create a new Response object using the {{domxref("Response.Response()")}} constructor, but you are more likely to encounter a Response object being returned as the result of another API operation, for example a service worker {{domxref("Fetchevent.respondWith")}}, or a simple {{domxref("GlobalFetch.fetch()")}}.

+ +

Constructor

+ +
+
{{domxref("Response.Response","Response()")}}
+
Creates a new Response object.
+
+ +

Properties

+ +
+
{{domxref("Response.headers")}} {{readonlyinline}}
+
Contains the {{domxref("Headers")}} object associated with the response.
+
{{domxref("Response.ok")}} {{readonlyinline}}
+
Contains a boolean stating whether the response was successful (status in the range 200-299) or not.
+
{{domxref("Response.redirected")}} {{ReadOnlyInline}}
+
Indicates whether or not the response is the result of a redirect; that is, its URL list has more than one entry.
+
{{domxref("Response.status")}} {{readonlyinline}}
+
Contains the status code of the response (e.g., 200 for a success).
+
{{domxref("Response.statusText")}} {{readonlyinline}}
+
Contains the status message corresponding to the status code (e.g., OK for 200).
+
{{domxref("Response.trailers")}}
+
Contains a {{domxref("Promise")}} resolving to a {{domxref("Headers")}} object associated with the response with {{domxref("Response.headers")}} for values of the HTTP {{HTTPHeader("Trailer")}} header.
+
{{domxref("Response.type")}} {{readonlyinline}}
+
Contains the type of the response (e.g., basic, cors).
+
{{domxref("Response.url")}} {{readonlyinline}}
+
Contains the URL of the response.
+
{{domxref("Response.useFinalURL")}}
+
Contains a boolean stating whether this is the final URL of the response.
+
+ +

Response implements {{domxref("Body")}}, so it also has the following properties available to it:

+ +
+
{{domxref("Body.body")}} {{readonlyInline}}
+
A simple getter used to expose a {{domxref("ReadableStream")}} of the body contents.
+
{{domxref("Body.bodyUsed")}} {{readonlyInline}}
+
Stores a {{domxref("Boolean")}} that declares whether the body has been used in a response yet.
+
+ +

Methods

+ +
+
{{domxref("Response.clone()")}}
+
Creates a clone of a Response object.
+
{{domxref("Response.error()")}}
+
Returns a new Response object associated with a network error.
+
{{domxref("Response.redirect()")}}
+
Creates a new response with a different URL.
+
+ +

Response implements {{domxref("Body")}}, so it also has the following methods available to it:

+ +
+
{{domxref("Body.arrayBuffer()")}}
+
Takes a {{domxref("Response")}} stream and reads it to completion. It returns a promise that resolves with an {{domxref("ArrayBuffer")}}.
+
{{domxref("Body.blob()")}}
+
Takes a {{domxref("Response")}} stream and reads it to completion. It returns a promise that resolves with a {{domxref("Blob")}}.
+
{{domxref("Body.formData()")}}
+
Takes a {{domxref("Response")}} stream and reads it to completion. It returns a promise that resolves with a {{domxref("FormData")}} object.
+
{{domxref("Body.json()")}}
+
Takes a {{domxref("Response")}} stream and reads it to completion. It returns a promise that resolves with the result of parsing the body text as {{jsxref("JSON")}}.
+
{{domxref("Body.text()")}}
+
Takes a {{domxref("Response")}} stream and reads it to completion. It returns a promise that resolves with a {{domxref("USVString")}} (text).
+
+ +

Examples

+ +

In our basic fetch example (run example live) we use a simple fetch() call to grab an image and display it in an {{htmlelement("img")}} tag. The fetch() call returns a promise, which resolves with the Response object associated with the resource fetch operation. You'll notice that since we are requesting an image, we need to run {{domxref("Body.blob")}} ({{domxref("Response")}} implements body) to give the response its correct MIME type.

+ +
const image = document.querySelector('.my-image');
+fetch('flowers.jpg').then(function(response) {
+  return response.blob();
+}).then(function(blob) {
+  const objectURL = URL.createObjectURL(blob);
+  image.src = objectURL;
+});
+ +

You can also use the {{domxref("Response.Response()")}} constructor to create your own custom Response object:

+ +
const response = new Response();
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Fetch','#response-class','Response')}}{{Spec2('Fetch')}}Initial definition
+ +

Browser compatibility

+ + + +

{{Compat("api.Response")}}

+ +

See also

+ + diff --git a/files/pl/web/api/screen/colordepth/index.html b/files/pl/web/api/screen/colordepth/index.html new file mode 100644 index 0000000000..89c06c4b8c --- /dev/null +++ b/files/pl/web/api/screen/colordepth/index.html @@ -0,0 +1,43 @@ +--- +title: Screen.colorDepth +slug: Web/API/Screen/colorDepth +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Screen/colorDepth +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca głębię koloru ekranu.

+ +

Składnia

+ +
bitDepth = window.screen.colorDepth
+
+ +

Przykład

+ +
// Sprawdzenie głębi koloru ekranu
+if ( window.screen.colorDepth < 8) {
+    // Użycie wersji strony z małą ilością kolorów
+} else {
+    // Użycie prawidłowej wersji strony, o pełnej głębi kolorów
+}
+
+ +

Uwagi

+ +

Zobacz także window.screen.pixelDepth.

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.screen.colorDepth", "ja": "ja/DOM/window.screen.colorDepth" } ) }}

diff --git a/files/pl/web/api/screen/index.html b/files/pl/web/api/screen/index.html new file mode 100644 index 0000000000..91ce6c3476 --- /dev/null +++ b/files/pl/web/api/screen/index.html @@ -0,0 +1,74 @@ +--- +title: Screen +slug: Web/API/Screen +translation_of: Web/API/Screen +--- +
{{APIRef("CSSOM View")}}
+ +

The Screen interface represents a screen, usually the one on which the current window is being rendered.

+ +

Usually it is the one on which the current window is being rendered, obtained using window.screen.

+ +

Properties

+ +
+
{{domxref("Screen.availTop")}}
+
Specifies the y-coordinate of the first pixel that is not allocated to permanent or semipermanent user interface features.
+
{{domxref("Screen.availLeft")}}
+
Returns the first available pixel available from the left side of the screen.
+
{{domxref("Screen.availHeight")}}
+
Specifies the height of the screen, in pixels, minus permanent or semipermanent user interface features displayed by the operating system, such as the Taskbar on Windows.
+
{{domxref("Screen.availWidth")}}
+
Returns the amount of horizontal space in pixels available to the window.
+
{{domxref("Screen.colorDepth")}}
+
Returns the color depth of the screen.
+
{{domxref("Screen.height")}}
+
Returns the height of the screen in pixels.
+
{{domxref("Screen.left")}}
+
Returns the distance in pixels from the left side of the main screen to the left side of the current screen.
+
{{domxref("Screen.orientation")}}
+
Returns the current orientation of the screen.
+
{{domxref("Screen.pixelDepth")}}
+
Gets the bit depth of the screen.
+
{{domxref("Screen.top")}}
+
Returns the distance in pixels from the top side of the current screen.
+
{{domxref("Screen.width")}}
+
Returns the width of the screen.
+
{{domxref("Screen.mozEnabled")}} {{gecko_minversion_inline("12.0")}}
+
Boolean. Setting to false will turn off the device's screen.
+
{{domxref("Screen.mozBrightness")}} {{gecko_minversion_inline("12.0")}}
+
Controls the brightness of a device's screen. A double between 0 and 1.0 is expected.
+
+ +

Events handler

+ +
+
{{domxref("Screen.onorientationchange")}}
+
A handler for the {{event("orientationchange")}} events.
+
+ +

Methods

+ +
+
{{domxref("Screen.lockOrientation")}}
+
Lock the screen orientation (only works in fullscreen or for installed apps)
+
{{domxref("Screen.unlockOrientation")}}
+
Unlock the screen orientation (only works in fullscreen or for installed apps)
+
+ +

Methods inherit from {{domxref("EventTarget")}}

+ +

{{page("/en-US/docs/Web/API/EventTarget","Methods")}}

+ +

Example

+ +
if (screen.pixelDepth < 8) {
+  // use low-color version of page
+} else {
+  // use regular, colorful page
+}
+
+ +

Specification

+ +

CSSOM View

diff --git a/files/pl/web/api/screen/width/index.html b/files/pl/web/api/screen/width/index.html new file mode 100644 index 0000000000..352f6cfbf3 --- /dev/null +++ b/files/pl/web/api/screen/width/index.html @@ -0,0 +1,108 @@ +--- +title: Screen.width +slug: Web/API/Screen/width +translation_of: Web/API/Screen/width +--- +
+
{{APIRef("CSSOM View")}}
+
+ +

Zwraca szerokość ekranu.

+ +

Składnia

+ +
lWidth = window.screen.width
+
+ +

Przykład

+ +
// crude way to check that the screen is at least 1024x768
+if (window.screen.width >= 1024 && window.screen.height >= 768) {
+  // resolution is 1024x768 or above
+}
+
+ +

Notes

+ +

Note that not all of the width given by this property may be available to the window itself. When other widgets occupy space that cannot be used by the window object, there is a difference in window.screen.width and window.screen.availWidth. See also {{domxref("window.screen.height")}}.

+ +

Internet Explorer will take into account the zoom setting when reporting the screen width. It will only return the real width of the screen if the zoom is set to 100%.

+ +

Specyfikacja

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{ SpecName('CSSOM View', '#dom-screen-width', 'Screen.width') }}{{ Spec2('CSSOM View') }} 
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}6{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewEdgeFirefox Mobile (Gecko)Firefox OSIE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}
+
diff --git a/files/pl/web/api/selection/addrange/index.html b/files/pl/web/api/selection/addrange/index.html new file mode 100644 index 0000000000..7827743f8e --- /dev/null +++ b/files/pl/web/api/selection/addrange/index.html @@ -0,0 +1,40 @@ +--- +title: addRange +slug: Web/API/Selection/addRange +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/addRange +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Dodaje zakres do zaznaczenia.

+

Składnia

+
sel.addRange(range)
+
+

Parametry

+
+
+ + range +
+
+ Obiekt zakresu, który będzie dodany do zaznaczenia.
+
+

Przykłady

+
 /* Wybiera wszystkie znaczniki STRONG w dokumencie HTML */
+ var strongs = document.getElementsByTagName("strong");
+ var s = window.getSelection();
+ if(s.rangeCount > 0) s.removeAllRanges();
+ for(var i = 0; i < strongs.length; i++) {
+  var range = document.createRange();
+  range.selectNode(strongs[i]);
+  s.addRange(range);
+ }
+
+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/addRange", "es": "es/DOM/Selection/addRange", "it": "it/DOM/Selection/addRange" } ) }}

diff --git a/files/pl/web/api/selection/anchornode/index.html b/files/pl/web/api/selection/anchornode/index.html new file mode 100644 index 0000000000..200bccb3fa --- /dev/null +++ b/files/pl/web/api/selection/anchornode/index.html @@ -0,0 +1,22 @@ +--- +title: anchorNode +slug: Web/API/Selection/anchorNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/anchorNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca węzeł, w którym się zaczyna zaznaczenie.

+

Skladnia

+
sel.anchorNode
+
+

Notatki

+

Użytkownik może wykonać zaznaczenie od lewej do prawej (w bieg dokumentu) lub od prawej do lewej (odwrotnie od biegu dokumentu). Kotwica znajduje się tam, gdzie użytkownik zaczyna selekcję. Może to być widoczne, kiedy zostanie przytrzymany klawisz Shift i naciśnięte strzałki na klawiaturze. Kotwica selekcji nie zmienia swojego położenia, ale skupienie selekcji, drugi koniec selekcji, porusza się.

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/anchorNode", "es": "es/DOM/Selection/anchorNode", "it": "it/DOM/Selection/anchorNode" } ) }}

diff --git a/files/pl/web/api/selection/anchoroffset/index.html b/files/pl/web/api/selection/anchoroffset/index.html new file mode 100644 index 0000000000..35a0148f6a --- /dev/null +++ b/files/pl/web/api/selection/anchoroffset/index.html @@ -0,0 +1,23 @@ +--- +title: anchorOffset +slug: Web/API/Selection/anchorOffset +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/anchorOffset +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca pozycję, na której kotwica selekcji znajduje się w węźle anchorNode.

+

Składnia

+
sel.anchorOffset
+
+

Uwagi

+

Liczenie się tej zmiennej zaczyna się od 0. Jeżeli selekcja zaczyna się w pierwszym znaku anchorNode, zwracane jest 0.

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/anchorOffset", "es": "es/DOM/Selection/anchorOffset", "it": "it/DOM/Selection/anchorOffset" } ) }}

diff --git a/files/pl/web/api/selection/collapse/index.html b/files/pl/web/api/selection/collapse/index.html new file mode 100644 index 0000000000..fec80daf7e --- /dev/null +++ b/files/pl/web/api/selection/collapse/index.html @@ -0,0 +1,45 @@ +--- +title: collapse +slug: Web/API/Selection/collapse +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/collapse +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zawęża aktualne zaznaczenie w pojedynczy punkt. Dokument nie jest modyfikowany. Jeżeli treść jest edytowalna i aktywna, przeniesie się tam kursor.

+

Składnia

+
sel.collapse(parentNode,offset);
+
+

Parametry

+
+
+ + parentNode +
+
+ Kursor znajdzie się w tym węźle.
+
+
+
+ + offset +
+
+ Kursor zostanie umieszczony w tej odległości od początku węzła tekstowego + + parentNode + .
+
+

Przykłady

+
/* Umieszcza kursor na początku ciała dokumentu HTML. */
+var body = document.getElementsByTagName("body")[0];
+window.getSelection().collapse(body,0);
+
+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/collapse", "es": "es/DOM/Selection/collapse", "it": "it/DOM/Selection/collapse" } ) }}

diff --git a/files/pl/web/api/selection/collapsetoend/index.html b/files/pl/web/api/selection/collapsetoend/index.html new file mode 100644 index 0000000000..e7897ea59a --- /dev/null +++ b/files/pl/web/api/selection/collapsetoend/index.html @@ -0,0 +1,22 @@ +--- +title: collapseToEnd +slug: Web/API/Selection/collapseToEnd +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/collapseToEnd +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przesuwa kotwicę zaznaczenia do pozycji, w której znajduje się skupienie. Samo skupienie nie zmienia swojego położenia. Jeżeli treść jest aktywna i edytowalna, pojawi się tam kursor.

+

Składnia

+
sel.collapseToEnd()
+
+

Parametry

+

Brak.

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/collapseToEnd", "es": "es/DOM/Selection/collapseToEnd", "it": "it/DOM/Selection/collapseToEnd" } ) }}

diff --git a/files/pl/web/api/selection/collapsetostart/index.html b/files/pl/web/api/selection/collapsetostart/index.html new file mode 100644 index 0000000000..0dfdc92468 --- /dev/null +++ b/files/pl/web/api/selection/collapsetostart/index.html @@ -0,0 +1,22 @@ +--- +title: collapseToStart +slug: Web/API/Selection/collapseToStart +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/collapseToStart +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przesuwa skupienie zaznaczenia do położenia kotwicy. Sama kotwica nie zmienia swojego położenia. Jeżeli treść jest aktywna i edytowalna, przeniesie się tam kursor.

+

Składnia

+
sel.collapseToStart()
+
+

Parametry

+

Brak.

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/collapseToStart", "es": "es/DOM/Selection/collapseToStart", "it": "it/DOM/Selection/collapseToStart" } ) }}

diff --git a/files/pl/web/api/selection/containsnode/index.html b/files/pl/web/api/selection/containsnode/index.html new file mode 100644 index 0000000000..c73f0ae763 --- /dev/null +++ b/files/pl/web/api/selection/containsnode/index.html @@ -0,0 +1,47 @@ +--- +title: containsNode +slug: Web/API/Selection/containsNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/containsNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Sprawdza czy węzeł jest częścią zaznaczenia.

+

Składania

+
sel.containsNode(aNode,aPartlyContained)
+
+

Parametry

+
+
+ + aNode +
+
+ Węzeł, którego obecność sprawdzamy.
+
+ + aPartlyContained +
+
+ Kiedy jej wartością jest + + true + , containsNode zwraca wartość true kiedy część węzła jest częścią zaznaczenia.
+
+ Kiedy jej wartością jest + + false + , containsNode zwraca wartość true tylko i wyłącznie, gdy cały węzeł jest częścią zaznaczenia.
+
+

Przykłady

+
 /* Sprawdza czy cokolwiek wewnątrz elementu body jest zaznaczone */
+ alert(window.getSelection().containsNode(document.body, true));
+
+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/containsNode", "es": "es/DOM/Selection/containsNode", "it": "it/DOM/Selection/containsNode" } ) }}

diff --git a/files/pl/web/api/selection/deletefromdocument/index.html b/files/pl/web/api/selection/deletefromdocument/index.html new file mode 100644 index 0000000000..7cc9727ebc --- /dev/null +++ b/files/pl/web/api/selection/deletefromdocument/index.html @@ -0,0 +1,24 @@ +--- +title: deleteFromDocument +slug: Web/API/Selection/deleteFromDocument +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/deleteFromDocument +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Usuwa rzeczywisty tekst będący reprezentacją zaznaczenia z DOM dokumentu.

+

Składnia

+
sel.deleteFromDocument()
+
+

Parametry

+

Brak.

+

Przykłady

+

Użytkownik na stronie internetowej zaznacza tekst "mają dwoje" ze zdania "Króliki mają dwoje uszu". Następnie klika na przycisk, który wywołuje kod JavaScript window.getSelection().deleteFromDocument(). Tekst dokumentu staje się zdaniem "Króliki uszu".

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/deleteFromDocument", "es": "es/DOM/Selection/deleteFromDocument", "it": "it/DOM/Selection/deleteFromDocument" } ) }}

diff --git a/files/pl/web/api/selection/extend/index.html b/files/pl/web/api/selection/extend/index.html new file mode 100644 index 0000000000..fbec1f5eb5 --- /dev/null +++ b/files/pl/web/api/selection/extend/index.html @@ -0,0 +1,40 @@ +--- +title: extend +slug: Web/API/Selection/extend +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/extend +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przemieszcza skupienie zaznaczenia do podanego miejsca. Kotwica zaznaczenia nie zmienia swojego położenia. Zaznaczenie będzie miało koniec w nowym miejscu skupienia bez względu na kierunek zaznaczania.

+

Składnia

+
sel.extend(parentNode,offset)
+
+

Parametry

+
+
+ + parentNode +
+
+ Węzeł, w którym skupienie zmieni swoje położenie.
+
+
+
+ + offset +
+
+ Pozycja od początku węzła tekstowego + + parentNode + , gdzie zostanie umieszczone skupienie.
+
+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/extend", "es": "es/DOM/Selection/extend", "it": "it/DOM/Selection/extend" } ) }}

diff --git a/files/pl/web/api/selection/focusnode/index.html b/files/pl/web/api/selection/focusnode/index.html new file mode 100644 index 0000000000..e59310d0f1 --- /dev/null +++ b/files/pl/web/api/selection/focusnode/index.html @@ -0,0 +1,21 @@ +--- +title: focusNode +slug: Web/API/Selection/focusNode +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/focusNode +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca węzeł, w którym selekcja się kończy.

+

Składnia

+
sel.focusNode
+
+

Uwagi

+

Użytkownik może wykonać zaznaczenie od lewej do prawej (w bieg dokumentu) lub od prawej do lewej (odwrotnie od biegu dokumentu). Skupienie znajduje się tam, gdzie użytkownik kończy selekcję. Może to być widoczne, kiedy zostanie przytrzymany klawisz Shift i naciśnięte strzałki na klawiaturze. Skupienie selekcji zmienia swoje położenie, a skupienie selekcji, drugi koniec selekcji, nie.

+
+  
+

{{ languages( { "en": "en/DOM/Selection/focusNode", "es": "es/DOM/Selection/focusNode", "it": "it/DOM/Selection/focusNode" } ) }}

diff --git a/files/pl/web/api/selection/focusoffset/index.html b/files/pl/web/api/selection/focusoffset/index.html new file mode 100644 index 0000000000..cba7b76783 --- /dev/null +++ b/files/pl/web/api/selection/focusoffset/index.html @@ -0,0 +1,22 @@ +--- +title: focusOffset +slug: Web/API/Selection/focusOffset +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/focusOffset +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca pozycję, na której skupienie selekcji znajduje się w węźle focusNode.

+

Składnia

+
sel.focusOffset
+
+

Uwagi

+

Liczenie się tej zmiennej zaczyna się od 0. Jeżeli selekcja kończy się z pierwszym znakiem anchorNode, zwracane jest 0.

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/focusOffset", "es": "es/DOM/Selection/focusOffset", "it": "it/DOM/Selection/focusOffset" } ) }}

diff --git a/files/pl/web/api/selection/getrangeat/index.html b/files/pl/web/api/selection/getrangeat/index.html new file mode 100644 index 0000000000..ff4b2c962b --- /dev/null +++ b/files/pl/web/api/selection/getrangeat/index.html @@ -0,0 +1,44 @@ +--- +title: getRangeAt +slug: Web/API/Selection/getRangeAt +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/getRangeAt +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca obiekt zakresu reprezentujący jeden z obecnie zaznaczonych zakresów.

+

Składnia

+
range =sel.getRangeAt(index)
+
+

Parametry

+
+
+ + range +
+
+ Obiekt zakresu, który zostanie zwrócony.
+
+
+
+ + index +
+
+ Wartość liczbowa liczona od zera. Wartość ujemna, równa albo większa od rangeCount spowoduje wystąpienie błędu.
+
+

Przykłady

+
ranges = [];
+sel = window.getSelection();
+for(var i = 0; i < sel.rangeCount; i++) {
+ ranges[i] = sel.getRangeAt(i);
+}
+/* Każdy element w tablicy zakresów jest teraz
+ * obiektem zakresu reprezentującym jeden z
+ * zakresów w aktualnym zaznaczeniu */
+
+

{{ languages( { "en": "en/DOM/Selection/getRangeAt", "es": "es/DOM/Selection/getRangeAt" } ) }}

diff --git a/files/pl/web/api/selection/index.html b/files/pl/web/api/selection/index.html new file mode 100644 index 0000000000..83e76ccfa9 --- /dev/null +++ b/files/pl/web/api/selection/index.html @@ -0,0 +1,100 @@ +--- +title: Selection +slug: Web/API/Selection +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Selection +--- +

{{ ApiRef("DOM") }}{{SeeCompatTable}}

+ +

Podsumowanie

+ +

Klasa obiektu zwracanego przez window.getSelection() i inne metody.

+ +

Opis

+ +

Obiekt reprezentujący zakresy, które zaznaczył użytkownik. Zazwyczaj przechowuje tylko jeden zakres, który pobieramy następująco:

+ +
range = sel.getRangeAt(0);
+
+ +

Wywołanie metody toString() zwróci tekst znajdujący się wewnątrz zaznaczenia, na przykład:

+ +
selObj = window.getSelection();
+window.alert(selObj);
+
+ +

Słownik

+ +

Inne kluczowe pojęcia używane w tym dziale.

+ +
+
kotwica (anchor)
+
Kotwicą zaznaczenia jest jego właściwy początek. Kiedy tworzymy zaznaczenie przy użyciu myszki, kotwica w dokumencie znajduje się dokładnie tam, gdzie początkowo został wciśnięty przycisk myszki. Gdy użytkownik zmienia zaznaczenie używając myszki lub klawiatury, kotwica nie zmienia swego położenia.
+
skupienie (focus)
+
Skupieniem zaznaczenia jest jego właściwy koniec. Kiedy tworzymy zaznaczenie przy użyciu myszki, jej skupienie jest dokładnie tam, gdzie przycisk myszki zostaje zwolniony. Gdy użytkownik zmienia zaznaczenie używając myszki lub klawiatury, skupienie zmienia swe położenie na koniec tego zaznaczenia.
+
zakres (range)
+
Zakres to przyległa część dokumentu. Zakres może zawierać zarówno całe węzły, jak i ich części, jak np. wycinek węzła tekstowego. Użytkownik zazwyczaj wybiera tylko jedno zaznaczenie w danej chwili, jednak możliwe jest zaznaczenie kilku fragmentów na raz (na przykład używając klawisza Control). Zakres może być pobrany z zaznaczenia jako obiekt zakresu. Obiekty zakresów mogą być również utworzone poprzez DOM i programowo dodane lub usunięte z zaznaczenia.
+
+ +

Własności

+ +
+
anchorNode
+
Zwraca węzeł, w którym rozpoczyna się zaznaczenie.
+
anchorOffset
+
Zwraca pozycję, gdzie kotwica zaznaczenia znajduje się w węźle anchorNode.
+
focusNode
+
Zwraca węzeł, w którym kończy się zaznaczenie.
+
focusOffset
+
Zwraca pozycję, gdzie skupienie zaznaczenia znajduje się w węźle focusNode
+
isCollapsed
+
Zwraca wartość logiczną wskazującą czy początek zaznaczenia znajduje się w tym samym miejscu, co jego koniec.
+
rangeCount
+
Zwraca liczbę zakresów znajdujących się w zaznaczeniu.
+
+ +

Metody

+ +
+
getRangeAt
+
Zwraca obiekt zakresu reprezentujący jeden z obecnie zaznaczonych zakresów.
+
collapse
+
Zawęża aktualne zaznaczenie do pojedynczego punktu.
+
extend
+
Przesuwa koniec zaznaczenia do podanego punktu.
+
collapseToStart
+
Przesuwa koniec zaznaczenia do tego samego miejsca, w którym znajduje się początek.
+
collapseToEnd
+
Przesuwa początek zaznaczenia do tego samego miejsca, w którym znajduje się koniec. Sam koniec zaznaczenia nie zmienia swojego położenia.
+
selectAllChildren
+
Dodaje wszystkie dzieci podanego węzła do zaznaczenia.
+
addRange
+
Obiekt zakresu, który zostanie dodany do zaznaczenia.
+
removeRange
+
Usuwa zakres z zaznaczenia
+
removeAllRanges
+
Usuwa wszystkie zakresy z zaznaczenia.
+
deleteFromDocument
+
Usuwa zawartość zaznaczenia z dokumentu.
+
selectionLanguageChange
+
 
+
toString
+
Zwraca ciąg znaków, który jest obecnie reprezentowany przez obiekt zaznaczenia, tj. aktualnie zaznaczony tekst.
+
containsNode
+
Wskazuje czy konkretny węzeł jest częścią zaznaczenia.
+
+ +

Zobacz także

+ +

window.getSelection, Range

+ +

Odnośniki zewnętrzne

+ + diff --git a/files/pl/web/api/selection/iscollapsed/index.html b/files/pl/web/api/selection/iscollapsed/index.html new file mode 100644 index 0000000000..84b01c648c --- /dev/null +++ b/files/pl/web/api/selection/iscollapsed/index.html @@ -0,0 +1,21 @@ +--- +title: isCollapsed +slug: Web/API/Selection/isCollapsed +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/isCollapsed +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca wartość logiczną, która określa czy początek selekcji znajduje się w tym samym miejscu, co jej koniec.

+

Składnia

+
sel.isCollapsed
+
+

Uwagi

+

Nawet załamana selekcja może mieć rangeCount większe niż 0. sel.getRangeAt(0) może zwrócić zakres, który również jest załamany.

+
+  
+

{{ languages( { "en": "en/DOM/Selection/isCollapsed", "es": "es/DOM/Selection/isCollapsed", "it": "it/DOM/Selection/isCollapsed" } ) }}

diff --git a/files/pl/web/api/selection/rangecount/index.html b/files/pl/web/api/selection/rangecount/index.html new file mode 100644 index 0000000000..f966cff941 --- /dev/null +++ b/files/pl/web/api/selection/rangecount/index.html @@ -0,0 +1,19 @@ +--- +title: rangeCount +slug: Web/API/Selection/rangeCount +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/rangeCount +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca liczbę zakresów, które znajdują się w zaznaczeniu.

+

Składnia

+
sel.rangeCount
+
+

Uwagi

+

Zaraz po załadowaniu strony, wartość rangeCount wynosi 0. Użytkownik może zazwyczaj wykonać tylko jedno zaznaczenie na raz, dlatego wartość rangeCount z reguły będzie wynosiła 1. Za pomocą skryptu możliwe jest stworzenie zaznaczenia, które zawiera więcej niż jeden zakres.

+

{{ languages( { "en": "en/DOM/Selection/rangeCount", "es": "es/DOM/Selection/rangeCount", "it": "it/DOM/Selection/rangeCount" } ) }}

diff --git a/files/pl/web/api/selection/removeallranges/index.html b/files/pl/web/api/selection/removeallranges/index.html new file mode 100644 index 0000000000..3ba0519f45 --- /dev/null +++ b/files/pl/web/api/selection/removeallranges/index.html @@ -0,0 +1,22 @@ +--- +title: removeAllRanges +slug: Web/API/Selection/removeAllRanges +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/removeAllRanges +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Usuwa wszystkie zakresy, ustawiając własności anchorNode i focusNode na null oraz usuwając samo zaznaczenie.

+

Składnia

+
sel.removeAllRanges();
+
+

Parametry

+

Brak.

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/removeAllRanges", "es": "es/DOM/Selection/removeAllRanges", "it": "it/DOM/Selection/removeAllRanges" } ) }}

diff --git a/files/pl/web/api/selection/removerange/index.html b/files/pl/web/api/selection/removerange/index.html new file mode 100644 index 0000000000..24fa532b22 --- /dev/null +++ b/files/pl/web/api/selection/removerange/index.html @@ -0,0 +1,40 @@ +--- +title: removeRange +slug: Web/API/Selection/removeRange +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/removeRange +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Usuwa zakres z zaznaczenia.

+

Składnia

+
sel.removeRange(range)
+
+

Parametry

+
+
+ + range +
+
+ Obiekt zakresu, który będzie usunięty z zaznaczenia.
+
+

Przykłady

+
/* Programowo, można wybrać więcej niż jeden zakres.
+ * Ten przykład usunie wszystkie zakresy oprócz pierwszego.*/
+s = window.getSelection();
+if(s.rangeCount > 1) {
+ for(var i = 1; i < s.rangeCount; i++) {
+  s.removeRange(s.getRangeAt(i));
+ }
+}
+
+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/removeRange", "es": "es/DOM/Selection/removeRange", "it": "it/DOM/Selection/removeRange" } ) }}

diff --git a/files/pl/web/api/selection/selectallchildren/index.html b/files/pl/web/api/selection/selectallchildren/index.html new file mode 100644 index 0000000000..df659530c6 --- /dev/null +++ b/files/pl/web/api/selection/selectallchildren/index.html @@ -0,0 +1,40 @@ +--- +title: selectAllChildren +slug: Web/API/Selection/selectAllChildren +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/selectAllChildren +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Dodaje wszystkie dzieci podanego węzła do zaznaczenia. Poprzednie zaznaczenie jest usuwane.

+

Składnia

+
sel.selectAllChildren(parentNode)
+
+

Parametry

+
+
+ + parentNode +
+
+ Wszystkie dzieci węzła + + parentNode + będą wybrane. Samo + + parentNode + nie będzie częścią zaznaczenia.
+
+

Przykłady

+
footer = document.getElementById("footer");
+window.getSelection().selectAllChildren(footer);
+/* Wszystko wewnątrz footer jest teraz wybrane */
+
+

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/selectAllChildren", "es": "es/DOM/Selection/selectAllChildren", "it": "it/DOM/Selection/selectAllChildren" } ) }}

diff --git a/files/pl/web/api/selection/tostring/index.html b/files/pl/web/api/selection/tostring/index.html new file mode 100644 index 0000000000..588c81ec26 --- /dev/null +++ b/files/pl/web/api/selection/tostring/index.html @@ -0,0 +1,35 @@ +--- +title: toString +slug: Web/API/Selection/toString +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Selection/toString +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca ciąg znakowy, który jest obecnie reprezentowany przez obiekt selekcji, tj. aktualnie zaznaczony tekst.

+

Składnia

+
string =sel.toString()
+
+ +

Własności

+

Brak.

+

Opis

+

Ta metoda zwraca obecnie zaznaczony tekst.

+

W JavaScript, ta metoda jest wywoływana automatycznie, kiedy funkcja, do której przesyłany jest obiekt, oczekuje ciągu znakowego:

+
alert(window.getSelection()) // Co jest wywoływane
+alert(window.getSelection().toString())  // Co jest w wywoływane w rzeczywistości
+
+

Zobacz również

+ +

 

+
+  
+

{{ languages( { "en": "en/DOM/Selection/toString", "es": "es/DOM/Selection/toString", "fr": "fr/DOM/Selection/toString", "it": "it/DOM/Selection/toString" } ) }}

diff --git a/files/pl/web/api/speechrecognition/index.html b/files/pl/web/api/speechrecognition/index.html new file mode 100644 index 0000000000..8f41dfb239 --- /dev/null +++ b/files/pl/web/api/speechrecognition/index.html @@ -0,0 +1,153 @@ +--- +title: SpeechRecognition +slug: Web/API/SpeechRecognition +translation_of: Web/API/SpeechRecognition +--- +

{{APIRef("Web Speech API")}}{{SeeCompatTable}}

+ +

Interfejs SpeechRecognition jest częścią Web Speech API i kontroluje usługę rozpoznawania mowy. Obsługuje również {{domxref("SpeechRecognitionEvent")}} zwracany przez usługę rozpoznawania mowy.

+ +
+

Uwaga: Na Chrome użycie Speech Recognition wymaga zastosowania serwera. Dźwięk jest przesyłany do usługi web, więc nie działa offline.

+
+ +

Konstruktor

+ +
+
{{domxref("SpeechRecognition.SpeechRecognition()")}}
+
Tworzy nowy obiekt SpeechRecognition.
+
+ +

Właściwości

+ +

SpeechRecognition dziedziczy równiez właściwości z interfejsu rodzica, {{domxref("EventTarget")}}.

+ +
+
{{domxref("SpeechRecognition.grammars")}}
+
Tworzy i zwraca kolekcję obiektów {{domxref("SpeechGrammar")}}, które reprezentują zasady gramatyczne akceptowane przez SpeechRecognition.
+
{{domxref("SpeechRecognition.lang")}}
+
Tworzy i zwraca język bieżącej instacji SpeechRecognition. Jeśli nie zostanie sprecyzowany domyślnie przyjmie wartość z atrybutu {{htmlattrxref("lang","html")}}, a jeśli i on nie został zdefiniowany - z ustawień językowych przeglądarki.
+
{{domxref("SpeechRecognition.continuous")}}
+
Ustawienie przyjęcia ciągłego strumienia mowy lub pojedynczego zwrotu. Domyslnie ustawiony na przyjęcie pojedynczego zwrotu (false.)
+
{{domxref("SpeechRecognition.interimResults")}}
+
Ustawienie kontrolujące zwracanie rezultatów pośrednich. Przyjmuje wartości (true) lub (false.) Rezultat pośredni rozpoznawania mowy to rezultat niepełny, uzyskiwany w trakcie rozpoznawania wypowiedzi (np. kiedy metoda {{domxref("SpeechRecognitionResult.isFinal")}} zwraca  false.) 
+
{{domxref("SpeechRecognition.maxAlternatives")}}
+
Ustawienie maksymalnej liczby alternatywnych wyników rozpoznawania mowy. Domyślnie - 1.
+
{{domxref("SpeechRecognition.serviceURI")}}
+
Specifies the location of the speech recognition service used by the current SpeechRecognition to handle the actual recognition. The default is the user agent's default speech service.
+
+ +
+
+ +

Methods

+ +

SpeechRecognition also inherits methods from its parent interface, {{domxref("EventTarget")}}.

+ +
+
{{domxref("SpeechRecognition.abort()")}}
+
Stops the speech recognition service from listening to incoming audio, and doesn't attempt to return a {{domxref("SpeechRecognitionResult")}}.
+
{{domxref("SpeechRecognition.start()")}}
+
Starts the speech recognition service listening to incoming audio with intent to recognize grammars associated with the current SpeechRecognition.
+
{{domxref("SpeechRecognition.stop()")}}
+
Stops the speech recognition service from listening to incoming audio, and attempts to return a {{domxref("SpeechRecognitionResult")}} using the audio captured so far.
+
+ +

Events

+ +

Listen to these events using addEventListener() or by assigning an event listener to the oneventname property of this interface.

+ +
+
audiostart
+
Fired when the user agent has started to capture audio.
+ Also available via the onaudiostart property.
+
audioend
+
Fired when the user agent has finished capturing audio.
+ Also available via the onaudioend property.
+
end
+
Fired when the speech recognition service has disconnected.
+ Also available via the onend property.
+
error
+
Fired when a speech recognition error occurs.
+ Also available via the onerror property.
+
nomatch
+
Fired when the speech recognition service returns a final result with no significant recognition. This may involve some degree of recognition, which doesn't meet or exceed the {{domxref("SpeechRecognitionAlternative.confidence","confidence")}} threshold.
+ Also available via the onnomatch property.
+
result
+
Fired when the speech recognition service returns a result — a word or phrase has been positively recognized and this has been communicated back to the app.
+ Also available via the onresult property.
+
soundstart
+
Fired when any sound — recognisable speech or not — has been detected.
+ Also available via the onsoundstart property.
+
soundend
+
Fired when any sound — recognisable speech or not — has stopped being detected.
+ Also available via the onsoundend property.
+
speechstart
+
Fired when sound that is recognised by the speech recognition service as speech has been detected.
+ Also available via the onspeechstart property.
+
speechend
+
Fired when speech recognised by the speech recognition service has stopped being detected.
+ Also available via the onspeechend property.
+
start
+
Fired when the speech recognition service has begun listening to incoming audio with intent to recognize grammars associated with the current SpeechRecognition.
+ Also available via the onstart property.
+
+ +

Examples

+ +

In our simple Speech color changer example, we create a new SpeechRecognition object instance using the {{domxref("SpeechRecognition.SpeechRecognition", "SpeechRecognition()")}} constructor, create a new {{domxref("SpeechGrammarList")}}, and set it to be the grammar that will be recognised by the SpeechRecognition instance using the {{domxref("SpeechRecognition.grammars")}} property.

+ +

After some other values have been defined, we then set it so that the recognition service starts when a click event occurs (see {{domxref("SpeechRecognition.start()")}}.) When a result has been successfully recognised, the {{domxref("SpeechRecognition.onresult")}} handler fires,  we extract the color that was spoken from the event object, and then set the background color of the {{htmlelement("html")}} element to that colour.

+ +
var grammar = '#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;'
+var recognition = new SpeechRecognition();
+var speechRecognitionList = new SpeechGrammarList();
+speechRecognitionList.addFromString(grammar, 1);
+recognition.grammars = speechRecognitionList;
+//recognition.continuous = false;
+recognition.lang = 'en-US';
+recognition.interimResults = false;
+recognition.maxAlternatives = 1;
+
+var diagnostic = document.querySelector('.output');
+var bg = document.querySelector('html');
+
+document.body.onclick = function() {
+  recognition.start();
+  console.log('Ready to receive a color command.');
+}
+
+recognition.onresult = function(event) {
+  var color = event.results[0][0].transcript;
+  diagnostic.textContent = 'Result received: ' + color;
+  bg.style.backgroundColor = color;
+}
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Web Speech API', '#speechreco-section', 'SpeechRecognition')}}{{Spec2('Web Speech API')}}
+ +

Browser compatibility

+ + + +

{{Compat("api.SpeechRecognition")}}

+ +

See also

+ + diff --git a/files/pl/web/api/storage/index.html b/files/pl/web/api/storage/index.html new file mode 100644 index 0000000000..22f478e9ff --- /dev/null +++ b/files/pl/web/api/storage/index.html @@ -0,0 +1,154 @@ +--- +title: Storage +slug: Web/API/Storage +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - JavaScript + - Wszystkie_kategorie +translation_of: Web/API/Web_Storage_API +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Magazyn DOM (DOM Storage) jest nazwą określającą zestaw aspektów magazynowania danych wprowadzonych w specyfikacji Web Applications 1.0. Magazyn DOM jest zaprojektowany, by dostarczyć większą, bezpieczniejszą i prostszą do użycia, alternatywę przechowywania informacji w ciasteczkach. Jest obecnie dostępny tylko w przeglądarkach bazujących na Mozilli, zwłaszcza zaczynając od Firefoksa 2.

+ +
Uwaga: Magazyn DOM nie jest tym samym co mozStorage (interfejsy XPCOM Mozilli do SQLite) czy API przechowywania sesji (użyteczność magazynu XPCOM do użycia przez rozszerzenia).
+ +

Opis

+ +

Mechanizm Magazynu DOM w głównej mierze polega na bezpiecznym przechowywaniu par kluczy i wartości możliwych do późniejszego odtworzenia. Celem tego dodatku jest dostarczenie wszechstronnego środka, dzięki któremu mogą być budowane w pełni interaktywne aplikacje (włączając w to zaawansowane cechy, takie jak możliwość pracowania bez dostępu do sieci nawet przez dłuższe okresy czasu).

+ +

Obecnie tylko przeglądarki bazujące na Mozilli dostarczają działającą implementację specyfikacji Magazynu DOM. Jednakże, Internet Explorer posiada podobną funkcję nazwaną "zachowaniem danych użytkownika" (userData behavior), które pozwala na przechowanie danych pomiędzy wieloma sesjami przeglądarki.

+ +

Magazyn DOM jest użyteczny, ponieważ nie istnieje żadna dobra metoda przechowywania przez przeglądarkę sensownej pojemności danych przez dowolny okres czasu. Ciasteczka HTTP mają ograniczoną pojemność i nie dostarczają żadnego wsparcia dla organizowania przechowywanych danych oraz innych metod (takich jak Lokalny magazyn Flash (Flash Local Storage)), które do działania wymagają dodatkowych wtyczek.

+ +

Jedną z pierwszych aplikacji, które zaczęły używać nowej funkcjonalności Magazynu DOM (w dodatku do "zachowania danych użytkownika" Internet Explorer) było halfnote (aplikacja zarządzająca notatkami) napisana przez Aarona Boodmana. W swoim programie, Aaron jednocześnie zapisywał swoje notatki na serwer (kiedy jego połączenie Internetowe było aktywne) i dysk lokalny. To pozwala użytkownikowi na bezpieczne zapisywanie notatek, nawet ze sporadyczną aktywnością połączenia z Internetem.

+ +

Pomimo, że koncept oraz implementacja zaprezentowana w programie halfnote była stosunkowo prosta, jego powstanie wskazuje na możliwość tworzenia nowego typu aplikacji internetowych, użytecznych i działających zarówno z aktywnym połączeniem Internetowym, jak i bez niego.

+ +

Odnośniki

+ +

Poniższe elementy są obiektami globalnymi, które istnieją jako własności każdego okna DOM. Znaczy to, że są one dostępne jako własności sessionStorage lub window.sessionStorage (jest to ważne, ponieważ możliwe dzięki temu jest użycie ramek do przechowania i dostępu do dodatkowych danych, po za tym, co automatycznie jest dostępne na stronie).

+ +

sessionStorage

+ +

Jest to globalny obiekt, który zajmuje się przechowywaniem danych, które mają być dostępne na czas trwania sesji strony. Trwa ona tak długo, dopóki otwarte jest okno przeglądarki, które można przeładowywać i odświeżać. Otwarcie strony w nowej karcie bądź oknie, powoduje stworzenie nowej sesji.

+ +
// Zapisywanie danych do pamięci aktualnej sesji
+sessionStorage.username = "John";
+
+// Odtwarzanie wcześniej zapisanych danych
+alert( "username = " + sessionStorage.username );
+
+ +

Obiekt sessionStorage jest najbardziej pomocny przy przechowywaniu tymczasowych danych, które powinny być zapisane i chronione przez utraceniem w razie przypadkowego przeładowania strony.

+ +
Uwaga: Obiekt sessionStorage powinien również być w stanie przechowywać i odtwarzać dane po przypadkowym zawieszeniu się przeglądarki, jednak przez {{ Bug(339445) }} ta funkcjonalność w Firefox jeszcze nie działa.
+ +

Przykłady:

+ +

Automatycznie zapisuje treści pól tekstowych, by w razie przypadkowego odświeżenia strony, odtworzyć treści tych pól, by nie stracić danych już wprowadzonych.

+ +
 // Pobranie pola tekstowego, który zamierzamy śledzić.
+ var field = document.getElementById("field");
+
+ // Sprawdzenie, czy mamy zapisaną już wcześniej wartość
+ // (stanie się to tylko wtedy, gdy strona została przeładowana)
+ if ( sessionStorage.autosave ) {
+     // Odtworzenie wartości pola tekstowego
+     field.value = sessionStorage.autosave;
+ }
+
+ // Sprawdzanie wartości pola tekstowego co 1 sekundę
+ setInterval(function(){
+     // Oraz zapisanie jej do obiektu sesji
+     sessionStorage.autosave = field.value;
+ }, 1000);
+
+ +

Więcej informacji:

+ + + +

globalStorage

+ +

Jest to globalny obiekt, który utrzymuje wiele przestrzeni publicznych oraz prywatnych, które mogą być użyte do przechowywania danych przez dłuższy okres czasu (np. przez kilka stron czy sesji przeglądarki).

+ +
// Zapisanie danych, które będzie można odtworzyć tylko z domeny mozilla.org
+globalStorage['mozilla.org'].snippet = "<b>Cześć</b>, jak się masz?";
+
+// Zapisanie danych, które możliwe będą do otworzenia przez dowolną stronę czy domenę
+globalStorage[''].favBrowser = "Firefox";
+
+ +

Dokładniej mówiąc, obiekt globalStorage daje nam dostęp do wielu różnych magazynów obiektów, do których można przypisywać dane. Dla przykładu, jeśli chcielibyśmy stworzyć stronę internetową, która używałaby obiektu globalStorage w tej domenie (developer.mozilla.org) mielibyśmy takie obiekty magazynów nam dostępne:

+ + + +

Przykłady:

+ +

Wszystkie te przykłady wymagają dołączenia kodu na wszystkich stronach, na których chcemy zaobserwować efekt.

+ +

Zapamiętywanie nazwy użytkownika dla konkretnej subdomeny, która została odwiedzona:

+ +
 globalStorage['developer.mozilla.org'].username = "John";
+
+ +

Zliczenie każdej wizyty użytkownika na każdej ze stron w danej domenie:

+ +
 // musi zostać użyte parseInt, ponieważ wszystkie przechowywane dane są jako ciągi znakowe
+ globalStorage['mozilla.org'].visits =
+     parseInt( globalStorage['mozilla.org'].visits || 0 ) + 1;
+
+ +

Zapamiętywanie adresów wszystkich stron, które odwiedzasz:

+ +
 globalStorage[''].sites += "," + location.hostname;
+
+ +

Więcej informacji:

+ + + +

Więcej informacji:

+ + + +

Przykłady

+ + + +

Tematy powiązane

+ + + +

 

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/DOM/Storage", "es": "es/DOM/Almacenamiento", "fr": "fr/DOM/Storage", "ja": "ja/DOM/Storage", "zh-cn": "cn/DOM/Storage" } ) }}

diff --git a/files/pl/web/api/stylesheet/cssrules/index.html b/files/pl/web/api/stylesheet/cssrules/index.html new file mode 100644 index 0000000000..d3fabad79a --- /dev/null +++ b/files/pl/web/api/stylesheet/cssrules/index.html @@ -0,0 +1,46 @@ +--- +title: stylesheet.cssRules +slug: Web/API/Stylesheet/cssRules +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/CSSRuleList +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca wszystkie reguły/zasady CSS w arkuszu stylów jako {{domxref("CSSRuleList")}}, tablico-podobny obiekt.

+ +

Składnia

+ +
rules = stylesheet.cssRules
+
+ +

rules jest tablicą {{domxref("CSSRuleList")}} indywidualnych obiektów cssRule. Pojedynczy obiekt cssRule może odwołać się do jednego z następujących obiektów:

+ + + +

Przykład

+ +
// pobiera pierwszą zasadę
+first_rule = document.styleSheets[0].cssRules[0];
+
+ +

Uwagi

+ +

Zobacz obiekt DOM {{domxref("cssRule")}}.

+ +

Specyfikacja

+ +

DOM Level 2 Style: CSSStyleSheet.cssRules

diff --git a/files/pl/web/api/stylesheet/deleterule/index.html b/files/pl/web/api/stylesheet/deleterule/index.html new file mode 100644 index 0000000000..bda06f24b4 --- /dev/null +++ b/files/pl/web/api/stylesheet/deleterule/index.html @@ -0,0 +1,26 @@ +--- +title: stylesheet.deleteRule +slug: Web/API/Stylesheet/deleteRule +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/CSSStyleSheet/deleteRule +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Metoda deleteRule usuwa regułę stylu bieżącego obiektu arkusza stylów.

+

Składnia

+
stylesheet.deleteRule(index)
+
+

Parametry

+ +

Przykład

+
 myStyles.deleteRule(0);
+
+

Specyfikacja

+

deleteRule

+

{{ languages( { "en": "en/DOM/stylesheet.deleteRule" } ) }}

diff --git a/files/pl/web/api/stylesheet/disabled/index.html b/files/pl/web/api/stylesheet/disabled/index.html new file mode 100644 index 0000000000..74e1e5401a --- /dev/null +++ b/files/pl/web/api/stylesheet/disabled/index.html @@ -0,0 +1,25 @@ +--- +title: stylesheet.disabled +slug: Web/API/Stylesheet/disabled +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/StyleSheet/disabled +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Ta własność sygnalizuje, gdzie bieżący arkusz stylów jest używany lub nie.

+

Składnia

+
bool = stylesheet.disabled
+
+

Przykład

+
// jeśli arkusz stylów jest wyłączony...
+if (stylesheet.disabled) {
+   // zachowuje style in-line
+}
+
+

Specyfikacja

+

disabled

+

{{ languages( { "en": "en/DOM/stylesheet.disabled" } ) }}

diff --git a/files/pl/web/api/stylesheet/href/index.html b/files/pl/web/api/stylesheet/href/index.html new file mode 100644 index 0000000000..e0d7661c24 --- /dev/null +++ b/files/pl/web/api/stylesheet/href/index.html @@ -0,0 +1,42 @@ +--- +title: stylesheet.href +slug: Web/API/Stylesheet/href +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/StyleSheet/href +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca położenie zewnetrznego arkusza stylów.

+

Składnia

+
uri = stylesheet.href
+
+

Parametry

+ +

Przykład

+
 // W lokalnej maszynie:
+ <html>
+  <head>
+   <link rel="StyleSheet" href="example.css" type="text/css" />
+   <script>
+    function sref() {
+     alert(document.styleSheets[0].href);
+    }
+   </script>
+  </head>
+  <body>
+   <div class="thunder">Thunder</div>
+   <button onclick="sref()">ss</button>
+  </body>
+ </html>
+// Zwraca "file:////C:/Windows/Desktop/example.css
+
+

Notatki

+

Jeżeli arkusz stylów jest zewnętrznym arkuszem stylów, wartością tego atrybutu jest jego lokalizacja. Dla wewnętrznego arkusza stylów, wartość tego atrybutu wynosi null.

+

Specyfikacja

+

href

diff --git a/files/pl/web/api/stylesheet/index.html b/files/pl/web/api/stylesheet/index.html new file mode 100644 index 0000000000..dca62c79ee --- /dev/null +++ b/files/pl/web/api/stylesheet/index.html @@ -0,0 +1,57 @@ +--- +title: Stylesheet +slug: Web/API/Stylesheet +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/CSSStyleSheet +--- +

{{ ApiRef() }}

+ +

Ten dział opisuje obiekt CSSStyleSheet, który opisuje pojedynczy arkusz stylów css.

+ +

Arkusz stylów CSS składa się z reguł CSS, każda z nich może być manipulowana bezpośrednio przez obiekt CSSRule. Obiekt arkusza stylów pozwala ci kontrolować i modyfikować arkusze stylów,włączając jego listę reguł.

+ +

Możesz pobrać listę arkuszy stylów dla bieżącego dokumentu używając własności document.styleSheets.

+ +

Własności

+ +
+
stylesheet.cssRules
+
Zwraca wszystkie reguły/zasady CSS w arkuszu stylów jako tablicę.
+
stylesheet.disabled
+
Ta własność sygnalizuje, czy bieżący arkusz stylów jest używany lub nie.
+
stylesheet.href
+
Zwraca położenie zewnętrznego arkusza stylów.
+
stylesheet.media
+
SpeObiekt media określa zamierzony nośnik docelowy dla stylu informacji.
+
stylesheet.ownerNode
+
Zwraca węzeł łączący arkusz stylów z dokumentem.
+
stylesheet.ownerRule
+
Jeżeli arkusz stylów pochodzi z reguły @import, własność ownerRule będzie zawierać CSSImportRule.
+
stylesheet.parentStyleSheet
+
Zwraca arkusz stylów, który włącza obecny arkusz (jeśli istnieje).
+
stylesheet.title
+
Zwraca doradczy tytuł bieżącego arkusza stylów.
+
stylesheet.type
+
Określa język arkusza stylów dla tego arkusza stylów.
+
+ +

Metody

+ +
+
stylesheet.deleteRule
+
Usuwa reguły z arkusza stylów.
+
stylesheet.insertRule
+
Umieszcza nową regułę stylu dla bieżącego arkusza stylów.
+
+ +

Specyfikacja

+ +

DOM Level 2 Style Sheets: StyleSheet

+ +

DOM Level 2 CSS: CSSStyleSheet

+ +

{{ languages( { "en": "en/DOM/stylesheet" } ) }}

diff --git a/files/pl/web/api/stylesheet/insertrule/index.html b/files/pl/web/api/stylesheet/insertrule/index.html new file mode 100644 index 0000000000..eeabdc8a31 --- /dev/null +++ b/files/pl/web/api/stylesheet/insertrule/index.html @@ -0,0 +1,42 @@ +--- +title: stylesheet.insertRule +slug: Web/API/Stylesheet/insertRule +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/CSSStyleSheet/insertRule +--- +

{{APIRef("CSSOM")}}

+ +

Podsumowanie

+ +

Metoda insertRule dodaje nową regułę stylu do aktualnego arkuszu stylu.

+ +

Składnia

+ +
stylesheet.insertRule(rule, index)
+
+ +

Parametry

+ + + +

Przykład

+ +
 // push a new rule onto the top of my stylesheet
+ myStyle.insertRule("#blanc { color: white }", 0);
+
+ +

Uwagi

+ +

For rule sets this contains both the selector and the style declaration. For at-rules, this specifies both the at-identifier and the rule content.

+ +

Specyfikacja

+ +

insertRule 

diff --git a/files/pl/web/api/stylesheet/media/index.html b/files/pl/web/api/stylesheet/media/index.html new file mode 100644 index 0000000000..8264cd5cb1 --- /dev/null +++ b/files/pl/web/api/stylesheet/media/index.html @@ -0,0 +1,29 @@ +--- +title: stylesheet.media +slug: Web/API/Stylesheet/media +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/StyleSheet/media +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Obiekt media określa zamierzony nośnik docelowy dla stylu informacji.

+

Składnia

+
medium = stylesheet.media
+stylesheet.media =medium
+
+

Parametry

+ +

Przykład

+
<link rel="StyleSheet" href="document.css" type="text/css" media="screen" />
+
+

Uwagi

+

Domyślną wartością dla media jest "screen".

+

Specyfikacja

+

DOM Level 2 Styles - STYLESHEET

+

{{ languages( { "en": "en/DOM/stylesheet.media" } ) }}

diff --git a/files/pl/web/api/stylesheet/ownerrule/index.html b/files/pl/web/api/stylesheet/ownerrule/index.html new file mode 100644 index 0000000000..93d73c35c5 --- /dev/null +++ b/files/pl/web/api/stylesheet/ownerrule/index.html @@ -0,0 +1,24 @@ +--- +title: stylesheet.ownerRule +slug: Web/API/Stylesheet/ownerRule +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Jeżeli arkusz stylów pochodzi z reguły @import, własność ownerRule będzie zawierać regułę CSSImportRule.

+

Składnia

+
rule = stylesheet.ownerRule
+
+

Parametry

+ +

Uwagi

+

Zauważ, że jeżeli wartość własności ownerNode bieżącego elementu STYLE wynosi NULL, wówczas reguła ownerRule zwróci !!TODO!!. I odwrotnie.

+

Specyfikacja

+

ownerRule

+

{{ languages( { "en": "en/DOM/stylesheet.ownerRule" } ) }}

diff --git a/files/pl/web/api/stylesheet/parentstylesheet/index.html b/files/pl/web/api/stylesheet/parentstylesheet/index.html new file mode 100644 index 0000000000..9d79c0197a --- /dev/null +++ b/files/pl/web/api/stylesheet/parentstylesheet/index.html @@ -0,0 +1,29 @@ +--- +title: stylesheet.parentStyleSheet +slug: Web/API/Stylesheet/parentStyleSheet +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/StyleSheet/parentStyleSheet +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca arkusz stylów, który włącza obecny arkusz (jeśli istnieje).

+

Składnia

+
objRef = stylesheet.parentStyleSheet
+
+

Przykład

+
// znajdź arkusz stylów najwyższego poziomu
+if (stylesheet.parentStyleSheet) {
+  sheet = stylesheet.parentStyleSheet;
+}
+else
+{ sheet = stylesheet; }
+
+

Uwagi

+

Ta własność zwraca wartość NULL, jeśli obecny arkusz stylów jest arkuszem najwyższego poziomu lub jeśli włączanie arkuszy stylów nie jest obsługiwane.

+

Specyfikacja

+

parentStyleSheet

+

{{ languages( { "en": "en/DOM/stylesheet.parentStyleSheet" } ) }}

diff --git a/files/pl/web/api/stylesheet/title/index.html b/files/pl/web/api/stylesheet/title/index.html new file mode 100644 index 0000000000..48353f2667 --- /dev/null +++ b/files/pl/web/api/stylesheet/title/index.html @@ -0,0 +1,18 @@ +--- +title: stylesheet.title +slug: Web/API/Stylesheet/title +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/StyleSheet/title +--- +

{{ ApiRef() }}

+

Podsumowanie

+

title zwraca doradczy tytuł bieżącego arkusza stylów.

+

Uwagi

+

Tytuł jest często określany w ownerNode.

+

Specyfikacja

+

title

+

{{ languages( { "en": "en/DOM/stylesheet.title" } ) }}

diff --git a/files/pl/web/api/stylesheet/type/index.html b/files/pl/web/api/stylesheet/type/index.html new file mode 100644 index 0000000000..ea1892faa4 --- /dev/null +++ b/files/pl/web/api/stylesheet/type/index.html @@ -0,0 +1,22 @@ +--- +title: stylesheet.type +slug: Web/API/Stylesheet/type +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/StyleSheet/type +--- +

{{ ApiRef() }}

+

Podsumowanie

+

type określa język arkusza stylów dla tego arkusza stylów.

+

Składnia

+
string = stylesheet.type
+
+

Przykład

+
 ss.type = "text/css";
+
+

Specyfikacja

+

type

+

{{ languages( { "en": "en/DOM/stylesheet.type" } ) }}

diff --git a/files/pl/web/api/web_audio_api/index.html b/files/pl/web/api/web_audio_api/index.html new file mode 100644 index 0000000000..e67cec2fd6 --- /dev/null +++ b/files/pl/web/api/web_audio_api/index.html @@ -0,0 +1,503 @@ +--- +title: Web Audio API +slug: Web/API/Web_Audio_API +translation_of: Web/API/Web_Audio_API +--- +
+

Web Audio API to potężny i uniwersalny system webowej kontroli audio umożliwiający deweloperom wybór źródeł audio, dodawanie efektów do audio, tworzenie wizualizacji audio, stosowanie efektów przestrzennych (jak panorama) i wiele więcej.

+
+ +

Założenia Web Audio i jego zastosowanie

+ +

Web Audio API dotyczy przebiegu operacji audio wewnątrz kontekstu audio (audio context) i został zaprojektowany po to, by umożliwić obróbkę modularną (modular routing). Podstawowe operacje audio zostają wykonywane z węzłami audio (audio nodes), które złączone tworzą wykres trasowania audio (audio routing graph). Niektóre źródła - o różnych typach układów kanałów - są wspierane nawet w obrębie pojedynczego kontekstu. Modularny design cechuje się elastycznością umożliwiającą tworzenie złożonych funkcji audio z efektami dynamicznymi.

+ +

Audio nodes are linked into chains and simple webs by their inputs and outputs. They typically start with one or more sources. Sources provide arrays of sound intensities (samples) at very small timeslices, often tens of thousands of them per second. These could be either computed mathematically (such as {{domxref("OscillatorNode")}}), or they can be recordings from sound/video files (like {{domxref("AudioBufferSourceNode")}} and {{domxref("MediaElementAudioSourceNode")}}) and audio streams ({{domxref("MediaStreamAudioSourceNode")}}). In fact, sound files are just recordings of sound intensities themselves, which come in from microphones or electric instruments, and get mixed down into a single, complicated wave.

+ +

Outputs of these nodes could be linked to inputs of others, which mix or modify these streams of sound samples into different streams. A common modification is multiplying the samples by a value to make them louder or quieter (as is the case with {{domxref("GainNode")}}). Once the sound has been sufficiently processed for the intended effect, it can be linked to the input of a destination ({{domxref("AudioContext.destination")}}), which sends the sound to the speakers or headphones. This last connection is only necessary if the user is supposed to hear the audio.

+ +

A simple, typical workflow for web audio would look something like this:

+ +
    +
  1. Create audio context
  2. +
  3. Inside the context, create sources — such as <audio>, oscillator, stream
  4. +
  5. Create effects nodes, such as reverb, biquad filter, panner, compressor
  6. +
  7. Choose final destination of audio, for example your system speakers
  8. +
  9. Connect the sources up to the effects, and the effects to the destination.
  10. +
+ +

A simple box diagram with an outer box labeled Audio context, and three inner boxes labeled Sources, Effects and Destination. The three inner boxes have arrow between them pointing from left to right, indicating the flow of audio information.

+ +

Timing is controlled with high precision and low latency, allowing developers to write code that responds accurately to events and is able to target specific samples, even at a high sample rate. So applications such as drum machines and sequencers are well within reach.

+ +

The Web Audio API also allows us to control how audio is spatialized. Using a system based on a source-listener model, it allows control of the panning model and deals with distance-induced attenuation or doppler shift induced by a moving source (or moving listener).

+ +
+

You can read about the theory of the Web Audio API in a lot more detail in our article Basic concepts behind Web Audio API.

+
+ +

Web Audio API Interfaces

+ +

The Web Audio API has a number of interfaces and associated events, which we have split up into nine categories of functionality.

+ +

General audio graph definition

+ +

General containers and definitions that shape audio graphs in Web Audio API usage.

+ +
+
{{domxref("AudioContext")}}
+
The AudioContext interface represents an audio-processing graph built from audio modules linked together, each represented by an {{domxref("AudioNode")}}. An audio context controls the creation of the nodes it contains and the execution of the audio processing, or decoding. You need to create an AudioContext before you do anything else, as everything happens inside a context.
+
{{domxref("AudioNode")}}
+
The AudioNode interface represents an audio-processing module like an audio source (e.g. an HTML {{HTMLElement("audio")}} or {{HTMLElement("video")}} element), audio destination, intermediate processing module (e.g. a filter like {{domxref("BiquadFilterNode")}}, or volume control like {{domxref("GainNode")}}).
+
{{domxref("AudioParam")}}
+
The AudioParam interface represents an audio-related parameter, like one of an {{domxref("AudioNode")}}. It can be set to a specific value or a change in value, and can be scheduled to happen at a specific time and following a specific pattern.
+
The {{event("ended")}} event
+
The ended event is fired when playback has stopped because the end of the media was reached.
+
+ +

Defining audio sources

+ +

Interfaces that define audio sources for use in the Web Audio API.

+ +
+
{{domxref("OscillatorNode")}}
+
The OscillatorNode interface represents a periodic waveform, such as a sine or triangle wave. It is an {{domxref("AudioNode")}} audio-processing module that causes a given frequency of wave to be created.
+
{{domxref("AudioBuffer")}}
+
The AudioBuffer interface represents a short audio asset residing in memory, created from an audio file using the {{ domxref("AudioContext.decodeAudioData()") }} method, or created with raw data using {{ domxref("AudioContext.createBuffer()") }}. Once decoded into this form, the audio can then be put into an {{ domxref("AudioBufferSourceNode") }}.
+
{{domxref("AudioBufferSourceNode")}}
+
The AudioBufferSourceNode interface represents an audio source consisting of in-memory audio data, stored in an {{domxref("AudioBuffer")}}. It is an {{domxref("AudioNode")}} that acts as an audio source.
+
{{domxref("MediaElementAudioSourceNode")}}
+
The MediaElementAudioSourceNode interface represents an audio source consisting of an HTML5 {{ htmlelement("audio") }} or {{ htmlelement("video") }} element. It is an {{domxref("AudioNode")}} that acts as an audio source.
+
{{domxref("MediaStreamAudioSourceNode")}}
+
The MediaStreamAudioSourceNode interface represents an audio source consisting of a WebRTC {{domxref("MediaStream")}} (such as a webcam, microphone, or a stream being sent from a remote computer). It is an {{domxref("AudioNode")}} that acts as an audio source.
+
+ +

Defining audio effects filters

+ +

Interfaces for defining effects that you want to apply to your audio sources.

+ +
+
{{domxref("BiquadFilterNode")}}
+
The BiquadFilterNode interface represents a simple low-order filter. It is an {{domxref("AudioNode")}} that can represent different kinds of filters, tone control devices, or graphic equalizers. A BiquadFilterNode always has exactly one input and one output.
+
{{domxref("ConvolverNode")}}
+
The ConvolverNode interface is an {{domxref("AudioNode")}} that performs a Linear Convolution on a given {{domxref("AudioBuffer")}}, and is often used to achieve a reverb effect.
+
{{domxref("DelayNode")}}
+
The DelayNode interface represents a delay-line; an {{domxref("AudioNode")}} audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.
+
{{domxref("DynamicsCompressorNode")}}
+
The DynamicsCompressorNode interface provides a compression effect, which lowers the volume of the loudest parts of the signal in order to help prevent clipping and distortion that can occur when multiple sounds are played and multiplexed together at once.
+
{{domxref("GainNode")}}
+
The GainNode interface represents a change in volume. It is an {{domxref("AudioNode")}} audio-processing module that causes a given gain to be applied to the input data before its propagation to the output.
+
{{domxref("StereoPannerNode")}}
+
The StereoPannerNode interface represents a simple stereo panner node  that can be used to pan an audio stream left or right.
+
{{domxref("WaveShaperNode")}}
+
The WaveShaperNode interface represents a non-linear distorter. It is an {{domxref("AudioNode")}} that use a curve to apply a waveshaping distortion to the signal. Beside obvious distortion effects, it is often used to add a warm feeling to the signal.
+
{{domxref("PeriodicWave")}}
+
Describes a periodic waveform that can be used to shape the output of an {{ domxref("OscillatorNode") }}.
+
+ +

Defining audio destinations

+ +

Once you are done processing your audio, these interfaces define where to output it.

+ +
+
{{domxref("AudioDestinationNode")}}
+
The AudioDestinationNode interface represents the end destination of an audio source in a given context — usually the speakers of your device.
+
{{domxref("MediaStreamAudioDestinationNode")}}
+
The MediaStreamAudioDestinationNode interface represents an audio destination consisting of a WebRTC {{domxref("MediaStream")}} with a single AudioMediaStreamTrack, which can be used in a similar way to a {{domxref("MediaStream")}} obtained from {{ domxref("MediaDevices.getUserMedia", "getUserMedia()") }}. It is an {{domxref("AudioNode")}} that acts as an audio destination.
+
+ +

Data analysis and visualization

+ +

If you want to extract time, frequency, and other data from your audio, the AnalyserNode is what you need.

+ +
+
{{domxref("AnalyserNode")}}
+
The AnalyserNode interface represents a node able to provide real-time frequency and time-domain analysis information, for the purposes of data analysis and visualization.
+
+ +

Splitting and merging audio channels

+ +

To split and merge audio channels, you'll use these interfaces.

+ +
+
{{domxref("ChannelSplitterNode")}}
+
The ChannelSplitterNode interface separates the different channels of an audio source out into a set of mono outputs.
+
{{domxref("ChannelMergerNode")}}
+
The ChannelMergerNode interface reunites different mono inputs into a single output. Each input will be used to fill a channel of the output.
+
+ +

Audio spatialization

+ +

These interfaces allow you to add audio spatialization panning effects to your audio sources.

+ +
+
{{domxref("AudioListener")}}
+
The AudioListener interface represents the position and orientation of the unique person listening to the audio scene used in audio spatialization.
+
{{domxref("PannerNode")}}
+
The PannerNode interface represents the behavior of a signal in space. It is an {{domxref("AudioNode")}} audio-processing module describing its position with right-hand Cartesian coordinates, its movement using a velocity vector and its directionality using a directionality cone.
+
+ +

Audio processing in JavaScript

+ +

You can write JavaScript code to process audio data. To do so, you use the interfaces and events listed below.

+ +
+

As of the August 29, 2014 version of the Web Audio API spec. these features have been marked as deprecated, and are soon to be replaced by {{ anch("Audio_Workers") }}.

+
+ +
+
{{domxref("ScriptProcessorNode")}}
+
The ScriptProcessorNode interface allows the generation, processing, or analyzing of audio using JavaScript. It is an {{domxref("AudioNode")}} audio-processing module that is linked to two buffers, one containing the current input, one containing the output. An event, implementing the {{domxref("AudioProcessingEvent")}} interface, is sent to the object each time the input buffer contains new data, and the event handler terminates when it has filled the output buffer with data.
+
{{event("audioprocess")}} (event)
+
The audioprocess event is fired when an input buffer of a Web Audio API {{domxref("ScriptProcessorNode")}} is ready to be processed.
+
{{domxref("AudioProcessingEvent")}}
+
The Web Audio API AudioProcessingEvent represents events that occur when a {{domxref("ScriptProcessorNode")}} input buffer is ready to be processed.
+
+ +

Offline/background audio processing

+ +

It is possible to process/render an audio graph very quickly in the background — rendering it to an {{domxref("AudioBuffer")}} rather than to the device's speakers — with the following.

+ +
+
{{domxref("OfflineAudioContext")}}
+
The OfflineAudioContext interface is an {{domxref("AudioContext")}} interface representing an audio-processing graph built from linked together {{domxref("AudioNode")}}s. In contrast with a standard AudioContext, an OfflineAudioContext doesn't really render the audio but rather generates it, as fast as it can, in a buffer.
+
{{event("complete")}} (event)
+
The complete event is fired when the rendering of an {{domxref("OfflineAudioContext")}} is terminated.
+
{{domxref("OfflineAudioCompletionEvent")}}
+
The OfflineAudioCompletionEvent represents events that occur when the processing of an {{domxref("OfflineAudioContext")}} is terminated. The {{event("complete")}} event implements this interface.
+
+ +

Audio Workers

+ +

Audio workers provide the ability for direct scripted audio processing to be done inside a web worker context, and are defined by a couple of interfaces (new as of 29th August 2014). These are not implemented in any browsers yet. When implemented, they will replace {{domxref("ScriptProcessorNode")}}, and the other features discussed in the Audio processing in JavaScript section above.

+ +
+
{{domxref("AudioWorkerNode")}}
+
The AudioWorkerNode interface represents an {{domxref("AudioNode")}} that interacts with a worker thread to generate, process, or analyse audio directly.
+
{{domxref("AudioWorkerGlobalScope")}}
+
The AudioWorkerGlobalScope interface is a DedicatedWorkerGlobalScope-derived object representing a worker context in which an audio processing script is run; it is designed to enable the generation, processing, and analysis of audio data directly using JavaScript in a worker thread.
+
{{domxref("AudioProcessEvent")}}
+
This is an Event object that is dispatched to {{domxref("AudioWorkerGlobalScope")}} objects to perform processing.
+
+ +

Obsolete interfaces

+ +

The following interfaces were defined in old versions of the Web Audio API spec, but are now obsolete and have been replaced by other interfaces.

+ +
+
{{domxref("JavaScriptNode")}}
+
Used for direct audio processing via JavaScript. This interface is obsolete, and has been replaced by {{domxref("ScriptProcessorNode")}}.
+
{{domxref("WaveTableNode")}}
+
Used to define a periodic waveform. This interface is obsolete, and has been replaced by {{domxref("PeriodicWave")}}.
+
+ +

Example

+ +

This example shows a wide variety of Web Audio API functions being used. You can see this code in action on the Voice-change-o-matic demo (also check out the full source code at Github) — this is an experimental voice changer toy demo; keep your speakers turned down low when you use it, at least to start!

+ +

The Web Audio API lines are highlighted; if you want to find out more about what the different methods, etc. do, have a search around the reference pages.

+ +
var audioCtx = new (window.AudioContext || window.webkitAudioContext)(); // define audio context
+// Webkit/blink browsers need prefix, Safari won't work without window.
+
+var voiceSelect = document.getElementById("voice"); // select box for selecting voice effect options
+var visualSelect = document.getElementById("visual"); // select box for selecting audio visualization options
+var mute = document.querySelector('.mute'); // mute button
+var drawVisual; // requestAnimationFrame
+
+var analyser = audioCtx.createAnalyser();
+var distortion = audioCtx.createWaveShaper();
+var gainNode = audioCtx.createGain();
+var biquadFilter = audioCtx.createBiquadFilter();
+
+function makeDistortionCurve(amount) { // function to make curve shape for distortion/wave shaper node to use
+  var k = typeof amount === 'number' ? amount : 50,
+    n_samples = 44100,
+    curve = new Float32Array(n_samples),
+    deg = Math.PI / 180,
+    i = 0,
+    x;
+  for ( ; i < n_samples; ++i ) {
+    x = i * 2 / n_samples - 1;
+    curve[i] = ( 3 + k ) * x * 20 * deg / ( Math.PI + k * Math.abs(x) );
+  }
+  return curve;
+};
+
+navigator.getUserMedia (
+  // constraints - only audio needed for this app
+  {
+    audio: true
+  },
+
+  // Success callback
+  function(stream) {
+    source = audioCtx.createMediaStreamSource(stream);
+    source.connect(analyser);
+    analyser.connect(distortion);
+    distortion.connect(biquadFilter);
+    biquadFilter.connect(gainNode);
+    gainNode.connect(audioCtx.destination); // connecting the different audio graph nodes together
+
+    visualize(stream);
+    voiceChange();
+
+  },
+
+  // Error callback
+  function(err) {
+    console.log('The following gUM error occured: ' + err);
+  }
+);
+
+function visualize(stream) {
+  WIDTH = canvas.width;
+  HEIGHT = canvas.height;
+
+  var visualSetting = visualSelect.value;
+  console.log(visualSetting);
+
+  if(visualSetting == "sinewave") {
+    analyser.fftSize = 2048;
+    var bufferLength = analyser.frequencyBinCount; // half the FFT value
+    var dataArray = new Uint8Array(bufferLength); // create an array to store the data
+
+    canvasCtx.clearRect(0, 0, WIDTH, HEIGHT);
+
+    function draw() {
+
+      drawVisual = requestAnimationFrame(draw);
+
+      analyser.getByteTimeDomainData(dataArray); // get waveform data and put it into the array created above
+
+      canvasCtx.fillStyle = 'rgb(200, 200, 200)'; // draw wave with canvas
+      canvasCtx.fillRect(0, 0, WIDTH, HEIGHT);
+
+      canvasCtx.lineWidth = 2;
+      canvasCtx.strokeStyle = 'rgb(0, 0, 0)';
+
+      canvasCtx.beginPath();
+
+      var sliceWidth = WIDTH * 1.0 / bufferLength;
+      var x = 0;
+
+      for(var i = 0; i < bufferLength; i++) {
+
+        var v = dataArray[i] / 128.0;
+        var y = v * HEIGHT/2;
+
+        if(i === 0) {
+          canvasCtx.moveTo(x, y);
+        } else {
+          canvasCtx.lineTo(x, y);
+        }
+
+        x += sliceWidth;
+      }
+
+      canvasCtx.lineTo(canvas.width, canvas.height/2);
+      canvasCtx.stroke();
+    };
+
+    draw();
+
+  } else if(visualSetting == "off") {
+    canvasCtx.clearRect(0, 0, WIDTH, HEIGHT);
+    canvasCtx.fillStyle = "red";
+    canvasCtx.fillRect(0, 0, WIDTH, HEIGHT);
+  }
+
+}
+
+function voiceChange() {
+  distortion.curve = new Float32Array;
+  biquadFilter.gain.value = 0; // reset the effects each time the voiceChange function is run
+
+  var voiceSetting = voiceSelect.value;
+  console.log(voiceSetting);
+
+  if(voiceSetting == "distortion") {
+    distortion.curve = makeDistortionCurve(400); // apply distortion to sound using waveshaper node
+  } else if(voiceSetting == "biquad") {
+    biquadFilter.type = "lowshelf";
+    biquadFilter.frequency.value = 1000;
+    biquadFilter.gain.value = 25; // apply lowshelf filter to sounds using biquad
+  } else if(voiceSetting == "off") {
+    console.log("Voice settings turned off"); // do nothing, as off option was chosen
+  }
+
+}
+
+// event listeners to change visualize and voice settings
+
+visualSelect.onchange = function() {
+  window.cancelAnimationFrame(drawVisual);
+  visualize(stream);
+}
+
+voiceSelect.onchange = function() {
+  voiceChange();
+}
+
+mute.onclick = voiceMute;
+
+function voiceMute() { // toggle to mute and unmute sound
+  if(mute.id == "") {
+    gainNode.gain.value = 0; // gain set to 0 to mute sound
+    mute.id = "activated";
+    mute.innerHTML = "Unmute";
+  } else {
+    gainNode.gain.value = 1; // gain set to 1 to unmute sound
+    mute.id = "";
+    mute.innerHTML = "Mute";
+  }
+}
+
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Web Audio API')}}{{Spec2('Web Audio API')}} 
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support14 {{property_prefix("webkit")}}{{CompatVersionUnknown}}23{{CompatNo}}15 {{property_prefix("webkit")}}
+ 22 (unprefixed)
6 {{property_prefix("webkit")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChromeEdgeFirefox Mobile (Gecko)Firefox OSIE PhoneOpera MobileSafari Mobile
Basic support{{CompatNo}}28 {{property_prefix("webkit")}}{{CompatVersionUnknown}}251.2{{CompatNo}}{{CompatNo}}6 {{property_prefix("webkit")}}
+
+ +

See also

+ + + + diff --git a/files/pl/web/api/webgl_api/index.html b/files/pl/web/api/webgl_api/index.html new file mode 100644 index 0000000000..a3cc7bb3d0 --- /dev/null +++ b/files/pl/web/api/webgl_api/index.html @@ -0,0 +1,252 @@ +--- +title: WebGL +slug: Web/API/WebGL_API +tags: + - WebGL +translation_of: Web/API/WebGL_API +--- +
{{WebGLSidebar}}
+ +

WebGL (Web Graphics Library) to API języka JavaScript służące do renderowania (rysowania) interaktywnej grafiki 3D i 2D poprzez kompatybilną przeglądarkę bez używania pluginów. WebGL został oparty na API OpenGL ES 2.0 i może zostać wykorzystany do pracy z elementem {{HTMLElement("canvas")}}.

+ +

Aktualnie Jest wspierany przez Firefox 4+, Google Chrome 9+, Opera 12+, Safari 5.1+ i Internet Explorer 11+; ponad to urządzenie użytkownika musi także spełniać odpowiednie warunki sprzętowe, aby móc obsłużyć WebGL (przede wszystkim obsługiwać OpenGL co najmniej w wersji 2.0).

+ +
+
+

Tematy

+ +
+
Rozpocznij pracę z WebGL
+
Czyli jak stworzyć pierwszy kontekst WebGL.
+
Dodawanie grafiki 2D do kontekstu WebGL
+
Czyli jak wyświetlić proste kształty używając WebGL.
+
Nakładamy kolory używając shaderów w WebGL
+
Czyli jak dodać nieco koloru naszym figurom w WebGL
+
Animacja obiektów w WebGL
+
Pokażemy jak zmieniać i przekształcać obiekty na potrzeby prostej animacji.
+
Tworzenie obiektów 3D używając WebGL
+
Pokażemy jak tworzyć i animować obiekty 3D (w tym przykładzie, sześcian).
+
Tworzenie tekstur w WebGL
+
Zademonstrowanie tworzenia map tekstur, na obiektach.
+
Światła w WebGL
+
Jak zasymulować efekty świetlne w twoim kontekście WebGL.
+
Animacja tekstur w WebGL
+
Pokaz, jak animować tekstury, w tym przypadku mapowanie strumienia Ogg na obracającym się sześcianie.
+
WebGL - najlepsze praktyki
+
Porady i sugestie na wdrożenie zawartości WebGL.
+
Cross-domain textures
+
Informacje na temat załadowania tekstur dla domen innych niż aktualne informacje, które są przetwarzane.
+
Używanie rozszerzeń
+
Jak używać rozszerzeń aby włączyć je w WebGL.
+
+
+ +
+ + +
+
Raw WebGL: An introduction to WebGL
+
Rozmowa z Nick Desaulniers o wprowadzająca do podstaw WebGL. To jest idealne miejsce aby zacząć jeśli nigdy nie programowałeś grafiki niskopoziomowej.
+
WebGL - Specyfikacje
+
Specyfikacja WebGL.
+
Strona Khronos WebGL
+
Strona domowa WebGL w Khronos Group.
+
Learning WebGL
+
Strona z tutorialami na temat jak używać WebGL.
+
WebGL Fundamentals
+
Tutorial z podstawami WebGL.
+
WebGL Matrices
+
Wprowadzenie metryk używając 2D WebGL. Ta seria wyjaśnia także matematyczne zależności perspektyw 3D.
+
The WebGL Cookbook
+
Strona z poręcznymi przykładami kodu WebGL.
+
Planet WebGL
+
Agregat dla ludzi zaangażowanych w społeczność WebGL.
+
ewgl-matrices
+
Biblioteka 'blazing fast matrix' dla WebGL
+
glMatrix
+
Biblioteka JavaScript Matrix and Vector dla wysoko wydajnych app WebGL.
+
mjs
+
A JavaScript vector and matrix math library, optimized for WebGL usage.
+
Sylvester
+
Biblioteka Open Source do manipulowania wektorami i metrykami. Nie zoptymalizowana pod WebGl (eksperymentalna).
+
WebGL playground
+
Narzędzia online do twoarzenia i dzielenia się projektami WebGL. Dobra dla szybkich prototypów i eksperymenotwania.
+
WebGL Academy
+
HTML/Javascript edytor z tutorialami do nauki podstaw programowania WebGL.
+
 
+
+
+
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureFirefox (Gecko)ChromeInternet ExplorerOperaSafari
Basic support{{CompatGeckoDesktop("2.0")}}91112 (experiment)5.1 (experiment)
OES_texture_float{{CompatGeckoDesktop("6.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
OES_standard_derivatives{{CompatGeckoDesktop("10.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
EXT_texture_filter_anisotropic{{CompatGeckoDesktop("13.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
WEBGL_compressed_texture_s3tc{{CompatGeckoDesktop("15.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
drawingBufferWidth and drawingBufferHeight attributes{{CompatGeckoDesktop("9.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureFirefox Mobile (Gecko)Chrome for AndroidIE MobileOpera MobileSafari Mobile
Basic support425 (experiment){{CompatNo}}12 (experiment)8.1
drawingBufferWidth and drawingBufferHeight attributes{{CompatGeckoMobile("9.0")}}25{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
OES_texture_float{{CompatGeckoMobile("6.0")}}25{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
OES_standard_derivatives{{CompatGeckoMobile("10.0")}}25{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
EXT_texture_filter_anisotropic{{CompatGeckoMobile("13.0")}}25{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
OES_element_index_uint{{CompatUnknown}}25{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
OES_vertex_array_object{{CompatUnknown}}25{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
WEBGL_compressed_texture_s3tc{{CompatGeckoMobile("15.0")}}25
+ prefixed with WEBKIT_
{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
WEBKIT_EXT_texture_filter_nisotropic{{CompatNo}}25{{CompatNo}}{{CompatNo}}{{CompatUnknown}}
+
+ +

Compatibility notes

+ +

In addition to the browser, the GPU itself also needs to support the feature. So, for example, S3 Texture Compression (S3TC) is only available on Tegra-based tablets. Most browsers make the WebGL context available through the webgl context name, but older ones need experimental-webgl as well. In addition, the upcoming WebGL 2 is fully backwards-compatible and will have the context name experimental-webgl2 in the future for testing.

+ +

Gecko notes

+ +

WebGL debugging and testing

+ +

Starting with Gecko 10.0 {{geckoRelease("10.0")}}, there are two preferences available which let you control the capabilities of WebGL for testing purposes:

+ +
+
webgl.min_capability_mode
+
Boolean-owska stała, oznaczająca tryb w którym włączenie jej na true, przyczynia się do włączenia minimum kompatybilności. Kiedy ten tryb jest włączony, WebGL jest skonfigurowany w taki sposób, aby wspomagał w minimalnym zakresie jego możliwości, wymagane przez specyfikacje. Tryb ten zapewnia możliwość pracy kodu WebGL na urządzeniach i przeglądarkach niezależnie od ich kompatybilności. Opcja false jest ustawiona domyślnie.
+
 
+
webgl.disable_extensions
+
Boolean-owska stała, oznaczająca tryb w którym ustawienie jej na true, powoduje zamknięcie wszystkich rozszerzeń WebGL. Wartość false jest ustawiona domyślnie.
+
diff --git a/files/pl/web/api/webgl_api/tutorial/index.html b/files/pl/web/api/webgl_api/tutorial/index.html new file mode 100644 index 0000000000..cecc84cbfe --- /dev/null +++ b/files/pl/web/api/webgl_api/tutorial/index.html @@ -0,0 +1,40 @@ +--- +title: WebGL tutorial +slug: Web/API/WebGL_API/Tutorial +tags: + - Tutorial + - WebGL +translation_of: Web/API/WebGL_API/Tutorial +--- +
{{WebGLSidebar}}
+ +
+

WebGL enables web content to use an API based on OpenGL ES 2.0 to perform 3D rendering in an HTML {{HTMLElement("canvas")}} in browsers that support it without the use of plug-ins. WebGL programs consist of control code written in JavaScript and special effects code(shader code) that is executed on a computer's Graphics Processing Unit (GPU). WebGL elements can be mixed with other HTML elements and composited with other parts of the page or page background.

+
+ +

This tutorial describes how to use the <canvas> element to draw WebGL graphics, starting with the basics. The examples provided should give you some clear ideas what you can do with WebGL and will provide code snippets that may get you started in building your own content.

+ +

Before you start

+ +

Using the <canvas> element is not very difficult, but you do need a basic understanding of HTML and JavaScript. The <canvas> element and WebGL are not supported in some older browsers, but are supported in recent versions of all major browsers. In order to draw graphics on the canvas we use a JavaScript context object, which creates graphics on the fly.

+ +

In this tutorial

+ +
+
Getting started with WebGL
+
How to set up a WebGL context.
+
Adding 2D content to a WebGL context
+
How to render simple flat shapes using WebGL.
+
Using shaders to apply color in WebGL
+
Demonstrates how to add color to shapes using shaders.
+
Animating objects with WebGL
+
Shows how to rotate and translate objects to create simple animations.
+
Creating 3D objects using WebGL
+
Shows how to create and animate a 3D object (in this case, a cube).
+
Using textures in WebGL
+
Demonstrates how to map textures onto the faces of an object.
+
Lighting in WebGL
+
How to simulate lighting effects in your WebGL context.
+
Animating textures in WebGL
+
Shows how to animate textures; in this case, by mapping an Ogg video onto the faces of a rotating cube.
+
diff --git a/files/pl/web/api/window/alert/index.html b/files/pl/web/api/window/alert/index.html new file mode 100644 index 0000000000..786efd57a3 --- /dev/null +++ b/files/pl/web/api/window/alert/index.html @@ -0,0 +1,58 @@ +--- +title: window.alert +slug: Web/API/Window/alert +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/alert +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Wyświetla okno ostrzegawcze z podanym tekstem.

+ +

Składnia

+ +
window.alert(wiadomość);
+
+ + + +

Przykład

+ +
window.alert("Hello world!");
+// "window." prefix jest opcjonalny, więc
+// alert("Hello world!"); będzie miało taki sam efekt
+
+ +

Wyświetli:

+ +

Grafika:AlertHelloWorld.png

+ +

Uwagi

+ +

Okno ostrzegawcze powinno być używane do przekazania wiadomości, które nie wymagają żadnej odpowiedzi ze strony użytkownika, poza potwierdzeniem komunikatu.

+ +

The following text is shared between this article, DOM:window.prompt and DOM:window.confirm Okna dialogowe to okna modalne - uniemożliwiają użytkownikowi dostęp do reszty interfejsu programu dopóki okno nie zostanie zamknięte. Z tego powodu nie powinieneś nadużywać funkcji, które otwierają okna dialogowe.

+ +

Przy pracy z chrome (np. przy tworzeniu rozszerzenie) zaleca się korzystanie z nsIPromptService.

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +

Zobacz też

+ +

confirm, prompt

+ +

Dla chrome zobacz alert() i alertCheck()

+ +
 
+ +

{{ languages( { "en": "en/DOM/window.alert", "fr": "fr/DOM/window.alert", "ja": "ja/DOM/window.alert" } ) }}

diff --git a/files/pl/web/api/window/applicationcache/index.html b/files/pl/web/api/window/applicationcache/index.html new file mode 100644 index 0000000000..5f176fa81e --- /dev/null +++ b/files/pl/web/api/window/applicationcache/index.html @@ -0,0 +1,33 @@ +--- +title: Window.applicationCache +slug: Web/API/Window/applicationCache +translation_of: Web/API/Window/applicationCache +--- +

{{APIRef}}

+ +

Podsumowanie

+ +

Zwraca referencję do obiektu przetrzymującego cache aplikacji.

+ +

Składnia

+ +
cache = window.applicationCache
+
+ +

Parametry

+ + + +

Specyfikacja

+ + + +

Zobacz także

+ + diff --git a/files/pl/web/api/window/clearinterval/index.html b/files/pl/web/api/window/clearinterval/index.html new file mode 100644 index 0000000000..e763be1f4a --- /dev/null +++ b/files/pl/web/api/window/clearinterval/index.html @@ -0,0 +1,28 @@ +--- +title: window.clearInterval +slug: Web/API/Window/clearInterval +tags: + - Window +translation_of: Web/API/WindowOrWorkerGlobalScope/clearInterval +--- +
+ {{ApiRef}}
+

Podsumowanie

+

Anuluje powtarzającą się akcję, która została utworzona korzystając z setInterval().

+

Składnia

+
window.clearInterval(idInterwalu)
+
+

idInterwalu to identyfikator powtarzającej się akcji, która ma zostać anulowana. Ten identyfikator został zwrócony z {{domxref("window.setInterval","setInterval()")}}.

+

Przykład

+

Zobacz przykład z setInterval().

+

Specification

+

{{DOM0}}

+

Zobacz także

+ diff --git a/files/pl/web/api/window/cleartimeout/index.html b/files/pl/web/api/window/cleartimeout/index.html new file mode 100644 index 0000000000..64604dc479 --- /dev/null +++ b/files/pl/web/api/window/cleartimeout/index.html @@ -0,0 +1,40 @@ +--- +title: window.clearTimeout +slug: Web/API/Window/clearTimeout +translation_of: Web/API/WindowOrWorkerGlobalScope/clearTimeout +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Usuwa opóźnienie ustanione przez window.setTimeout().

+

Składnia

+
window.clearTimeout(id)
+
+

gdzie id jest identyfikatorem opóźnienia do usunięcia, który został zwrócony podczas wywołania window.setTimeout().

+

Przykład

+

Uruchomienie poniższego skryptu w kontekscie strony i pojedyncze kliknięcie spowoduje wyświetlenie wiadomości po jednej sekundzie. Jeżeli użytkownik będzie klikał na stronie przynajmniej raz na sekundę wiadomość nigdy nie zostanie wyświetlona.

+
var alarm = {
+  remind: function(aMessage) {
+    alert(aMessage);
+    delete this.timeoutID;
+  },
+
+  setup: function() {
+    this.cancel();
+    var self = this;
+    this.timeoutID = window.setTimeout(function(msg) {self.remind(msg);}, 1000, "Wake up!");
+  },
+
+  cancel: function() {
+    if(typeof this.timeoutID == "number") {
+      window.clearTimeout(this.timeoutID);
+      delete this.timeoutID;
+    }
+  }
+};
+window.onclick = function() { alarm.setup() };
+
+

Uwagi

+

Przekazanie niepoprawnego ID do clearTimeout nie powoduje żadnej akcji (żaden błąd nie jest wyrzucany).

+

Specyfikacja

+

{{ DOM0() }}

+

{{ languages( { "en": "en/DOM/window.clearTimeout", "fr": "fr/DOM/window.clearTimeout", "ja": "ja/DOM/window.clearTimeout", "pl": "pl/DOM/window.clearTimeout" } ) }}

diff --git a/files/pl/web/api/window/closed/index.html b/files/pl/web/api/window/closed/index.html new file mode 100644 index 0000000000..bdffbcd94d --- /dev/null +++ b/files/pl/web/api/window/closed/index.html @@ -0,0 +1,59 @@ +--- +title: window.closed +slug: Web/API/Window/closed +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/closed +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Ta własność oznacza czy dane okno jest zamknięte lub nie.

+

Składnia

+
var isClosed = windowRef.closed;
+
+


+ Ta własność jest tylko do odczytu.

+

Zwracane wartości

+
+
+ isClosed
+
+ Wartość logiczna. Możliwe wartości:
+
+ +

Przykłady

+

Zmiana adresu URL okna pierwotnego z okna otworzonego

+

Ten przykład demonstruje w jaki sposób okno otworzone może zmienić adres URL okna, które je otwarło. Przed próbą zmiany adresu URL, sprawdza czy obecne okno posiada okno-rodzica stosując własność window.opener oraz czy nie zostało ono zamknięte.

+
// Sprawdza czy okno otwierające istnieje i nie zostało zamknięte
+if (window.opener && !window.opener.closed) {
+  window.opener.location.href = "http://www.mozilla.org";
+}
+
+

Zauważ, że okno otwierane ma dostęp tylko do okna, które je otworzyło.

+

Odświeżanie uprzednio otwartego okna

+

W tym przykładzie funkcja refreshPopupWindow() wywołuje metodę reload obiektu location otwartego okna, by odświeżyć jego dane. Jeżeli okno nie zostało jeszcze otwarte, bądź użytkownik zamknął je, zostaje utworzone nowe okno.

+
var popupWindow = null;
+
+function refreshPopupWindow() {
+  if (popupWindow && !popupWindow.closed) {
+    // popupWindow jest otwarte, przeładujmy je
+    popupWindow.location.reload(true);
+  } else {
+    // Otwieramy nowe okno
+    popupWindow = window.open("popup.html","dataWindow");
+  }
+}
+
+

Specyfikacja

+

DOM Level 0. window.closed nie jest częścią żadnej specyfikacji W3C, ani technicznej rekomendacji.

+

Dodatkowe źródła

+

MSDN window.closed

+
+  
+

{{ languages( { "en": "en/DOM/window.closed", "fr": "fr/DOM/window.closed", "ja": "ja/DOM/window.closed" } ) }}

diff --git a/files/pl/web/api/window/content/index.html b/files/pl/web/api/window/content/index.html new file mode 100644 index 0000000000..66eed370a9 --- /dev/null +++ b/files/pl/web/api/window/content/index.html @@ -0,0 +1,43 @@ +--- +title: window.content +slug: Web/API/Window/content +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Window/content +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca obiekt Window dla zawartości głównego okna. This is useful in XUL windows that have a <browser> (or tabbrowser or <iframe>) with type="content-primary" attribute on it - the most famous example is Firefox main window, browser.xul. In such cases, content returns a reference to the Window object for the document currently displayed in the browser. It is a shortcut for browserRef.contentWindow.

+ +

In unprivileged content (webpages), content is normally equivalent to top (except in the case of a webpage loaded in a sidebar, content still refers to the Window of the currently selected tab).

+ +

Some examples use _content instead of content. The former has been deprecated for a long time, and you should use content in the new code.

+ +

Składnia

+ +
var windowObject = window.content;
+
+ +

Przykład

+ +

Executing the following code in a chrome XUL window with a <browser type="content-primary"/> element in it draws a red border around the first div on the page currently displayed in the browser:

+ +
content.document.getElementsByTagName("div")[0].style.border = "solid red 1px";
+
+ +

Specyfikacja

+ +

Nie jest częścią żadnej specyfikacji.

+ +

Zobacz także

+ + diff --git a/files/pl/web/api/window/controllers/index.html b/files/pl/web/api/window/controllers/index.html new file mode 100644 index 0000000000..cdb67298bf --- /dev/null +++ b/files/pl/web/api/window/controllers/index.html @@ -0,0 +1,24 @@ +--- +title: window.controllers +slug: Web/API/Window/controllers +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/controllers +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca kontrolery XUL okna chrome.

+

Składnia

+
controllers = window.controllers
+
+ +

Specyfikacja

+

XUL-specific. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.controllers", "ja": "ja/DOM/window.controllers" } ) }}

diff --git a/files/pl/web/api/window/crypto/index.html b/files/pl/web/api/window/crypto/index.html new file mode 100644 index 0000000000..5d7bac8666 --- /dev/null +++ b/files/pl/web/api/window/crypto/index.html @@ -0,0 +1,19 @@ +--- +title: window.crypto +slug: Web/API/Window/crypto +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/crypto +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca obiekt crypto przeglądarki, który może być wtedy użyty do manipulacji różnymi własnościami zabezpieczeń przeglądarki.

+

Zobacz więcej szczegółów o JavaScript crypto.

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.crypto", "ja": "ja/DOM/window.crypto" } ) }}

diff --git a/files/pl/web/api/window/defaultstatus/index.html b/files/pl/web/api/window/defaultstatus/index.html new file mode 100644 index 0000000000..f352835233 --- /dev/null +++ b/files/pl/web/api/window/defaultstatus/index.html @@ -0,0 +1,35 @@ +--- +title: window.defaultStatus +slug: Web/API/Window/defaultStatus +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/defaultStatus +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Pobiera/ustawia tekst paska stanu dla danego okna.

+

Składnia

+
sMsg = window.defaultStatus
+window.defaultStatus =sMsg
+
+

Parametry

+ +

Przykład

+
<html>
+ <body onload="window.defaultStatus='hello!';"/>
+  <button onclick="window.confirm('Czy jesteś pewien, że chcesz wyjść?');">confirm</button>
+ </body>
+</htm>
+
+

Uwagi

+

Aby ustawić zawartość paska stanu, gdy okno zostało już otwarte, możemy użyć window.status.

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.defaultStatus", "ja": "ja/DOM/window.defaultStatus" } ) }}

diff --git a/files/pl/web/api/window/directories/index.html b/files/pl/web/api/window/directories/index.html new file mode 100644 index 0000000000..7c4e113760 --- /dev/null +++ b/files/pl/web/api/window/directories/index.html @@ -0,0 +1,33 @@ +--- +title: window.directories +slug: Web/API/Window/directories +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/directories +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca obiekt paska adresu okna.

+

Składnia

+
dirBar = window.directories
+
+

Parametry

+

+ + dirBar + jest obiektem typu barProp.

+

Przykład

+
<script>
+ function dirs() {
+  alert(window.directories);
+ }
+</script>
+
+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.directories", "ja": "ja/DOM/window.directories" } ) }}

diff --git a/files/pl/web/api/window/document/index.html b/files/pl/web/api/window/document/index.html new file mode 100644 index 0000000000..296c81af50 --- /dev/null +++ b/files/pl/web/api/window/document/index.html @@ -0,0 +1,40 @@ +--- +title: window.document +slug: Web/API/Window/document +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/document +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca referencję do dokumentu zawartego w oknie.

+

Składnia

+
doc = window.document
+
+

Parametry

+ +

Przykład

+
<html>
+<head>
+   <title>Witaj, Świecie!</title>
+</head>
+<body>
+
+<script type="text/javascript">
+   var doc = window.document;
+   alert( doc.title);    // wyświetli: Witaj, Świecie!
+</script>
+
+</body>
+</html>
+

Specyfikacja

+

{{ DOM0() }}

+
+  
+

{{ languages( { "en": "en/DOM/window.document", "fr": "fr/DOM/window.document", "ja": "ja/DOM/window.document" } ) }}

diff --git a/files/pl/web/api/window/dump/index.html b/files/pl/web/api/window/dump/index.html new file mode 100644 index 0000000000..f0ddb923c3 --- /dev/null +++ b/files/pl/web/api/window/dump/index.html @@ -0,0 +1,30 @@ +--- +title: window.dump +slug: Web/API/Window/dump +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/dump +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wypisuje wiadomość w konsoli.

+

Składnia

+
dump(wiadomość);
+
+ +

Uwagi

+

dump jest często używany do debugowania JavaScriptu. W uprzywilejowanym kodzie można użyć także Components.utils.reportError oraz nsIConsoleService do zapisu w konsoli błędów.

+

W Gecko dump jest domyślnie zablokowane - jego użycie nic nie powoduje, nie wywołuje też żadnego błędu. Aby zobaczyć wyjście metody dump, musisz włączyć ją, zmieniając preferencję browser.dom.window.dump.enabled na true. Możesz to zrobić za pomocą about:config lub pliku user.js

+

Żeby cokolwiek zobaczyć, będziesz potrzebował konsoli. Jeśli jeszcze jej nie masz, zamknięcie programu i wywołanie z parametrem <tt>-console</tt> w linii poleceń powinno otworzyć konsolę.

+

dump jest też dostępny dla komponentów XPCOM implementowanych w JavaScript, mimo że w ich kontekście window nie jest obiektem globalnym.

+

Specyfikacja

+

{{ DOM0() }}

+
+  
+

{{ languages( { "en": "en/DOM/window.dump", "fr": "fr/DOM/window.dump", "ja": "ja/DOM/window.dump" } ) }}

diff --git a/files/pl/web/api/window/focus/index.html b/files/pl/web/api/window/focus/index.html new file mode 100644 index 0000000000..35cb33dbc4 --- /dev/null +++ b/files/pl/web/api/window/focus/index.html @@ -0,0 +1,24 @@ +--- +title: window.focus +slug: Web/API/Window/focus +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/focus +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Ustawia okno jako aktywne.

+

Składnia

+
window.focus()
+
+

Przykład

+
if (clicked) { window.focus(); }
+
+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.focus", "ja": "ja/DOM/window.focus" } ) }}

diff --git a/files/pl/web/api/window/frameelement/index.html b/files/pl/web/api/window/frameelement/index.html new file mode 100644 index 0000000000..773e7d37e2 --- /dev/null +++ b/files/pl/web/api/window/frameelement/index.html @@ -0,0 +1,34 @@ +--- +title: window.frameElement +slug: Web/API/Window/frameElement +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/frameElement +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca element (jak np. <iframe> lub <object>), w którym osadzone jest okno lub wartość null, gdy okno jest najwyższego poziomu.

+

Składnia

+
varframeEl = window.frameElement;
+
+ +

Przykład

+
var frameEl = window.frameElement;
+// jeśli jesteśmy wewnątrz ramki, to zmień jej adres URL na 'http://mozilla.org/'
+if (frameEl)
+  frameEl.src = 'http://mozilla.org/';
+
+

Uwagi

+

Zauważ, że pomimo swojej nazwy własność działa również dla dokumentów wewnątrz <object> lub innych elementów osadzających.

+

Zobacz także window.parent, który zwraca okno-rodzica, którym jest okno zawierające frameElement okna-dziecka.

+

Specyfikacja

+

{{ DOM0() }}

+
+  
+

{{ languages( { "en": "en/DOM/window.frameElement", "ja": "ja/DOM/window.frameElement" } ) }}

diff --git a/files/pl/web/api/window/frames/index.html b/files/pl/web/api/window/frames/index.html new file mode 100644 index 0000000000..1e1e625ca4 --- /dev/null +++ b/files/pl/web/api/window/frames/index.html @@ -0,0 +1,31 @@ +--- +title: window.frames +slug: Web/API/Window/frames +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/frames +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca obiekt tablico-podobny, zawierający listę ramek podrzędnych bieżącego okna.

+

Składnia

+
frameList = window.frames;
+
+ +

Przykład

+
var frames = window.frames; // lub // var frames = window.parent.frames;
+for (var i = 0; i < frames.length; i++) {
+  // zrób coś z każdą ramką podrzędną jako frames[i]
+  frames[i].document.body.style.background = "red";
+}
+
+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.frames", "ja": "ja/DOM/window.frames" } ) }}

diff --git a/files/pl/web/api/window/getselection/index.html b/files/pl/web/api/window/getselection/index.html new file mode 100644 index 0000000000..c6768feb45 --- /dev/null +++ b/files/pl/web/api/window/getselection/index.html @@ -0,0 +1,39 @@ +--- +title: window.getSelection +slug: Web/API/Window/getSelection +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/getSelection +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zwraca obiekt zaznaczenia reprezentujący zakres tekstu zaznaczonego przez użytkownika. Zauważ, że nie ma to żadnego powiązania z obiektem listy selekcji DOM!

+

Składnia

+
selection =window.getSelection();
+
+

Parametry

+ +

Przykład

+
function foo() {
+   var selObj = window.getSelection();
+   alert(selObj);
+   var selRange = selObj.getRangeAt(0);
+   // teraz możemy operować na zakresie
+}
+
+

Uwagi

+

W JavaScript, kiedy przesyłany jest obiekt selekcji do funkcji, zamiast jej, przesyłana jest jej reprezentacja w postaci ciągu znaków (tj. zaznaczony tekst). Może to złudnie przypominać, że obiekt selekcji wygląda jak ciąg znaków (obiekt string), kiedy tak naprawdę ma swoje własne właściwości i metody. Dokładniej, zwracana jest wartość wywołania metody toString(). I'm treading carefully with the word "convert" here because it could be misinterpreted as a permanent convert - Maian

+

Specyfikacja

+

DOM poziomu 0. Nie jest częścią specyfikacji.

+

Zobacz również

+

Selection, Range

+

 

+

 

+
+  
+

{{ languages( { "en": "en/DOM/window.getSelection", "es": "es/DOM/window.getSelection", "fr": "fr/DOM/window.getSelection", "it": "it/DOM/window.getSelection", "ja": "ja/DOM/window.getSelection" } ) }}

diff --git a/files/pl/web/api/window/index.html b/files/pl/web/api/window/index.html new file mode 100644 index 0000000000..0c833217a3 --- /dev/null +++ b/files/pl/web/api/window/index.html @@ -0,0 +1,494 @@ +--- +title: window +slug: Web/API/Window +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Window +--- +

{{APIRef}}

+ +

The window object represents a window containing a DOM document; the document property points to the DOM document loaded in that window. A window for a given document can be obtained using the {{Domxref("document.defaultView")}} property.

+ +

This section provides a brief reference for all of the methods, properties, and events available through the DOM window object. The window object implements the Window interface, which in turn inherits from the AbstractView interface. Some additional global functions, namespaces, objects, interfaces, and constructors, not typically associated with the window, but available on it, are listed in the JavaScript Reference and DOM Reference.

+ +

In a tabbed browser, such as Firefox, each tab contains its own window object (and if you're writing an extension, the browser window itself is a separate window too - see Working with windows in chrome code for more information). That is, the window object is not shared between tabs in the same window. Some methods, namely {{Domxref("window.resizeTo")}} and {{Domxref("window.resizeBy")}} apply to the whole window and not to the specific tab the window object belongs to. Generally, anything that can't reasonably pertain to a tab pertains to the window instead.

+ +

{{InheritanceDiagram}}

+ +

Properties

+ +

This interface inherits properties from the {{domxref("EventTarget")}} interface and implements properties from the {{domxref("WindowOrWorkerGlobalScope")}} and {{domxref("WindowEventHandlers")}} mixins.

+ +

Note that properties which are objects (e.g.,. for overriding the prototype of built-in elements) are listed in a separate section below.

+ +
+
{{domxref("Window.closed")}} {{Non-standard_inline}}{{readOnlyInline}}
+
This property indicates whether the current window is closed or not.
+
{{domxref("Window.console")}} {{ReadOnlyInline}}
+
Returns a reference to the console object which provides access to the browser's debugging console.
+
{{domxref("Window.content")}} and Window._content {{Non-standard_inline}} {{obsolete_inline}}{{ReadOnlyInline}}
+
Returns a reference to the content element in the current window. Since Firefox 57 (initially Nightly-only), both versions are only available from chrome (privileged) code, and not available to the web anymore.
+
{{domxref("Window.controllers")}}{{non-standard_inline}}{{ReadOnlyInline}}
+
Returns the XUL controller objects for the current chrome window.
+
{{domxref("Window.customElements")}}{{ReadOnlyInline}}
+
returns a reference to the {{domxref("CustomElementRegistry")}} object, which can be used to register new custom elements and get information about previously registered custom elements.
+
{{domxref("Window.crypto")}} {{readOnlyInline}}
+
Returns the browser crypto object.
+
{{domxref("Window.defaultStatus")}} {{Obsolete_inline("gecko23")}}
+
Gets/sets the status bar text for the given window.
+
{{domxref("Window.devicePixelRatio")}} {{non-standard_inline}}{{ReadOnlyInline}}
+
Returns the ratio between physical pixels and device independent pixels in the current display.
+
{{domxref("Window.dialogArguments")}} {{Fx_minversion_inline(3)}} {{ReadOnlyInline}}
+
Gets the arguments passed to the window (if it's a dialog box) at the time {{domxref("window.showModalDialog()")}} was called. This is an {{Interface("nsIArray")}}.
+
{{domxref("Window.directories")}} {{obsolete_inline}}
+
Synonym of {{domxref("window.personalbar")}}
+
{{domxref("Window.document")}} {{ReadOnlyInline}}
+
Returns a reference to the document that the window contains.
+
{{domxref("Window.DOMMatrix")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMMatrix")}} object, which represents 4x4 matrices, suitable for 2D and 3D operations.
+
{{domxref("Window.DOMMatrixReadOnly")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMMatrixReadOnly")}} object, which represents 4x4 matrices, suitable for 2D and 3D operations.
+
{{domxref("Window.DOMPoint")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMPoint")}} object, which represents a 2D or 3D point in a coordinate system.
+
{{domxref("Window.DOMPointReadOnly")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMPointReadOnly")}} object, which represents a 2D or 3D point in a coordinate system.
+
{{domxref("Window.DOMQuad")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMQuad")}} object, which provides represents a quadrilaterial object, that is one having four corners and four sides.
+
{{domxref("Window.DOMRect")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMRect")}} object, which represents a rectangle.
+
{{domxref("Window.DOMRectReadOnly")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to a {{domxref("DOMRectReadOnly")}} object, which represents a rectangle.
+
{{domxref("Window.frameElement")}} {{readOnlyInline}}
+
Returns the element in which the window is embedded, or null if the window is not embedded.
+
{{domxref("Window.frames")}} {{readOnlyInline}}
+
Returns an array of the subframes in the current window.
+
{{domxref("Window.fullScreen")}} {{gecko_minversion_inline("1.9")}}
+
This property indicates whether the window is displayed in full screen or not.
+
{{domxref("Window.globalStorage")}} {{gecko_minversion_inline("1.8.1")}} {{Non-standard_inline}} {{Obsolete_inline("gecko13")}}
+
Unsupported since Gecko 13 (Firefox 13). Use {{domxref("Window.localStorage")}} instead.
+ Was: Multiple storage objects that are used for storing data across multiple pages.
+
{{domxref("Window.history")}} {{ReadOnlyInline}}
+
Returns a reference to the history object.
+
{{domxref("Window.innerHeight")}} {{readOnlyInline}}
+
Gets the height of the content area of the browser window including, if rendered, the horizontal scrollbar.
+
{{domxref("Window.innerWidth")}} {{readOnlyInline}}
+
Gets the width of the content area of the browser window including, if rendered, the vertical scrollbar.
+
{{domxref("Window.isSecureContext")}} {{readOnlyInline}}
+
Indicates whether a context is capable of using features that require secure contexts.
+
{{domxref("Window.length")}} {{readOnlyInline}}
+
Returns the number of frames in the window. See also {{domxref("window.frames")}}.
+
{{domxref("Window.location")}}
+
Gets/sets the location, or current URL, of the window object.
+
{{domxref("Window.locationbar")}} {{ReadOnlyInline}}
+
Returns the locationbar object, whose visibility can be toggled in the window.
+
{{domxref("Window.localStorage")}} {{readOnlyInline}}{{gecko_minversion_inline("1.9.1")}}
+
Returns a reference to the local storage object used to store data that may only be accessed by the origin that created it.
+
{{domxref("Window.menubar")}} {{ReadOnlyInline}}
+
Returns the menubar object, whose visibility can be toggled in the window.
+
{{domxref("Window.messageManager")}} {{gecko_minversion_inline("2.0")}}
+
Returns the message manager object for this window.
+
{{domxref("Window.mozAnimationStartTime")}} {{ReadOnlyInline}}{{gecko_minversion_inline("2.0")}} {{Deprecated_inline}}
+
The time in milliseconds since epoch at which the current animation cycle began.
+
{{domxref("Window.mozInnerScreenX")}} {{ReadOnlyInline}}{{non-standard_inline}}{{gecko_minversion_inline("1.9.2")}}
+
Returns the horizontal (X) coordinate of the top-left corner of the window's viewport, in screen coordinates. This value is reported in CSS pixels. See mozScreenPixelsPerCSSPixel in {{interface("nsIDOMWindowUtils")}} for a conversion factor to adapt to screen pixels if needed.
+
{{domxref("Window.mozInnerScreenY")}} {{ReadOnlyInline}} {{non-standard_inline}}{{gecko_minversion_inline("1.9.2")}}
+
Returns the vertical (Y) coordinate of the top-left corner of the window's viewport, in screen coordinates. This value is reported in CSS pixels. See mozScreenPixelsPerCSSPixel for a conversion factor to adapt to screen pixels if needed.
+
{{domxref("Window.mozPaintCount")}} {{non-standard_inline}}{{ReadOnlyInline}} {{gecko_minversion_inline("2.0")}}
+
Returns the number of times the current document has been rendered to the screen in this window. This can be used to compute rendering performance.
+
{{domxref("Window.name")}}
+
Gets/sets the name of the window.
+
{{domxref("Window.navigator")}} {{readOnlyInline}}
+
Returns a reference to the navigator object.
+
{{domxref("Window.NetworkInformation")}} {{readOnlyInline}} {{experimental_inline}}
+
Returns a reference to the {{domxref("NetworkInformation")}} interface, which provides information about the connection a device is using to communicate with the network and provides a means for scripts to be notified if the connection type changes.
+
{{domxref("Window.opener")}}
+
Returns a reference to the window that opened this current window.
+
{{domxref("Window.orientation")}}{{non-standard_inline}}{{deprecated_inline}}{{readOnlyInline}}
+
Returns the orientation in degrees (in 90 degree increments) of the viewport relative to the device's natural orientation.
+
{{domxref("Window.outerHeight")}} {{readOnlyInline}}
+
Gets the height of the outside of the browser window.
+
{{domxref("Window.outerWidth")}} {{readOnlyInline}}
+
Gets the width of the outside of the browser window.
+
{{domxref("Window.scrollX","Window.pageXOffset")}} {{readOnlyInline}}
+
An alias for {{domxref("window.scrollX")}}.
+
{{domxref("Window.scrollY","Window.pageYOffset")}}{{readOnlyInline}}
+
An alias for {{domxref("window.scrollY")}}
+
{{domxref("Window.sessionStorage")}} {{readOnlyInline}}
+
Returns a reference to the session storage object used to store data that may only be accessed by the origin that created it.
+
{{domxref("Window.StaticRange")}} {{experimental_inline}} {{readonlyinline}}
+
Returns a {{domxref('StaticRange.StaticRange','StaticRange()')}} constructor which creates a {{domxref('StaticRange')}} object.
+
{{domxref("Window.parent")}} {{readOnlyInline}}
+
Returns a reference to the parent of the current window or subframe.
+
{{domxref("Window.performance")}} {{readOnlyInline}}
+
Returns a {{domxref("Performance")}} object, which includes the {{domxref("Performance.timing", "timing")}} and {{domxref("Performance.navigation", "navigation")}} attributes, each of which is an object providing performance-related data. See also Using Navigation Timing for additional information and examples.
+
{{domxref("Window.personalbar")}} {{readOnlyInline}}
+
Returns the personalbar object, whose visibility can be toggled in the window.
+
{{domxref("Window.pkcs11")}} {{obsolete_inline(29)}}
+
Formerly provided access to install and remove PKCS11 modules.
+
{{domxref("Window.returnValue")}} {{Fx_minversion_inline(3)}}
+
The return value to be returned to the function that called {{domxref("window.showModalDialog()")}} to display the window as a modal dialog.
+
{{domxref("Window.screen")}} {{readOnlyInline}}
+
Returns a reference to the screen object associated with the window.
+ +
{{domxref("Window.screenX")}} {{readOnlyInline}}
+
Returns the horizontal distance of the left border of the user's browser from the left side of the screen.
+
{{domxref("Window.screenY")}} {{readOnlyInline}}
+
Returns the vertical distance of the top border of the user's browser from the top side of the screen.
+
{{domxref("Window.scrollbars")}} {{readOnlyInline}}
+
Returns the scrollbars object, whose visibility can be toggled in the window.
+
{{domxref("Window.scrollMaxX")}}{{non-standard_inline}}{{ReadOnlyInline}}
+
The maximum offset that the window can be scrolled to horizontally, that is the document width minus the viewport width.
+
{{domxref("Window.scrollMaxY")}}{{non-standard_inline}}{{ReadOnlyInline}}
+
The maximum offset that the window can be scrolled to vertically (i.e., the document height minus the viewport height).
+
{{domxref("Window.scrollX")}} {{readOnlyInline}}
+
Returns the number of pixels that the document has already been scrolled horizontally.
+
{{domxref("Window.scrollY")}} {{readOnlyInline}}
+
Returns the number of pixels that the document has already been scrolled vertically.
+
{{domxref("Window.self")}} {{ReadOnlyInline}}
+
Returns an object reference to the window object itself.
+
{{domxref("Window.sessionStorage")}} {{Fx_minversion_inline("2.0")}}
+
Returns a storage object for storing data within a single page session.
+
{{domxref("Window.sidebar")}} {{non-standard_inline}}{{ReadOnlyInline}}
+
Returns a reference to the window object of the sidebar.
+
{{domxref("Window.speechSynthesis")}} {{ReadOnlyInline}}
+
Returns a {{domxref("SpeechSynthesis")}} object, which is the entry point into using Web Speech API speech synthesis functionality.
+
{{domxref("Window.status")}}
+
Gets/sets the text in the statusbar at the bottom of the browser.
+
{{domxref("Window.statusbar")}} {{readOnlyInline}}
+
Returns the statusbar object, whose visibility can be toggled in the window.
+
{{domxref("Window.toolbar")}} {{readOnlyInline}}
+
Returns the toolbar object, whose visibility can be toggled in the window.
+
{{domxref("Window.top")}} {{readOnlyInline}}
+
Returns a reference to the topmost window in the window hierarchy. This property is read only.
+
{{domxref("Window.visualViewport")}} {{readOnlyInline}}
+
Returns a {{domxref("VisualViewport")}} object which represents the visual viewport for a given window.
+
{{domxref("Window.window")}} {{ReadOnlyInline}}
+
Returns a reference to the current window.
+
window[0], window[1], etc.
+
Returns a reference to the window object in the frames. See {{domxref("Window.frames")}} for more details.
+
+ +

Properties implemented from elsewhere

+ +
+
{{domxref("WindowOrWorkerGlobalScope.caches")}} {{readOnlyinline}}
+
Returns the {{domxref("CacheStorage")}} object associated with the current context. This object enables functionality such as storing assets for offline use, and generating custom responses to requests.
+
{{domxref("WindowOrWorkerGlobalScope.indexedDB")}} {{readonlyInline}}
+
Provides a mechanism for applications to asynchronously access capabilities of indexed databases; returns an {{domxref("IDBFactory")}} object.
+
{{domxref("WindowOrWorkerGlobalScope.isSecureContext")}} {{readOnlyinline}}
+
Returns a boolean indicating whether the current context is secure (true) or not (false).
+
{{domxref("WindowOrWorkerGlobalScope.origin")}} {{readOnlyinline}}
+
Returns the global object's origin, serialized as a string. (This does not yet appear to be implemented in any browser.)
+
+ +

Methods

+ +

This interface inherits methods from the {{domxref("EventTarget")}} interface and implements methods from {{domxref("WindowOrWorkerGlobalScope")}} and {{domxref("EventTarget")}}.

+ +
+
{{domxref("Window.alert()")}}
+
Displays an alert dialog.
+ +
{{domxref("Window.back()")}} {{Non-standard_inline}} {{obsolete_inline}}
+
Moves back one in the window history.
+
{{domxref("Window.blur()")}}
+
Sets focus away from the window.
+
{{domxref("Window.cancelAnimationFrame()")}} {{experimental_inline}}
+
Enables you to cancel a callback previously scheduled with {{domxref("Window.requestAnimationFrame")}}.
+
{{domxref("Window.cancelIdleCallback()")}} {{experimental_inline}}
+
Enables you to cancel a callback previously scheduled with {{domxref("Window.requestIdleCallback")}}.
+
{{domxref("Window.captureEvents()")}} {{Deprecated_inline}}
+
Registers the window to capture all events of the specified type.
+
{{domxref("Window.clearImmediate()")}}
+
Cancels the repeated execution set using setImmediate.
+
{{domxref("Window.close()")}}
+
Closes the current window.
+
{{domxref("Window.confirm()")}}
+
Displays a dialog with a message that the user needs to respond to.
+
{{domxref("Window.disableExternalCapture()")}} {{obsolete_inline(24)}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.dispatchEvent()")}}
+
Used to trigger an event.
+
{{domxref("Window.dump()")}} {{Non-standard_inline}}
+
Writes a message to the console.
+
{{domxref("Window.enableExternalCapture()")}} {{obsolete_inline(24)}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.find()")}}
+
Searches for a given string in a window.
+
{{domxref("Window.focus()")}}
+
Sets focus on the current window.
+
{{domxref("Window.forward()")}} {{Non-standard_inline}} {{obsolete_inline}}
+
Moves the window one document forward in the history.
+
{{domxref("Window.getAttention()")}} {{Non-standard_inline}} {{obsolete_inline}}
+
Flashes the application icon.
+
{{domxref("Window.getAttentionWithCycleCount()")}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.getComputedStyle()")}}
+
Gets computed style for the specified element. Computed style indicates the computed values of all CSS properties of the element.
+
{{domxref("Window.getDefaultComputedStyle()")}} {{Non-standard_inline}}
+
Gets default computed style for the specified element, ignoring author stylesheets.
+
{{domxref("Window.getSelection()")}}
+
Returns the selection object representing the selected item(s).
+
{{domxref("Window.home()")}} {{Non-standard_inline}} {{obsolete_inline}}
+
Returns the browser to the home page.
+
{{domxref("Window.matchMedia()")}} {{gecko_minversion_inline("6.0")}}
+
Returns a {{domxref("MediaQueryList")}} object representing the specified media query string.
+
{{domxref("Window.maximize()")}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.minimize()")}} (top-level XUL windows only)
+
Minimizes the window.
+
{{domxref("Window.moveBy()")}}
+
Moves the current window by a specified amount.
+
{{domxref("Window.moveTo()")}}
+
Moves the window to the specified coordinates.
+
{{domxref("Window.open()")}}
+
Opens a new window.
+
{{domxref("Window.openDialog()")}} {{Non-standard_inline}} {{obsolete_inline}}
+
Opens a new dialog window.
+
{{domxref("Window.postMessage()")}} {{Fx_minversion_inline(3)}}
+
Provides a secure means for one window to send a string of data to another window, which need not be within the same domain as the first.
+
{{domxref("Window.print()")}}
+
Opens the Print Dialog to print the current document.
+
{{domxref("Window.prompt()")}}
+
Returns the text entered by the user in a prompt dialog.
+
{{domxref("Window.releaseEvents()")}} {{Non-standard_inline}} {{Deprecated_inline}}
+
Releases the window from trapping events of a specific type.
+
{{domxref("Window.requestAnimationFrame()")}} {{gecko_minversion_inline("2.0")}}
+
Tells the browser that an animation is in progress, requesting that the browser schedule a repaint of the window for the next animation frame.
+
{{domxref("Window.requestIdleCallback()")}} {{experimental_inline}}
+
Enables the scheduling of tasks during a browser's idle periods.
+
{{domxref("Window.resizeBy()")}}
+
Resizes the current window by a certain amount.
+
{{domxref("Window.resizeTo()")}}
+
Dynamically resizes window.
+
{{domxref("Window.restore()")}} {{Non-standard_inline}} {{obsolete_inline}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.routeEvent()")}} {{obsolete_inline(24)}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.scroll()")}}
+
Scrolls the window to a particular place in the document.
+
{{domxref("Window.scrollBy()")}}
+
Scrolls the document in the window by the given amount.
+
{{domxref("Window.scrollByLines()")}} {{Non-standard_inline}}
+
Scrolls the document by the given number of lines.
+
{{domxref("Window.scrollByPages()")}} {{Non-standard_inline}}
+
Scrolls the current document by the specified number of pages.
+
{{domxref("Window.scrollTo()")}}
+
Scrolls to a particular set of coordinates in the document.
+
{{domxref("Window.setCursor()")}} {{Non-standard_inline}} (top-level XUL windows only)
+
Changes the cursor for the current window
+
{{domxref("Window.setImmediate()")}}
+
Executes a function after the browser has finished other heavy tasks
+
{{domxref("Window.setResizable()")}} {{Non-standard_inline}}
+
Toggles a user's ability to resize a window.
+
{{domxref("Window.sizeToContent()")}} {{Non-standard_inline}}
+
Sizes the window according to its content.
+
{{domxref("Window.stop()")}}
+
This method stops window loading.
+
{{domxref("Window.updateCommands()")}} {{Non-standard_inline}}
+
Updates the state of commands of the current chrome window (UI).
+
+ +

Methods implemented from elsewhere

+ +
+
{{domxref("EventTarget.addEventListener()")}}
+
Register an event handler to a specific event type on the window.
+
{{domxref("WindowOrWorkerGlobalScope.atob()")}}
+
Decodes a string of data which has been encoded using base-64 encoding.
+
{{domxref("WindowOrWorkerGlobalScope.btoa()")}}
+
Creates a base-64 encoded ASCII string from a string of binary data.
+
{{domxref("WindowOrWorkerGlobalScope.clearInterval()")}}
+
Cancels the repeated execution set using {{domxref("WindowOrWorkerGlobalScope.setInterval()")}}.
+
{{domxref("WindowOrWorkerGlobalScope.clearTimeout()")}}
+
Cancels the delayed execution set using {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}}.
+
{{domxref("WindowOrWorkerGlobalScope.createImageBitmap()")}}
+
Accepts a variety of different image sources, and returns a {{domxref("Promise")}} which resolves to an {{domxref("ImageBitmap")}}. Optionally the source is cropped to the rectangle of pixels originating at (sx, sy) with width sw, and height sh.
+
{{domxref("WindowOrWorkerGlobalScope.fetch()")}}
+
Starts the process of fetching a resource from the network.
+
{{domxref("EventTarget.removeEventListener")}}
+
Removes an event listener from the window.
+
{{domxref("WindowOrWorkerGlobalScope.setInterval()")}}
+
Schedules a function to execute every time a given number of milliseconds elapses.
+
{{domxref("WindowOrWorkerGlobalScope.setTimeout()")}}
+
Schedules a function to execute in a given amount of time.
+
+ +

Obsolete methods

+ +
+
{{domxref("Window.showModalDialog()")}} {{obsolete_inline}}
+
Displays a modal dialog. This method was removed completely in Chrome 43, and Firefox 55.
+
+ +

Event handlers

+ +

These are properties of the window object that can be set to establish event handlers for the various things that can happen in the window that might be of interest.

+ +

This interface inherits event handlers from the {{domxref("EventTarget")}} interface and implements event handlers from {{domxref("WindowEventHandlers")}}.

+ +
+

Note: Starting in {{Gecko("9.0")}}, you can now use the syntax if ("onabort" in window) to determine whether or not a given event handler property exists. This is because event handler interfaces have been updated to be proper web IDL interfaces. See DOM event handlers for details.

+
+ +
+
{{domxref("GlobalEventHandlers.onabort")}}
+
Called when the loading of a resource has been aborted, such as by a user canceling the load while it is still in progress
+
{{domxref("WindowEventHandlers.onafterprint")}}
+
Called when the print dialog box is closed. See {{event("afterprint")}} event.
+
{{domxref("WindowEventHandlers.onbeforeprint")}}
+
Called when the print dialog box is opened. See {{event("beforeprint")}} event.
+
{{domxref("Window.onbeforeinstallprompt")}}
+
An event handler property dispatched before a user is prompted to save a web site to a home screen on mobile.
+
{{domxref("WindowEventHandlers.onbeforeunload")}}
+
An event handler property for before-unload events on the window.
+
{{domxref("GlobalEventHandlers.onblur")}}
+
Called after the window loses focus, such as due to a popup.
+
{{domxref("GlobalEventHandlers.onchange")}}
+
An event handler property for change events on the window.
+
{{domxref("GlobalEventHandlers.onclick")}}
+
Called after the ANY mouse button is pressed & released
+
{{domxref("GlobalEventHandlers.ondblclick")}}
+
Called when a double click is made with ANY mouse button.
+
{{domxref("GlobalEventHandlers.onclose")}}
+
Called after the window is closed
+
{{domxref("GlobalEventHandlers.oncontextmenu")}}
+
Called when the RIGHT mouse button is pressed
+
{{domxref("Window.ondevicelight")}}
+
An event handler property for any ambient light levels changes
+
{{domxref("Window.ondevicemotion")}} {{gecko_minversion_inline("6.0")}}
+
Called if accelerometer detects a change (For mobile devices)
+
{{domxref("Window.ondeviceorientation")}} {{gecko_minversion_inline("6.0")}}
+
Called when the orientation is changed (For mobile devices)
+
{{domxref("Window.ondeviceorientationabsolute")}} {{non-standard_inline}} Chrome only
+
An event handler property for any device orientation changes.
+
{{domxref("Window.ondeviceproximity")}}
+
An event handler property for device proximity event
+
{{domxref("GlobalEventHandlers.onerror")}}
+
Called when a resource fails to load OR when an error occurs at runtime. See {{event("error")}} event.
+
{{domxref("GlobalEventHandlers.onfocus")}}
+
Called after the window receives or regains focus. See {{event("focus")}} events.
+
{{domxref("WindowEventHandlers.onhashchange")}} {{gecko_minversion_inline("1.9.2")}}
+
An event handler property for {{event('hashchange')}} events on the window; called when the part of the URL after the hash mark ("#") changes.
+
{{domxref("Window.onappinstalled")}}
+
Called when the page is installed as a webapp. See {{event('appinstalled')}} event.
+
{{domxref("Window.ongamepadconnected")}}
+
Represents an event handler that will run when a gamepad is connected (when the {{event('gamepadconnected')}} event fires).
+
{{domxref("Window.ongamepaddisconnected")}}
+
Represents an event handler that will run when a gamepad is disconnected (when the {{event('gamepaddisconnected')}} event fires).
+
{{domxref("Window.oninput")}}
+
Called when the value of an <input> element changes
+
{{domxref("GlobalEventHandlers.onkeydown")}}
+
Called when you begin pressing ANY key. See {{event("keydown")}} event.
+
{{domxref("GlobalEventHandlers.onkeypress")}}
+
Called when a key (except Shift, Fn, and CapsLock) is in pressed position. See {{event("keypress")}} event.
+
{{domxref("GlobalEventHandlers.onkeyup")}}
+
Called when you finish releasing ANY key. See {{event("keyup")}} event.
+
{{domxref("WindowEventHandlers.onlanguagechange")}}
+
An event handler property for {{event("languagechange")}} events on the window.
+
{{domxref("GlobalEventHandlers.onload")}}
+
Called after all resources and the DOM are fully loaded. WILL NOT get called when the page is loaded from cache, such as with back button.
+
{{domxref("WindowEventHandlers.onmessage")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("message")}} event is raised.
+
{{domxref("GlobalEventHandlers.onmousedown")}}
+
Called when ANY mouse button is pressed.
+
{{domxref("GlobalEventHandlers.onmousemove")}}
+
Called continously when the mouse is moved inside the window.
+
{{domxref("GlobalEventHandlers.onmouseout")}}
+
Called when the pointer leaves the window.
+
{{domxref("GlobalEventHandlers.onmouseover")}}
+
Called when the pointer enters the window
+
{{domxref("GlobalEventHandlers.onmouseup")}}
+
Called when ANY mouse button is released
+
{{domxref("Window.onmozbeforepaint")}} {{gecko_minversion_inline("2.0")}}
+
An event handler property for the MozBeforePaint event, which is sent before repainting the window if the event has been requested by a call to the {{domxref("Window.mozRequestAnimationFrame()")}} method.
+
{{domxref("WindowEventHandlers.onoffline")}}
+
Called when network connection is lost. See {{event("offline")}} event.
+
{{domxref("WindowEventHandlers.ononline")}}
+
Called when network connection is established. See {{event("online")}} event.
+
{{domxref("WindowEventHandlers.onpagehide")}}
+
Called when the user navigates away from the page, before the onunload event. See {{event("pagehide")}} event.
+
{{domxref("WindowEventHandlers.onpageshow")}}
+
Called after all resources and the DOM are fully loaded. See {{event("pageshow")}} event.
+
{{domxref("Window.onpaint")}}
+
An event handler property for paint events on the window.
+
{{domxref("WindowEventHandlers.onpopstate")}} {{gecko_minversion_inline("2.0")}}
+
Called when a back button is pressed.
+
{{domxref("Window.onrejectionhandled")}} {{experimental_inline}}
+
An event handler for handled {{jsxref("Promise")}} rejection events.
+
{{domxref("GlobalEventHandlers.onreset")}}
+
Called when a form is reset
+
{{domxref("GlobalEventHandlers.onresize")}}
+
Called continuously as you are resizing the window.
+
{{domxref("GlobalEventHandlers.onscroll")}}
+
Called when the scroll bar is moved via ANY means. If the resource fully fits in the window, then this event cannot be invoked
+
{{domxref("GlobalEventHandlers.onwheel")}}
+
Called when the mouse wheel is rotated around any axis
+
{{domxref("GlobalEventHandlers.onselect")}}
+
Called after text in an input field is selected
+
{{domxref("GlobalEventHandlers.onselectionchange")}}
+
Is an {{domxref("EventHandler")}} representing the code to be called when the {{event("selectionchange")}} event is raised.
+
{{domxref("WindowEventHandlers.onstorage")}}
+
Called when there is a change in session storage or local storage. See {{event("storage")}} event
+
{{domxref("GlobalEventHandlers.onsubmit")}}
+
Called when a form is submitted
+
{{domxref("WindowEventHandlers.onunhandledrejection")}} {{experimental_inline}}
+
An event handler for unhandled {{jsxref("Promise")}} rejection events.
+
{{domxref("WindowEventHandlers.onunload")}}
+
Called when the user navigates away from the page.
+
{{domxref("Window.onuserproximity")}}
+
An event handler property for user proximity events.
+
{{domxref("Window.onvrdisplayconnect")}}
+
Represents an event handler that will run when a compatible VR device has been connected to the computer (when the {{event("vrdisplayconnected")}} event fires).
+
{{domxref("Window.onvrdisplaydisconnect")}}
+
Represents an event handler that will run when a compatible VR device has been disconnected from the computer (when the {{event("vrdisplaydisconnected")}} event fires).
+
{{domxref("Window.onvrdisplayactivate")}}
+
Represents an event handler that will run when a display is able to be presented to (when the {{event("vrdisplayactivate")}} event fires), for example if an HMD has been moved to bring it out of standby, or woken up by being put on.
+
{{domxref("Window.onvrdisplaydeactivate")}}
+
Represents an event handler that will run when a display can no longer be presented to (when the {{event("vrdisplaydeactivate")}} event fires), for example if an HMD has gone into standby or sleep mode due to a period of inactivity.
+
{{domxref("Window.onvrdisplayblur")}}
+
Represents an event handler that will run when presentation to a display has been paused for some reason by the browser, OS, or VR hardware (when the {{event("vrdisplayblur")}} event fires) — for example, while the user is interacting with a system menu or browser, to prevent tracking or loss of experience.
+
{{domxref("Window.onvrdisplayfocus")}}
+
Represents an event handler that will run when presentation to a display has resumed after being blurred (when the {{event("vrdisplayfocus")}} event fires).
+
{{domxref("Window.onvrdisplaypresentchange")}}
+
represents an event handler that will run when the presenting state of a VR device changes — i.e. goes from presenting to not presenting, or vice versa (when the {{event("vrdisplaypresentchange")}} event fires).
+
+ +

Constructors

+ +

See also the DOM Interfaces.

+ +
+
{{domxref("DOMParser")}}
+
DOMParser can parse XML or HTML source stored in a string into a DOM Document. DOMParser is specified in DOM Parsing and Serialization.
+
{{domxref("Window.GeckoActiveXObject")}}
+
{{todo("NeedsContents")}}
+
{{domxref("Image")}}
+
Used for creating an {{domxref("HTMLImageElement")}}.
+
{{domxref("Option")}}
+
Used for creating an {{domxref("HTMLOptionElement")}}
+
{{domxref("Window.QueryInterface")}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.XMLSerializer")}}
+
{{todo("NeedsContents")}}
+
{{domxref("Worker")}}
+
Used for creating a Web worker
+
{{domxref("Window.XPCNativeWrapper")}}
+
{{todo("NeedsContents")}}
+
{{domxref("Window.XPCSafeJSObjectWrapper")}}
+
{{todo("NeedsContents")}}
+
+ +

Interfaces

+ +

See DOM Reference

+ +

See also

+ + diff --git a/files/pl/web/api/window/localstorage/index.html b/files/pl/web/api/window/localstorage/index.html new file mode 100644 index 0000000000..e93c5c15e7 --- /dev/null +++ b/files/pl/web/api/window/localstorage/index.html @@ -0,0 +1,125 @@ +--- +title: Window.localStorage +slug: Web/API/Window/localStorage +tags: + - API + - Pamięć + - Referencja + - Storage + - Web Storage + - WindowLocalStorage + - Własność + - localStorage +translation_of: Web/API/Window/localStorage +--- +

{{APIRef()}}

+ +

Własność localStorage pozwala na dostęp do lokalnego obiektu {{domxref("Storage")}}. localStorage jest podobne w swoich założeniach do sessionStorage. Różnica pomiędzy nimi polega na tym, że dane przechowywane w localStorage nie mają daty ważności, a dane przechowywane w sessionStorage usuwane są po zakończeniu danej sesji - czyli przy zamknięciu przeglądarki.

+ +

Składnia

+ +
myStorage = localStorage;
+ +

Wartość

+ +

Obiekt {{domxref("Storage")}}.

+ +

Przykład

+ +

Poniższy kod uzyskuje dostęp do lokalnego obiektu {{domxref("Storage")}}, należącego do obecnej domeny i dodaje do niego własność używająć metody {{domxref("Storage.setItem()")}}.

+ +
localStorage.setItem('myCat', 'Tom');
+ +
+

Notka: Pełny przykład znajdziesz w artykule Using the Web Storage API .

+
+ +

Specyfikajca

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Web Storage', '#dom-localstorage', 'localStorage')}}{{Spec2('Web Storage')}} 
+ +

Wsparcie przeglądarek

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
WłasnośćChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
localStorage43.5810.504
sessionStorage52810.504
+
+ +
+ + + + + + + + + + + + + + + + + + + +
WłasnośćAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Podstawowe wspracie2.1{{ CompatUnknown }}811iOS 3.2
+
+ +

Sposób wsparcia dla localStorage i {{domxref("sessionStorage")}} różni się w zależności od przeglądarki. Tutaj znajdziesz szczegółowe dane na temat wsparcia poszczególnych przeglądarek dla obiektów Storage.

+ +
+

Notka: Zaczynając od wersji iOS 5.1, Safari przetrzymuje dane localStorage w folderze cache. Folder ten poddawany jest okresowemu czyszczeniu, zazwyczaj, gdy w pamięci urządzenia kończy się miejsce. Tryb prywatny w mobilnej przeglądarce Safari blokuje również całkowicie możliwość zapisu do pamięci localStorage.

+
+ +

Zobacz także

+ + diff --git a/files/pl/web/api/window/name/index.html b/files/pl/web/api/window/name/index.html new file mode 100644 index 0000000000..0b91ec81ec --- /dev/null +++ b/files/pl/web/api/window/name/index.html @@ -0,0 +1,27 @@ +--- +title: window.name +slug: Web/API/Window/name +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/name +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Pobiera/ustawia nazwę okna.

+

Składnia

+
string = window.name
+ window.name =string
+
+

Przykład

+
window.name = "lab_view";
+
+

Uwagi

+

Nazwa okna jest używana pierwotnie dla ustawienia celu dla linków oraz formularzy. Okno nie musi posiadać nazwy.

+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.name", "ja": "ja/DOM/window.name" } ) }}

diff --git a/files/pl/web/api/window/navigator/index.html b/files/pl/web/api/window/navigator/index.html new file mode 100644 index 0000000000..c43e84184b --- /dev/null +++ b/files/pl/web/api/window/navigator/index.html @@ -0,0 +1,84 @@ +--- +title: window.navigator +slug: Web/API/Window/navigator +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Window/navigator +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Zwraca odwołanie do obiektu navigator, który może być zapytany o informację na temat aplikacji uruchamiającej skrypt.

+ +

Przykład

+ +
alert("Używasz " + navigator.appName);
+
+ +

Własności

+ +
+
navigator.appCodeName
+
Zwraca wewnętrzną nazwę "kodową" aktualnej przeglądarki.
+
navigator.appName
+
Zwraca oficjalną nazwę przeglądarki.
+
navigator.appVersion
+
Zwraca wersję przeglądarki jako łańcuch znaków.
+
navigator.buildID
+
Zwraca identyfikator kompilacji przeglądarki (np. "2006090803").
+
navigator.cookieEnabled
+
Zwraca wartość logiczną wskazującą czy obsługa ciasteczek jest włączona, czy nie.
+
navigator.language
+
Zwraca łańcuch znaków reprezentujący wersję językową przeglądarki.
+
navigator.mimeTypes
+
Zwraca listę typów MIME obsługiwanych przez przeglądarkę.
+
navigator.onLine
+
Zwraca wartość logiczną wskazującą czy przeglądarka jest w trybie online.
+
navigator.oscpu
+
Zwraca łańcuch znaków reprezentujący bieżący system operacyjny.
+
navigator.platform
+
Zwraca łańcuch znaków reprezentujący platformę przeglądarki.
+
navigator.plugins
+
Zwraca tablicę z zainstalowanymi wtyczkami przeglądarki.
+
navigator.product
+
Zwraca nazwę produktu bieżącej przeglądarki (np. "Gecko")
+
navigator.productSub
+
Zwraca numer kompilacji bieżącej przeglądarki (np. "20060909").
+
navigator.securityPolicy
+
Returns an empty string. In Netscape 4.7x, returns "US & CA domestic policy" or "Export policy".
+
navigator.userAgent
+
Returns the user agent string for the current browser.
+
navigator.vendor
+
Returns the vendor name of the current browser (e.g. "Netscape6")
+
navigator.vendorSub
+
Returns the vendor version number (e.g. "6.1")
+
+ +

Metody

+ +
+
navigator.javaEnabled
+
Określa czy w przeglądarce jest włączona obsługa Javy.
+
navigator.taintEnabled {{ Obsolete_inline() }} 
+
Returns false. JavaScript taint/untaint functions removed in JavaScript 1.2
+
navigator.preference
+
Sets a user preference. This method is only available to privileged code, and you should use XPCOM API preferencji instead.
+
navigator.registerContentHandler
+
Pozwala stronom na zarejestrowanie się jako możliwe serwisy obsługujące dla zawartości konkretnego typu MIME.
+
navigator.registerProtocolHandler
+
Pozwala stronom na zarejestrowanie się jako możliwe serwisy obsługujące dany protokół.
+
+ +

Zobacz także

+ +

DOM Client Object Cross-Reference:navigator

+ +

Specyfikacja

+ +

 

diff --git a/files/pl/web/api/window/onload/index.html b/files/pl/web/api/window/onload/index.html new file mode 100644 index 0000000000..45e1b97328 --- /dev/null +++ b/files/pl/web/api/window/onload/index.html @@ -0,0 +1,62 @@ +--- +title: window.onload +slug: Web/API/Window/onload +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/GlobalEventHandlers/onload +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Uchwyt zdarzenia dla zdarzenia wczytywania okna (window).

+ +

Składnia

+ +
window.onload = funcRef;
+
+ + + +

Przykład

+ +
window.onload = function() {
+  init();
+  doSomethingElse();
+};
+
+ +
<html>
+<head>
+
+<title>Test onload</title>
+
+<script type="text/javascript">
+
+window.onload = load;
+
+function load()
+{
+ alert("Wykryto zdarzenie load!");
+}
+</script>
+</head>
+
+<body>
+<p>Zdarzenie load występuje w momencie zakończenia ładowania dokumentu!</p>
+</body>
+</html>
+
+ +

Uwagi

+ +

Zdarzenie load wywoływane jest na końcu procesu ładowania dokumentu. W momencie wystąpienia zdarzenia, DOM zawiera już wszystkie obiekty zawarte w dokumencie oraz zakończone zostało wczytywanie obrazków oraz ramek.
+
+ Istnieje także zdarzenie DOMContentLoaded (które można zarejestrować za pomocą addEventListener) występujące w momencie gdy DOM dla danej strony został zbudowany ale bez czekania na zakończenie ładowania pozostałych zasobów.

diff --git a/files/pl/web/api/window/open/index.html b/files/pl/web/api/window/open/index.html new file mode 100644 index 0000000000..de2d422a8b --- /dev/null +++ b/files/pl/web/api/window/open/index.html @@ -0,0 +1,796 @@ +--- +title: window.open +slug: Web/API/Window/open +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Window/open +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Tworzy nowe okno przeglądarki i wczytuje do niego wskazany zasób.

+ +

Składnia

+ +
referencjaDoObiektuOkna = window.open(strUrl, strNazwaOkna [, strCechyOkna]);
+
+ +

Parametry i zwracana wartość

+ +
+
referencjaDoObiektuOkna
+
Referencja wskazująca na obiekt nowoutworzonego okna to wartość zwracana przez metodę open(). Jeżeli z jakichś powodów nie uda się otworzyć okna, zwrócone zostanie null. Referencje taką dobrze jest przechowywać w zmiennej globalnej. Możesz wtedy użyć jej do do pobrania właściwości nowego okna lub wywołania jego metod - pod warunkiem, że zależność między głównym a nowym oknem spełnia Zasadę tego samego pochodzenia - wymaganą ze względów bezpieczeństwa.
+
+ +
+
strUrl
+
Adres URL, który ma zostać wczytany w nowym oknie. Może to być dokument HTML gdzieś w Sieci, może to być obrazek lub dowolny inny plik, który może obsłużyć przeglądarka.
+
+ +
+
strNazwaOkna
+
Ciąg znaków używany jako nazwa okna. Nazwy tej można użyć jako celu dla odnośników i formularzy, określanego za pomocą atrybutu target elementu <a> lub <form>. Nazwa nie powinna zawierać spacji. strNazwaOkna nie określa tytułu nowego okna.
+
+ +
+
strCechyOkna
+
Parametr opcjonalny. Jest to ciąg znaków, w którym wymienione zostają cechy (funkcjonalność, paski narzędzi) nowego okna przeglądarki. Parametr ten nie może zawierać żadnych spacji. Każda żądana cecha okna oddzielana jest od innych za pomocą przecinka.
+
+ +

Opis

+ +

Metoda open() tworzy nowe okno przeglądarki, podobnie jak przy wybraniu polecenia Nowe okno w menu Plik. Parametr strUrl określa URL, który ma zostać pobrany i załadowany w nowym oknie. Jeśli strUrl jest pustym ciągiem, utworzone zostanie puste okno (URL about:blank) z domyślnym zestawem pasków głównego okna.

+ +

Zauważ, że zdalny URL nie zostanie załadowany od razu. Po zakończeniu wykonywania window.open() okno zawsze zawiera about:blank. Faktyczne pobieranie z adresu URL jest opóźniane do momentu zakończenia wykonywania bieżącego bloku skryptu. Tworzenie okna i ładowanie wskazanego zasobu odbywają się asynchronicznie.

+ +

Przykłady

+ +
<script type="text/javascript">
+
+/* Deklaracja zmiennej globalnej, w której będzie
+   przechowywana referencja do nowego okna */
+
+var WindowObjectReference;
+
+function openRequestedPopup()
+{
+  WindowObjectReference = window.open("http://www.cnn.com/", "CNN_WindowName",
+        "menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes");
+}
+</script>
+
+ +
<script type="text/javascript">
+var WindowObjectReference; // zmienna globalna
+
+function openRequestedPopup()
+{
+ WindowObjectReference = window.open("http://www.domainname.ext/path/ImageFile.png",
+       "DescriptiveWindowName",
+       "resizable=yes,scrollbars=yes,status=yes");
+}
+</script>
+
+ +

Jeśli istnieje już okno o tej samej nazwie strWindowName, to zamiast otwierania nowego okna w istniejącym oknie zostanie załadowany URL strUrl. W takim wypadku wartością zwracaną jest referencja do istniejącego okna, a parametr strWindowFeatures jest ignorowany. Wywołanie metody z pustym ciągiem jako strUrl to sposób uzyskania referencji do otwartego okna jeśli znana jest jego nazwa. Zawartość tego okna nie zostanie zmieniona. Jeśli chcesz otwierać nowe okno przy każdym wywołaniu window.open(), podaj specjalną wartość _blank jako parametr strWindowName.

+ +

strWindowFeatures to opcjonalny ciąg znaków z rozdzieloną przecinkami listą żądanych cech nowego okna. Po otwarciu okna nie możesz zmienić jego funkcjonalności czy pasków za pomocą JavaScriptu. Jeśli strWindowName nie określa istniejącego okna i jeśli nie podasz parametru strWindowFeatures (lub będzie on tylko pustym ciągiem znaków), w nowym oknie znajdize się domyślny zestaw pasków głównego okna.

+ +

Jeżeli zostanie użyty parametr strWindowFeatures, ale nie zostaną podane cechy określające rozmiar, wymiary okna będą takie same, jak wymiary ostatnio wyrenderowanego okna.

+ +

Jeśli zostanie podany parametr strWindowFeatures, ale bez definiowania cech określających pozycję, wtedy współrzędne lewego górnego rogu będą przesunięte o 22 piksele od miejsca, gdzie znajdował się róg ostatnio wyrenderowanego okna. Przesunięcie to jest implementowane przez producentów przeglądarek (w MSIE 6 SP2 wynosi ono 29 pikseli przy domyślnym motywie) - ma ono ułatwiać użytkownikom dostrzeżenie, że otwarto nowe okno. Jeśli ostatnio używane okno było zmaksymalizowane, przesunięcie o 22 piksele nie zostanie użyte - nowe okno także będzie zmaksymalizowane.

+ +

Jeśli podajesz strWindowFeatures, cechy, które nie zostaną określone, będą wyłączone lub usunięte (z wyjątkiem titlebar i close, które domyślnie ustawiane są na yes)>.

+ +
+

Porada: Jeśli podajesz parametr strWindowFeatures, zawrzyj tylko te cechy, które chcesz, by były włączone lub wyświetlane; pozostałe (poza titlebar i close) zostaną wyłączone.

+
+ +

Firefox Chrome Toolbars Illustration

+ +

Pozycja i rozmiar okna

+ + + +
+
left
+
Określa odległość między lewą krawędzią obszaru roboczego aplikacji w systemie operacyjnym użytkownika a najbardziej wysuniętą w lewo częścią obramowania nowego okna przeglądarki. Nowe okno nie możo być zainicjowane w miejscu wychodzącym poza ekran.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x, Opera 6+
+
+ +
+
top
+
Określa odległość między górną krawędzią obszaru roboczego aplikacji w systemie operacyjnym użytkownika a najbardziej wysuniętą w górę częścią obramowania nowego okna przeglądarki. Nowe okno nie możo być zainicjowane w miejscu wychodzącym poza ekran.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x, Opera 6+
+
+ +
+
height
+
Określa wysokość obszaru zawartości okna wyrażoną w pikselach. Wartość zawiera wysokość poziomego paska przewijania, jeśli jest on wyświetlany. Wymagana minimalna wartość to 100.
+
Note on outerHeight versus height (or innerHeight)
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x, Opera 6+
+
+ +
+
width
+
Określa wysokość obszaru zawartości okna wyrażoną w pikselach. Wartość zawiera szerokość pionowego paska przewijania, jeśli jest on wyświetlany. Nie jest włączana szerokość panelu bocznego, jeśli jest on otwarty. Wymagana minimalna wartość to 100.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x, Opera 6+
+
+ +
+
screenX
+
Cecha wycofana. Określa to samo co left, ale obsługują ją tylko przeglądarki Netscape i oparte o Mozillę.
+
Obsługiwane przez Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
screenY
+
Cecha wycofana. Określa to samo co top, ale obsługują ją tylko przeglądarki Netscape i oparte o Mozillę.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
outerHeight
+
Określa wysokość całego okna przeglądarki w pikselach. Wartość outerHeight zawiera w sobie wszystkie widoczne paski, poziomy pasek przewijania (jeśli jest widoczny) i obramowanie okna. Minimalna wymana wartość to 100.
+
Uwaga: ponieważ pasek tytułowy jest zawsze widoczny, wywołanie outerHeight=100 zmniejszy innerHeight okna poniżej wymaganych 100 pikseli.
+
Note on outerHeight versus height (or innerHeight)
+
Obsługiwane przez Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
outerWidth
+
Określa szerokość całego okna przeglądarki w pikselach. Wartość outerWidth zawiera w sobie pionowy pasek przewijania (jeśli jest widoczny) i obramowanie okna. Minimalna wymana wartość to 100.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
innerHeight
+
To samo co height, ale obsługiwane tylko przez przeglądarki Netscape i oparte o Mozillę
+
Note on outerHeight versus height (or innerHeight)
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
innerWidth
+
To samo co width, ale obsługiwane tylko przez przeglądarki Netscape i oparte o Mozillę
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +

Toolbar and chrome features

+ +
+
menubar 
+
Jeśli ta opcja jest ustawiona na yes, wtedy nowe okno posiada widoczny pasek menu.
+
Użytkownicy Mozilli i Firefoxa mogą wymusić by każde nowo otwarte okno posiadało widoczny masek menu poprzez ustawienie
+ dom.disable_window_open_feature.menubar
+ na true w about:config lub w ich pliku user.js.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
toolbar 
+
Jeśli ta opcja jest ustawiona na yes, wtedy nowe okno posiada widoczny pasek nawigacji (Przyciski: poprzednia strona, następna strona, odśwież, zatrzymaj). In addition to the Navigation Toolbar, Mozilla-based browsers will render the Tab Bar if it is visible, present in the parent window.
+
Mozilla and Firefox users can force new windows to always render the Navigation Toolbar by setting
+ dom.disable_window_open_feature.toolbar
+ to true in about:config or in their user.js file.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
location 
+
If this feature is set to yes, then the new secondary window renders the Location bar in Mozilla-based browsers. MSIE 5+ and Opera 7.x renders the Address Bar.
+
Mozilla and Firefox users can force new windows to always render the location bar by setting
+ dom.disable_window_open_feature.location
+ to true in about:config or in their user.js file.
+
+ +

Note that MSIE 7 will force the presence of the Address Bar: "We think the address bar is also important for users to see in pop-up windows. A missing address bar creates a chance for a fraudster to forge an address of their own. To help thwart that, IE7 will show the address bar on all internet windows to help users see where they are." coming from Microsoft Internet Explorer Blog, Better Website Identification

+ +
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x, Opera 6+
+
+ +
+
directories 
+
If this feature is set to yes, then the new secondary window renders the Personal Toolbar in Netscape 6.x, Netscape 7.x and Mozilla browser. It renders the Bookmarks Toolbar in Firefox 1.x and, in MSIE 5+, it renders the Links bar. In addition to the Personal Toolbar, Mozilla browser will render the Site Navigation Bar if such toolbar is visible, present in the parent window.
+
Mozilla and Firefox users can force new windows to always render the Personal Toolbar/Bookmarks toolbar by setting
+ dom.disable_window_open_feature.directories
+ to true in about:config or in their user.js file.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
personalbar 
+
Same as directories but only supported by Netscape and Mozilla-based browsers.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
status 
+
If this feature is set to yes, then the new secondary window has a status bar. Users can force the rendering of status bar in all Mozilla-based browsers, in MSIE 6 SP2 (Note on status bar in XP SP2) and in Opera 6+. The default preference setting in recent Mozilla-based browser releases and in Firefox 1.0 is to force the presence of the status bar.
+
Note on status bar
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +

Window functionality features

+ +
+
resizable 
+
If this feature is set to yes, the new secondary window will be resizable.
+
Note: Starting with version 1.4, Mozilla-based browsers have a window resizing grippy at the right end of the status bar, this ensures that users can resize the browser window even if the web author requested this secondary window to be non-resizable. In such case, the maximize/restore icon in the window's titlebar will be disabled and the window's borders won't allow resizing but the window will still be resizable via that grippy in the status bar.
+
+ +
+

Tip: For accessibility reasons, it is strongly recommended to set this feature always to yes.

+
+ +
+
Mozilla and Firefox users can force new windows to be easily resizable by setting
+ dom.disable_window_open_feature.resizable
+ to true in about:config or in their user.js file.
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
scrollbars 
+
If this feature is set to yes, the new secondary window will show horizontal and/or vertical scrollbar(s) if the document doesn't fit into the window's viewport.
+
+ +
+

Tip: For accessibility reasons, it is strongly encouraged to set this feature always to yes.

+
+ +
+
Mozilla and Firefox users can force this option to be always enabled for new windows by setting
+ dom.disable_window_open_feature.scrollbars
+ to true in about:config or in their user.js file.
+
Note on scrollbars
+
Obsługiwane przez: Internet Explorer 5+, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
dependent 
+
If set to yes, the new window is said to be dependent of its parent window. A dependent window closes when its parent window closes. A dependent window is minimized on the Windows task bar only when its parent window is minimized. On Windows platforms, a dependent window does not show on the task bar. A dependent window also stays in front of the parent window.
+
Dependent windows are not implemented on MacOS X, this option will be ignored.
+
In MSIE 6, the nearest equivalent to this feature is the showModelessDialog() method.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
chrome 
+
Note: Starting with Mozilla 1.7/Firefox 0.9, this feature requires the UniversalBrowserWrite privilege ({{ Bug(244965) }}). Without this privilege it is ignored.
+
If set to yes, the page is loaded as window's only content, without any of the browser's interface elements. There will be no context menu defined by default and none of the standard keyboard shortcuts will work. The page is supposed to provide a user interface of its own, usually this feature is used to open XUL documents (standard dialogs like the JavaScript Console are opened this way).
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
modal 
+
Note: Starting with Mozilla 1.2.1, this feature requires the UniversalBrowserWrite privilege ({{ Bug(180048) }}). Without this privilege, it is equivalent to dependent.
+
If set to yes, the new window is said to be modal. The user cannot return to the main window until the modal window is closed. A typical modal window is created by the alert() function.
+
The exact behavior of modal windows depends on the platform and on the Mozilla release version.
+
The MSIE 6 equivalent to this feature is the showModalDialog() method.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
dialog 
+
The dialog feature removes all icons (restore, minimize, maximize) from the window's titlebar, leaving only the close button. Firefox and its command system menu under WindowsMozilla 1.2+ and Netscape 7.1 will render the other menu system commands (in FF 1.0 and in NS 7.0x, the command system menu is not identified with the Firefox/NS 7.0x icon on the left end of the titlebar: that's probably a bug. You can access the command system menu with a right-click on the titlebar). Dialog windows are windows which have no minimize system command icon and no maximize/restore down system command icon on the titlebar nor in correspondent menu item in the command system menu. They are said to be dialog because their normal, usual purpose is to only notify info and to be dismissed, closed. On Mac systems, dialog windows have a different window border and they may get turned into a sheet.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
minimizable 
+
This setting can only apply to dialog windows; "minimizable" requires dialog=yes. If minimizable is set to yes, the new dialog window will have a minimize system command icon in the titlebar and it will be minimizable. Any non-dialog window is always minimizable and minimizable=no will be ignored.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
fullscreen 
+
Do not use. Not implemented in Mozilla. There are no plans to implement this feature in Mozilla.
+
This feature no longer works in MSIE 6 SP2 the way it worked in MSIE 5.x. The Windows taskbar, as well as the titlebar and the status bar of the window are not visible, nor accessible when fullscreen is enabled in MSIE 5.x.
+
fullscreen always upsets users with large monitor screen or with dual monitor screen. Forcing fullscreen onto other users is also extremely unpopular and is considered an outright rude attempt to impose web author's viewing preferences onto users.
+
Note on fullscreen
+
Obsługiwane przez: Internet Explorer 5+
+
fullscreen does not really work work in MSIE 6 SP2.
+
+ +

Features requiring privileges

+ +

The following features require the UniversalBrowserWrite privilege, otherwise they will be ignored. Chrome scripts have this privilege automatically, others have to request it from the PrivilegeManager.

+ +
+
titlebar 
+
By default, all new secondary windows have a titlebar. If set to no, this feature removes the titlebar from the new secondary window.
+
Mozilla and Firefox users can force new windows to always render the titlebar by setting
+ dom.disable_window_open_feature.titlebar
+ to true in about:config or in their user.js file.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
alwaysRaised 
+
If set to yes, the new window will always be displayed on top of other browser windows, regardless of whether it is active or not.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
alwaysLowered 
+
If set to yes, the new created window floats below, under its own parent when the parent window is not minimized. alwaysLowered windows are often referred as pop-under windows. The alwaysLowered window can not be on top of the parent but the parent window can be minimized. In NS 6.x, the alwaysLowered window has no minimize system command icon and no restore/maximize system command.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +
+
z-lock 
+
Same as alwaysLowered.
+
+ +
+
close 
+
When set to no, this feature removes the system close command icon and system close menu item. It will only work for dialog windows (dialog feature set). close=no will override minimizable=yes.
+
Mozilla and Firefox users can force new windows to always have a close button by setting
+ dom.disable_window_open_feature.close
+ to true in about:config or in their user.js file.
+
Obsługiwane przez: Netscape 6.x, Netscape 7.x, Mozilla 1.x, Firefox 1.x
+
+ +

The position and size feature elements require a number to be set. The toolbars and window functionalities can be set with a yes or no; you can use 1 instead of yes and 0 instead of no. The toolbar and functionality feature elements also accept the shorthand form: you can turn a feature on by simply listing the feature name in the strWindowFeatures string. If you supply the strWindowFeatures parameter, then the titlebar and close are still yes by default, but the other features which have a yes/no choice will be no by default and will be turned off.

+ +

Example:

+ +
<script type="text/javascript">
+var WindowObjectReference; // global variable
+
+function openRequestedPopup()
+{
+  WindowObjectReference = window.open("http://www.domainname.ext/path/ImgFile.png",
+        "DescriptiveWindowName",
+        "width=420,height=230,resizable,scrollbars=yes,status=1");
+}
+</script>
+
+ +

In this example, the window will be resizable, it will render scrollbar(s) if needed, if the content overflows requested window dimensions and it will render the status bar. It will not render the menubar nor the location bar. Since the author knew about the size of the image (400 pixels wide and 200 pixels high), he added the margins applied to the root element in MSIE 6 which is 15 pixels for top margin, 15 pixels for the bottom margin, 10 pixels for the left margin and 10 pixels for the right margin.

+ +

Best practices

+ +
<script type="text/javascript">
+var WindowObjectReference = null; // global variable
+
+function openFFPromotionPopup()
+{
+  if(WindowObjectReference == null || WindowObjectReference.closed)
+  /* if the pointer to the window object in memory does not exist
+     or if such pointer exists but the window was closed */
+
+  {
+    WindowObjectReference = window.open("http://www.spreadfirefox.com/",
+           "PromoteFirefoxWindowName", "resizable=yes,scrollbars=yes,status=yes");
+    /* then create it. The new window will be created and
+       will be brought on top of any other window. */
+  }
+  else
+  {
+    WindowObjectReference.focus();
+    /* else the window reference must exist and the window
+       is not closed; therefore, we can bring it back on top of any other
+       window with the focus() method. There would be no need to re-create
+       the window or to reload the referenced resource. */
+  };
+}
+</script>
+
+(...)
+
+<p><a href="http://www.spreadfirefox.com/" target="PromoteFirefoxWindowName"
+onclick="openFFPromotionPopup(); return false;"
+title="This link will create a new window or will re-use
+an already opened one">Promote Firefox adoption</a></p>
+
+ +

The above code solves a few usability problems related to links opening secondary window. The purpose of the return false in the code is to cancel default action of the link: if the onclick event handler is executed, then there is no need to execute the default action of the link. But if javascript support is disabled or non-existent on the user's browser, then the onclick event handler is ignored and the browser loads the referenced resource in the target frame or window that has the name "PromoteFirefoxWindowName". If no frame nor window has the name "PromoteFirefoxWindowName", then the browser will create a new window and will name it "PromoteFirefoxWindowName".

+ +

More reading on the use of the target attribute:

+ +

HTML 4.01 Target attribute specifications

+ +

How do I create a link that opens a new window?

+ +

You can also parameterize the function to make it versatile, functional in more situations, therefore re-usable in scripts and webpages:

+ +
<script type="text/javascript">
+var WindowObjectReference = null; // global variable
+
+function openRequestedPopup(strUrl, strWindowName)
+{
+  if(WindowObjectReference == null || WindowObjectReference.closed)
+  {
+    WindowObjectReference = window.open(strUrl, strWindowName,
+           "resizable=yes,scrollbars=yes,status=yes");
+  }
+  else
+  {
+    WindowObjectReference.focus();
+  };
+}
+</script">
+(...)
+
+<p><a href="http://www.spreadfirefox.com/" target="PromoteFirefoxWindow"
+onclick="openRequestedPopup(this.href, this.target); return false;"
+title="This link will create a new window or will re-use
+an already opened one">Promote
+Firefox adoption</a></p>
+
+ +

You can also make such function able to open only 1 secondary window and to reuse such single secondary window for other links in this manner:

+ +
<script type="text/javascript">
+var WindowObjectReference = null; // global variable
+var PreviousUrl; /* global variable which will store the
+                    url currently in the secondary window */
+
+function openRequestedSinglePopup(strUrl)
+{
+  if(WindowObjectReference == null || WindowObjectReference.closed)
+  {
+    WindowObjectReference = window.open(strUrl, "SingleSecondaryWindowName",
+           "resizable=yes,scrollbars=yes,status=yes");
+  }
+  else if(previousUrl != strUrl)
+  {
+    WindowObjectReference = window.open(strUrl, "SingleSecondaryWindowName",
+        "resizable=yes,scrollbars=yes,status=yes");
+    /* if the resource to load is different,
+       then we load it in the already opened secondary window and then
+       we bring such window back on top/in front of its parent window. */
+    WindowObjectReference.focus();
+  }
+  else
+  {
+    WindowObjectReference.focus();
+  };
+  PreviousUrl = strUrl;
+  /* explanation: we store the current url in order to compare url
+     in the event of another call of this function. */
+}
+</script>
+
+(...)
+
+<p><a href="http://www.spreadfirefox.com/" target="SingleSecondaryWindowName"
+onclick="openRequestedSinglePopup(this.href); return false;"
+title="This link will create a new window or will re-use
+an already opened one">Promote Firefox
+adoption</a></p>
+<p><a href="http://www.mozilla.org/support/firefox/faq"
+target="SingleSecondaryWindowName"
+onclick="openRequestedSinglePopup(this.href); return false;"
+title="This link will create a new window or will re-use
+an already opened one">Firefox FAQ</a></p>
+
+ +

FAQ

+ +
+
How can I prevent the confirmation message asking the user whether he wants to close the window?
+
You can not. New windows not opened by javascript can not as a rule be closed by JavaScript. The JavaScript Console in Mozilla-based browsers will report the warning message: "Scripts may not close windows that were not opened by script." Otherwise the history of URLs visited during the browser session would be lost.
+
More on the window.close() method
+
+ +
+
How can I bring back the window if it is minimized or behind another window?
+
First check for the existence of the window object reference of such window and if it exists and if it has not been closed, then use the focus() method. There is no other reliable way. You can examine an example explaining how to use the focus() method.
+
+ +
+
How do I force a maximized window?
+
You cannot. All browser manufacturers try to make the opening of new secondary windows noticed by users and noticeable by users to avoid confusion, to avoid disorienting users.
+
+ +
+
How do I turn off window resizability or remove toolbars?
+
You cannot force this. Users with Mozilla-based browsers have absolute control over window functionalities like resizability, scrollability and toolbars presence via user preferences in about:config. Since your users are the ones who are supposed to use such windows (and not you, being the web author), the best is to avoid interfering with their habits and preferences. We recommend to always set the resizability and scrollbars presence (if needed) to yes to insure accessibility to content and usability of windows. This is in the best interests of both the web author and the users.
+
+ +
+
How do I resize a window to fit its content?
+
You can not reliably because the users can prevent the window from being resized by unchecking the
+
+ +

Edit/Preferences/Advanced/Scripts & Plug-ins/Allow Scripts to/ Move or resize existing windows
+ checkbox in Mozilla or
+ Tools/Options.../Content tab/Enable Javascript/Advanced button/Move or resize existing windows
+ checkbox in Firefox or by setting
+ dom.disable_window_move_resize
+ to true in the about:config or by editing accordingly their user.js file.

+ +
+
In general, users usually disable moving and resizing of existing windows because allowing authors' scripts to do so has been abused overwhelmingly in the past and the rare scripts that do not abuse such feature are often wrong, inaccurate when resizing the window. 99% of all those scripts disable window resizability and disable scrollbars when in fact they should enable both of these features to allow a cautious and sane fallback mechanism if their calculations are wrong.
+
+ +
+
The window method sizeToContent() is also disabled if the user unchecks the preference Move or resize existing windows checkbox. Moving and resizing a window remotely on the user's screen via script will very often annoy the users, will disorient the user, and will be wrong at best. The web author expects to have full control of (and can decide about) every position and size aspects of the users' browser window ... which is simply not true.
+
+ +
+
How do I open a referenced resource of a link in a new tab? or in a specific tab?
+
Currently, you can not. Only the user can set his advanced preferences to do that. K-meleon 1.1, a Mozilla-based browser, gives complete control and power to the user regarding how links are opened. Some advanced extensions also give Mozilla and Firefox a lot of power over how referenced resources are loaded.
+
+ +
+
In a few years, the target property of the CSS3 hyperlink module may be implemented (if CSS3 Hyperlink module as it is right now is approved). And even if and when this happens, you can expect developers of browsers with tab-browsing to give the user entire veto power and full control over how links can open web pages. How to open a link should always be entirely under the control of the user.
+
+ +
+
How do I know whether a window I opened is still open?
+
You can test for the existence of the window object reference which is the returned value in case of success of the window.open() call and then verify that WindowObjectReference.closed return value is false.
+
+ +
+
How can I tell when my window was blocked by a popup blocker?
+
With the built-in popup blockers of Mozilla/Firefox and Internet Explorer 6 SP2, you have to check the return value of window.open(): it will be null if the window wasn't allowed to open. However, for most other popup blockers, there is no reliable way.
+
+ +
+
What is the JavaScript relationship between the main window and the secondary window?
+
The return value of the window.open() method and the opener property. The WindowObjectReference links the main (opener) window to the secondary (sub-window) window while the opener keyword will link the secondary window to its main (opener) window.
+
+ +
+
I can not access the properties of the new secondary window. I always get an error in the javascript console saying "Error: uncaught exception: Permission denied to get property <property_name or method_name>. Why is that?
+
It is because of the cross-domain script security restriction (also referred as the "Same Origin Policy"). A script loaded in a window (or frame) from a distinct origin (domain name) cannot get nor set properties of another window (or frame) or the properties of any of its HTML objects coming from another distinct origin (domain name). Therefore, before executing a script targeting a secondary window, the browser in the main window will verify that the secondary window has the same domain name.
+
More reading on the cross-domain script security restriction: http://www.mozilla.org/projects/secu...me-origin.html
+
+ +

Usability issues

+ +

Avoid resorting to window.open()

+ +

Generally speaking, it is preferable to avoid resorting to window.open() for several reasons:

+ + + + + + + + + + + +

If you want to offer to open a link in a new window, then follow tested and recommendable usability and accessibility guidelines:

+ +
Never use this form of code for links:
+ <a href="javascript:window.open(...)" ...>
+ +

"javascript:" links break accessibility and usability of webpages in every browser.

+ + + +

Further reading:

+ + + +
Nigdy nie używaj <a href="#" onclick="window.open(...);">
+ +

Takie pseudo-linki ograniczają dostępność stron. Zawsze używaj rzeczywistych URLi jako wartości atrybutu href tak by w przypadku braku obsługi javascriptu lub gdy przeglądarka nie obsługuje otwierania odrębnych okien (jak w przypadku MS-Web TV, przeglądarek tekstowych, itp.), przeglądarka miała możliwość dostępu do zasobu zgodnie z domyślnym sposobem obsługi zasobów. Tak sformułowane linki kolidują także z dodatkowymi funkcjami przeglądarek obsługujących zakładki, np.: kliknięcie linku środkowym klawiszem myszy, kliknięcie linku z przytrzymanym klawiszem ctrl, naciśnięcie kombinacji ctrl+enter czy gesty myszą.

+ + + +

Identify links that will open new windows in a way that helps navigation for users by coding the title attribute of the link, by adding an icon at the end of the link or by coding the cursor accordingly.

+ +

The purpose is to warn users in advance of context changes to minimize confusion on the user's part: changing the current window or popping up new windows can be very disorienting to users (Back toolbar button is disabled).

+ +
+

"Users often don't notice that a new window has opened, especially if they are using a small monitor where the windows are maximized to fill up the screen. So a user who tries to return to the origin will be confused by a grayed out Back button."
+ quote from The Top Ten New Mistakes of Web Design: 2. Opening New Browser Windows, Jakob Nielsen, May 1999

+
+ +

When extreme changes in context are explicitly identified before they occur, then the users can determine if they wish to proceed or so they can be prepared for the change: not only they will not be confused or feel disoriented, but more experienced users can better decide how to open such links (in a new window or not, in the same window, in a new tab or not, in "background" or not).

+ +

References

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Przykład ikon & kursorów "Nowego okna"
New window icon from yahoo.comNew window icon from microsoft.comNew window icon from webaim.orgNew window icon from sun.com
New window icon from bbc.co.ukNew window icon from Accessible Internet SolutionsNew window icon from accessify.comNew window icon from webstyleguide.com
New window icon from an unknown sourceNew window icon from an unknown sourceNew window icon from an unknown sourceNew window icon from gtalbot.org
New window cursor from draig.deNew window cursor from mithgol.ru
+ +
Always use the target attribute
+ +

If javascript support is disabled or non-existent, then the user agent will create a secondary window accordingly or will render the referenced resource according to its handling of the target attribute: e.g. some user agents which can not create new windows, like MS Web TV, will fetch the referenced resource and append it at the end of the current document. The goal and the idea is to try to provide - not impose - to the user a way to open the referenced resource, a mode of opening the link. Your code should not interfere with the features of the browser at the disposal of the user and your code should not interfere with the final decision resting with the user.

+ +
Do not use target="_blank"
+ +

Always provide a meaningful name to your target attribute and try to reuse such target attribute in your page so that a click on another link may load the referenced resource in an already created and rendered window (therefore speeding up the process for the user) and therefore justifying the reason (and user system resources, time spent) for creating a secondary window in the first place. Using a single target attribute value and reusing it in links is much more user resources friendly as it only creates one single secondary window which is recycled. On the other hand, using "_blank" as the target attribute value will create several new and unnamed windows on the user's desktop which can not be recycled, reused. In any case, if your code is well done, it will not interfere with the user's final choice but will rather merely offer him more choices, more ways to open links and more power to the tool he's using (a browser).

+ +

Glossary

+ +
+
Opener window, parent window, main window, first window 
+
Terms often used to describe or to identify the same window. It is the window from which a new window will be created. It is the window on which the user clicked a link which lead to the creation of another, new window.
+
+ +
+
Sub-window, child window, secondary window, second window 
+
Terms often used to describe or to identify the same window. It is the new window which was created.
+
+ +
+
Unrequested popup windows
+
Script-initiated windows opening automatically without the user's consent.
+
+ +

Specification

+ +

DOM Level 0. window.open() is not part of any W3C (World Wide Web Consortium) specification or technical recommendation.

+ +

Notes

+ +

Note on precedence

+ +

In cases where left and screenX (and/or top and screenY) have conflicting values, then left and top have precedence over screenX and screenY respectively. If left and screenX (and/or top and screenY) are defined in the strWindowFeatures list, then left (and/or top) will be honored and rendered. In the following example the new window will be positioned at 100 pixels from the left side of the work area for applications of the user's operating system, not at 200 pixels.

+ +
<script type="text/javascript">
+WindowObjectReference = window.open("http://news.bbc.co.uk/",
+           "BBCWorldNewsWindowName",
+           "left=100,screenX=200,resizable,scrollbars,status");
+</script>
+
+ +

If left is set but top has no value and screenY has a value, then left and screenY will be the coordinate positioning values of the secondary window.

+ +

outerWidth has precedence over width and width has precedence over innerWidth. outerHeight has precedence over height and height has precedence over innerHeight. In the following example, Mozilla-browsers will create a new window with an outerWidth of 600 pixels wide and will ignore the request of a width of 500 pixels and will also ignore the request of an innerWidth of 400 pixels.

+ +
<script type="text/javascript">
+WindowObjectReference = window.open("http://www.wwf.org/",
+           "WWildlifeOrgWindowName",
+           "outerWidth=600,width=500,innerWidth=400,resizable,scrollbars,status");
+</script>
+
+ +

Note on position and dimension error correction

+ +

Requested position and requested dimension values in the strWindowFeatures list will not be honored and will be corrected if any of such requested value does not allow the entire browser window to be rendered within the work area for applications of the user's operating system. No part of the new window can be initially positioned offscreen. This is by default in all Mozilla-based browser releases.

+ +

MSIE 6 SP2 has a similar error correction mechanism but it is not activated by default in all security levels: a security setting can disable such error correction mechanism.

+ +

Note on scrollbars

+ +

When content overflows window viewport dimensions, then scrollbar(s) (or some scrolling mechanism) are necessary to ensure that content can be accessed by users. Content can overflow window dimensions for several reasons which are outside the control of web authors:

+ + + +

Note on status bar

+ +

You should assume that a large majority of users' browsers will have the status bar or that a large majority of users will want to force the status bar presence: best is to always set this feature to yes. Also, if you specifically request to remove the status bar, then Firefox users will not be able to view the Site Navigation toolbar if it is installed. In Mozilla and in Firefox, all windows with a status bar have a window resizing grippy at its right-most side. The status bar also provides info on http connection, hypertext resource location, download progress bar, encryption/secure connection info with SSL (Secure Socket Layer) connection (displaying a yellow padlock icon), internet/security zone icons, privacy policy/cookie icon, etc. Removing the status bar usually removes a lot of functionality, features and information considered useful (and sometimes vital) by the users.

+ +

Note on security issues of the status bar presence

+ +

In MSIE 6 for XP SP2: For windows opened using window.open():

+ +
+

"For windows opened using window.open():
+ Expect the status bar to be present, and code for it. The status bar will be on by default and is 20-25 pixels in height. (...)"
+ quote from Fine-Tune Your Web Site for Windows XP Service Pack 2, Browser Window Restrictions in XP SP2

+
+ +
+

"(...) windows that are created using the window.open() method can be called by scripts and used to spoof a user interface or desktop or to hide malicious information or activity by sizing the window so that the status bar is not visible.
+ Internet Explorer windows provide visible security information to the user to help them ascertain the source of the Web page and the security of the communication with that page. When these elements are not in view, the user might think they are on a more trusted page or interacting with a system process when they are actually interacting with a malicious host. (...)
+ Script-initiated windows will be displayed fully, with the Internet Explorer title bar and status bar. (...)
+ Script management of Internet Explorer status bar
+ Detailed description
+ Internet Explorer has been modified to not turn off the status bar for any windows. The status bar is always visible for all Internet Explorer windows. (...) Without this change, windows that are created using the window.open() method can be called by scripts and spoof a user interface or desktop or hide malicious information or activity by hiding important elements of the user interface from the user.
+ The status bar is a security feature of Internet Explorer windows that provides Internet Explorer security zone information to the user. This zone cannot be spoofed (...)"
+ quote from Changes to Functionality in Microsoft Windows XP Service Pack 2, Internet Explorer Window Restrictions

+
+ +

Note on fullscreen

+ +

In MSIE 6 for XP SP2:

+ + + + + +

References:

+ + + + + +

Note on outerHeight versus height

+ +

innerHeight vs outerHeight illustration

+ +

Tutorials

+ +

JavaScript windows (tutorial) by Lasse Reichstein Nielsen

+ +

The perfect pop-up (tutorial) by Ian Lloyd

+ +

Popup windows and Firefox (interactive demos) by Gérard Talbot

+ +

References

+ +

Links Want To Be Links by Jukka K. Korpela

+ +

Links & JavaScript Living Together in Harmony by Jeff Howden

diff --git a/files/pl/web/api/window/opendialog/index.html b/files/pl/web/api/window/opendialog/index.html new file mode 100644 index 0000000000..6d24bf03fd --- /dev/null +++ b/files/pl/web/api/window/opendialog/index.html @@ -0,0 +1,75 @@ +--- +title: window.openDialog +slug: Web/API/Window/openDialog +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/API/Window/openDialog +--- +

{{ ApiRef() }}

+

Podsumowanie

+

window.openDialog jest rozszerzeniem do window.open. Zachowuje się w taki sam sposób, oprócz tego, że opcjonalnie pobiera jeden lub więcej parametrów przeszłego windowFeatures i windowFeatures itself is treated a little differently.

+

The optional parameters, if present, will be bundled up in a JavaScript Array object and added to the newly created window as a property named window.arguments. They may be referenced in the JavaScript of the window at any time, including during the execution of a load handler. These parameters may be used, then, to pass arguments to and from the dialog window.

+

Note that the call to openDialog() returns immediately. If you want the call to block until the user has closed the dialog, supply modal as a windowFeatures parameter. Note that this also means the user won't be able to interact with the opener window until he closes the modal dialog.

+

Składnia

+
newWindow = openDialog(url, name, features, arg1, arg2, ...)
+
+
+
+ newWindow 
+
+ Otwarte okno.
+
+ url 
+
+ Adres URL który będzie wczytany do nowego okna.
+
+ name 
+
+ Nazwa okna (opcjonalnie). Zobacz opis window.open, aby dowiedzieć się więcej.
+
+ features 
+
+ Zobacz opis window.open, aby dowiedzieć się więcej.
+
+ arg1, arg2, ... 
+
+ Argumenty dopasowujące nowe okno (opcjonalnie).
+
+

Przykład

+
var win = openDialog("http://example.tld/zzz.xul", "dlg", "", "pizza", 6.98);
+
+

Uwagi

+

Nowe możliwości

+

all - Initially activates (or deactivates ("all=no")) all chrome (except the behaviour flags chrome, dialog and modal). These can be overridden (so "menubar=no,all" turns on all chrome except the menubar.) This feature is explicitly ignored by DOM:window.open. window.openDialog finds it useful because of its different default assumptions.

+

Domyślne zachowanie

+

Możliwości chrome i dialog są zawsze assumed on, unless explicitly turned off ("chrome=no"). openDialog treats the absence of the features parameter as does DOM:window.open, (that is, an empty string sets all features to off) except chrome and dialog, which default to on. If the features parameter is a zero-length string, or contains only one or more of the behaviour features (chrome, dependent, dialog and modal) the chrome features are assumed "OS' choice." That is, window creation code is not given specific instructions, but is instead allowed to select the chrome that best fits a dialog on that operating system.

+

Passing extra parameters to the dialog

+

To pass extra parameters into the dialog, you can simply supply them after the windowFeatures parameter:

+
openDialog("http://example.tld/zzz.xul", "dlg", "", "pizza", 6.98);
+
+

The extra parameters will then get packed into a property named arguments of type Array, and this property gets added to the newly opened dialog window.

+

To access these extra parameters from within dialog code, use the following scheme:

+
var food  = window.arguments[0];
+var price = window.arguments[1];
+
+

Note that you can access this property from within anywhere in the dialog code.

+

Zwracanie wartości z okienka dialogowego

+

Since window.close() erases all properties associated with the dialog window (i.e. the variables specified in the JavaScript code which gets loaded from the dialog), it is not possible to pass return values back past the close operation using globals (or any other constructs).

+

To be able to pass values back to the caller, you have to supply some object via the extra parameters. You can then access this object from within the dialog code and set properties on it, containing the values you want to return or preserve past the window.close() operation.

+
var retVals = { address: null, delivery: null };
+openDialog("http://example.tld/zzz.xul", "dlg", "modal", "pizza", 6.98, retVals);
+
+

If you set the properties of the retVals object in the dialog code as described below, you can now access them via the retVals array after the openDialog() call returns.

+

Inside the dialog code, you can set the properties as follows:

+
var retVals = window.arguments[2];
+retVals.address  = enteredAddress;
+retVals.delivery = "immediate";
+
+

Zobacz także .

+

Specyfikacja

+

{{ DOM0() }}

diff --git a/files/pl/web/api/window/opener/index.html b/files/pl/web/api/window/opener/index.html new file mode 100644 index 0000000000..3cd744928e --- /dev/null +++ b/files/pl/web/api/window/opener/index.html @@ -0,0 +1,49 @@ +--- +title: window.opener +slug: Web/API/Window/opener +tags: + - API + - HTML DOM + - Window + - Własność + - odniesienie + - opener +translation_of: Web/API/Window/opener +--- +

{{APIRef("HTML DOM")}}

+ +

Podsumowanie

+ +

Właściwość opener obiektu {{domxref ("Window")}} zwraca odniesienie do okna, które otworzyło okno używając {{domxref ("Window.open", "open()")}}.

+ +

Innymi słowy, jeśli okno A otwiera okno B, B.opener zwraca A.

+ +

Składnia

+ +
openerWindow = window.opener;
+
+ +

Wartość

+ +

{{domxref ("Window")}} odnosi się do okna, które wywołało open(), aby otworzyć bieżące okno, lub null, jeśli to okno nie zostało otwarte przez połączenie z innym lub utworzone przez inne.

+ +

W niektórych przeglądarkach atrybut rel="noopener noreferrer" w początkowym elemencie {{HTMLElement ("a")}} zapobiega ustawianiu referencji window.opener, w którym to przypadku ta właściwość zwróci wartość null.

+ +

Przykład

+ +
 if window.opener != indexWin {
+     referToTop(window.opener);
+ }
+
+ +

Uwagi

+ +

Kiedy okno jest otwarte z innego okna, to utrzymuje referencję do pierwszego okna jako window.opener. Jeśli bieżące okno nie posiada własności opener, te metoda zwróci NULL.

+ +

Wsparcie przeglądarek

+ + + +

{{Compat("api.Window.opener")}}

diff --git a/files/pl/web/api/window/prompt/index.html b/files/pl/web/api/window/prompt/index.html new file mode 100644 index 0000000000..0a90ac5c2e --- /dev/null +++ b/files/pl/web/api/window/prompt/index.html @@ -0,0 +1,33 @@ +--- +title: window.prompt +slug: Web/API/Window/prompt +translation_of: Web/API/Window/prompt +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Wyświetla okno dialogowe z prośbą do użytkownika o wpisanie jakiegoś tekstu.

+

Składnia

+
result = window.prompt(text,value);
+
+ +

Przykład

+
var sign = prompt("Jaki jest twój znak zodiaku?");
+if (sign.toLowerCase() == "skorpion")
+   alert("Wow! Też jestem Skorpionem!");
+
+

Gdy użytkownik naciśnie przycisk OK, zwracany jest wpisany przez niego tekst. Jeśli użytkownik naciśnie przycisk OK bez wprowadzania tekstu, zwrócony zostanie pusty łańcuch znaków. Jeśli użytkownik naciśnie przycisk Anuluj, ta funkcja zwróci wartość null.

+

Uwagi

+

Okno dialogowe typu prompt zawiera pole tekstowe o wielkości pojedynczej linii, przycisk Anuluj i przycisk OK oraz zwraca tekst (możliwy również pusty), które użytkownik wpisał w to pole tekstowe.

+

The following text is shared between this article, DOM:window.confirm and DOM:window.alert Okna dialogowe to okna modalne - uniemożliwiają użytkownikowi dostęp do reszty interfejsu programu dopóki okno nie zostanie zamknięte. Z tego powodu nie powinieneś nadużywać funkcji, które otwierają okna dialogowe.

+

Zamiast tego użytkownicy Chrome (na przykład rozszerzenia) powinni używać metod nsIPromptService.

+

Specyfikacja

+

{{ DOM0() }}

+

Zobacz także

+

alert, confirm

+
+  
+

{{ languages( { "en": "en/DOM/window.prompt", "fr": "fr/DOM/window.prompt", "ja": "ja/DOM/window.prompt" } ) }}

diff --git a/files/pl/web/api/window/requestanimationframe/index.html b/files/pl/web/api/window/requestanimationframe/index.html new file mode 100644 index 0000000000..703a908e8d --- /dev/null +++ b/files/pl/web/api/window/requestanimationframe/index.html @@ -0,0 +1,170 @@ +--- +title: Window.requestAnimationFrame() +slug: Web/API/Window/requestAnimationFrame +tags: + - API + - DOM + - Metodă +translation_of: Web/API/window/requestAnimationFrame +--- +

{{APIRef}}
+ Metoda Window.requestAnimationFrame() informuje przeglądarkę o zamiarze wykonania animacji i żąda od przeglądarki wywołania określonej funkcji w celu odświeżenia animacji przed następnym odmalowaniem. Argumentem metody jest funkcja (callback) do wywołania przed następnym odmalowaniem (odświeżeniem kanwy).

+ +
Uwaga: Twoja funkcja musi samodzielnie wywołać requestAnimationFrame(), jeżeli chcesz odmalować kolejną ramkę animacji.
+ +

Należy wywołać tą metodą za każdym razem, gdy jesteś gotowy do odświeżenia swojej animacji na ekranie. Spowoduje to żądanie od przeglądarki wykonania twojej funkcji przed następnym odmalowaniem. Częstotliwość wykonywania funkcji wynosi zazwyczaj 60 razy na sekundę, jednakże według rekomendacji W3C w większości przeglądarek odpowiada częstotliwości odświeżania ekranu. Ta częstotliwość może zostać zredukowana do niższej wartości, gdy kod wykonywany jest w zakładce pozostającej w tle lub w ukrytej {{ HTMLElement("iframe") }} w celu poprawienia wydajności lub przedłużenia żywotności baterii.

+ +

Wywoływanej funkcji przekazywany jest pojedynczy argument {{domxref("DOMHighResTimeStamp")}}, który zawiera aktualny czas rozpoczęcia wykonywania tej funkcji, wstawionej do kolejki przez wywołanie requestAnimationFrame. Wiele różnych funkcji wywołanych w jednej ramce otrzyma jednakże tę samą wartość znacznika czasu, niezależnie od czasu spędzonego wykonaniu obliczeń w poprzedzającej funkcji. Znacznik czasu jest liczbą dziesiętną wyrażoną w milisekundach z maksymalną dokładnością 1ms (1000 µs).

+ +

Składnia

+ +
window.requestAnimationFrame(callback);
+
+ +

Parametry

+ +
+
callback
+
Parametr określający funkcję do wywołania, gdy nadchodzi czas odświeżenia animacji przed następnym odmalowaniem. Przekazywana funkcja przyjmuje pojedynczy argument {{domxref("DOMHighResTimeStamp")}}, który określa aktualny czas (zwrócony przez {{domxref('Performance.now()')}} ) w momencie rozpoczęcia przez requestAnimationFrame uruchamiania skolejkowanych wcześniej funkcji.
+
+ +

Wartość zwracana

+ +

Wartość typu long integer będącą identyfikatorem żądania, który unikalnie określa pozycję na liście funkcji do wykonania. Jest to niezerowa wartość, jednakże nie wolno przyjmować żadnych innych założeń dotyczących wartości tego identyfikatora. Możesz przekazać tę wartość do {{domxref("Window.cancelAnimationFrame()")}} aby anulować żądanie wywołania funkcji do odświeżenia.

+ +

Przykład

+ +
var start = null;
+var element = document.getElementById("SomeElementYouWantToAnimate");
+
+function step(timestamp) {
+  if (!start) start = timestamp;
+  var progress = timestamp - start;
+  element.style.left = Math.min(progress/10, 200) + "px";
+  if (progress < 2000) {
+    window.requestAnimationFrame(step);
+  }
+}
+
+window.requestAnimationFrame(step);
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', '#animation-frames', 'requestAnimationFrame')}}{{Spec2('HTML WHATWG')}}Brak zmian, zastępuje poprzednią.
{{SpecName('RequestAnimationFrame', '#dom-windowanimationtiming-requestanimationframe', 'requestAnimationFrame')}}{{Spec2('RequestAnimationFrame')}}Wstępna definicja
+ +

Zgodność przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support10.0 {{property_prefix("webkit")}}
+ 24.0 3
4.0 {{property_prefix("moz")}} 1 4
+ 23 2
10.0{{compatversionunknown}} {{property_prefix("-o")}}
+ 15.0
6.0 {{property_prefix("webkit")}}
+ 6.1
return value23.0{{CompatGeckoDesktop("11.0")}}10.0{{compatversionunknown}}{{compatversionunknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support4.416.0 {{property_prefix("webkit")}}{{CompatUnknown}}{{CompatUnknown}}14.07.0
+ 6.0 {{property_prefix("webkit")}}
requestID return value{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("11.0")}} {{property_prefix("moz")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

1 Przed Gecko 11.0 {{geckoRelease("11.0")}}, mozRequestAnimationFrame() mogłobyć wywołane bez parametru. To nie jest dalej wspierane, gdyż raczej nie stanie się częścią standardu.

+ +

2 Parametrem wywoływanej funkcji jest {{domxref("DOMTimeStamp")}} zamiast {{domxref("DOMHighResTimeStamp")}} gdy stosuje się metodę z prefiksem. DOMTimeStamp ma dokładność tylko do milisekundy, podczas gdy DOMHighResTimeStamp ma minimalną dokładność dziesięciu mikrosekund. Co więcej, czas zerowy jest inny: DOMHighResTimeStamp ma taki sam czas zerowy jak performance.now(), lecz DOMTimeStamp ma czas zerowy jak Date.now().

+ +

3 Poprawnym wywołaniem anulowania żądania w Chrome jest aktualnie window.cancelAnimationFrame(). W starszych wersjach window.webkitCancelAnimationFrame() & window.webkitCancelRequestAnimationFrame(), które są przestarzałe, ale ciągle wspierane.

+ +

4 Wsparcie dla wersji z prefiksem zostało usunięte z Firefox 42.

+ +

Zobacz również

+ + diff --git a/files/pl/web/api/window/resizeby/index.html b/files/pl/web/api/window/resizeby/index.html new file mode 100644 index 0000000000..df817ea665 --- /dev/null +++ b/files/pl/web/api/window/resizeby/index.html @@ -0,0 +1,32 @@ +--- +title: window.resizeBy +slug: Web/API/Window/resizeBy +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/resizeBy +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Zmienia rozmiar okna o pewną wartość.

+

Składnia

+
window.resizeBy(xDelta,yDelta)
+
+

Parametry

+ +

Przykład

+
// Spowoduje zmniejszenie się okna
+window.resizeBy(-200, -200);
+
+

Uwagi

+

Ta metoda zmienia rozmiar okna relatywnie do jego obecnego rozmiaru. Aby zmienić rozmiar okna bezwzględnie zastosuj DOM:window.resizeTo.

+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.resizeBy", "ja": "ja/DOM/window.resizeBy" } ) }}

diff --git a/files/pl/web/api/window/resizeto/index.html b/files/pl/web/api/window/resizeto/index.html new file mode 100644 index 0000000000..532b561993 --- /dev/null +++ b/files/pl/web/api/window/resizeto/index.html @@ -0,0 +1,36 @@ +--- +title: window.resizeTo +slug: Web/API/Window/resizeTo +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/resizeTo +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Dynamicznie zmienia rozmiar okna.

+

Składnia

+
window.resizeTo(iWidth,iHeight)
+
+

Parametry

+ +

Przykład

+
 // funkcja zmienia rozmiar okna do połowy aktualnie
+ // wyświetlanego ekranu
+ function halve() {
+   window.resizeTo(window.screen.availWidth/2,
+      window.screen.availHeight/2);
+ }
+
+

Uwagi

+

Zobacz także DOM:window.resizeBy.

+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.resizeTo", "ja": "ja/DOM/window.resizeTo" } ) }}

diff --git a/files/pl/web/api/window/scroll/index.html b/files/pl/web/api/window/scroll/index.html new file mode 100644 index 0000000000..3aeacc5f9a --- /dev/null +++ b/files/pl/web/api/window/scroll/index.html @@ -0,0 +1,33 @@ +--- +title: window.scroll +slug: Web/API/Window/scroll +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/scroll +--- +

 

+

{{ ApiRef() }}

+

Podsumowanie

+

Przesuwa się do danych koordynatów w dokumencie.

+

Składnia

+
window.scroll(x-coord,y-coord)
+
+

Parametry

+ +

Przykład

+
 // przenieś 100-ny piksel poziomy na górę okna
+ <button onClick="scroll(0, 100);">kliknij, by przesunąć się o 100 pikseli w dół </button>
+
+

Uwagi

+

Powyższa funkcja jest tym co funkcja window.scrollTo. Dla przesuwu względnego zobacz window.scrollBy, window.scrollByLines oraz window.scrollByPages.

+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.scroll", "ja": "ja/DOM/window.scroll" } ) }}

diff --git a/files/pl/web/api/window/scrollbylines/index.html b/files/pl/web/api/window/scrollbylines/index.html new file mode 100644 index 0000000000..329171c9c7 --- /dev/null +++ b/files/pl/web/api/window/scrollbylines/index.html @@ -0,0 +1,35 @@ +--- +title: window.scrollByLines +slug: Web/API/Window/scrollByLines +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/scrollByLines +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przewija dokument przez daną liczbę linii.

+

Składnia

+
window.scrollByLines(lines)
+
+

Parametry

+ +

Przykład

+
// przewija w dół o 5 linii w dokumencie.
+<button onclick="scrollByLines(5);">down 5 lines</button>
+
+
// przewija w górę o 5 linii w dokumencie.
+<button onclick="scrollByLines(-5);">up 5 lines</button>
+
+

Uwagi

+

Zobacz także window.scrollBy, window.scrollByPages.

+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.scrollByLines", "ja": "ja/DOM/window.scrollByLines" } ) }}

diff --git a/files/pl/web/api/window/scrollbypages/index.html b/files/pl/web/api/window/scrollbypages/index.html new file mode 100644 index 0000000000..99548bf52c --- /dev/null +++ b/files/pl/web/api/window/scrollbypages/index.html @@ -0,0 +1,35 @@ +--- +title: window.scrollByPages +slug: Web/API/Window/scrollByPages +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/scrollByPages +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przewija aktualny dokument przez określoną liczbę stron.

+

Składnia

+
window.scrollByPages(pages)
+
+

Parametry

+ +

Przykład

+
// przewija w dół dokument o 1 stronę
+window.scrollByPages(1);
+
+// przewija w górę dokument o 1 stronę
+window.scrollByPages(-1);
+
+

Uwagi

+

Zobacz także window.scrollBy, window.scrollByLines, window.scroll, window.scrollTo.

+

Specyfikacja

+

DOM Level 0. Nie jest częścią specyfikacji.

+
+  
+

{{ languages( { "en": "en/DOM/window.scrollByPages", "ja": "ja/DOM/window.scrollByPages" } ) }}

diff --git a/files/pl/web/api/window/scrollto/index.html b/files/pl/web/api/window/scrollto/index.html new file mode 100644 index 0000000000..6bdb2154a7 --- /dev/null +++ b/files/pl/web/api/window/scrollto/index.html @@ -0,0 +1,32 @@ +--- +title: window.scrollTo +slug: Web/API/Window/scrollTo +tags: + - DOM + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/Window/scrollTo +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Przesuwa się do danych koordynatów w dokumencie.

+

Składnia

+
window.scrollTo(x-coord,y-coord)
+
+

Parametry

+ +

Przykład

+
window.scrollTo(0, 1000);
+
+

Uwagi

+

Powyższa funkcja jest tym co funkcja window.scroll. Dla przesuwu względnego zobacz window.scrollBy, window.scrollByLines oraz window.scrollByPages.

+

Specyfikacja

+

DOM poziom 0. Nie jest częścią specyfikacji.

+

 

+
+  
+

{{ languages( { "en": "en/DOM/window.scrollTo", "fr": "fr/DOM/window.scrollTo", "ja": "ja/DOM/window.scrollTo" } ) }}

diff --git a/files/pl/web/api/window/setinterval/index.html b/files/pl/web/api/window/setinterval/index.html new file mode 100644 index 0000000000..5cbfadde80 --- /dev/null +++ b/files/pl/web/api/window/setinterval/index.html @@ -0,0 +1,87 @@ +--- +title: window.setInterval +slug: Web/API/Window/setInterval +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/WindowOrWorkerGlobalScope/setInterval +--- +

{{ ApiRef() }}

+ +

Podsumowanie

+ +

Ustawia opóźnienie do cyklicznego wywoływania określonej funkcji.

+ +

Składnia

+ +
var idInterwalu = window.setInterval(funkcja, opóźnienie[, parametr1, parametr2, ...]);
+var idInterwalu = window.setInterval(kod, opóźnienie);
+ +

 Parametry

+ + + +

Należy zwrócić uwagę, że przekazywanie dodatkowych parametrów w pierwszej składni nie działa w Internet Explorerze.

+ +

Przykład

+ +
idInterwalu = window.setInterval(animuj, 500);
+
+ +

 W poniższym przykładzie, funkcja zmienKolorTekstu() będzie wykonywana co sekundę, dopóki użytkownik nie naciśnie przycisku Stop, co spowoduje wywołanie clearInterval() z parametrem idInterwalu.

+ +
<html>
+<head>
+<title>przykład z wykorzystaniem setInterval/clearInterval</title>
+
+<script type="text/javascript">
+var idInterwalu;
+
+function zmienKolor() {
+  idInterwalu = setInterval(zmienKolorTekstu, 1000);
+}
+
+function zmienKolorTekstu() {
+  var elem = document.getElementById("my_box");
+  if (elem.style.color == 'red') {
+    elem.style.color = 'blue';
+  } else {
+    elem.style.color = 'red';
+  }
+}
+
+function zatrzymajZmianeKoloru() {
+  clearInterval(idInterwalu);
+}
+</script>
+</head>
+
+<body onload="zmienKolor();">
+<div id="my_box">
+<p>Hello World</p>
+</div>
+<button onclick="zatrzymajZmianeKoloru();">Stop</button>
+</body>
+</html>
+ +

Uwagi

+ +

Funkcja setInterval() służy do ustawienia opóźnienia dla cyklicznie wywoływanych funkcji, takich jak funkcje animacji.

+ +

Możliwe jest anulowanie wykonania fukcji poprzez wywołanie window.clearInterval().

+ +

Jeżeli funkcja ma zostać wykonana tylko raz a nie być wykonywana cyklicznie to należy skorzystać z  window.setTimeout().

+ +

Specyfikacja

+ +

{{ DOM0() }}

+ +

{{ languages( { "en": "en/DOM/window.setInterval", "fr": "fr/DOM/window.setInterval", "ja": "ja/DOM/window.setInterval", "pl": "pl/DOM/window.setInterval" } ) }}

diff --git a/files/pl/web/api/window/settimeout/index.html b/files/pl/web/api/window/settimeout/index.html new file mode 100644 index 0000000000..926080dd5b --- /dev/null +++ b/files/pl/web/api/window/settimeout/index.html @@ -0,0 +1,46 @@ +--- +title: window.setTimeout +slug: Web/API/Window/setTimeout +tags: + - DOM + - DOM_0 + - Dokumentacja_Gecko_DOM + - Gecko + - Wszystkie_kategorie +translation_of: Web/API/WindowOrWorkerGlobalScope/setTimeout +--- +

{{ ApiRef() }}

+

Podsumowanie

+

Uruchamia fragment kodu bądź funkcję po określonym odstępie czasu.

+

Składnia

+
id = window.setTimeout(funkcja, opóźnienie[, param1, param2, ...]);
+id = window.setTimeout(kod, opóźnienie);
+
+

gdzie

+ +

Przykłady

+
window.setTimeout('window.parent.generateOutput()', 1000);
+
+
function generateOutput(aConcise) {
+  if(aConcise)
+    parent.generateConciseOutput();
+  else
+    parent.generateOutput();
+}
+window.setTimeout(generateOutput, 1000, true);
+
+

Zobacz też przykład użycia clearTimeout().

+

Uwagi

+

Możesz anulować opóźnienie wywołania funkcji za pomocą window.clearTimeout().

+

Jeśli chcesz, by funkcja była uruchamiana cyklicznie (np. co każde N milisekund), rozważ wykorzystanie window.setInterval().

+

Specyfikacja

+

{{ DOM0() }}

+

{{ languages( { "en": "en/DOM/window.setTimeout", "fr": "fr/DOM/window.setTimeout", "ja": "ja/DOM/window.setTimeout", "pl": "pl/DOM/window.setTimeout" } ) }}

diff --git a/files/pl/web/api/window/sidebar/index.html b/files/pl/web/api/window/sidebar/index.html new file mode 100644 index 0000000000..280b5dcce3 --- /dev/null +++ b/files/pl/web/api/window/sidebar/index.html @@ -0,0 +1,56 @@ +--- +title: Window.sidebar +slug: Web/API/Window/sidebar +tags: + - DOM + - NeedsTranslation + - Non-standard + - Property + - Reference + - TopicStub + - Window +translation_of: Web/API/Window/sidebar +--- +
{{APIRef}} {{Non-standard_header}}
+ +

Returns a sidebar object, which contains several methods for registering add-ons with the browser.

+ +

Notes

+ +

The sidebar object returned has the following methods:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MethodDescription (SeaMonkey)Description (Firefox)
addPanel(title, contentURL, "")Adds a sidebar panel.Obsolete since Firefox 23 (only present in SeaMonkey).
+ End users can use the "load this bookmark in the sidebar" option instead. Also see Creating a Firefox sidebar.
addPersistentPanel(title, contentURL, "")Adds a sidebar panel, which is able to work in the background.
AddSearchProvider(descriptionURL)Installs a search provider (OpenSearch). Adding OpenSearch search engines contains more details. Added in Firefox 2.
addSearchEngine(engineURL, iconURL, suggestedTitle, suggestedCategory) {{Obsolete_inline(44)}}Installs a search engine (Sherlock). Adding Sherlock search engines contains more details.
IsSearchProviderInstalled(descriptionURL)Indicates if a specific search provider (OpenSearch) is installed.
+ +

Specification

+ +

Mozilla-specific. Not part of any standard.

diff --git a/files/pl/web/api/windowbase64/atob/index.html b/files/pl/web/api/windowbase64/atob/index.html new file mode 100644 index 0000000000..cd36201a6c --- /dev/null +++ b/files/pl/web/api/windowbase64/atob/index.html @@ -0,0 +1,104 @@ +--- +title: WindowBase64.atob() +slug: Web/API/WindowBase64/atob +tags: + - API + - Base-64 + - Base64 + - Method + - Metodă + - Reference + - Referencja + - WindowBase64 +translation_of: Web/API/WindowOrWorkerGlobalScope/atob +--- +

{{APIRef}}

+

Funkcja WindowBase64.atob() dekoduje ciąg danych, który został zakodowany używając kodowania base-64. Możesz użyć metody window.btoa() aby zakodować i przesłać dane, które w innym wypadku mogą powodować problemy z komunikacją, a następnie odebrać je i użyć metody window.atob() aby zdekodować dane ponownie. Na przykład możesz zakodować, przesłać i zdekodować znaki kontrolne ASCII o wartościach od 0 do 31.

+

Aby używać tej funkcji z ciągami Unicode albo UTF-8, zobacz tę uwagę w Kodowaniu i dekodowaniu Base64 i tę uwagę w window.btoa().

+

Składnia

+
var odkodowaneDane = window.atob(zakodowaneDane);
+

Przykład

+
var zakodowaneDane = window.btoa("Hello, world"); // kodowanie ciągu
+var odkodowaneDane = window.atob(zakodowaneDane); // odkodowywanie ciągu
+

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', '#dom-windowbase64-atob', 'WindowBase64.atob()')}}{{Spec2('HTML WHATWG')}}Bez zmian od ostatniej migawki, {{SpecName("HTML5.1")}}.
{{SpecName('HTML5.1', '#dom-windowbase64-atob', 'WindowBase64.atob()')}}{{Spec2('HTML5.1')}}Migawka {{SpecName("HTML WHATWG")}}. Bez zmian.
{{SpecName("HTML5 W3C", "#dom-windowbase64-atob", "WindowBase64.atob()")}}{{Spec2('HTML5 W3C')}}Migawka {{SpecName("HTML WHATWG")}}. Utworzenie WindowBase64 (properties where on the target before it).
+

Zgodność przeglądarek

+
+ {{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
FunkcjaChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Podstawowa obsługa{{CompatVersionUnknown}}{{CompatGeckoDesktop(1)}}[1][2]10{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+
+ + + + + + + + + + + + + + + + + + + +
FunkcjaAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Podstawowa obsługa{{CompatVersionUnknown}}{{CompatGeckoMobile(1)}}{{CompatNo}}{{CompatUnknown}}{{CompatVersionUnknown}}
+
+

[1]  btoa() jest także dostępna dla komponentów XPCOM zaimplementowanych w JavaScript, nawet jeżeli window nie jest globalnym obiektem w komponencie.

+

[2] Wraz z Firefoxem 27, metoda atob() ignoruje wszystkie spacje w argumencie dla zgodności z najnowszą specyfikacją HTML5. ({{ bug(711180) }})

+

Zobacz też

+ diff --git a/files/pl/web/api/windowbase64/btoa/index.html b/files/pl/web/api/windowbase64/btoa/index.html new file mode 100644 index 0000000000..cf3e90c26d --- /dev/null +++ b/files/pl/web/api/windowbase64/btoa/index.html @@ -0,0 +1,126 @@ +--- +title: WindowBase64.btoa() +slug: Web/API/WindowBase64/btoa +tags: + - API + - Base-64 + - Base64 + - Method + - Reference + - Referencja + - WindowBase64 +translation_of: Web/API/WindowOrWorkerGlobalScope/btoa +--- +

{{APIRef}}

+

Tworzy string ASCII zakodowany w base-64 z ciągu ("string") danych binarnych.

+

Metoda ta jednak nie nadaje się do konwertowania surowych ciągów Unicode! Zobacz sekcję Unicode poniżej.

+

Składnia

+
var zakodowaneDane = window.btoa(ciagDoZakodowania);
+

Przykład

+
var zakodowaneDane = window.btoa("Hello, world"); // kodowanie ciągu
+var odkodowaneDane = window.atob(zakodowaneDane); // odkodowywanie ciągu ("Hello, world")
+
+

Uwagi

+

Możesz używać tej metody do kodowania danych, które w innym wypadku mogą powodować problemy z komunikacją. Przekaż je, a następnie użyj metody window.atob() aby odkodować dane ponownie. Na przykład możesz zakodować znaki kontrolne takie jak ASCII o wartości od 0 do 31.

+

btoa() jest także dostępne dla komponentów XPCOM zaimplementowanych w JavaScript, nawet jeżeli window nie jest globalnym obiektem w komponencie.

+

Ciągi Unicode

+

W większości przeglądarek odwołanie się do window.btoa() z ciągiem Unicode spowoduje wystąpienie wyjątku Character Out Of Range.

+

Aby tego uniknąć, rozważ ten model odnotowany przez Johana Sundströma:

+
function utf8_to_b64( str ) {
+    return window.btoa(encodeURIComponent( escape( str )));
+}
+
+function b64_to_utf8( str ) {
+    return unescape(decodeURIComponent(window.atob( str )));
+}
+
+// Usage:
+utf8_to_b64('✓ à la mode'); // JTI1dTI3MTMlMjUyMCUyNUUwJTI1MjBsYSUyNTIwbW9kZQ==
+b64_to_utf8('JTI1dTI3MTMlMjUyMCUyNUUwJTI1MjBsYSUyNTIwbW9kZQ=='); // "✓ à la mode"
+
+utf8_to_b64('I \u2661 Unicode!'); // SSUyNTIwJTI1dTI2NjElMjUyMFVuaWNvZGUlMjUyMQ==
+b64_to_utf8('SSUyNTIwJTI1dTI2NjElMjUyMFVuaWNvZGUlMjUyMQ=='); // "I ♡ Unicode!"
+
+
+

Lepszym, bardziej wiarygodnym i mniej wymagającym rozwiązaniem jest konwersja DOMString do ciągu zakodowanego w UTF-8 używając TypedArray. W tym celu proszę zapoznać się z tym akapitem.

+

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', '#dom-windowbase64-btoa', 'WindowBase64.btoa()')}}{{Spec2('HTML WHATWG')}}Brak zmian od ostatniej migawki, {{SpecName("HTML5.1")}}.
{{SpecName('HTML5.1', '#dom-windowbase64-btoa', 'WindowBase64.btoa()')}}{{Spec2('HTML5.1')}}Migawka {{SpecName("HTML WHATWG")}}. Bez zmian.
{{SpecName("HTML5 W3C", "#dom-windowbase64-btoa", "WindowBase64.btoa()")}}{{Spec2('HTML5 W3C')}}Migawka {{SpecName("HTML WHATWG")}}. Utworzenie WindowBase64 (properties where on the target before it).
+

Zgodność przeglądarek

+
+ {{CompatibilityTable}}
+
+ + + + + + + + + + + + + + + + + + + +
FunkcjaChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Podstawowa obsługa{{CompatVersionUnknown}}{{CompatGeckoDesktop(1)}}[1]10{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+
+ + + + + + + + + + + + + + + + + + + +
FunkcjaAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Podstawowa obsługa{{CompatVersionUnknown}}{{CompatGeckoMobile(1)}}{{CompatNo}}{{CompatUnknown}}{{CompatVersionUnknown}}
+
+

[1] btoa() jest także dostępna dla komponentów XPCOM zaimplementowanych w JavaScript, nawet jeżeli window nie jest globalnym obiektem w komponencie.

+

Zobacz też

+ diff --git a/files/pl/web/api/windowbase64/index.html b/files/pl/web/api/windowbase64/index.html new file mode 100644 index 0000000000..2d13e49406 --- /dev/null +++ b/files/pl/web/api/windowbase64/index.html @@ -0,0 +1,113 @@ +--- +title: WindowBase64 +slug: Web/API/WindowBase64 +translation_of: Web/API/WindowOrWorkerGlobalScope +--- +

{{APIRef("HTML DOM")}}

+ +

The WindowBase64 helper contains utility methods to convert data to and from base64, a binary-to-text encoding scheme. For example it is used in data URIs.

+ +

There is no object of this type, though the context object, either the {{domxref("Window")}} for regular browsing scope, or the {{domxref("WorkerGlobalScope")}}  for workers, implements it.

+ +

Properties

+ +

This helper neither defines nor inherits any properties.

+ +

Methods

+ +

This helper does not inherit any methods.

+ +
+
{{domxref("WindowBase64.atob()")}}
+
Decodes a string of data which has been encoded using base-64 encoding.
+
{{domxref("WindowBase64.btoa()")}}
+
Creates a base-64 encoded ASCII string from a string of binary data.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', '#windowbase64', 'WindowBase64')}}{{Spec2('HTML WHATWG')}}No change since the latest snapshot, {{SpecName("HTML5.1")}}.
{{SpecName('HTML5.1', '#windowbase64', 'WindowBase64')}}{{Spec2('HTML5.1')}}Snapshot of {{SpecName("HTML WHATWG")}}. No change.
{{SpecName("HTML5 W3C", "#windowbase64", "WindowBase64")}}{{Spec2('HTML5 W3C')}}Snapshot of {{SpecName("HTML WHATWG")}}. Creation of WindowBase64 (properties where on the target before it).
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureFirefox (Gecko)ChromeInternet ExplorerOperaSafari
Basic support{{CompatGeckoDesktop(1)}} [1]{{CompatVersionUnknown}}10.0{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureFirefox Mobile (Gecko)AndroidIE MobileOpera MobileSafari Mobile
Basic support{{CompatGeckoMobile(1)}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

[1]  atob() is also available to XPCOM components implemented in JavaScript, even though {{domxref("Window")}} is not the global object in components.

+ +

See also

+ + diff --git a/files/pl/web/api/zdarzenia_dotykowe/index.html b/files/pl/web/api/zdarzenia_dotykowe/index.html new file mode 100644 index 0000000000..4d49e9b5b5 --- /dev/null +++ b/files/pl/web/api/zdarzenia_dotykowe/index.html @@ -0,0 +1,336 @@ +--- +title: Zdarzenia dotykowe +slug: Web/API/Zdarzenia_dotykowe +translation_of: Web/API/Touch_events +--- +
{{DefaultAPISidebar("Touch Events")}}
+ +

W celu zapewnienia wsparcia dla dotykowych interfejsów użytkownika, zdarzenia dotykowe oferują możliwość interpretowania aktywności palca (lub rysika) na ekranach i gładzikach.

+ +

Interfejsy zdarzeń dotykowych to stounkowo niskopoziomowe API, które mogą być użyte do specyficznych dla aplikacji wielodotykowych interakcji takich jak gesty wykonywane dwoma palcami. Interakcja wielodotykowa zaczyna się, kiedy palec (lub rysik) dotyka powierzchni ekranu lub gładzika. Pozostałe palce mogą dotknąć powierzhni później i, opcjonalnie, poruszać się po powierzchni dotykowej. Interakcja kończy się, gdy palce są zabrane z powierzchni ekranu lub gładzika. W czasie trwania interakcji, aplikacja odbiera zdarzenia dotykowe podczas faz startu, ruchu i zakończenia tejże interakcji.

+ +

Zdarzenia dotykowe są podobne do zdarzeń myszki, z tą różnicą, że pozwalają na jednoczesne dotknięcia w różnych miejscach na ekranie. Interfejs {{domxref("TouchEvent")}} hermetyzuje wszystkie punkty dotyku aktywne w danym momencie. Interfejs {{domxref("Touch")}}, który reprezentuje pojedynczy punkt dotyku, zawiera informacje takie jak pozycja punktu dotyku w stosunku do widoku okna przeglądarki.

+ +

Definicje

+ +
+
Powierzchnia
+
Powierzchnia dotykowa. Może to być ekran lub gładzik.
+
+ +
+
Punkt dotyku
+
Punkt kontaktu z powierzchnią. Może to być palec (lub łokieć, ucho, nos, cokolwiek, ale najczęściej jednak palec) lub rysik.
+
+ +

Interfejsy

+ +
+
{{domxref("TouchEvent")}}
+
Reprezentuje zdarzenie, które zachodzi, gdy stan dotknięć powierzchni się zmienia.
+
{{domxref("Touch")}}
+
Reprezentuje pojedynczy punkt kontaktu między użytkownikiem a powierzchnią dotykową.
+
{{domxref("TouchList")}}
+
Reprezentuje grupę dotknięć; jest używany, gdy na przykład użytkownik dotyka powierzchni wieloma palcami jednocześnie.
+
+ +

Przykład

+ +

Poniższy przykład śledzi wiele dotknięć w jednym czasie, pozwalając użytkownikowi na rysowanie w elemencie {{HTMLElement("canvas")}} przy użyciu więcej niż jednego palca jednocześnie. Kod ten będzie działać jedynie w przeglądarkach wspierających zdarzenia dotykowe.

+ +
Uwaga: W niniejszym tekście słowo „palec” używane jest do opisania kontaktu z powierzchnią dotykową, ale może to być oczywiście także rysik lub dowolna inna metoda dotykania ekranu.
+ +

Stwórz kanwę

+ +
<canvas id="canvas" width="600" height="600" style="border:solid black 1px;">
+  Twoja przeglądarka nie wspiera elementu kanwa (canvas).
+</canvas>
+<br>
+<button onclick="startup()">Initialize</button>
+<br>
+Log: <pre id="log" style="border: 1px solid #ccc;"></pre>
+
+ +

Ustawianie funkcji do obsługi zdarzeń

+ +

Kiedy strona się ładuje, pokazana niżej funkcja startup() powinna być wywołana przez atrybut onload naszego elementu {{HTMLElement("body")}} (choć w przykładzie używamy przycisku do jej uruchomienia, ze względu na ograniczenia systemu przykłądów w MDN).

+ +
function startup() {
+  var el = document.getElementsByTagName("canvas")[0];
+  el.addEventListener("touchstart", handleStart, false);
+  el.addEventListener("touchend", handleEnd, false);
+  el.addEventListener("touchcancel", handleCancel, false);
+  el.addEventListener("touchmove", handleMove, false);
+  console.log("initialized.");
+}
+
+ +

Funkcja ta po prostu ustawia nasłluchiwanie zdarzeń dla naszego elementu {{HTMLElement("canvas")}}, tak że możemy obsłużyć zdarzenia dotykowe, kiedy się pojawią.

+ +

Śledzenie nowych zdarzeń

+ +

We'll keep track of the touches in-progress.

+ +
var ongoingTouches = [];
+
+ +

When a {{event("touchstart")}} event occurs, indicating that a new touch on the surface has occurred, the handleStart() function below is called.

+ +
function handleStart(evt) {
+  evt.preventDefault();
+  console.log("touchstart.");
+  var el = document.getElementsByTagName("canvas")[0];
+  var ctx = el.getContext("2d");
+  var touches = evt.changedTouches;
+
+  for (var i = 0; i < touches.length; i++) {
+    console.log("touchstart:" + i + "...");
+    ongoingTouches.push(copyTouch(touches[i]));
+    var color = colorForTouch(touches[i]);
+    ctx.beginPath();
+    ctx.arc(touches[i].pageX, touches[i].pageY, 4, 0, 2 * Math.PI, false);  // a circle at the start
+    ctx.fillStyle = color;
+    ctx.fill();
+    console.log("touchstart:" + i + ".");
+  }
+}
+
+ +

This calls {{domxref("event.preventDefault()")}} to keep the browser from continuing to process the touch event (this also prevents a mouse event from also being delivered). Then we get the context and pull the list of changed touch points out of the event's {{domxref("TouchEvent.changedTouches")}} property.

+ +

After that, we iterate over all the {{domxref("Touch")}} objects in the list, pushing them onto an array of active touch points and drawing the start point for the draw as a small circle; we're using a 4-pixel wide line, so a 4 pixel radius circle will show up neatly.

+ +

Drawing as the touches move

+ +

Each time one or more fingers moves, a {{event("touchmove")}} event is delivered, resulting in our handleMove() function being called. Its responsibility in this example is to update the cached touch information and to draw a line from the previous position to the current position of each touch.

+ +
function handleMove(evt) {
+  evt.preventDefault();
+  var el = document.getElementsByTagName("canvas")[0];
+  var ctx = el.getContext("2d");
+  var touches = evt.changedTouches;
+
+  for (var i = 0; i < touches.length; i++) {
+    var color = colorForTouch(touches[i]);
+    var idx = ongoingTouchIndexById(touches[i].identifier);
+
+    if (idx >= 0) {
+      console.log("continuing touch "+idx);
+      ctx.beginPath();
+      console.log("ctx.moveTo(" + ongoingTouches[idx].pageX + ", " + ongoingTouches[idx].pageY + ");");
+      ctx.moveTo(ongoingTouches[idx].pageX, ongoingTouches[idx].pageY);
+      console.log("ctx.lineTo(" + touches[i].pageX + ", " + touches[i].pageY + ");");
+      ctx.lineTo(touches[i].pageX, touches[i].pageY);
+      ctx.lineWidth = 4;
+      ctx.strokeStyle = color;
+      ctx.stroke();
+
+      ongoingTouches.splice(idx, 1, copyTouch(touches[i]));  // swap in the new touch record
+      console.log(".");
+    } else {
+      console.log("can't figure out which touch to continue");
+    }
+  }
+}
+
+ +

This iterates over the changed touches as well, but it looks in our cached touch information array for the previous information about each touch in order to determine the starting point for each touch's new line segment to be drawn. This is done by looking at each touch's {{domxref("Touch.identifier")}} property. This property is a unique integer for each touch, and remains consistent for each event during the duration of each finger's contact with the surface.

+ +

This lets us get the coordinates of the previous position of each touch and use the appropriate context methods to draw a line segment joining the two positions together.

+ +

After drawing the line, we call Array.splice() to replace the previous information about the touch point with the current information in the ongoingTouches array.

+ +

Handling the end of a touch

+ +

When the user lifts a finger off the surface, a {{event("touchend")}} event is sent. We handle this by calling the handleEnd() function below. Its job is to draw the last line segment for each touch that ended and remove the touch point from the ongoing touch list.

+ +
function handleEnd(evt) {
+  evt.preventDefault();
+  log("touchend");
+  var el = document.getElementsByTagName("canvas")[0];
+  var ctx = el.getContext("2d");
+  var touches = evt.changedTouches;
+
+  for (var i = 0; i < touches.length; i++) {
+    var color = colorForTouch(touches[i]);
+    var idx = ongoingTouchIndexById(touches[i].identifier);
+
+    if (idx >= 0) {
+      ctx.lineWidth = 4;
+      ctx.fillStyle = color;
+      ctx.beginPath();
+      ctx.moveTo(ongoingTouches[idx].pageX, ongoingTouches[idx].pageY);
+      ctx.lineTo(touches[i].pageX, touches[i].pageY);
+      ctx.fillRect(touches[i].pageX - 4, touches[i].pageY - 4, 8, 8);  // and a square at the end
+      ongoingTouches.splice(idx, 1);  // remove it; we're done
+    } else {
+      console.log("can't figure out which touch to end");
+    }
+  }
+}
+
+ +

This is very similar to the previous function; the only real differences are that we draw a small square to mark the end and that when we call Array.splice(), we simply remove the old entry from the ongoing touch list, without adding in the updated information. The result is that we stop tracking that touch point.

+ +

Handling canceled touches

+ +

If the user's finger wanders into browser UI, or the touch otherwise needs to be canceled, the {{event("touchcancel")}} event is sent, and we call the handleCancel() function below.

+ +
function handleCancel(evt) {
+  evt.preventDefault();
+  console.log("touchcancel.");
+  var touches = evt.changedTouches;
+
+  for (var i = 0; i < touches.length; i++) {
+    var idx = ongoingTouchIndexById(touches[i].identifier);
+    ongoingTouches.splice(idx, 1);  // remove it; we're done
+  }
+}
+
+ +

Since the idea is to immediately abort the touch, we simply remove it from the ongoing touch list without drawing a final line segment.

+ +

Convenience functions

+ +

This example uses two convenience functions that should be looked at briefly to help make the rest of the code more clear.

+ +

Selecting a color for each touch

+ +

In order to make each touch's drawing look different, the colorForTouch() function is used to pick a color based on the touch's unique identifier. This identifier is an opaque number, but we can at least rely on it differing between the currently-active touches.

+ +
function colorForTouch(touch) {
+  var r = touch.identifier % 16;
+  var g = Math.floor(touch.identifier / 3) % 16;
+  var b = Math.floor(touch.identifier / 7) % 16;
+  r = r.toString(16); // make it a hex digit
+  g = g.toString(16); // make it a hex digit
+  b = b.toString(16); // make it a hex digit
+  var color = "#" + r + g + b;
+  console.log("color for touch with identifier " + touch.identifier + " = " + color);
+  return color;
+}
+
+ +

The result from this function is a string that can be used when calling {{HTMLElement("canvas")}} functions to set drawing colors. For example, for a {{domxref("Touch.identifier")}} value of 10, the resulting string is "#a31".

+ +

Copying a touch object

+ +

Some browsers (mobile Safari, for one) re-use touch objects between events, so it's best to copy the bits you care about, rather than referencing the entire object.

+ +
function copyTouch(touch) {
+  return { identifier: touch.identifier, pageX: touch.pageX, pageY: touch.pageY };
+}
+ +

Finding an ongoing touch

+ +

The ongoingTouchIndexById() function below scans through the ongoingTouches array to find the touch matching the given identifier, then returns that touch's index into the array.

+ +
function ongoingTouchIndexById(idToFind) {
+  for (var i = 0; i < ongoingTouches.length; i++) {
+    var id = ongoingTouches[i].identifier;
+
+    if (id == idToFind) {
+      return i;
+    }
+  }
+  return -1;    // not found
+}
+
+ +

Showing what's going on

+ +
function log(msg) {
+  var p = document.getElementById('log');
+  p.innerHTML = msg + "\n" + p.innerHTML;
+}
+ +

If your browser supports it, you can {{LiveSampleLink('Example', 'see it live')}}.

+ +

jsFiddle example

+ +

Dodatkowe wskazówki

+ +

This section provides additional tips on how to handle touch events in your web application.

+ +

Obsługa kliknięć

+ +

Since calling preventDefault() on a {{event("touchstart")}} or the first {{event("touchmove")}} event of a series prevents the corresponding mouse events from firing, it's common to call preventDefault() on {{event("touchmove")}} rather than {{event("touchstart")}}. That way, mouse events can still fire and things like links will continue to work. Alternatively, some frameworks have taken to refiring touch events as mouse events for this same purpose. (This example is oversimplified and may result in strange behavior. It is only intended as a guide.)

+ +
function onTouch(evt) {
+  evt.preventDefault();
+  if (evt.touches.length > 1 || (evt.type == "touchend" && evt.touches.length > 0))
+    return;
+
+  var newEvt = document.createEvent("MouseEvents");
+  var type = null;
+  var touch = null;
+
+  switch (evt.type) {
+    case "touchstart":
+      type = "mousedown";
+      touch = evt.changedTouches[0];
+      break;
+    case "touchmove":
+      type = "mousemove";
+      touch = evt.changedTouches[0];
+      break;
+    case "touchend":
+      type = "mouseup";
+      touch = evt.changedTouches[0];
+      break;
+  }
+
+  newEvt.initMouseEvent(type, true, true, evt.originalTarget.ownerDocument.defaultView, 0,
+    touch.screenX, touch.screenY, touch.clientX, touch.clientY,
+    evt.ctrlKey, evt.altKey, evt.shiftKey, evt.metaKey, 0, null);
+  evt.originalTarget.dispatchEvent(newEvt);
+}
+
+ +

Calling preventDefault() only on a second touch

+ +

One technique for preventing things like pinchZoom on a page is to call preventDefault() on the second touch in a series. This behavior is not well defined in the touch events spec, and results in different behavior for different browsers (i.e., iOS will prevent zooming but still allow panning with both fingers; Android will allow zooming but not panning; Opera and Firefox currently prevent all panning and zooming.) Currently, it's not recommended to depend on any particular behavior in this case, but rather to depend on meta viewport to prevent zooming.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Touch Events 2', '#touch-interface', 'Touch')}}{{Spec2('Touch Events 2')}}Added radiusX, radiusY, rotationAngle, force properties
{{SpecName('Touch Events', '#touch-interface', 'Touch')}}{{Spec2('Touch Events')}}Initial definition.
+ +

Wsparcie przeglądarek

+ +

Touch

+ +

Touch events are typically available on devices with a touch screen, but many browsers make the touch events API unavailable on all desktop devices, even those with touch screens.

+ +

The reason for this is that some websites use the availability of parts of the touch events API as an indicator that the browser is running on a mobile device. If the touch events API is available, these websites will assume a mobile device and serve mobile-optimised content. This may then provide a poor experience for users of desktop devices that have touch screens.

+ +

To support both touch and mouse across all types of device, use pointer events instead.

+ + + +

{{Compat("api.Touch")}}

+ +

Firefox, touch events, and multiprocess (e10s)

+ +

In Firefox, touch events are disabled when e10s (electrolysis; multiprocess Firefox) is disabled. e10s is on by default in Firefox, but can end up becoming disabled in certain situations, for example when certain accessibility tools or Firefox add-ons are installed that require e10s to be disabled to work. This means that even on a touchscreen-enabled desktop/laptop, touch events won't be enabled.

+ +

You can test whether e10s is disabled by going to about:support and looking at the "Multiprocess Windows" entry in the "Application Basics" section. 1/1 means it is enabled, 0/1 means disabled.

+ +

If you want to force e10s to be on — to explicitly re-enable touch events support — you need to go to about:config and create a new Boolean preference browser.tabs.remote.force-enable. Set it to true, restart the browser, and e10s will be enabled regardless of any other settings.

diff --git "a/files/pl/web/bezpiecze\305\204stwo/certificate_transparency/index.html" "b/files/pl/web/bezpiecze\305\204stwo/certificate_transparency/index.html" new file mode 100644 index 0000000000..7a9b814c43 --- /dev/null +++ "b/files/pl/web/bezpiecze\305\204stwo/certificate_transparency/index.html" @@ -0,0 +1,63 @@ +--- +title: Certificate Transparency +slug: Web/Bezpieczeństwo/Certificate_Transparency +tags: + - Bezpieczeństwo + - Web + - bezpieczeństwo aplikacji WWW +translation_of: Web/Security/Certificate_Transparency +--- +

Certyfikat Przejrzystości (Certificate Transparency) to otwarta platforma programistyczna (framework) stworzona do ochrony oraz monitorowania braków w certyfikacji. Świeżo wydane certyfikaty dostają się do obiegu publicznego, często niezależne logi CT zostają wpisane do rejestru, przez co zachowany zostaje zabezpieczony kryptograficznie rekord certyfikatów TLS.

+ +

W ten sposób organy certyfikujące (CA) mogą podlegać znacznie większemu, publicznemu nadzorowi i kontroli. Potencjalnie szkodliwe certyfikaty, jak te, które naruszają Podstawowe Wymogi CA/B Forum mogą zostać znacznie sprawniej wykryte i cofnięte. Podmioty zajmujące się sprzedażą przeglądarek oraz opiekuni certyfikatów zaufanych są również uprawnieni do podejmowania gruntowniej popartych decyzji dot. problematycznych organów certyfikujących, którym mogą odmowić zaufania.

+ +

Kontekst

+ +

Logi CT są budowane w ramach struktury danych drzewa Merkla (Merkle tree). Węzły są oznaczane hashami kryptograficznymi ich węzłów potomnych. Liście (leaf nodes) zawierają hashe aktualnych części danych. Oznaczenie węzła głównego (root node) zależy jednakże od wszystkich pozostałych węzłów w drzewie.

+ +

W kontekście przejrzystości certyfikacji dane hashowane przez liście są certyfikatami wydawanymi obecnie przez różne CA. Obecność certyfikatu może zostać zweryfikowana przez dowód kontroli skutecznie generowany i weryfikowany w czasie działania logarytmicznego - logarithmic O(log n) time.

+ +

Pierwotnie, w 2013 roku przejrzystość certyfikacji służyła przeciwdziałaniu narażania CA (naruszenia DigiNotar w 2011 roku), wątpliwym decyzjom (incydent Trustwave subordinate root w 2012 roku) oraz technicznym problemom wydawniczym (emisja słabego, 512-bitowego certyfikatu przez Digicert Sdn Bhd w Malezji)

+ +

Wdrożenie

+ +

Gdy certyfikaty zostają dostarczone do rejestru CT, znacznik SCT (signed certificate timestamp) zostaje wygenerowany i zwrócony. Służy to jako dowód, że certyfikat został dostarczony i zostanie dodany do rejestru.

+ +

Wg specyfikacji podczas komunikacji serwery zgodne muszą dostarczać numery tych SCTów do klientów TLS. Może do tego dojść na kilka różnych sposobów:

+ + + +

Przy rozszerzeniu certyfikatu X.509 o włączonych SCTsach decydują organy certyfikujące. Przy stosowaniu tego typu mechanizmu nie powinna istnieć potrzeba modyfikacji serwerów webowych.

+ +

W przypadku ostatnich metod serwery powinny być aktualizowane, aby móc wysyłać żądane dane. Korzyść stanowi fakt, że operator serwera może modyfikować źródła rejestru CT dostarczając SCTsy wysyłane przez rozszerzenie TLS/"zszytą" odpowiedź OCSP.

+ +

Wymagania przeglądarki

+ +

Google Chrome wymaga umieszczania rejestru CT dla wszystkich kwestii związanych z emisjami certyfkatów z datą notBefore po 30 kwietnia 2018 roku. Użytkownicy zostaną uchronieni przed odwiedzaniem stron używających niezgodnych certyfikatów TLS. Wcześniej Chrome wymagało umieszczania Rozszerzonej Walidacji (EV) oraz certyfikatów wydawanych przez Symantec.

+ +

Apple wymaga zróżnicowanej liczby SCTsów dla Safari i innych serwerów celem zaufania certyfikatom.

+ +

Firefox aktualnie ani nie sprawdza ani nie wymaga stosowania rejestru CT dla stron odwiedzanych przez użytkowników.

+ +

Nagłówek Expect-CT może zostać użyty do żądania, by przeglądarka zawsze wymuszała wymóg przejrzystości certyfikacji (np. w Chrome nawet, jeśli certyfikat został wydany z datą notBefore, przed kwietniem)

+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
Certificate TransparencyIETF RFC
diff --git "a/files/pl/web/bezpiecze\305\204stwo/index.html" "b/files/pl/web/bezpiecze\305\204stwo/index.html" new file mode 100644 index 0000000000..0d3cdd2c07 --- /dev/null +++ "b/files/pl/web/bezpiecze\305\204stwo/index.html" @@ -0,0 +1,24 @@ +--- +title: Bezpieczeństwo aplikacji WWW +slug: Web/Bezpieczeństwo +tags: + - Bezpieczeństwo + - Web + - bezpieczeństwo aplikacji WWW +translation_of: Web/Security +--- +
+

Zapewnienie bezpieczeństwa Twojej strony lub aplikacji WWW jest niezwykle istotne. Nawet proste błędy w kodzie mogą skutkować wyciekiem prywatnych danych i ich kradzieżą przez nieodpowiednie osoby. Wymienione tutaj artykuły dot. bezpieczeństwa aplikacji WWW dostarczą Ci informacji, które mogą okazać się pomocne w zabezpieczeniu Twojej strony i jej kodu przez atakami i kradzieżą danych.

+
+ +

{{LandingPageListSubpages}}

+ +

Zobacz również

+ + + +

{{QuickLinksWithSubpages}}

diff --git "a/files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/index.html" "b/files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/index.html" new file mode 100644 index 0000000000..93555b6a71 --- /dev/null +++ "b/files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/index.html" @@ -0,0 +1,36 @@ +--- +title: Podstawy bezpieczeństwa informacji +slug: Web/Bezpieczeństwo/Podstawy_bezpieczenstwa_informacji +tags: + - Bezpieczeństwo + - Początkujący + - bezpieczeństwo aplikacji WWW +translation_of: Web/Security/Information_Security_Basics +--- +

Podstawowa znajomość bezpieczeństwa informacji może pomóc Ci uniknąć pozostawiania Twojego oprogramowania i stron WWW niezabezpieczonych oraz zawierających podatności, które później mogą zostać wykorzystane do osiągnięcia korzyści finansowych lub do innych, podejrzanych celów. Te arykuły mogą Ci pomóc zdobyć potrzebną bazę wiedzy.Dzięki zapoznaniu się z nimi będziesz świadomy/a, jak ważne jest bezpieczeństwo podczas tworzenia stron WWW oraz podczas implementacji treści.

+ +
+
Poufność, Integralność i Dostępność
+
+

Opisuje najważniejsze cele bezpieczeństwa, które są absolutnie niezbędne do zrozumienia istoty bezpieczeństwa

+
+
Podatności
+
Definiuje główne kategorie podatności i omawia obecność podatności w każdym oprogramowaniu
+
Zagrożenia
+
Krótko przedstawia główne zagrożenia
+
Kontrole Bezpieczeństwa
+
Definiuje główne kategorie kontroli bezpieczeństwa i omawia ich potencjalne wady
+
Bezpieczeństwo TCP/IP
+
Zarys modelu TCP/IP z naciskiem na aspekty bezpieczeństwa SSL
+
+ +

Zobacz również

+ + + +

{{QuickLinksWithSubpages("/en-US/docs/Web/Security")}}

diff --git "a/files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/podatnosci/index.html" "b/files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/podatnosci/index.html" new file mode 100644 index 0000000000..772145243a --- /dev/null +++ "b/files/pl/web/bezpiecze\305\204stwo/podstawy_bezpieczenstwa_informacji/podatnosci/index.html" @@ -0,0 +1,100 @@ +--- +title: Podatności +slug: Web/Bezpieczeństwo/Podstawy_bezpieczenstwa_informacji/Podatnosci +tags: + - Bezpieczeństwo + - Początkujący + - Tutorial + - bezpieczeństwo aplikacji WWW + - podatności + - samouczek +translation_of: Archive/Security/Vulnerabilities +--- +
+

Niniejszy artykuł tłumaczy czym są podatności i omawia ich występowanie we wszystkich systemach.

+ +

Podatność to słabość systemu, która może zostać wykorzystana do naruszenia poufności, integralności i/lub dostępności. Podatności można kategoryzować na wiele sposobów. W tym artykule użyjemy trzech kategorii najwyższego ryzyka: usterki oprogramowania, problemy przy konfiguracji zabezpieczeń i nadużycie funkcji oprogramowania. Kategorie te zostały umówione poniżej.

+
+ +

Kategorie podatności

+ +

Usterki oprogramowania są wynikiem niezamierzonego błędu w architekturze lub samym kodzie oprogramowania. Jako przykład może posłużyć błąd przy weryfikacji wprowadzanych danych, np. kiedy dane wprowadzane przez użytkownika nie są prawidłowo sprawdzane pod kątem prób wprowadzania szkodliwych stringów używających nieporządanych znaków czy zbyt długich wartości wiązanych ze znanymi atakami. Inny przykład to błąd dopuszczający sytuację wyścigu ("race condition"), przez który atakujący może przeprowadzić określone działanie posiadając podniesione uprawnienia.

+ +

Ustawienia konfiguracji bezpieczeństwa to element bezpieczeństwa oprogramowania który może zostać zmieniony przez samo oprogramowanie. Przykłady ustawień to np. system operacyjny oferujący dostęp do listy kontrolnej przydzielającej prawa użytkowników do odczytu i modyfikacji plików oraz np. aplikacja dopuszczająca umożliwianie lub uniemożliwianie szyfrowania danych wrażlliwych znajdujących się w aplikacji.

+ +

Problemy przy konfiguracji zabezpieczeń to m.in. używanie ustawień konfiguracji bezpieczeństwa w sposób, który ma negatywny wpływ na bezpieczeństwo oprogramowania.

+ +

Cecha oprogamowania to możliwość funkcyjna udostępniona przez oprogramowanie. Podatność na nadużycie funkcji oprogramowania to taki typ podatności, w której dana funkcja stanowi dziurę bezpieczeństwa systemu. Tego typu podatności stwarza projektant oprogramowania, gdy aby uzyskać dodatkowe funkcje oprogramowania zakłada idylliczny scenariusz i ryzykuje tym samym podatność na ewentualne ataki.

+ +

Na przykład, oprogramowanie klienckie email może zawierać funkcjonalność, która umożliwia wyrenderowanie treści HTML w wiadomościach email. Atakujący może w tej sytuacji stworzyć fałszywy mail zawierający hiperlink, który po wyrenderowaniu w HTML wygląda na nieszkodliwy, a w rzeczywistości po kliknięciu przekierowuje odbiorcę na szkodliwą stronę. Jednym z idyllicznych założeń w fazie projektowania funkcji renderowania treści HTML była myśl, że użytkownicy nie otrzymają szkodliwych hiperlinków i nie będą w nie klikać.

+ +

Podatności nadużycia funkcji oprogramowania pojawiają się podczas projektowania oprogramowania lub jego komponentów (np. protokół, który oprogramowanie wdraża). Idylliczne założenia mogą być oczywiste - np. projektant jest świadomy słabości bezpieczeństwa i zakłada, że oddzielna kontrola bezpieczeństwa wystarczy.

+ +

Często jednak założenia idylliczne są dwuznaczne, chociażby utworzenie funkcji bez wcześniejszego ocenienia ryzyka. Dodatkowo zagrożenia mogą się zmieniać w czasie życia oprogramowania czy protokołu w nim użytego.

+ +

Przykład? Address Resolution Protocol (ARP) zakłada, że odpowiedź ARP zawiera prawidłowe mapowanie pomiędzy adresami Media Access Control (MAC) a Internet Protocol (IP). Cache ARP używają tej informacji, by umożliwić przydatne działanie - zezwolenie na wysyłanie danych pomiędzy urządzeniami w jednej sieci lokalnej. Jednakże atakujący mógłby wygenerować fałszywe komunikaty ARP celem zmylenia tabli systemowej ARP i w ten sposób przeporwadzić atak denial-of-service lub man-in-the-middle attack.

+ +

Protokuł ARP został ustandaryzowany ponad 25 lat temu, a zagrożenia znacząco się od tego czasu zmieniły, więc założenia idylliczne, które były wówczas nie do uniknięcia dziś nie mają już raczej racji bytu.

+ +

Może być ciężko odróżnić podatność nadużycia funkcji oprogramowania od pozostałych dwóch kategorii. Np. zarówno podatności związane z wadami, jak i nadużyciami mogą wynikać z braków w procesie projektowania oprogramowania. Jednakże wady oprogramowania są jednoznacznie negatywne - nie mają cech pozytywnych w odniesieniu do bezpieczeństwa czy funkcjonalności - podczas gdy podatności na nadużycia funkcji oprogramowania są wynikiem dostarczania dodatkowych funkcji.

+ +

Mogą mylić podatności na nadużycia w odniesieniu do funkcji, które można odblokowywać lub zablokowywać - w rozumieniu, że są konfigurowalne - a kwestie konfiguracji bezpieczeństwa. Kluczową różnicą jest to, że przy podatności na nadużycia ustawienia bezpieczeństwa umożliwiają lub blokują całą funkcję, a nie wpływają jedynie na bezpieczeństwo. Podatność wynikająca z konfiguracji bezpieczeństwa dotyczy wyłącznie bezpieczeństwa.

+ +

Np. ustawienie blokujące używanie HTML w mailach ma ogromny wpływ na zarówno kwestię bezpieczeństwa, jak i funkcjonalności. W tym przypadku podatność w odniesieniu do ustawienia będzie podatnością związaną z nadużyciem. Ustawienie blokujące funkcję antiphishingową w kliencie pocztowym ma ogromny wpływ wyłącznie na bezpieczeństwo, więc podatność dot. takiego ustawienia byłaby określona jako podatność w związku z konfiguracją bezpieczeństwa.

+ +

Obecność podatności

+ +

Żaden system nie jest w 100% bezpieczny: każdy system ma podatności. W danym momencie system może nie posiadać żadnych widocznych wad, ale podatności na problemy z konfiguracją bezpieczeństwa i nadużycia funkcji oprogramowania są zawsze obecne.

+ +

Podatność na nadużycia w przypadku funkcji oprogramowania jest nieodłączna, ponieważ każda funkcjonalność musi być opierana na założeniach idyllicznych - a te założenia mogą zostać złamane mimo dołożenia ogromnych wysiłków i poniesienia sporych kosztów. Kwestie konfiguracji bezpieczeństwa są nie do uniknięcia z dwóch powodów.

+ +

Po pierwsze, wiele ustawień konfiguracyjnych zwiększa bezpieczeństwo kosztem funkcjonalności, więc używanie najbezpieczniejszych ustawień może doprowadzić do bezużyteczności oprogramowania. Po drugie, wiele ustawień bezpieczeństwa ma zarówno pozytywne, jak i negatywne kosekwencje względem bezpieczeństwa.

+ +

Przykładem jest dopuszczona liczba następujących po sobie, nieudanych prób logowania na konto użytkownika zanim zostanie ono zablokowane. Ustawiając ją na 1 uzyskalibyśmy najbezpieczniejszą opcję przeciw atakom opartym na zgadywaniu haseł, ale jednocześnie blokowalibyśmy legalnych użytkowników po tym, jak jednokrotnie wpisaliby złe hasło. Co więcej, prawdopodobnie zachęciłoby to do używania przez atakujących ataków typu denial-of-service z racji łatwości generowania pojedynczej, nieudanej próby logowania dla wszystkich kont użytkowników.

+ +

Z powodu liczby nieuniknionych podatności w ustawieniach konfiguracji bezpieczeństwa i możliwości nadużyć funkcji oprogramowania plus liczby podatności na wady oprogramowania w systemie niezależnie od czasu, każdy system może posiadać dziesiątki, jak nie setki podatności w jednym tylko systemie.

+ +

Te podatności prawdopodobnie posiadają zróżnicowane cechy. Część będzie łatwa do wykorzystania, podczas gdy inne będą możliwe do wykorzystania jedynie w sytuacji zaistnienia kombinacji wysoce nieprawdopodobnych warunków.

+ +

Jedna podatność może skutkować dostępem do systemu na poziomie administratora, podczas gdy inna jedynie umożliwiać odczyt nieistotnego pliku.

+ +

Ostatecznie organizacje muszą wiedzieć, jak trudno jest wykorzystać daną podatność i co się stanie w sytuacji, jeśli dojdzie do jej wykorzystania.

+ +

Podatności stron WWW

+ +

OWASP lub Projekt Bezpieczeństwa Otwartej Sieci (Open Web Security Project) to organizacja non-profit skoncentrowana na zwiększaniu bezpieczeństwa oprogramowania i aplikacji WWW. Wg Open Web Application Security Project pod względem popularności XSS był siódmą z najczęściej spotykanych podatności aplikacji WWW w roku 2017.

+ +

Organizacja publikuje listę najważniejszych podatności aplikacji WWW bazując na danych z różnych organizacji bezpieczeństwa.

+ +

Podatnosci aplikacji WWW są priorytetowane pod względem możliwości wykorzystania, wykrywalności i wpływu na oprogramowanie, którym może być każdy CMS, jak WordPress, Joomla, Magneto, Woocommerce i inne.

+ +

Poniżej przedstawiamy sześć najpopularniejszych podatności stron WWW, przed którymi musisz się chronić.

+ +

1. SQL Injections
+ 2. Cross Site Scripting (XSS)
+ 3. Broken Authentication & Session Management - IdentityManager
+ 4. Insecure Direct Object References - DOM (Document Object Model)
+ 5. Security Misconfiguration
+ 6. Cross-Site Request Forgery (CSRF)

+ +

Zobacz również

+ + + +
+

Informacja o dokumentacji źródłowej

+ + +
+ +

{{QuickLinksWithSubpages("/en-US/docs/Web/Security")}}

diff --git "a/files/pl/web/bezpiecze\305\204stwo/same-origin_policy/index.html" "b/files/pl/web/bezpiecze\305\204stwo/same-origin_policy/index.html" new file mode 100644 index 0000000000..23f296444e --- /dev/null +++ "b/files/pl/web/bezpiecze\305\204stwo/same-origin_policy/index.html" @@ -0,0 +1,277 @@ +--- +title: Reguła tego samego pochodzenia (Same-origin policy) +slug: Web/Bezpieczeństwo/Same-origin_policy +tags: + - Bezpieczeństwo + - CORS + - Host + - JavaScript + - Same-origin policy + - URL + - origin + - pochodzenie + - reguła tego samego pochodzenia + - źródło +translation_of: Web/Security/Same-origin_policy +--- +

Same-origin policy (reguła tego samego pochodzenia) to istotny mechanizm bezpieczeństwa, który określa sposób, w jaki dokument lub skrypt jednego pochodzenia ({{Glossary("origin")}}) może komunikować się z zasobem innego pochodzenia. Pozwala to na odizolowanie potencjalnie szkodliwych dokumentów i tym samym redukowane są czynniki sprzyjające atakom.

+ +

Definicja "origin"

+ +

Dwa URLe są tego samego pochodzenia, jeśli {{Glossary("protocol")}}, {{Glossary("port")}} (jeśli wyszczególniony) oraz {{Glossary("host")}} są takie same dla obu. Tego typu charakterystykę nazywa się "krotką schematu/hosta/portu" ("scheme/host/port tuple") lub po prostu "krotką" ("Krotka" to kolekcja elementów tworzących zbiór - generyczna forma, która może być podwójna/potrójna/poczwórna itd.).

+ +

Poniższa tabela zawiera przykłady zestawień "originów" z URLem http://store.company.com/dir/page.html:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
URLWynikPowód
http://store.company.com/dir2/other.htmlSame originRóżni się tylko ścieżka
http://store.company.com/dir/inner/another.htmlSame originRóżni się tylko ścieżka
https://store.company.com/page.htmlNiepowodzenieInny protokół
http://store.company.com:81/dir/page.htmlNiepowodzenieInny port (http:// domyślnie jest portem 80)
http://news.company.com/dir/page.htmlNiepowodzenieInny host
+ +

Zobacz również definicję "origin" dla URLów file:, ich zestawienie jest bardziej złożone.

+ +

Odziedziczone "origin"

+ +

Skrypty wywoływane przez strony z URLami about:blank lub javascript: dziedziczą "origin" dokumentu zawierającego ten URL, ponieważ tego typu URLe nie zawierają informacji o serwerze źródłowym.

+ +
+

Przykładowo, about:blank jest często używany jako URL nowego, pustego, wyskakującego okienka, w którym skrypt-rodzic umieszcza treść (np. przez mechanizm {{domxref("Window.open()")}}). Jeśli dane okienko zawiera również JavaScript, skrypt odziedziczy ten sam "origin" jak skrypt, który je utworzył.

+
+ +
+

data: URLe zyskują nowy, pusty kontekst bezpieczeństwa.

+
+ +

Wyjątki w Internet Explorer

+ +

W Internecie Explorerze istnieją dwa wyjątki od reguły same-origin:

+ +
+
Strefy Zaufania
+
Jeśli obie domeny znajdują się w strefie wysokiego zaufania (np. firmowe domeny intranetu), wówczas ograniczenia same-origin nie są stosowane.
+
Port
+
IE nie bierze pod uwagę portów w trakcie sprawdzania obecności tego samego pochodzenia. Przykładowo, https://company.com:81/index.html i https://company.com/index.html są uznawane za posiadające ten sam "origin", więc nie są implementowane żadne ograniczenia .
+
+ +

Wspomniane wyjątki są niestandardowe i nie są wspierane przez inne przeglądarki.

+ +

Zmiana origin

+ +

Strona może zmieniać swoje pochodzenie przy zachowaniu pewnych ograniczeń. Skrypt może nadać wartość {{domxref("document.domain")}} równą swojej obecnej domenie lub superdomenie swojej obecnej domeny. Jeśli odwołuje się do superdomeny obecnej domeny, wówczas krótsza superdomena jest brana pod uwagę przy kontroli same-origin.

+ +

Załóżmy, że skrypt z dokumentu pod adresem http://store.company.com/dir/other.html wywołuje poniższą linijkę:

+ +
document.domain = "company.com";
+
+ +

Następnie strona może przejść pomyślnie kontrolę same-origin mając adres http://company.com/dir/page.html (przyjmując, że http://company.com/dir/page.html ma document.domain równe "company.com" by wskazać, że chce na to zezwalać - sprawdź: {{domxref("document.domain")}}). Jednakże, company.com nie może ustawić document.domain na othercompany.com, ponieważ nie jest to superdomena company.com.

+ +

Numer portu jest sprawdzany oddzielnie przez przeglądarkę. Każde odwołanie do document.domain, w tym document.domain = document.domain, spowoduje przypisanie numerowi portu wartości null. Jednakże, nie uda się nawiązać komunikacji company.com:8080 z company.com tylko poprzez umieszczenie document.domain = "company.com" w pierwszym z nich. Taki zapis musi znajdować się w obu dokumentach, aby ich porty były równocześnie równe null.

+ +
+

Zauważ: Używając document.domain , żeby pozwolić subdomenie na bezpieczny dostęp do rodzica potrzebujesz ustawić document.domain na tę samą wartość jednocześnie w domenie rodzica i w subdomenie. Jest to wymagane nawet podczas zwykłego przywracania domeny rodzica do pierwotnej wartości. Niepowodzenie może skutkować błędami dostępu.

+
+ +

Dostęp sieciowy cross-origin (międzyźródłowy)

+ +

Reguła tego samego pochodzenia kontroluje interakcje pomiędzy dwoma różnymi "originami", np. kiedy używasz elementu {{domxref("XMLHttpRequest")}} czy {{htmlelement("img")}}. Tego typu interakcje przeważnie dzielą się na trzy kategorie:

+ + + +

Poniżej znajdują się przykłady zasobów, które można osadzać międzyźródłowo:

+ + + +

Jak umożliwić dostęp cross-origin

+ +

Poprzez CORS można zezwolić na dostęp cross-origin. CORS jest częścią {{Glossary("HTTP")}}, co pozwala serwerom na określanie, które hosty są upoważnione do ładowania treści z tego serweru.

+ +

Jak zablokować dostęp cross-origin

+ + + +

Dostęp cross-origin API skryptu

+ +

API JavaScriptu, jak {{domxref("HTMLIFrameElement.contentWindow", "iframe.contentWindow")}}, {{domxref("window.parent")}}, {{domxref("window.open")}} i {{domxref("window.opener")}} pozwalają dokumentom na bezpośrednią, wzajemną referencję. Jeśli dwa dokumenty nie są tego samego pochodzenia, referencje te umożliwiają bardzo ograniczony dostęp do obiektów {{domxref("Window")}} i {{domxref("Location")}}, jako opisano w następnych dwóch sekcjach.

+ +

Do komunikacji pomiędzy dokumentami o różnym pochodzeniu stosuje się {{domxref("window.postMessage")}}.

+ +

Specyfikacja: Standard HTML § Obiekty cross-origin.

+ +

Window

+ +

Poniższy dostęp cross-origin jest dopuszczany w przypadku wymienionych właściwości Window:

+ + + + + + + + + + + + + + + + + + + + + +
Metody
{{domxref("window.blur")}}
{{domxref("window.close")}}
{{domxref("window.focus")}}
{{domxref("window.postMessage")}}
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Własności
{{domxref("window.closed")}}Tylko do odczytu.
{{domxref("window.frames")}}Tylko do odczytu.
{{domxref("window.length")}}Tylko do odczytu.
{{domxref("window.location")}}Odczyt/Zapis.
{{domxref("window.opener")}}Tylko do odczytu.
{{domxref("window.parent")}}Tylko do odczytu.
{{domxref("window.self")}}Tylko do odczytu.
{{domxref("window.top")}}Tylko do odczytu.
{{domxref("window.window")}}Tylko do odczytu.
+ +

Niektóre przeglądarki zezwalają na dostęp większej ilości właściwości, niż wypisane powyżej.

+ +

Location

+ +

Poniższy dostęp cross-origin jest dopuszczany w przypadku właściwości Location:

+ + + + + + + + + + + + +
Metody
{{domxref("location.replace")}}
+ + + + + + + + + + + + + + +
Atrybuty
{{domxref("URLUtils.href")}}Tylko do zapisu.
+ +

Niektóre przeglądarki umożliwiają dostęp do większej liczby właściwości, niż wymienione powyżej.

+ +

Dostęp cross-origin do danych pamięci

+ +

Dostęp do danych przechowywanych w przeglądarce, jak localStorage czy IndexedDB są odseparowane pochodzeniem. Każdy origin otrzymuje własną, odseparowaną pamięć i JavaScript jednego pochodzenia nie może odczytywać lub wpisywać niczego do pamięci należącej do innego originu.

+ +

Ciasteczka (cookies) używają oddzielnej definicji originów. Strona może ustalić ciasteczko dla własnej domeny lub domeny-rodzica dopóki, gdy domena-rodzic nie jest sufiksem publicznym. Firefox i Chrome używają listy sufiksów publicznych (Public Suffix List), by zweryfikować czy domena jest sufiksem publicznym. Internet Explorer używa własnej, wewnątrznej metody weryfikacji czy domena jest sufiksem publicznym. Przeglądarka udostępni ciasteczko podanej domenie zawierającej jakiekolwiek subdomeny, niezależnie jaki protokół (HTTP/HTTPS) czy port jest używany. Przy ustalaniu ciasteczka możliwe jest określenie limitu dostępności używając flag domeny (Domain), ścieżki (Path), bezpiecznej (Secure) i Http-Only. Gdy odczytywane jest ciasteczko nie można zobaczyć, gdzie zostało ustalone. Nawet jeśli używane są wyłącznie bezpieczne połączenia https dane ciasteczko mogło zostać ustalone poprzez połączenie niebezpieczne.

+ +

Zobacz również

+ + + +
+

Informacje dot. dokumentu źródłowego

+ + +
+ +

{{QuickLinksWithSubpages("/en-US/docs/Web/Security")}}

diff --git "a/files/pl/web/bezpiecze\305\204stwo/subresource_integrity/index.html" "b/files/pl/web/bezpiecze\305\204stwo/subresource_integrity/index.html" new file mode 100644 index 0000000000..69f20709ec --- /dev/null +++ "b/files/pl/web/bezpiecze\305\204stwo/subresource_integrity/index.html" @@ -0,0 +1,163 @@ +--- +title: Integralność podzasobów (Subresource Integrity) +slug: Web/Bezpieczeństwo/Subresource_Integrity +tags: + - Bezpieczeństwo + - HTML + - HTTP + - Wstęp + - bezpieczeństwo aplikacji WWW +translation_of: Web/Security/Subresource_Integrity +--- +

Subresource Integrity (SRI), w wolnym tłumaczeniu "integralność podzasobów", to funkcja bezpieczeństwa umożliwiająca przeglądarkom weryfikowanie, czy zasoby, które przechwytują (np. z CDN) docierają do nich bez nieporządanych zmian. Działanie takie jest możliwe dzięki używaniu hasha kryptograficznego, z którym przechwycony zasób musi być zgodny.

+ +
+

Notka: W celu weryfikacji integralności podzasobów danych przekazywanych ze źródła innego, niż dokument w którym są osadzane przeglądarki dodatkowo sprawdzają źródło poprzez międzyźródłowe udostępnianie zasobów, tzw. Cross-Origin Resource Sharing (CORS). Dzięki temu upewniają się, że pochodzenie (origin) oferujące dane zasoby pozwala na udostępnianie ich z innym, sprecyfizowanym originem.

+
+ +

Korzyści wynikające z "Subresource Integrity"

+ +

Używając {{Glossary("CDN", "Content Delivery Networks (CDNs)")}} do hostowania plików, jak np. skrypty czy arkusze stylów, które są udostępnianie pośród licznych stron WWW można polepszyć wydajność strony i zachować przepustowość łącza. Jednakże, używając CDNów ryzykujemy, że jeśli atakujący przejmie kontrolę nad CDNem to może wprowadzić szkodliwą zawartość do plików na CDNie (lub zupełnie je zastąpić) i przez to potencjalnie może zaatakować wszystkie strony, które przechwytują pliki z tego CDNu.

+ +

"Subresource Integrity" pozwala na ograniczenie ryzyka ataków tego typu poprzez zapewnienie, że pliki które dana aplikacja, bądź dokument WWW przechwytują (m. in. z CDNu) zostały dostarczone bez udziału trzeciej strony, która "wzbogaciła" nasze dane o dodatkową treść oraz bez żadnych, jakichkolwiek innych zmian w przesyłanych plikach.

+ +

Używanie "Subresource Integrity"

+ +

Korzystanie z funkcji "Subresource Integrity" jest możliwe przez określenie hasha zakodowanego kryptograficznie w base64 zasobu (pliku), który przeglądarka ma przechwycić, z wartością atrybutu integrity danego elementu {{HTMLElement("script")}} or {{HTMLElement("link")}}.

+ +

Wartość integrity zaczyna się od co najmniej jednego stringu, przy czym każdy string zawiera prefiks wskazujący na konkretny algorytm hashowy (obecnie dozwolonymi prefiksami są sha256, sha384, i sha512), następnie opatrzony myślnikiem i zakończony aktualnym hashem zakodowanym w base64.

+ +
+

Notka: Wartość integrity może zawierać liczne hashe oddzielone białymi znakami. Zasób zostanie załadowany, jeśli dopasuje się z jednym z tych hashów.

+
+ +

Przykładowy string integrity z hashem sha384 zakodowanym w base64:

+ +
sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC
+
+ +

Więc oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC to część "hashowa", a prefiks sha384 wskazuje, że jest to hash sha384.

+ +
+

Notka: Część "hashowa" wartości integrity jest, mówić ściśle, skrótem kryptograficznym formowanym przez zastosowanie określonych funkcji hashowych do danego outputu (np. skryptu lub arkuszu stylów). Zwykle używa się skrótu "hash" do określania skrótu kryptograficznego, więc w taki sposób to określenie jest używane w niniejszym artykule.

+
+ +

Narzędzia do generowania hashów SRI

+ +

Możesz generować hashe SRI z konsoli z openssl używając wywołania polecenia, jak:

+ +
cat FILENAME.js | openssl dgst -sha384 -binary | openssl base64 -A
+ +

lub z shasum używając wywołania polecenia, jak:

+ +
shasum -b -a 384 FILENAME.js | awk '{ print $1 }' | xxd -r -p | base64
+
+ +
+

Notka:

+ + +
+ +

Warto wiedzieć, że dostępny na https://www.srihash.org/ SRI Hash Generator to narzędzie online umożliwiające generowanie hashy SRI.

+ +

Zasady bezpieczeństwa zawartości i Integralności podzasobów(Content Security Policy & Subresource Integrity)

+ +

Możesz skorzystać z Zasad bezpieczeństwa zawartości (Content Security Policy), by skonfigurować swój serwer, żeby wymuszał by określone typy plików wymagały stosowania Subresource Integrity. Aby to zrobić użyj dyrektywy {{CSP("require-sri-for")}} w swoim nagłówku CSP, np.:

+ +
Content-Security-Policy: require-sri-for script;
+ +

Dzięki temu zapisowi każda próba załadowania JavaScript powiedzie się jedynie, jeśli informacja o Subresource Integrity znajduje się na miejscu, a testy integralności zakończą się sukcesem.

+ +

Możesz również określić, że SRI powinno być stosowane podczas ładowania arkuszy stylów:

+ +
Content-Security-Policy: require-sri-for style;
+ +

Możesz również określić zarówno script, jak i style aby wymagać SRI przy obu typach plików.

+ +

Udostępnianie zasobów między źródłami i Integralności podzasobów (Cross-Origin Resource Sharing & Subresource Integrity)

+ +

Celem weryfikacji integralności podzasobów danych pochodzących z originu innego, niż dokument, w którym są osadzone, przeglądarki dodatkowo sprawdzają dane za pomocą CORS (Cross-Origin Resource Sharing). Upewniają się, że origin dostarczający dane pozwala na udostępnianie wnioskującemu originowi. Wtedy dane muszą zostać dostarczone z nagłówkiem Access-Control-Allow-Origin, co pozwala na udostępnienie danych wnioskującemu originowi, np.:

+ +
Access-Control-Allow-Origin: *
+ +

Przykłady

+ +

W poniższych przykładach przyjmimy, że oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC to oczekiwany hash SHA-384 (skrót) określonego skryptu example-framework.js i że istnieje kopia skryptu hostowana na https://example.com/example-framework.js.

+ +

Subresource Integrity with the <script> element

+ +

Możesz użyć niniejszego elementu {{HTMLElement("script")}}, by nakazać przeglądarce, aby przed wywołaniem skryptu https://example.com/example-framework.js najpierw porównała skrypt z oczekiwanym hashem i zweryfikowała, że są dopasowane.

+ +
<script src="https://example.com/example-framework.js"
+        integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC"
+        crossorigin="anonymous"></script>
+ +
+

Notka: By dowiedzieć się więcej nt. zastosowania atrybutu crossorigin sprawdź atrybuty ustawień CORS.

+
+ +

Jak przeglądarki radzą sobie z "Subresource Integrity"

+ +

Przeglądarki radzą sobie z SRI poprzez podjęcie poniższych działań:

+ +
    +
  1. +

    Kiedy przeglądarka napotka element {{HTMLElement("script")}} lub {{HTMLElement("link")}} z atrybutem integrity, przed wywołaniem skryptu lub przed zastosowaniem jakiegokolwiek arkusza stylów określonego przez element {{HTMLElement("link")}}, przeglądarka musi najpierw porównać skrypt lub arkusz stylów do oczekiwanego hasha podanego w wartości integrity.

    + +

    Notka: Celem weryfikacji integralności podzasobów danych dostarczanych z originu innego, niż dokument, w którym zostały osadzone, przeglądarki dodatkowo sprawdzają dane poprzez stosowanie CORS, aby upewnić się, że origin dostarczający dane pozwala na udostępnianie ich z wnioskującym originem.

    +
  2. +
  3. Jeśli skrypt lub arkusz stylów nie pasuje do odpowiadającej mu wartości integrity, przeglądarka musi odmówić wywołania skryptu lub uwzględnienia arkusza stylów i zamiast tego musi zwrócić błąd sieciowy wskazujący, że nie powiodło się przechwycenie tego skryptu lub arkusza stylów.
  4. +
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Subresource Integrity')}}{{Spec2('Subresource Integrity')}}
{{SpecName('Fetch')}}{{Spec2('Fetch')}}
+ +

Kompatybilność z przeglądarkami

+ +

<script integrity>

+ + + +

{{Compat("html.elements.script.integrity")}}

+ +

CSP: require-sri-for

+ + + +

{{Compat("http.headers.csp.require-sri-for")}}

+ +

Zobacz również

+ + + +

{{QuickLinksWithSubpages("/en-US/docs/Web/Security")}}

diff --git a/files/pl/web/css/-moz-binding/index.html b/files/pl/web/css/-moz-binding/index.html new file mode 100644 index 0000000000..e44145368c --- /dev/null +++ b/files/pl/web/css/-moz-binding/index.html @@ -0,0 +1,48 @@ +--- +title: '-moz-binding' +slug: Web/CSS/-moz-binding +tags: + - CSS + - Non-standard +translation_of: Archive/Web/CSS/-moz-binding +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

-moz-binding jest używany przez aplikacje bazujące na Mozilli, by dołączyć wiązanie XBL do elementu DOM.

+ + + +

Składnia

+ +
-moz-binding: uri | none
+
+ +

Wartości

+ +
+
uri
+
Identyfikator URI dla wiązania XBL (włączając w to identyfikator fragmentaryczny).
+
none
+
Żadne wiązanie XBL nie jest stosowane do elementu.
+
+ +

Przykład

+ +
.exampleone {
+	-moz-binding: url("http://www.mozilla.org/xbl/htmlBindings.xml#checkbox");
+}
+
+ +

Zobacz także

+ +

Dokumentacja XBL: Binding Attachment and Detachment

+ +

Kurs XUL:Wprowadzenie do XBL

diff --git a/files/pl/web/css/-moz-border-bottom-colors/index.html b/files/pl/web/css/-moz-border-bottom-colors/index.html new file mode 100644 index 0000000000..62e5f28015 --- /dev/null +++ b/files/pl/web/css/-moz-border-bottom-colors/index.html @@ -0,0 +1,56 @@ +--- +title: '-moz-border-bottom-colors' +slug: Web/CSS/-moz-border-bottom-colors +tags: + - CSS + - Non-standard +translation_of: Archive/Web/CSS/-moz-border-bottom-colors +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-border-bottom-colors ustawia kolory dolnego obramowania. Powinna być ustawiona lista kolorów. Jeśli element ma obramowanie, które jest szersze niż pojedynczy piksel, każda linia pikseli używa następnego koloru określonego w tej własności, z zewnątrz do wewnątrz. Eliminuje to potrzebę zagnieżdżonych boksów. Jeśli obramowanie jest szersze niż liczba określonej w tej własności kolorów, pozostała część obramowania jest w kolorze określonym najbliżej środka.

+ + + +

Obecność -moz-border-bottom-colors oddziela kod rysujący obramowanie, który był zaprojektowany do rysowania obramowań elementów interfejsu użytkownika, ale nie wspiera wielu innych własności obramowania.

+ +

Składnia

+ +
-moz-border-bottom-colors: [<color> | transparent,]* <color> | transparent
+
+ +

Wartości

+ +
+
<color>
+
Określa kolor linii pikseli dolnego obramowania
+
transparent
+
Linia pikseli nie ma własnego koloru, w zamian pokazuje kolor elementu pod spodem
+
+ +

Powiązane własności

+ + + +

Przykłady

+ +
hbox.example {
+  border: 5px solid #000000;
+
+  /* Kolor dolnego obramowania będzie czerwony, zielony, niebieski i biały
+     zaczynając od zewnątrz */
+  -moz-border-bottom-colors: #FF0000 #00FF00 #0000FF #FFFFFF;
+}
+
+ +
 
diff --git a/files/pl/web/css/-moz-border-left-colors/index.html b/files/pl/web/css/-moz-border-left-colors/index.html new file mode 100644 index 0000000000..303bdfa747 --- /dev/null +++ b/files/pl/web/css/-moz-border-left-colors/index.html @@ -0,0 +1,15 @@ +--- +title: '-moz-border-left-colors' +slug: Web/CSS/-moz-border-left-colors +tags: + - CSS + - Non-standard +translation_of: Archive/Web/CSS/-moz-border-left-colors +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-border-left-colors ustawia kolory obramowania lewej krawędzi.

+ +

Zobacz więcej informacji we własności -moz-border-bottom-colors.

diff --git a/files/pl/web/css/-moz-box-align/index.html b/files/pl/web/css/-moz-box-align/index.html new file mode 100644 index 0000000000..1d6c77d415 --- /dev/null +++ b/files/pl/web/css/-moz-box-align/index.html @@ -0,0 +1,77 @@ +--- +title: '-moz-box-align' +slug: Web/CSS/-moz-box-align +tags: + - CSS + - Non-standard +translation_of: Web/CSS/box-align +--- +

{{ CSSRef() }}

+ +

{{warning("This is a property of the original CSS Flexible Box Layout Module standard which is being replaced by a new standard.")}}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-box-align określa jak element XUL box (pudełko) wyrównuje swoją zawartość w poprzek (prostopadle) do kierunku swojego układu. Efekt tego jest widoczny tylko, jeśli w pudełku jest dodatkowa przestrzeń.

+ +

Kierunek układu zależy od orientacji elementu: poziomej lub pionowej.

+ + + +

Składnia

+ +
-moz-box-align: start | center | end | baseline | stretch
+
+ +

Wartości

+ +
+
start
+
Pudełko wyrównuje zawartość od początku, opuszczając dodatkową przestrzeń na końcu.
+
center
+
Pudełko wyrównuje zawartość do środka, dzieląc pustą przestrzeń odpowiednio między początek i koniec.
+
end
+
Pudełko wyrównuje zawartość do końca, opuszczając dodatkową przestrzeń na początku
+
baseline
+
Pudełko wyrównuje linie bazowe zawartości (ustawiając tekst w kolejności). Ma zastosowanie tylko, gdy orientacja pudełka jest pozioma.
+
stretch
+
Pudełko rozciąga zawartość, zatem w pudełku nie ma dodatkowej przestrzeni.
+
+ +

Przykłady

+ +
hbox.example {
+	-moz-box-align: end; /* przenosi zawartość do dołu */
+}
+
+ +

Notatki

+ +

Krawędź pudełka określona jakostart dla celu wyrównania zależy od orientacji pudełka

+ + + + + + + + + + + + +
Poziomagórna
Pionowalewa
+ +

Krawędź przeciwna do początkowej jest określana jakoend

+ +

Jeśli wyrównanie jest ustawione przy użyciu atrybutu align elementu, wtedy styl jest ignorowany.

+ +

Zobacz także

+ +

CSS:-moz-box-orient, CSS:-moz-box-pack

diff --git a/files/pl/web/css/-moz-box-flex/index.html b/files/pl/web/css/-moz-box-flex/index.html new file mode 100644 index 0000000000..bd4f192a92 --- /dev/null +++ b/files/pl/web/css/-moz-box-flex/index.html @@ -0,0 +1,64 @@ +--- +title: '-moz-box-flex' +slug: Web/CSS/-moz-box-flex +tags: + - CSS + - Non-standard +translation_of: Web/CSS/box-flex +--- +

{{ CSSRef() }}

+ +

{{ warning("This is a property for controlling parts of the XUL box model.  It does not match either the old CSS Flexible Box Layout Module drafts for 'box-flex' (which were based on this property) or the behavior of '-webkit-box-flex' (which is based on those drafts).") }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-box-flex określa jak pudełko powiększa się, by wypełnić pudełko, które je zawiera, w kierunku układu zawierającego pudełka.

+ + + +

Składnia

+ +
-moz-box-flex:liczba
+
+ +

Wartości

+ +
+
0
+
Pudełko nie powiększa się.
+
> 0
+
Pudełko rozszerza się, by wypełnić proporcjonalną część dostępnej przestrzeni.
+
+ +

Przykłady

+ +
hbox.example {
+	-moz-box-flex: 1; /* take up some more space */
+}
+
+ +

Uwagi

+ +

Zawierające pudełko przydziela dodatkową dostępną przestrzeń proporcjonalnie do wartości rozciągania każdego elementu zawartości.

+ +

Elementy zawartości, które mają rozciąganie ustawione na zero, nie powiększają się.

+ +

Jeśli tylko jeden element zawartości ma niezerowe rozciąganie, wtedy powiększa się on do wypełnienia dostępnej wolnej przestrzeni.

+ +

Elementy zawartości, które mają takie samo rozciąganie, powiększają się o tą samą bezwzględną liczbę.

+ +

Jeśli wartość rozciąganie jest ustawiona przy użyciu atrybutu flex w elemencie, wtedy styl jest ignorowany.

+ +

Aby zrobić element XUL w zawierającym pudełku takich samych rozmiarów, ustaw atrybut equalsize zawierającego pudełka na wartość always. Ten atrybut nie ma odpowiadającej własności CSS.

+ +

Zobacz także

+ +

CSS:-moz-box-orient, CSS:-moz-box-pack

+ +
 
diff --git a/files/pl/web/css/-moz-box-orient/index.html b/files/pl/web/css/-moz-box-orient/index.html new file mode 100644 index 0000000000..5effdac347 --- /dev/null +++ b/files/pl/web/css/-moz-box-orient/index.html @@ -0,0 +1,54 @@ +--- +title: '-moz-box-orient' +slug: Web/CSS/-moz-box-orient +tags: + - CSS + - Non-standard +translation_of: Web/CSS/box-orient +--- +

{{ CSSRef() }}

+ +

{{ warning("This is a property of the original CSS Flexible Box Layout Module draft, and has been replaced in newer drafts.") }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-box-orient określa, czy pudełko rozkłada swoją zawartość poziomo czy pionowo.

+ +

Np. elementy XUL box i hbox domyślnie rozkładają swoją zawartość poziomo, zaś elementy XUL vbox domyślnie rozkładają swoją zawartość pionowo.

+ + + +

Składnia

+ +
-moz-box-orient: horizontal | vertical
+
+ +

Wartości

+ +
+
horizontal
+
Pudełko układa swoją zawartość w poziomie.
+
vertical
+
Pudełko układa swoją zawartość w pionie.
+
+ +

Przykłady

+ +
hbox.example {
+	-moz-box-orient: vertical; /* zmiana orientacji */
+}
+
+ +

Notatki

+ +

Jeśli orientacja jest ustawiona w elemencie przy użyciu atrybutu orient, wtedy styl jest ignorowany.

+ +

Zobacz także

+ +

CSS:direction, CSS:-moz-box-direction

diff --git a/files/pl/web/css/-moz-box-pack/index.html b/files/pl/web/css/-moz-box-pack/index.html new file mode 100644 index 0000000000..edbbe60856 --- /dev/null +++ b/files/pl/web/css/-moz-box-pack/index.html @@ -0,0 +1,82 @@ +--- +title: '-moz-box-pack' +slug: Web/CSS/-moz-box-pack +tags: + - CSS + - Non-standard +translation_of: Web/CSS/box-pack +--- +

{{ CSSRef() }}

+ +

{{warning("This is a property of the original CSS Flexible Box Layout Module standard which is being replaced by a new standard.")}}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-box-pack określa jak pudełko wpakowuje swoją zawartość w kierunku swojego układu. Efekt tego jest widoczny tylko wtedy, gdy w pudełku jest dodatkowa wolna przestrzeń.

+ +

Kierunek układu zależy od orientacji elementu: poziomej lub pionowej.

+ + + +

Składnia

+ +
-moz-box-pack: start | center | end | justify
+
+ +

Wartości

+ +
+
start
+
Pudełko wpakowuje zawartość od początku, zostawiając dodatkową wolną przestrzeń na końcu.
+
center
+
Pudełko wpakowuje zawartość w środku, dzieląc dodatkową wolną przestrzeń pomiędzy początek i koniec.
+
end
+
Pudełko wpakowuje zawartość na końcu, zostawiając dodatkową wolną przestrzeń na początku.
+
justify
+
 ?
+
+ +

Przykłady

+ +
hbox.example {
+	-moz-box-pack: end; /* przesuwa zawartość na prawo */
+}
+
+ +

Notatki

+ +

Krawędź pudełka, określona jakostart dla celów wpakowywania, zależy od orientacji i kierunku pudełka.

+ + + + + + + + + + + + + + + + + + + +
 NormalnaOdwrócona
Poziomolewaprawa
Pionowogóradół
+ +

Krawędź przeciwna do początkowej jest określana jakoend.

+ +

Jeśli wpakowywanie jest ustawione w atrybucie pack elementu, wtedy styl jest ignorowany.

+ +

Zobacz także

+ +

CSS:-moz-box-orient, CSS:-moz-box-direction, CSS:-moz-box-align

diff --git a/files/pl/web/css/-moz-image-region/index.html b/files/pl/web/css/-moz-image-region/index.html new file mode 100644 index 0000000000..8b8315df3c --- /dev/null +++ b/files/pl/web/css/-moz-image-region/index.html @@ -0,0 +1,41 @@ +--- +title: '-moz-image-region' +slug: Web/CSS/-moz-image-region +tags: + - CSS + - Non-standard +translation_of: Web/CSS/-moz-image-region +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

Dla określonych elementów i pseudoelementów XUL, które używają obrazka z własności {{ Cssxref("list-style-image") }}, ta własność określa obszar obrazka, który jest używany w miejsce całego obrazka. Pozwala to elementowi używać różnych fragmentów tego samego obrazka w celu ulepszenia wykonania.

+ +

Składnia jest podobna do własności {{ Cssxref("clip") }}. Wszystkie cztery wartości są określane względem górnego lewego rogu obrazka.

+ + + +

Składnia

+ +
-moz-image-region: rect(top, right, bottom, left);
+
+ +

Przykłady

+ +
#example-button {
+  /* display only the 4x4 area from the top left of this image */
+  list-style-image: url("chrome://example/skin/example.png");
+  -moz-image-region: rect(0px, 4px, 4px, 0px);
+}
+#example-button:hover {
+  /* use the 4x4 area to the right of the first for the hovered button */
+  -moz-image-region: rect(0px, 8px, 4px, 4px);
+}
+
diff --git a/files/pl/web/css/-moz-outline-color/index.html b/files/pl/web/css/-moz-outline-color/index.html new file mode 100644 index 0000000000..bded69c35c --- /dev/null +++ b/files/pl/web/css/-moz-outline-color/index.html @@ -0,0 +1,12 @@ +--- +title: '-moz-outline-color' +slug: Web/CSS/-moz-outline-color +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/outline-color +--- +

d

diff --git a/files/pl/web/css/-moz-outline-radius-bottomleft/index.html b/files/pl/web/css/-moz-outline-radius-bottomleft/index.html new file mode 100644 index 0000000000..fd55bfdfef --- /dev/null +++ b/files/pl/web/css/-moz-outline-radius-bottomleft/index.html @@ -0,0 +1,17 @@ +--- +title: '-moz-outline-radius-bottomleft' +slug: Web/CSS/-moz-outline-radius-bottomleft +tags: + - CSS + - Non-standard +translation_of: Web/CSS/-moz-outline-radius-bottomleft +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach Mozilli -moz-outline-radius-bottomleft ustawia zaokrąglenie dolnego lewego rogu konturu.

+ +

Zobacz więcej informacji we własności -moz-outline-radius.

+ +
 
diff --git a/files/pl/web/css/-moz-outline-radius-bottomright/index.html b/files/pl/web/css/-moz-outline-radius-bottomright/index.html new file mode 100644 index 0000000000..2ac8105365 --- /dev/null +++ b/files/pl/web/css/-moz-outline-radius-bottomright/index.html @@ -0,0 +1,15 @@ +--- +title: '-moz-outline-radius-bottomright' +slug: Web/CSS/-moz-outline-radius-bottomright +tags: + - CSS + - Non-standard +translation_of: Web/CSS/-moz-outline-radius-bottomright +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach Mozilli -moz-outline-radius-bottomright ustawia zaokrąglenie dolnego prawego rogu konturu.

+ +

Zobacz więcej informacji we własności -moz-outline-radius.

diff --git a/files/pl/web/css/-moz-outline-radius-topleft/index.html b/files/pl/web/css/-moz-outline-radius-topleft/index.html new file mode 100644 index 0000000000..695c0fa28f --- /dev/null +++ b/files/pl/web/css/-moz-outline-radius-topleft/index.html @@ -0,0 +1,15 @@ +--- +title: '-moz-outline-radius-topleft' +slug: Web/CSS/-moz-outline-radius-topleft +tags: + - CSS + - Non-standard +translation_of: Web/CSS/-moz-outline-radius-topleft +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach Mozilli -moz-outline-radius-topleft ustawia zaokrąglenie górnego lewego rogu konturu.

+ +

Zobacz więcej informacji we własności -moz-outline-radius.

diff --git a/files/pl/web/css/-moz-outline-radius/index.html b/files/pl/web/css/-moz-outline-radius/index.html new file mode 100644 index 0000000000..8fc9754922 --- /dev/null +++ b/files/pl/web/css/-moz-outline-radius/index.html @@ -0,0 +1,71 @@ +--- +title: '-moz-outline-radius' +slug: Web/CSS/-moz-outline-radius +tags: + - CSS + - Non-standard +translation_of: Web/CSS/-moz-outline-radius +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach Mozilli -moz-outline-radius może być używane do nadania konturowi zaokrąglonych rogów. Kontur jest linią rysowaną wokół elementu, na zewnątrz krawędzi obramowania w celu wyróżnienia elementu.

+ + + +

Składnia

+ +
-moz-outline-radius:<outline-radius>{1,4} | inherit ;
+
+ +

Wartości

+ +

<outline-radius> reprezentuje jedną w wartości:

+ +
+
<length> 
+
długość
+
<percentage> 
+
procenty, względem szerokości pudełka
+
+ +

Zatem używane są 4 wartości w porządku górny lewy, górny prawy, dolny prawy i dolny lewy. Jeśli podane są mniej niż 4 wartości, lista wartości jest powtarzana do uzupełnienia pozostałych wartości.

+ +

Powiązane własności

+ + + +

Przykłady

+ +
hbox.example {
+  -moz-outline: #000000 solid 10px;
+  width: 500px;
+  height: 500px;
+  /* kontur wygnie się w kształt litery 'D' */
+  -moz-outline-radius: 10px 200px 200px 10px;
+}
+
+ +

Znane błędy

+ +

Te błędy są takie same jak w border-radius.

+ + diff --git a/files/pl/web/css/@document/index.html b/files/pl/web/css/@document/index.html new file mode 100644 index 0000000000..75889861b3 --- /dev/null +++ b/files/pl/web/css/@document/index.html @@ -0,0 +1,46 @@ +--- +title: '@document' +slug: Web/CSS/@document +tags: + - CSS + - CSS At-rule +translation_of: Web/CSS/@document +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Reguła @-moz-document jest regułą @ ograniczającą reguły zawartych w sobie stylów bazując na adresie URL dokumentu. Jest stworzona głównie dla stylów użytkownika.

+ +

Składnia

+ +

Przykłady

+ +

Możesz tego użyć w swoim pliku userContent.css:

+ +
@document url(http://www.w3.org/),
+               url-prefix(http://www.w3.org/Style/),
+               domain(mozilla.org)
+{
+  /* Reguły CSS  dotyczą tutaj:
+     + Strony "http://www.w3.org/".
+     + Strony, której URL rozpoczyna się "http://www.w3.org/Style/"
+     + Każdej strony, dla której URL domeny zawiera "mozilla.org" lub kończy się
+       ".mozilla.org"
+   */
+
+  /* zrobienie powyższych stron potwornymi */
+  body { color: purple; background: yellow; }
+}
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ +

Dostępne od Mozilli 1.8 / Firefox 1.5.

+ +
 
diff --git a/files/pl/web/css/@import/index.html b/files/pl/web/css/@import/index.html new file mode 100644 index 0000000000..3ed94ea5d7 --- /dev/null +++ b/files/pl/web/css/@import/index.html @@ -0,0 +1,34 @@ +--- +title: '@import' +slug: Web/CSS/@import +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/@import +--- +

{{ CSSRef() }}

+

Podsumowanie

+

@import pozwala użytkownikom importować reguły stylów z innych arkuszy stylów.

+

Składnia

+
@import "url";
+@import "url"media1,media2,...;
+@import url("url");
+@import url("url")media1;
+
+

Notatki

+

W związku z tym, że program użytkownika może pominąć wyszukiwanie zasobów dla niewspieranych typów mediów, autorzy mogą określić reguły @import zależne od mediów. Te warunkowe importowanie określa się przy użyciu oddzielonych przecinkami typów mediów po URI. W przypadku braku jakiegokolwiek typu mediów import jest bezwarunkowy. Określenie all dla medium przynosi ten sam efekt.

+

 

+

Przykłady

+
@import url("fineprint.css") print;
+@import url("bluish.css") projection, tv;
+
+

Specyfikacje

+ +

Zgodność z przeglądarką

+

Zobacz także

+

{{ Cssxref("@media") }}, {{ Cssxref("@font-face") }}

+

{{ languages( { "en": "en/CSS/@import", "fr": "fr/CSS/@import" } ) }}

diff --git a/files/pl/web/css/@media/index.html b/files/pl/web/css/@media/index.html new file mode 100644 index 0000000000..f1f74e6374 --- /dev/null +++ b/files/pl/web/css/@media/index.html @@ -0,0 +1,193 @@ +--- +title: '@media' +slug: Web/CSS/@media +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/@media +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

@media określa typ docelowych mediów (oddzielonych przecinkami) dla zestawu reguł (ograniczonych klamrami). +

+

Składnia

+
@media <typy mediów> {
+  /* reguły specyficzne dla medium */
+}
+
+

Typy mediów

+
all +
Pasujące dla wszystkich urządzeń. +
braille +
Przeznaczone dla dotykowych urządzeń brailla. +
embossed +
Przeznaczone dla drukarek brailla. +
handheld +
Przeznaczone dla urządzeń kieszonkowych (przeważnie z małym ekranem, ograniczoną przepustowością). +
print +
Przeznaczone dla materiałów stronnicowanych lub dokumentów pokazywanych na ekranie w trybie podglądu wydruku. Sprawdź rozdział o mediach stronnicowanych, aby dowiedzieć się o zagadnieniach formatowania, które są specyficzne dla mediów stronnicowanych. +
projection +
Przeznaczone dla rzutowanych prezentacji, np. projektorów. Sprawdź rozdział o mediach stronnicowanych, aby dowiedzieć się o zagadnieniach formatowania, które są specyficzne dla mediów stronnicowanych. +
screen +
Przeznaczone przede wszystkim dla kolorowych ekranów komputerowych. +
speech +
Przeznaczone dla syntezatorów mowy. Uwaga: CSS2 miał do tego celu podobny typ mediów nazywany 'aural' . Zobacz w dodatku szczegóły o arkuszach stylów 'aural'. +
tty +
Przeznaczone dla mediów używających dla znaków siatki o stałej podziałce (jak np. dalekopis, terminal lub urządzenia przenośne o ograniczonych możliwościach wyświetlania). Autorzy nie powinni używać dla medium "tty" jednostek w pikselach. +
tv +
Przeznaczone dla urządzeń telewizyjnych (niska rozdzielczość, kolor, ograniczone przewijanie ekranów, dźwięk dostępny). +
+


+

+

Grupy mediów

+

Typy mediów są również częścią różnych grup mediów. Poniższa tabel pokazuje, które typy są w których grupach. +

+ + + + + + + + + + + + +
+Grupy +
Typ +continuous +paged +visual +audio +speech +tactile +grid +bitmap +interactive +static +
braille +X + + + + +X +X + +X +X +
embossed + +X + + + +X +X + + +X +
handheld +X +X +X +X +X + +X +X +X +X +
print + +X +X + + + + +X + +X +
projection + +X +X + + + + +X +X + +
screen +X + +X +X + + + +X +X +X +
speech +X + + + +X + + + +X +X +
tty +X + +X + + + +X + +X +X +
tv +X +X +X +X + + + +X +X +X +
+

Przykłady

+
  @media print {
+    body { font-size: 10pt }
+  }
+  @media screen {
+    body { font-size: 13px }
+  }
+  @media screen, print {
+    body { line-height: 1.2 }
+  }
+
+

Uwagi

+

Wielomodalny typ medium jest wciąż jednym typem medium. Np. typ medium 'tv' jest wielomodalnym typem, który prezentuje jednocześnie wizualnie i słuchowo dla jednego obrazu. +

+

Specyfikacje

+ +

Zgodność z przeglądarką

+

Zobacz także

+

{{ Cssxref("@import") }}, {{ Cssxref("@font-face") }} +

{{ languages( { "en": "en/CSS/@media", "fr": "fr/CSS/@media" } ) }} diff --git a/files/pl/web/css/@supports/index.html b/files/pl/web/css/@supports/index.html new file mode 100644 index 0000000000..1c726ccdc8 --- /dev/null +++ b/files/pl/web/css/@supports/index.html @@ -0,0 +1,123 @@ +--- +title: '@supports' +slug: Web/CSS/@supports +translation_of: Web/CSS/@supports +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

@supports CSS at-rule zawiera grupę reguł w bloku CSS zamkniętych w klamrowych nawiasach. Składa się z deklaracji CSS (klucz-para). Do wykorzstania mamy także warunkowość zdań: koniunkcję, alternatywę oraz negację. Powyższa reguła daje nam możliwość wykrycia dostępności danej reguły.

+ +

Istnieje możliwość użycia tej reguły na zewnątrz CSS conditional-group at-rule, uzyskując tym samym dostęp do kontrolowania jej przy użyciu obiektowego modelu interfejsu CSS {{domxref("CSSSupportsRule")}}.
+  

+ +

Składnia

+ +
@supports <wyrażenie> {
+  /* reguły, które zostaną zaaplikowane w przypadku gdy wyrażenie jest prawdziwe */
+}
+
+ +

Przykłady

+ +

Sprawdzanie wsparcia danej właściowści CSS

+ +
@supports (animation-name: test) {
+    … /* reguły aplikowane gdy właściwość "animation-name" jest dostepna bez tzw. vendor prefixes, np. "-webkit-animation" */
+    @keyframes { /* przykład użycia @supports na zewnątrz innej reguły @ */
+      …
+    }
+}
+
+ +

Sprawdzanie wsparcia danej właściowści CSS wraz z przedrostkami

+ +
@supports ( (perspective: 10px) or (-moz-perspective: 10px) or (-webkit-perspective: 10px) or
+            (-ms-perspective: 10px) or (-o-perspective: 10px) ) {
+    … /* reguły aplikowane są dostępne, niezależnie czy przeglądarka obsługuje wersja z przedrostkami czy bez */
+}
+
+ +

Sprawdzanie czy przeglądarka nie obsługuje danej właściwości

+ +
@supports ( not ((text-align-last:justify) or (-moz-text-align-last:justify) ){
+   /* aplikowane reguły, jeśli powyższe wyrażenie jest prawdziwe */
+}
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{ SpecName('CSS3 Conditional', '#at-supports', '@supports') }}{{ Spec2('CSS3 Conditional') }}Initial definition.
+ +

Zgodność z przeglądarką

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
CechaChromeFirefox (Gecko)Internet ExplorerOperaSafari
Podstawowe wsparcie28.0{{ CompatGeckoDesktop("22") }} [1]{{ CompatNo() }}12.1{{ CompatNo() }}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
CechaAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Podstawowe wsparcie{{ CompatNo() }}{{ CompatGeckoMobile("22") }} [1]{{ CompatNo() }}12.1{{ CompatNo() }}
+
+ +

[1] Gecko 17 do Gecko 21 wspierał tą cechę tylko gdy użytkownik włączył ją ustawiając wartość  layout.css.supports-rule.enabled na true.

+ +

Zobacz też

+ + diff --git a/files/pl/web/css/_colon_-moz-last-node/index.html b/files/pl/web/css/_colon_-moz-last-node/index.html new file mode 100644 index 0000000000..8650cda09d --- /dev/null +++ b/files/pl/web/css/_colon_-moz-last-node/index.html @@ -0,0 +1,63 @@ +--- +title: ':last-node' +slug: 'Web/CSS/:-moz-last-node' +tags: + - CSS + - Non-standard +translation_of: 'Web/CSS/:-moz-last-node' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

Pseudoklasa :last-node sprawia iż własności stosowane są do elementu tylko wtedy gdy jest on ostatnim węzłem potomnym swojego rodzica. :last-node uwzględnia również węzły tekstowe składające się niebiałych znaków. Pseudoklasą, która działa identycznie, jednak nie uwzględnia węzłów tekstowych jest {{ Cssxref(":last-child") }}.

+ +

Składnia

+ +
selektor:-moz-last-node { własności }
+
+ +

Przykłady

+ +
<html>
+  <body>
+  Trochę tekstu.
+    <span id="first">pierwszy</span>
+    <div>
+      <span id="dfirst">pierwszy</span>
+      <span id="dsecond">drugi</span>
+    </div>
+    <span id="second">drugi</span>
+  </body>
+</html>
+
+ +
span:-moz-last-node { font-weight: bold; }
+
+ +

Powyższy zapis pogrubi czcionkę wewnątrz wszystkich elementów span, które są ostatnimi dziećmi swoich rodziców. Zostaną tutaj pogrubione obydwa słowa "drugi".

+ +
    +
  1. span o id dsecond jest ostatnim dzieckiem elementu div
  2. +
  3. span o id second jest ostatnim dzieckiem elementu body
  4. +
+ +

 

+ +
div:-moz-first-node:last-child { background-color: red; }
+
+ +

Ten przykład ustawi czerwony kolor tła wszystkim elementom div, które są jedynymi dziećmi swojego rodzica. Jednak za elementem może znajdować się węzeł tekstowy.

+ +
div:-moz-first-child:last-node { background-color: red; }
+
+ +

Ten przykład natomiast ustawi czerwony kolor tła wszystkim elementom div, które są jedynymi dziećmi swojego rodzica. Przed elementem może znajdować się węzeł tekstowy.

+ +

Notatki

+ +

Pseudoklasa :-moz-last-node nie jest obecnie obsługiwana. Skorzystaj z {{ Cssxref(":-moz-last-node") }}

+ +

Zobacz także

+ +

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref(":first-node") }}

diff --git a/files/pl/web/css/_colon_-moz-tree-cell-text/index.html b/files/pl/web/css/_colon_-moz-tree-cell-text/index.html new file mode 100644 index 0000000000..ea450f5cb5 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-cell-text/index.html @@ -0,0 +1,25 @@ +--- +title: ':-moz-tree-cell-text' +slug: 'Web/CSS/:-moz-tree-cell-text' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-cell-text' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-cell/index.html b/files/pl/web/css/_colon_-moz-tree-cell/index.html new file mode 100644 index 0000000000..d6fb331d38 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-cell/index.html @@ -0,0 +1,28 @@ +--- +title: ':-moz-tree-cell' +slug: 'Web/CSS/:-moz-tree-cell' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-cell' +--- +

{{ CSSRef() }}{{Non-standard_header}}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-column/index.html b/files/pl/web/css/_colon_-moz-tree-column/index.html new file mode 100644 index 0000000000..9e17185510 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-column/index.html @@ -0,0 +1,25 @@ +--- +title: ':-moz-tree-column' +slug: 'Web/CSS/:-moz-tree-column' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-column' +--- +

{{ CSSRef() }}{{Non-standard_header}}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-drop-feedback/index.html b/files/pl/web/css/_colon_-moz-tree-drop-feedback/index.html new file mode 100644 index 0000000000..651ab25f65 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-drop-feedback/index.html @@ -0,0 +1,26 @@ +--- +title: ':-moz-tree-drop-feedback' +slug: 'Web/CSS/:-moz-tree-drop-feedback' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-drop-feedback' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-image/index.html b/files/pl/web/css/_colon_-moz-tree-image/index.html new file mode 100644 index 0000000000..ae4bd01d26 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-image/index.html @@ -0,0 +1,28 @@ +--- +title: ':-moz-tree-image' +slug: 'Web/CSS/:-moz-tree-image' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/:-moz-tree-image' +--- +

{{ CSSRef() }}{{Non-standard_header}}

+ +

Podsumowanie

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-indentation/index.html b/files/pl/web/css/_colon_-moz-tree-indentation/index.html new file mode 100644 index 0000000000..646d986d82 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-indentation/index.html @@ -0,0 +1,23 @@ +--- +title: ':-moz-tree-indentation' +slug: 'Web/CSS/:-moz-tree-indentation' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-indentation' +--- +

{{ CSSRef() }}{{Non-standard_header}}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-line/index.html b/files/pl/web/css/_colon_-moz-tree-line/index.html new file mode 100644 index 0000000000..dbe7014b2f --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-line/index.html @@ -0,0 +1,24 @@ +--- +title: ':-moz-tree-line' +slug: 'Web/CSS/:-moz-tree-line' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-line' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-progressmeter/index.html b/files/pl/web/css/_colon_-moz-tree-progressmeter/index.html new file mode 100644 index 0000000000..65442cf74e --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-progressmeter/index.html @@ -0,0 +1,24 @@ +--- +title: ':-moz-tree-progressmeter' +slug: 'Web/CSS/:-moz-tree-progressmeter' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-progressmeter' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-row/index.html b/files/pl/web/css/_colon_-moz-tree-row/index.html new file mode 100644 index 0000000000..763aefc4bb --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-row/index.html @@ -0,0 +1,47 @@ +--- +title: ':-moz-tree-row' +slug: 'Web/CSS/:-moz-tree-row' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-row' +--- +

{{ CSSRef() }}{{Non-standard_header}}

+ +

-moz-tree-row jest używane do wybrania wierszy i zastosowania stylu do drzewa wierszy.

+ +

Powiązane elementy

+ + + +

Składnia

+ +
treechildren::-moz-tree-row {style properties }
+
+ +

Własności stylów

+ + + +

Przykłady

+ +
treechildren::-moz-tree-row( foo bar )
+{
+    margin: 2%;
+}
+
+ +

...gdzie...

+ +
  <treerow properties="foo">...</treerow>
+
diff --git a/files/pl/web/css/_colon_-moz-tree-separator/index.html b/files/pl/web/css/_colon_-moz-tree-separator/index.html new file mode 100644 index 0000000000..b855c38553 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-separator/index.html @@ -0,0 +1,27 @@ +--- +title: ':-moz-tree-separator' +slug: 'Web/CSS/:-moz-tree-separator' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-separator' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_-moz-tree-twisty/index.html b/files/pl/web/css/_colon_-moz-tree-twisty/index.html new file mode 100644 index 0000000000..0da422f8a2 --- /dev/null +++ b/files/pl/web/css/_colon_-moz-tree-twisty/index.html @@ -0,0 +1,29 @@ +--- +title: ':-moz-tree-twisty' +slug: 'Web/CSS/:-moz-tree-twisty' +tags: + - CSS + - Non-standard +translation_of: 'Mozilla/Gecko/Chrome/CSS/::-moz-tree-twisty' +--- +

{{ CSSRef() }}{{Non-standard_header}}

+ +

Aktywowany przez atrybut properties.

+ +

Powiązane elementy

+ + + +

Własności stylów

+ + diff --git a/files/pl/web/css/_colon_active/index.html b/files/pl/web/css/_colon_active/index.html new file mode 100644 index 0000000000..7779ce45f6 --- /dev/null +++ b/files/pl/web/css/_colon_active/index.html @@ -0,0 +1,160 @@ +--- +title: ':active' +slug: 'Web/CSS/:active' +tags: + - pseudo klasa +translation_of: 'Web/CSS/:active' +--- +
{{CSSRef}}
+ +

Pseudo klasa:active

+ +

Właściwość :active CSS pseudo-class jest używany w momencie aktywowania danego elementu przez użytkownika. Podczas interakcji z myszą zazwyczaj jest to czas pomiędzy naciśnięciem przycisku myszy a zwolnieniem go. Pseudo klasa :active jest często używna z elementami HTML jak {{HTMLElement("a")}} lub {{HTMLElement("button")}} ale nie tylko.

+ +

Pseudo klasa :active może zostać zastąpiona przez inne pseudo-klasy powiązane z linkami, takie jak {{cssxref (": link")}}, {{cssxref (": hover")}} i {cssxref (": visited" )}}, które mogą się pojawić w kolejnych regułach. W celu dopasowania odpowiednich linków, należy umieścić: active we wszystkich innych regułach linków, zgodnie z definicją zlecenia LVHA:: link -: visited -: hover -: active.

+ +
Notatka: W systemach z wieloma przyciskami, CSS 3 określa pseudo klasę :active dla przycisku podstawowego.
+ +

Składnia

+ +
{{csssyntax}}
+ +

Przykład

+ +
+

HTML

+ +
<body>
+    <h1>:active przykład selektora CSS</h1>
+    <p>Ten link zmieni się w czasie kliknięcia i zwolnienia<a href="#">Mozilla Developer Network</a>.</p>
+</body>
+ +

CSS

+ +
body { background-color: #ffffc9 }
+a:link { color: blue } /* unvisited links */
+a:visited { color: purple } /* visited links */
+a:hover { font-weight: bold } /* user hovers */
+a:active { color: lime } /* active links */
+
+ +
{{EmbedLiveSample('example',600,140)}}
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('HTML WHATWG', 'scripting.html#selector-active', ':active')}}{{Spec2('HTML WHATWG')}} 
{{SpecName('CSS4 Selectors', '#active-pseudo', ':active')}}{{Spec2('CSS4 Selectors')}}No change.
{{SpecName('CSS3 Selectors', '#useraction-pseudos', ':active')}}{{Spec2('CSS3 Selectors')}}No change.
{{SpecName('CSS2.1', 'selector.html#dynamic-pseudo-classes', ':active')}}{{Spec2('CSS2.1')}}No change.
{{SpecName('CSS1', '#anchor-pseudo-classes', ':active')}}{{Spec2('CSS1')}}Initial definition.
+ +

Wsparcie przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1.0{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.0")}}4.05.01.0
Support on non-<a> elements1.0{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.0")}}8.07.01.0
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support1.0{{CompatVersionUnknown}}{{CompatGeckoMobile("1.0")}}6.06.01.0
Support on non-<a> elements1.0{{CompatVersionUnknown}}{{CompatGeckoMobile("1.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}} [1]
+
+ +

[1] By default, Safari Mobile does not use the {{cssxref(":active")}} state unless there is a touchstart event handler on the relevant element or on the {{HTMLElement("body")}}.

+ +

Zobacz też

+ + diff --git a/files/pl/web/css/_colon_after/index.html b/files/pl/web/css/_colon_after/index.html new file mode 100644 index 0000000000..71261c88bb --- /dev/null +++ b/files/pl/web/css/_colon_after/index.html @@ -0,0 +1,63 @@ +--- +title: ':after' +slug: 'Web/CSS/:after' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/::after' +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Tworzy pseudoelement, który staje się ostatnim dzieckiem danego elementu. Zazwyczaj używany jest do wprowadzania kosmetycznych zmian danego elementu. Domyślnie element wstawiany jest inline.

+ +

Składnia

+ +
/* składnia CSS2 */ selektor:after { własności }
+/* składnia CSS3 */ selektor::after { własności }
+ +

Zapis ::aft​er został wprowadzony w CSS 3 w celu ustanowienia różnicy pomiędzy pseudo klasami, a pseudo elementami. Przeglądarki akceptują również notację :after wprowadzoną w CSS 2.

+ +

Przykłady

+ +

Prosty przykład

+ +
<html>
+  <body>
+    <p>akapit</p>
+  </body>
+</html>
+
+ +
p:after {
+  content: 'Koniec';
+  display: block;
+  margin-top: 3em;
+}
+
+ +
+
body:after { content: 'Koniec dokumentu'; }
+
+ +

Notatki

+ +

Elementy wstawiane do dokumentu poprzez :after nie są widziane w drzewie dokumentu.

+ +

Specyfikacje

+ + + +

Zobacz także

+ +

{{ Cssxref(":before") }}, {{ Cssxref("content") }}

+ +

 

+ +

{{ languages( { "en": "en/CSS/:after", "es": "es/CSS/after", "fr": "fr/CSS/:after" } ) }}

diff --git a/files/pl/web/css/_colon_before/index.html b/files/pl/web/css/_colon_before/index.html new file mode 100644 index 0000000000..5c1a1f3772 --- /dev/null +++ b/files/pl/web/css/_colon_before/index.html @@ -0,0 +1,60 @@ +--- +title: ':before' +slug: 'Web/CSS/:before' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/::before' +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Tworzy pseudoelement, który staje się pierwszym dzieckiem danego elementu. Zazwyczaj używany jest do wprowadzania kosmetycznych zmian danego elementu. Domyślnie element wstawiany jest inline.

+ +

Składnia

+ +
element:before { własności }
+
+ +

Najczęściej używana jest własność {{ Cssxref("content") }}, która pozwala na wstawienie treści do pseudoelementu.

+ +

Przykłady

+ +

Zobacz przykład

+ +
<html>
+  <body>
+    <p>akapit</p>
+  </body>
+</html>
+
+ +
p:before {
+  content: 'Tekst przed akapitem';
+  display: block;
+}
+
+ +

 

+ +

Notatki

+ +

Elementy wstawiane do dokumentu poprzez :before nie są widziane w drzewie dokumentu.

+ +

Specyfikacje

+ + + +

Zobacz także

+ +

{{ Cssxref(":after") }}, {{ Cssxref("content") }}

+ +

 

+ +

{{ languages( { "en": "en/CSS/:before", "es": "es/CSS/before", "fr": "fr/CSS/:before" } ) }}

diff --git a/files/pl/web/css/_colon_empty/index.html b/files/pl/web/css/_colon_empty/index.html new file mode 100644 index 0000000000..5d0479f9a6 --- /dev/null +++ b/files/pl/web/css/_colon_empty/index.html @@ -0,0 +1,44 @@ +--- +title: ':empty' +slug: 'Web/CSS/:empty' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:empty' +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Pseudoklasa :empty odnosi się do elementów, które nie posiadają żadnych węzłów potomnych (wliczając w to węzły tekstowe).

+ +

Składnia

+ +
selektor:empty { własności }
+
+ +

Przykłady

+ +
span:empty::before { content: "pusty span"; font-style:italic; }
+
+ +

Powyższy przykład doda przed każdym pusty elementem span tekst "pusty span "

+ +
*:not(:empty) {własności }
+
+ +

Przykład nada własności wszystkim niepustym elementom.

+ +

Notatki

+ +

Jeśli wewnątrz elementu znajduje się jakikolwiek znak, wliczając w to białe znaki, element nie będzie traktowany jako empty

+ +

Zobacz także

+ +

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref("content") }}, {{ Cssxref(":not") }}

+ +
 
+ +

{{ languages( { "en": "en/CSS/:empty", "es": "es/CSS/vac\u00edo", "fr": "fr/CSS/:empty" } ) }}

diff --git a/files/pl/web/css/_colon_first-child/index.html b/files/pl/web/css/_colon_first-child/index.html new file mode 100644 index 0000000000..25e81d027e --- /dev/null +++ b/files/pl/web/css/_colon_first-child/index.html @@ -0,0 +1,74 @@ +--- +title: ':first-child' +slug: 'Web/CSS/:first-child' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:first-child' +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

Pseudoklasa :first-child sprawia iż własności stosowane są do elementu tylko wtedy gdy jest on pierwszym węzłem potomnym swojego rodzica. :first-child ignoruje węzły tekstowe. Pseudoklasą, która działa identycznie, jednak uwzględnia węzły tekstowe jest {{ Cssxref(":first-node") }}. +

+

Składnia

+
selektor:first-child { własności }
+
+

Przykłady

+
<html>
+  <body>
+  Trochę tekstu.
+    <span id="first">pierwszy</span>
+    <div>
+      <span id="dfirst">pierwszy</span>
+      <span id="dsecond">drugi</span>
+    </div>
+    <span id="second">drugi</span>
+  </body>
+</html>
+
+
span:first-child { font-weight: bold; }
+
+

Powyższy zapis pogrubi czcionkę wewnątrz wszystkich elementów span, które są pierwszymi dziećmi swoich rodziców. Zostaną tutaj pogrubione słowa "pierwszy":

+
  1. W pierwszym przypadku span o id first jest pierwszym dzieckiem elementu body +
  2. W drugim przypadku span o id dfirst jest pierwszym dzieckiem elementu div +
+


+

+
div:first-child:last-child { background-color: red; }
+
+

Ten przykład ustawi czerwony kolor tła wszystkim elementom div, które są jedynymi dziećmi swojego rodzica. +

+
<table>
+  <tr>
+    <td>Nagłówek k1</td>
+    <td>Nagłówek k2</td>
+  </tr>
+  <tr>
+    <td>Wiersz k1</td>
+    <td>Wiersz k2</td>
+  </tr>
+  <tr>
+    <td>Wiersz k1</td>
+    <td>Wiersz k2</td>
+  </tr>
+  <tr>
+    <td>Wiersz k1</td>
+    <td>Wiersz k2</td>
+  </tr>
+</table>
+
+
table tr:first-child { background-color: red; }
+
+

Ten przykład ustawi czerwone tło pierwszemu wierszowi tabeli (nagłówkowi). +UWAGA: Ten przykład ma za zadanie pokazać jak działa pseudoklasa :first-child. +

+

Notatki

+

Zobacz także

+

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref(":last-child") }} +

+
+
+{{ languages( { "en": "en/CSS/:first-child", "fr": "fr/CSS/:first-child" } ) }} diff --git a/files/pl/web/css/_colon_first-letter/index.html b/files/pl/web/css/_colon_first-letter/index.html new file mode 100644 index 0000000000..5de2e64cbd --- /dev/null +++ b/files/pl/web/css/_colon_first-letter/index.html @@ -0,0 +1,49 @@ +--- +title: ':first-letter' +slug: 'Web/CSS/:first-letter' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/::first-letter' +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Pseudoelement odnoszący się do pierwszej litery w bloku.

+ +

Składnia

+ +
element::first-letter { własności }
+
+ +

Przykłady

+ +
p::first-letter { text-transform: uppercase; }
+
+ +

Przykład zamieni w każdym paragrafie pierwszą literę na wielką.

+ +
p::first-letter { color: red; }
+
+ +

Przykład zmieni kolor pierwszej litery na czerwony w każdym elemencie p

+ + + +

Notatki

+ +

Pseudoelementy nie mogą być negowane poprzez {{ Cssxref(":not") }}.

+ +

Specyfikacje

+ + + +

Zobacz także

+ +

{{ Cssxref("text-transform") }}

diff --git a/files/pl/web/css/_colon_first-node/index.html b/files/pl/web/css/_colon_first-node/index.html new file mode 100644 index 0000000000..123c08088b --- /dev/null +++ b/files/pl/web/css/_colon_first-node/index.html @@ -0,0 +1,58 @@ +--- +title: ':first-node' +slug: 'Web/CSS/:first-node' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:-moz-first-node' +--- +

{{Non-standard_header}}{{ CSSRef() }}

+ +

Podsumowanie

+ +

Pseudoklasa :first-node sprawia iż własności stosowane są do elementu tylko wtedy gdy jest on pierwszym węzłem potomnym swojego rodzica. :first-node uwzględnia również węzły tekstowe składające się niebiałych znaków. Pseudoklasą, która działa identycznie, jednak nie uwzględnia węzłów tekstowych jest {{ Cssxref(":first-child") }}.

+ +

Składnia

+ +
selektor:first-node { własności }
+
+ +

Przykłady

+ +
<html>
+  <body>
+  Trochę tekstu.
+    <span id="first">pierwszy</span>
+    <div>
+      <span id="dfirst">pierwszy</span>
+      <span id="dsecond">drugi</span>
+    </div>
+    <span id="second">drugi</span>
+  </body>
+</html>
+
+ +
span:first-node { font-weight: bold; }
+
+ +

Powyższy zapis pogrubi czcionkę wewnątrz wszystkich elementów span, które są pierwszymi dziećmi swoich rodziców. Zostanie tutaj pogrubione tylko jedno słowo "pierwszy", ponieważ span o id first nie jest pierwszym dzieckiem elementu body. Pierwszym dzieckiem elementu body jest węzeł tekstowy.

+ +
div:first-node:last-child { background-color: red; }
+
+ +

Ten przykład ustawi czerwony kolor tła wszystkim elementom div, które są jedynymi dziećmi swojego rodzica. Jednak za elementem może znajdować się węzeł tekstowy.

+ +
div:first-child:last-node { background-color: red; }
+
+ +

Ten przykład natomiast ustawi czerwony kolor tła wszystkim elementom div, które są jedynymi dziećmi swojego rodzica. Przed elementem może znajdować się węzeł tekstowy.

+ +

Notatki

+ +

Pseudoklasa :first-node nie jest obecnie obsługiwana. Skorzystaj z {{ Cssxref(":-moz-first-node") }}

+ +

Zobacz także

+ +

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref(":last-node") }}

diff --git a/files/pl/web/css/_colon_hover/index.html b/files/pl/web/css/_colon_hover/index.html new file mode 100644 index 0000000000..91006dd99a --- /dev/null +++ b/files/pl/web/css/_colon_hover/index.html @@ -0,0 +1,101 @@ +--- +title: ':hover' +slug: 'Web/CSS/:hover' +translation_of: 'Web/CSS/:hover' +--- +
+

{{CSSRef}}

+ +

Pseudo klasa:hover

+
+ +

Właściwość :hover CSS pseudo-class jest używana gdy użytkownik wchodzi w interakcję z elementem za pomocą urządzenia wskazującego, ale niekoniecznie go aktywuje. Generalnie wyzwalanie następuje gdy użytkownik wskaże element kursorem, np. wskaźnikiem myszy.

+ +
/* Wybierz każdy element <a>, który zostanie najechany kursorem */
+a:hover {
+  color: orange;
+}
+ +

Style zdefiniowane przez pseudo-klasę :active będą nadpisywane przez każdą kolejną powiązaną pseudo-klasę ({{ cssxref(":link") }}, {{ cssxref(":visited") }}, lub {{ cssxref(":active") }}) która ma conajmniej taką samą specyfikację. Aby dopasować odpowiednio linki umieść :hover za :link i :visited ale przed :active zgodnie z zasadą LVHA : :link:visited:hover:active.

+ +
Notatka: Pseudo-klasa :hover wykazuje problem na ekranach dotykowych. W zależności od przeglądarki :hover może nigdy nie być  zgodna, może zmienić styl na czas wskazania elementu lub zmienić go do czasu oznaczenia innego elementu. Web developerzy powinni zadbać o to aby elementy działy również na urządzeniach z ograniczeniami obługi funkcji. 
+ +

Składnia

+ +
{{csssyntax}}
+ +

Przykład

+ +

HTML

+ +
<a href="#">Wskaż ten link.</a>
+ +

CSS

+ +
a {
+  background-color: powderblue;
+  transition: background-color .5s;
+}
+
+a:hover {
+  background-color: gold;
+}
+ +

Rezultat

+ +

{{EmbedLiveSample("Przykład")}}

+ +

Galeria obrazów

+ +

Możesz użyć pseudo-klasy :hover do utworzenia galerii obrazów, gdzie pełnowymiarowe obrazy będą wyświetlae wtedy, gdy kursor przesunie się nad miniaturą. Zobacz demo takiego rozwiązania.

+ +
Notatka: Dla analogicznego efektu, ale opartego o pseudo-klasę :checked (zastostosowane dla ukrytych radio-box'ów), zobacz demo, zaczerpnięte z strony dotyczącej :checked.
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{ SpecName('HTML WHATWG', 'scripting.html#selector-hover', ':hover') }}{{ Spec2('HTML WHATWG') }} 
{{ SpecName('CSS4 Selectors', '#the-hover-pseudo', ':hover') }}{{ Spec2('CSS4 Selectors') }}Allows :hover to be applied to any pseudo-element.
{{ SpecName('CSS3 Selectors', '#the-user-action-pseudo-classes-hover-act', ':hover') }}{{ Spec2('CSS3 Selectors') }}No significant change.
{{ SpecName('CSS2.1', 'selector.html#dynamic-pseudo-classes', ':hover') }}{{ Spec2('CSS2.1') }}Initial definition.
+ +

Kompatybilne przeglądarki

+ +
+ + +

{{Compat("css.selectors.hover")}}

+
+ +

Zobacz także

+ + diff --git a/files/pl/web/css/_colon_lang/index.html b/files/pl/web/css/_colon_lang/index.html new file mode 100644 index 0000000000..c8bf3f144f --- /dev/null +++ b/files/pl/web/css/_colon_lang/index.html @@ -0,0 +1,31 @@ +--- +title: ':lang' +slug: 'Web/CSS/:lang' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:lang' +--- +

{{ CSSRef() }}

+

Podsumowanie

+

Pseudoklasa :lang pozwala na dopasowanie własności dla elementów w określonym języku. W HTML4 odnosi się do atrybutu lang. W XML-u do xml:lang.

+

Składnia

+
selektor:lang(symbol) { własności }
+
+

Gdzie symbol to symbol języka zgodny z

+

Przykłady

+
p:lang(pl) {własności }
+
+

Zostaną zastosowane własności dla wszystkich elementów P, których atrybut lang ustawiony jest na pl.

+

Notatki

+

Jeśli dany element nie ma przepisanego atrybutu lang pod uwagę brany jest język ustawiony dla całego dokumentu.

+

 

+

Specyfikacje

+ +

Zobacz także

+

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref(":empty") }}

diff --git a/files/pl/web/css/_colon_last-child/index.html b/files/pl/web/css/_colon_last-child/index.html new file mode 100644 index 0000000000..c051571b1f --- /dev/null +++ b/files/pl/web/css/_colon_last-child/index.html @@ -0,0 +1,51 @@ +--- +title: ':last-child' +slug: 'Web/CSS/:last-child' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:last-child' +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

Pseudoklasa :last-child sprawia iż własności stosowane są do elementu tylko wtedy gdy jest on ostatnim węzłem potomnym swojego rodzica. :last-child ignoruje węzły tekstowe. Pseudoklasą, która działa identycznie, jednak uwzględnia węzły tekstowe jest {{ Cssxref(":last-node") }}. +

+

Składnia

+
selektor:last-child { własności }
+
+

Przykłady

+
<html>
+  <body>
+  Trochę tekstu.
+    <span id="first">pierwszy</span>
+    <div>
+      <span id="dfirst">pierwszy</span>
+      <span id="dsecond">drugi</span>
+    </div>
+    <span id="second">drugi</span>
+  </body>
+</html>
+
+
span:last-child { font-weight: bold; }
+
+

Powyższy zapis pogrubi czcionkę wewnątrz wszystkich elementów span, które są ostatnimi dziećmi swoich rodziców. Zostaną tutaj pogrubione słowa "drugi":

+
  1. W pierwszym przypadku span o id dsecond jest ostatnim dzieckiem elementu div +
  2. W drugim przypadku span o id second jest ostatnim dzieckiem elementu body +
+


+

+
div:first-child:last-child { background-color: red; }
+
+

Ten przykład ustawi czerwony kolor tła wszystkim elementom div, które są jedynymi dziećmi swojego rodzica. +


+

+

Notatki

+

Zobacz także

+

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref(":first-child") }} +

+
+
+{{ languages( { "en": "en/CSS/:last-child", "fr": "fr/CSS/:first-child" } ) }} diff --git a/files/pl/web/css/_colon_link/index.html b/files/pl/web/css/_colon_link/index.html new file mode 100644 index 0000000000..6fb07d5479 --- /dev/null +++ b/files/pl/web/css/_colon_link/index.html @@ -0,0 +1,70 @@ +--- +title: ':link' +slug: 'Web/CSS/:link' +tags: + - CSS + - CSS Psuedo-class + - Web +translation_of: 'Web/CSS/:link' +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Pseudo-klasa :link pozwala wybrać linki wewnątrz elementów. Dzięki niej możesz wybrać każdy link, który nie został jeszcze odwiedzony, nawet taki, który ma już nadane wartości za pomocą innych pseudo-klas, takich jak: {{ cssxref(":hover") }}, {{ cssxref(":active") }} lub {{ cssxref(":visited") }}. W celu odpowiedniej stylizacji linków musisz wstawić pseudo-klasę :link na początku, według kolejności LVHA: :link:visited:hover:active. Pseudo-klasa {{ cssxref(":focus") }} jest zazwyczaj ustawiana przed lub po pseudo-klasie :hover (w zależności od oczekiwanego efektu).

+ +

Składnia

+ +
{{csssyntax}}
+ +

Przykłady

+ +
a:link {color: slategray;}
+.external:link {background-color: lightblue;}
+ +

Specyfikacje

+ + + +

Kompatybilność z przeglądarkami

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Przeglądarka Najniższa wersja
Chrome4.0
Edge7.0
Firefox2.0
Safari3.1
Opera9.6
+ +

Zobacz też

+ + diff --git a/files/pl/web/css/_colon_not/index.html b/files/pl/web/css/_colon_not/index.html new file mode 100644 index 0000000000..a9c87058d8 --- /dev/null +++ b/files/pl/web/css/_colon_not/index.html @@ -0,0 +1,73 @@ +--- +title: ':not' +slug: 'Web/CSS/:not' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:not' +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Pseudoklasa :not sprawia, iż własności są stosowane do elementów, które nie spełniają podanego kryterium.

+ +

Składnia

+ +
selektor:not(selektor) { własności }
+
+ +

Przykłady

+ +
*:not(DIV) { color: red; }
+
+ +

Przykład nada czerwony kolor czcionki wszystkim elementom za wyjątkiem elementów DIV.

+ +
input:not([DISABLED]) { border-color: green; }
+
+ +

Przykład nada wszystkim elementom INPUT, które są aktywne (nie są DISABLED), zmieni kolor obramowania na zielone.

+ +
input:not([TYPE=PASSWORD]) {własności }
+
+ +

Przykład przydzieli własności wszystkim elementom INPUT, które mają atrybut TYPE inny niż PASSWORD.

+ +
*:not(P) {własności }
+
+ +

Przykład przydzieli własności wszystkim elementom innym, niż P.

+ +
a:not(:hover) {własności }
+
+ +

Przykład nada własności wszystkim elementom A, na których nie stoi kursor. Jest to równoważne z:

+ +
a:link:visited {własności }
+
+ + + +
body > input:not([disabled]):not([type=text]) {własności }
+
+ +

Przykład przypisze własności wszystkim elementom INPUT, które są dziećmi BODY oraz, które nie mają atrybutu DISABLED i jednocześnie nie są typu TEXT.

+ +

Notatki

+ +

Pseudoklasa :not nie może być negowana przez inne :not.

+ + + +

Specyfikacje

+ + + +

Zobacz także

+ +

{{ Cssxref(":before") }}, {{ Cssxref(":after") }}, {{ Cssxref("content") }}, {{ Cssxref(":empty") }}

diff --git a/files/pl/web/css/_colon_root/index.html b/files/pl/web/css/_colon_root/index.html new file mode 100644 index 0000000000..850a9e8277 --- /dev/null +++ b/files/pl/web/css/_colon_root/index.html @@ -0,0 +1,26 @@ +--- +title: ':root' +slug: 'Web/CSS/:root' +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: 'Web/CSS/:root' +--- +

{{ CSSRef() }}

+

Podsumowanie

+

Pseudoklasa :root odnosi się do głównego węzła dokumentu.

+

Składnia

+
selektor:root {własności }
+
+

Przykłady

+
*:root { margin: 0; }
+
+

Przykład głównemu węzłowi dokumentu ustawi margines na zero.

+

Notatki

+

W HTML4 głównym węzłem dokumentu jest zawsze element HTML.

+

Specyfikacje

+

CSS 3

+

Zobacz także

+

{{ Cssxref(":empty") }}, {{ Cssxref(":not") }}

diff --git a/files/pl/web/css/appearance/index.html b/files/pl/web/css/appearance/index.html new file mode 100644 index 0000000000..fb3d059ffe --- /dev/null +++ b/files/pl/web/css/appearance/index.html @@ -0,0 +1,96 @@ +--- +title: '-moz-appearance' +slug: Web/CSS/appearance +tags: + - CSS + - Non-standard +translation_of: Web/CSS/appearance +--- +

{{Non-standard_header}}{{CSSRef}}

+ +

Podsumowanie

+ +

-moz-appearance jest używane przez przeglądarki bazujące na Mozilli do wyświetlania elementu przy użyciu natywnego dla platformy wyglądu, opartego na temacie systemu operacyjnego.

+ + + +

Składnia

+ +
-moz-appearance:appearance value
+
+ +

Wartości

+ +
+
none
+
Żaden specjalny wygląd nie jest stosowany. (Domyślnie)
+
button
+
Element jest rysowany jak przycisk (button).
+
button-small
+
Element jest rysowany jak mały przycisk (small button).
+
checkbox
+
Element jest rysowany jak pole wyboru (checbox), uwzględniając tylko stan bieżący (actual) pola wyboru.
+
checkbox-container
+
Element jest rysowany jak kontener dla pola wyboru, który może zawierać efekt podświetlanego tła pod określoną platformą. Zazwyczaj powinien zawierać etykietę (label) oraz pole wyboru.
+
checkbox-small
+
dialog
+
Element jest stylizowany jak pole dialogowe (dialog box), które zawiera kolor tła i inne własności.
+
listbox
+
menuitem
+
Element jest stylizowany jak pozycja menu (menu item), pozycja jest podświetlana po najechaniu.
+
menulist
+
menulist-button
+
Element jest stylizowany jak przycisk (button), który może wskazywać, że listę menu (menulist) można otworzyć.
+
menulist-textfield
+
Element jest stylizowany jak pole tekstowe (text field) dla listy menu (menulist).
+
menupopup
+
progressbar
+
Element jest stylizowany jak pasek postępu (progress bar).
+
radio
+
Element jest stylizowany jak przycisk typu radio (radio button), uwzględniając tylko stan bieżący (actual) przycisku radio.
+
radio-container
+
Element jest rysowany jak kontener przycisku radio, który może zawierać efekt podświetlanego tła pod określoną platformą. Zazwyczaj powinien zawierać etykietę (label) oraz przycisk radio.
+
radio-small
+
resizer
+
scrollbar
+
scrollbarbutton-down
+
scrollbarbutton-left
+
scrollbarbutton-right
+
scrollbarbutton-up
+
scrollbartrack-horizontal
+
scrollbartrack-vertical
+
separator
+
statusbar
+
tab
+
tab-left-edge
+
tabpanels
+
textfield
+
toolbar
+
toolbarbutton
+
toolbox
+
tooltip
+
treeheadercell
+
treeheadersortarrow
+
treeitem
+
treetwisty
+
treetwistyopen
+
treeview
+
window
+
+ +

Przykłady

+ +
.exampleone {
+	-moz-appearance: toolbarbutton;
+}
+
+ +

Notatki

+ +

Ta własność jest często używana w arkuszach stylów XUL do projektowania zwyczajnych dla platformy widżetów oraz w implementacjach XBL widżetów, które pochodzą z platformy mozilla.

diff --git a/files/pl/web/css/attribute_selectors/index.html b/files/pl/web/css/attribute_selectors/index.html new file mode 100644 index 0000000000..93ffda8fec --- /dev/null +++ b/files/pl/web/css/attribute_selectors/index.html @@ -0,0 +1,238 @@ +--- +title: Selektory artybutów +slug: Web/CSS/Attribute_selectors +translation_of: Web/CSS/Attribute_selectors +--- +
{{CSSRef}}
+ +

Selektor atrybutów CSS dopasowuje elementy w oparciu o obecność lub wartość danego atrybutu.

+ +
/* <a> Element z artybutem "title" */
+a[title] {
+  color: purple;
+}
+
+/* <a> elemente href zawierajacy "https://example.org" */
+a[href="https://example.org"] {
+  color: green;
+}
+
+/* <a> element href zawirający "example" */
+a[href*="example"] {
+  font-size: 2em;
+}
+
+/* <a> elementy href kończące się na  ".org" */
+a[href$=".org"] {
+  font-style: italic;
+}
+
+/* <a> elementy, których atrybut klasy zawiera słowo "logo" */
+a[class~="logo"] {
+  padding: 2px;
+}
+ +

Syntax

+ +
+
[attr]
+
+ +

Reprezentuje elementy z atrybutem o nazwie attr.

+ +
+
[attr=value]
+
Reprezentuje elementy z atrybutem o nazwie attr, którego wartością jest "value".
+
[attr~=value]
+
Represents elements with an attribute name of attr whose value is a whitespace-separated list of words, one of which is exactly value.
+
[attr|=value]
+
Represents elements with an attribute name of attr whose value can be exactly value or can begin with value immediately followed by a hyphen, - (U+002D). It is often used for language subcode matches.
+
[attr^=value]
+
Represents elements with an attribute name of attr whose value is prefixed (preceded) by value.
+
[attr$=value]
+
Represents elements with an attribute name of attr whose value is suffixed (followed) by value.
+
[attr*=value]
+
Represents elements with an attribute name of attr whose value contains at least one occurrence of value within the string.
+
[attr operator value i]
+
Adding an i (or I) before the closing bracket causes the value to be compared case-insensitively (for characters within the ASCII range).
+
[attr operator value s] {{Experimental_Inline}}
+
Adding an s (or S) before the closing bracket causes the value to be compared case-sensitively (for characters within the ASCII range).
+
+ +

Examples

+ + + +

CSS

+ +
a {
+  color: blue;
+}
+
+/* Internal links, beginning with "#" */
+a[href^="#"] {
+  background-color: gold;
+}
+
+/* Links with "example" anywhere in the URL */
+a[href*="example"] {
+  background-color: silver;
+}
+
+/* Links with "insensitive" anywhere in the URL,
+   regardless of capitalization */
+a[href*="insensitive" i] {
+  color: cyan;
+}
+
+/* Links with "cAsE" anywhere in the URL,
+with matching capitalization */
+a[href*="cAsE" s] {
+  color: pink;
+}
+
+/* Links that end in ".org" */
+a[href$=".org"] {
+  color: red;
+}
+ +

HTML

+ +
<ul>
+  <li><a href="#internal">Internal link</a></li>
+  <li><a href="http://example.com">Example link</a></li>
+  <li><a href="#InSensitive">Insensitive internal link</a></li>
+  <li><a href="http://example.org">Example org link</a></li>
+</ul>
+ +

Result

+ +

{{EmbedLiveSample("Links")}}

+ +

Languages

+ +

CSS

+ +
/* All divs with a `lang` attribute are bold. */
+div[lang] {
+  font-weight: bold;
+}
+
+/* All divs without a `lang` attribute are italicized. */
+div:not([lang]) {
+  font-style: italic;
+}
+
+/* All divs in US English are blue. */
+div[lang~="en-us"] {
+  color: blue;
+}
+
+/* All divs in Portuguese are green. */
+div[lang="pt"] {
+  color: green;
+}
+
+/* All divs in Chinese are red, whether
+   simplified (zh-CN) or traditional (zh-TW). */
+div[lang|="zh"] {
+  color: red;
+}
+
+/* All divs with a Traditional Chinese
+   `data-lang` are purple. */
+/* Note: You could also use hyphenated attributes
+   without double quotes */
+div[data-lang="zh-TW"] {
+  color: purple;
+}
+
+ +

HTML

+ +
<div lang="en-us en-gb en-au en-nz">Hello World!</div>
+<div lang="pt">Olá Mundo!</div>
+<div lang="zh-CN">世界您好!</div>
+<div lang="zh-TW">世界您好!</div>
+<div data-lang="zh-TW">世界您好!</div>
+
+ +

Result

+ +

{{EmbedLiveSample("Languages")}}

+ +

HTML ordered lists

+ +

The HTML specification requires the {{htmlattrxref("type", "input")}} attribute to be matched case-insensitively due to it primarily being used in the {{HTMLElement("input")}} element, trying to use attribute selectors to with the {{htmlattrxref("type", "ol")}} attribute of an {{HTMLElement("ol", "ordered list")}} doesn't work without the case-sensitive modifier.

+ +

CSS

+ +
/* List types require the case sensitive flag due to a quirk in how HTML treats the type attribute. */
+ol[type="a"] {
+  list-style-type: lower-alpha;
+  background: red;
+}
+
+ol[type="a" s] {
+  list-style-type: lower-alpha;
+  background: lime;
+}
+
+ol[type="A" s] {
+  list-style-type: upper-alpha;
+  background: lime;
+}
+ +

HTML

+ +
<ol type="A">
+  <li>Example list</li>
+</ol>
+ +

Result

+ +

{{EmbedLiveSample("HTML_ordered_lists")}}

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("CSS4 Selectors", "#attribute-selectors", "attribute selectors")}}{{Spec2("CSS4 Selectors")}}Adds modifier for ASCII case-sensitive and case-insensitive attribute value selection.
{{SpecName("CSS3 Selectors", "#attribute-selectors", "attribute selectors")}}{{Spec2("CSS3 Selectors")}}
{{SpecName("CSS2.1", "selector.html#attribute-selectors", "attribute selectors")}}{{Spec2("CSS2.1")}}Initial definition
+ +

Browser compatibility

+ + + +

{{Compat("css.selectors.attribute")}}

+ +

See also

+ + diff --git a/files/pl/web/css/azimuth/index.html b/files/pl/web/css/azimuth/index.html new file mode 100644 index 0000000000..2841b5441e --- /dev/null +++ b/files/pl/web/css/azimuth/index.html @@ -0,0 +1,97 @@ +--- +title: azimuth +slug: Web/CSS/azimuth +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Archive/Web/CSS/azimuth +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W połączeniu z elevation, azimuth umożliwia ustawianie różnych źródeł audio w przestrzeni i wykorzystywanie ich do prezentacji słuchowych. Jest to ważne w związku z tym, że dostarcza to naturalnego sposobu do odtwarzania kilku głosów w oddali, przy czym każdy z nich może pojawić się w innym miejscu strefy dźwięku. Wyjście stereofoniczne wytwarza boczną strefę dźwięku, podczas gdy obuuszne słuchawki i wielogłośnikowe zestawy pozwalają na pełną trójwymiarową strefę.

+ + + +

Składnia

+ +
azimuth:angle | [[ left-side | far-left | left |
+    center-left | center | center-right | right |
+    far-right | right-side ] || behind ] | leftwards |
+    rightwards | inherit
+
+ +

Wartości

+ +
+
angle 
+
Słyszalna pozycja źródła jest opisywana jako kąt z zakresu -360 stopni do 360 stopni. Wartość 0stopni znaczy dokładnie z przodu w centrum strefy dźwięku (to jest wartość domyślna). 90 stopni jest na prawo, 180 stopni z tyłu, i 270 stopni lub -90 stopni jest na lewo.
+
+ +

grafika:Azimuth.png

+ +

 

+ +

Słowa kluczowe do ustawiania pozycji

+ + + +

Przykłady

+ +
h1   { azimuth: 30deg }
+td.a { azimuth: far-right }          /*  60 stopni */
+#12  { azimuth: behind far-right }   /* 120 stopni */
+p.comment { azimuth: behind }        /* 180 stopni */
+
+ +

Specyfikacja

+ + + +

Zgodność z przeglądarką

+ +

TBD (może być porzucone ze względu na listę centralnej zgodności)

+ +

Zobacz także

+ +

{{ Cssxref("elevation") }}

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/CSS/azimuth", "es": "es/CSS/azimuth", "fr": "fr/CSS/azimuth", "zh-cn": "cn/CSS/azimuth" } ) }}

diff --git a/files/pl/web/css/background-attachment/index.html b/files/pl/web/css/background-attachment/index.html new file mode 100644 index 0000000000..636e991bdf --- /dev/null +++ b/files/pl/web/css/background-attachment/index.html @@ -0,0 +1,124 @@ +--- +title: background-attachment +slug: Web/CSS/background-attachment +tags: + - CSS + - CSS Background + - CSS Property + - Reference +translation_of: Web/CSS/background-attachment +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Jeśli {{ Cssxref("background-image") }} jest określone, background-attachment decyduje, czy położenie danego obrazka jest stałe względem okna, czy też przewija się wraz z zawierającym go blokiem.

+ +

{{cssinfo}}

+ +

Składnia

+ +
background-attachment: scroll | fixed | inherit
+
+ +

Wartości

+ +
+
scroll 
+
Jeśli zdefiniowane jest scroll, obrazek tła będzie się przewijał wewnątrz okna wraz z zawierającym go blokiem.
+
fixed 
+
Jeśli zdefiniowane jest fixed, obrazek tła nie będzie się przewijał z zawierającym go blokiem, zamiast tego pozostanie nieruchomy względem okna.
+
+ +

Przykłady

+ +

Simple example

+ +

CSS

+ +
p {
+  background-image: url("https://mdn.mozillademos.org/files/12057/starsolid.gif");
+  background-attachment: fixed;
+}
+
+ +

HTML

+ +
<p>
+  There were doors all round the hall, but they were all locked; and when
+  Alice had been all the way down one side and up the other, trying every
+  door, she walked sadly down the middle, wondering how she was ever to
+  get out again.
+</p>
+ +

Result

+ +

{{EmbedLiveSample("Simple_example")}}

+ +

Multiple background image support

+ +

This property supports multiple background images. You can specify a different <attachment> for each background, separated by commas. Each image is matched with the corresponding attachment type, from first specified to last.

+ +

CSS

+ +
p {
+  background-image: url("https://mdn.mozillademos.org/files/12057/starsolid.gif"), url("https://mdn.mozillademos.org/files/12059/startransparent.gif");
+  background-attachment: fixed, scroll;
+  background-repeat: no-repeat, repeat-y;
+}
+ +

HTML

+ +
<p>
+  There were doors all round the hall, but they were all locked; and when
+  Alice had been all the way down one side and up the other, trying every
+  door, she walked sadly down the middle, wondering how she was ever to
+  get out again.
+
+  Suddenly she came upon a little three-legged table, all made of solid
+  glass; there was nothing on it except a tiny golden key, and Alice's
+  first thought was that it might belong to one of the doors of the hall;
+  but, alas! either the locks were too large, or the key was too small,
+  but at any rate it would not open any of them. However, on the second
+  time round, she came upon a low curtain she had not noticed before, and
+  behind it was a little door about fifteen inches high: she tried the
+  little golden key in the lock, and to her great delight it fitted!
+</p>
+ +

Result

+ +

{{EmbedLiveSample("Multiple_background_image_support")}}

+

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape6
Opera3.5
diff --git a/files/pl/web/css/background-color/index.html b/files/pl/web/css/background-color/index.html new file mode 100644 index 0000000000..611526f4ac --- /dev/null +++ b/files/pl/web/css/background-color/index.html @@ -0,0 +1,82 @@ +--- +title: background-color +slug: Web/CSS/background-color +tags: + - CSS + - CSS Background + - CSS Property + - Reference +translation_of: Web/CSS/background-color +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Właściwość CSS background-color ustawia kolor tła elementu, albo poprzez wartość koloru lub słowo kluczowe transparent.

+ +

{{cssinfo}}

+ +

Składnia

+ +

Właściwość background-color jest deklarowana jako pojedyncza wartość <color>.

+ +
background-color: color | transparent | inherit
+
+ +

Wartości

+ +
+
{{cssxref("<color>")}}
+
Jest to styl CSS, który opisuje zunifikowany kolor tła. Nawet jeśli jest zdefiniowany jeden lub kilka {{cssxref("background-image")}}, kolor może być renderowany, poprzez przezroczystość o ile nie jest ustawiony jako opaque. W CSS transparent jest kolorem.
+
Kolor może być określony jako szesnastkowa wartość RGB np. #ffaac9, typowa wartość RGB np. +
rgb(255, 255, 128);
+  lub poprzez użycie jednego z predefiniowanych słów kluczowych określających kolor.
+
transparent 
+
Domyślną wartością dla background-color jest transparent, oznacza to, że element nie ma własnego koloru tła, zamiast tego renderowany jest kolor tła rodzica.
+
+ +

Przykłady

+ +

HTML

+ +
<div class="exampleone">
+ Lorem ipsum dolor sit amet, consectetuer
+</div>
+
+<div class="exampletwo">
+  Lorem ipsum dolor sit amet, consectetuer
+</div>
+
+<div class="examplethree">
+  Lorem ipsum dolor sit amet, consectetuer
+</div>
+ +

CSS

+ +
.exampleone {
+  background-color: teal;
+  color: white;
+}
+
+.exampletwo {
+  background-color: rgb(153,102,153);
+  color: rgb(255,255,204);
+}
+
+.examplethree {
+  background-color: #777799;
+  color: #FFFFFF;
+}
+
+ +

Result

+ +

{{EmbedLiveSample("Examples","200","150")}}

+ +

Specyfikacje

+ + diff --git a/files/pl/web/css/background-image/index.html b/files/pl/web/css/background-image/index.html new file mode 100644 index 0000000000..471909c967 --- /dev/null +++ b/files/pl/web/css/background-image/index.html @@ -0,0 +1,114 @@ +--- +title: background-image +slug: Web/CSS/background-image +tags: + - CSS + - CSS Background + - CSS Property + - Reference +translation_of: Web/CSS/background-image +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność background-image ustawia obrazek tła dla elementu.

+ +

{{cssinfo}}

+ +

Składnia

+ +
background-image: uri | none | inherit
+
+ +

Wartości

+ +
+
uri 
+
Położenie zasobu obrazka używanego jako obrazek tła.
+
none 
+
Używane do wyszczególnienia, że dany element nie powinien mieć obrazka tła.
+
+ +

Przykłady

+ +

Note that the star image is partially transparent and is layered over the cat image.

+ +

HTML

+ +
<div>
+    <p class="catsandstars">
+        This paragraph is full of cats<br />and stars.
+    </p>
+    <p>This paragraph is not.</p>
+    <p class="catsandstars">
+        Here are more cats for you.<br />Look at them!
+    </p>
+    <p>And no more.</p>
+</div>
+ +

CSS

+ +
pre, p {
+    font-size: 1.5em;
+    color: #FE7F88;
+    background-color: transparent;
+}
+
+div {
+  background-image: url("https://mdn.mozillademos.org/files/6457/mdn_logo_only_color.png");
+}
+
+p {
+  background-image: none;
+}
+
+.catsandstars {
+  background-image:  url("https://mdn.mozillademos.org/files/11991/startransparent.gif"),
+                     url("https://mdn.mozillademos.org/files/7693/catfront.png");
+  background-color: transparent;
+}
+
+ +

Result

+ +

{{EmbedLiveSample('Przyk%C5%82ady')}}

+ +

Uwagi

+ +

Twórcy powinni się upewnić, że określili {{ Cssxref("background-color") }} do użycia w przypadku, jeśli obrazek jest niedostępny. Obrazki tła są wyświetlane nad kolorem tła.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkiNajniższa wersja
Internet Explorer4
Firefox1
Netscape4
Opera3.5
diff --git a/files/pl/web/css/background-origin/index.html b/files/pl/web/css/background-origin/index.html new file mode 100644 index 0000000000..551703c7da --- /dev/null +++ b/files/pl/web/css/background-origin/index.html @@ -0,0 +1,52 @@ +--- +title: background-origin +slug: Web/CSS/background-origin +tags: + - CSS + - CSS Background + - CSS Property +translation_of: Web/CSS/background-origin +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

w aplikacjach opartych na Mozilli -moz-background-origin decyduje, który boks wyznacza układ współrzędnych używanych przez wartości własności {{ Cssxref("background-position") }}.

+ +

background-origin nie stosuje się, gdy własność {{ Cssxref("background-attachment") }} ma wartość fixed.

+ + + +

 

+ +

Składnia

+ +
background-origin: border-box | padding-box | content-box
+
+ +

Wartości

+ +
+
border-box
+
Pozycja tła jest relatywna względem obramowania, zatem obrazek może znaleźć się pod obramowaniem.
+
padding-box
+
Pozycja tła jest relatywna względem wypełnienia.
+
content-box
+
Pozycja tła jest relatywna względem zawartości.
+
+ +

Przykłady

+ +
hbox.example {
+  border: 10px double #000000;
+  padding: 10px;
+  background: url('image.jpg');
+  background-position: center left;
+  /* tło będzie wewnątrz padding */
+  background-origin: content-box;
+}
+
diff --git a/files/pl/web/css/background-position/index.html b/files/pl/web/css/background-position/index.html new file mode 100644 index 0000000000..6279af31f2 --- /dev/null +++ b/files/pl/web/css/background-position/index.html @@ -0,0 +1,122 @@ +--- +title: background-position +slug: Web/CSS/background-position +tags: + - CSS + - CSS Background + - CSS Property + - Reference +translation_of: Web/CSS/background-position +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

background-position ustawia początkowe położenie obrazka tła, który został zdefiniowany.

+ +

{{cssinfo}}

+ +

Składnia

+ +
background-position: [ <percentage> | <length> | left | center | right  ]
+                     [ <percentage> | <length> | top  | center | bottom ] ? ;
+
+ +
background-position: [ top | center | bottom ];
+
+ +
background-position: inherit;
+
+ +

Wartości

+ +
+
{{cssxref("<percentage>")}} <percentage>
+
Wraz z parą wartości '0% 0%', lewy górny róg obrazka jest wyrównany względem górnego lewego rogu dopełnienia bloku. Para wartości '100% 100%' umieszcza dolny prawy róg obrazka w dolnym prawym rogu obszaru dopełnienia. Wraz z parą wartości '14% 84%', punkt 14% wszerz i 84% w dół obrazka jest umiejscawiany w punkcie 14% wszerz i 84% w dół obszaru dopełnienia'.
+
{{cssxref("<length>")}} <length>
+
Wraz z parą wartości '2cm 1cm', górny lewy róg obrazka jest umieszczony 2cm od prawego i 1cm poniżej górnego krańca obszaru dopełnienia.
+
top left oraz left top
+
Tak samo jak '0% 0%'.
+
top, top center, oraz center top
+
Tak samo jak '50% 0%'.
+
right top oraz top right
+
Tak samo jak '100% 0%'.
+
left, left center, oraz center left
+
Tak samo jak '0% 50%'.
+
center oraz center center
+
Tak samo jak '50% 50%'.
+
right, right center, oraz center right
+
Tak samo jak '100% 50%'.
+
bottom left oraz left bottom
+
Tak samo jak '0% 100%'.
+
bottom, bottom center, oraz center bottom
+
Tak samo jak '50% 100%'.
+
bottom right oraz right bottom
+
Tak samo jak '100% 100%'.
+
+ +

Jeśli tylko jedna wartość jest określona, wtedy ustawia położenie poziome, z pozycją pionową 50%. W innym przypadku pierwsza wartość określa położenie w poziomie. Dozwolone są kombinacje słów kluczowych, długości i procentów, jednak, jeśli słowa kluczowe są wymieszane z innymi wartościami, wartości 'left' i 'right' mogą być używane tylko jako pierwsza wartość, zaś wartości 'top' i 'bottom' mogą być używane tylko jako druga wartość. Położenie ujemne jest dozwolone.

+ +

Przykłady

+ +
.exampleone {
+	background-image: url("logo.png");
+	background-position: top center;
+}
+
+.exampletwo {
+	background-image: url("logo.png");
+	background-position: 25% 75%;
+}
+
+.examplethree {
+	background-image: url("logo.png");
+	background-position: 2cm bottom;
+}
+
+.examplefour {
+	background-image: url("logo.png");
+	background-position: center 10%;
+}
+
+.examplefive {
+	background-image: url("logo.png");
+	background-position: 2cm 50%;
+}
+
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape6
Opera3.5
diff --git a/files/pl/web/css/background-size/index.html b/files/pl/web/css/background-size/index.html new file mode 100644 index 0000000000..7c4383448a --- /dev/null +++ b/files/pl/web/css/background-size/index.html @@ -0,0 +1,190 @@ +--- +title: background-size +slug: Web/CSS/background-size +translation_of: Web/CSS/background-size +--- +
{{CSSRef}}
+ +

Właściwość background-size określa wielkość elementu background-image. Obrazek może pozostać w jego domyślnych wymiarach, rozciągnięty do nowych wymiarów lub ustawiony tak, aby zajmował całą dostępną przestrzeń zachowując swoje proporcje.

+ +
{{EmbedInteractiveExample("pages/css/background-size.html")}}
+ + + +

Przestrzenie nie zapełnione przez background-image wypełnia {{cssxref("background-color")}}, background-color będzie widoczny jeżeli obrazek jest przezroczysty.

+ +

Syntax

+ +
/* Wartości słowne */
+background-size: cover;
+background-size: contain;
+
+/* Właściwości z jedną wartością */
+/* szerokość obrazka (wysokość stanie się 'auto') */
+background-size: 50%;
+background-size: 3.2em;
+background-size: 12px;
+background-size: auto;
+
+/* Właściwości z dwoma wartościami */
+/* pierwsza wartość: szerokość obrazka, druga wartość: wysokość */
+background-size: 50% auto;
+background-size: 3em 25%;
+background-size: auto 6px;
+background-size: auto auto;
+
+/* Wiele teł */
+background-size: auto, auto; /* Not to be confused with `auto auto` */
+background-size: 50%, 25%, 25%;
+background-size: 6px, auto, contain;
+
+/* Wartości globalne */
+background-size: inherit;
+background-size: initial;
+background-size: unset;
+
+ +

Właściwość background-size jest określana w jeden z podanych sposobów:

+ + + +

Aby określić wielkość wielu teł, odziel wartości dla każdego tła przecinkami.

+ +

Values

+ +
+
contain
+
Skaluje obrazek do jak największych rozmiarów, bez jego rozciągania czy przycinania.
+
cover
+
Skaluje obrazek do jak największych rozmiarów, bez jego rozciągania. Jeżeli proporcje obrazu są inne od elementu, jest on przycinany pionowo lub poziomo - tak, żeby nie zostało puste miejsce.
+
auto
+
Skaluje tło w odpowiednim kierunku, po to aby zachować jego nieodłączne proporcje.
+
{{cssxref("<length>")}}
+
Rozciąga obrazek w odpowiednim kierunku do określonej długości. Nie można używać wartości ujemnych.
+
{{cssxref("<percentage>")}}
+
[do przetłumaczenia na: Polski]
+
Stretches the image in the corresponding dimension to the specified percentage of the background positioning area. The background positioning area is determined by the value of {{cssxref("background-origin")}} (by default, the padding box). However, if the background's {{cssxref("background-attachment")}} value is fixed, the positioning area is instead the entire {{glossary("viewport")}}. Negative values are not allowed.
+
+ +

Intrinsic dimensions and proportions

+ +

The computation of values depends on the image's intrinsic dimensions (width and height) and intrinsic proportions (width-to-height ratio). These attributes are as follows:

+ + + +
+

Note: The behavior of <gradient>s changed in Gecko 8.0 {{geckoRelease("8.0")}}. Before this, they were treated as images with no intrinsic dimensions, but with intrinsic proportions identical to that of the background positioning area.

+
+ +
+

Note: In Gecko, background images created using the {{cssxref("element()")}} function are currently treated as images with the dimensions of the element, or of the background positioning area if the element is SVG, with the corresponding intrinsic proportion. This is non-standard behavior.

+
+ +

Based on the intrinsic dimensions and proportions, the rendered size of the background image is computed as follows:

+ +
+
If both components of background-size are specified and are not auto:
+
The background image is rendered at the specified size.
+
If the background-size is contain or cover:
+
While preserving its intrinsic proportions, the image is rendered at the largest size contained within, or covering, the background positioning area. If the image has no intrinsic proportions, then it's rendered at the size of the background positioning area.
+
If the background-size is auto or auto auto:
+
+
    +
  • If the image has both horizontal and vertical intrinsic dimensions, it's rendered at that size.
  • +
  • If the image has no intrinsic dimensions and has no intrinsic proportions, it's rendered at the size of the background positioning area.
  • +
  • If the image has no intrinsic dimensions but has intrinsic proportions, it's rendered as if contain had been specified instead.
  • +
  • If the image has only one intrinsic dimension and has intrinsic proportions, it's rendered at the size corresponding to that one dimension. The other dimension is computed using the specified dimension and the intrinsic proportions.
  • +
  • If the image has only one intrinsic dimension but has no intrinsic proportions, it's rendered using the specified dimension and the other dimension of the background positioning area.
  • +
+
+
+
Note: SVG images have a preserveAspectRatio attribute that defaults to the equivalent of contain. In Firefox 43, as opposed to Chrome 52, an explicit background-size causes preserveAspectRatio to be ignored.
+
+
If the background-size has one auto component and one non-auto component:
+
+
    +
  • If the image has intrinsic proportions, it's stretched to the specified dimension. The unspecified dimension is computed using the specified dimension and the intrinsic proportions.
  • +
  • If the image has no intrinsic proportions, it's stretched to the specified dimension. The unspecified dimension is computed using the image's corresponding intrinsic dimension, if there is one. If there is no such intrinsic dimension, it becomes the corresponding dimension of the background positioning area.
  • +
+
+
+ +
+

Note: Background sizing for vector images that lack intrinsic dimensions or proportions is not yet fully implemented in all browsers. Be careful about relying on the behavior described above, and test in multiple browsers to be sure the results are acceptable.

+
+ +

Formal syntax

+ +
{{csssyntax}}
+
+ +

Examples

+ +

Please see Scaling background images for examples.

+ +

Notes

+ +

If you use a <gradient> as the background and specify a background-size to go with it, it's best not to specify a size that uses a single auto component, or is specified using only a width value (for example, background-size: 50%). Rendering of <gradient>s in such cases changed in Firefox 8, and at present is generally inconsistent across browsers, which do not all implement rendering in full accordance with the CSS3 background-size specification and with the CSS3 Image Values gradient specification.

+ +
.gradient-example {
+  width: 50px;
+  height: 100px;
+  background-image: linear-gradient(blue, red);
+
+  /* Not safe to use */
+  background-size: 25px;
+  background-size: 50%;
+  background-size: auto 50px;
+  background-size: auto 50%;
+
+  /* Safe to use */
+  background-size: 25px 50px;
+  background-size: 50% 50%;
+}
+
+ +

Note that it's particularly not recommended to use a pixel dimension and an auto dimension with a <gradient>, because it's impossible to replicate rendering in versions of Firefox prior to 8, and in browsers not implementing Firefox 8's rendering, without knowing the exact size of the element whose background is being specified.

+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Backgrounds', '#the-background-size', 'background-size')}}{{Spec2('CSS3 Backgrounds')}}Initial definition.
+ +

{{cssinfo}}

+ +

Browser compatibility

+ + + +

{{Compat("css.properties.background-size")}}

+ +

See also

+ + diff --git a/files/pl/web/css/background/index.html b/files/pl/web/css/background/index.html new file mode 100644 index 0000000000..0fc3dea0c2 --- /dev/null +++ b/files/pl/web/css/background/index.html @@ -0,0 +1,134 @@ +--- +title: background +slug: Web/CSS/background +tags: + - CSS + - CSS Tło + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/background +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność background jest skrótem do ustawiania poszczególnych wartości tła z jednego miejsca w arkuszu stylów. Właściwość background może być stosowana do ustawiania wartości dla jednej lub więcej z wymienionych warstw własności: {{ Cssxref("background-attachment") }}, {{ Cssxref("background-color") }}, {{ Cssxref("background-image") }}, {{ Cssxref("background-position") }}, {{ Cssxref("background-repeat") }}.

+ +

{{cssinfo}}

+ +

Składnia

+ +
background: [  <background-color>    ||  <background-image>       ||
+               <background-repeat>   ||  <background-attachment>  ||
+               <background-position>
+            ]   |   {{ Cssxref("inherit") }} ;
+
+ +

Właściwość background jest deklarowana przez jedną lub więcej warstw tej właściwości, oddzielonych przecinkami.

+ +

Składnia każdej z warstw jest następująca:

+ + + +
+
 
+
+ +

Wartości

+ +
+
background-color
+
Zobacz background-color.
+
background-image 
+
Zobacz background-image.
+
background-repeat 
+
Zobacz background-repeat.
+
background-attachment 
+
Zobacz background-attachment.
+
background-position 
+
Zobacz background-position.
+
+ +

Przykłady

+ +

HTML

+ +
<p class="topbanner">
+  Starry sky<br/>
+  Twinkle twinkle<br/>
+  Starry sky
+</p>
+<p class="warning">Here is a paragraph<p>
+ +

CSS

+ +
.warning {
+  background: red;
+}
+
+.topbanner {
+  background: url("https://mdn.mozillademos.org/files/11983/starsolid.gif") #00D repeat-y fixed;
+}
+
+ +

Result

+ +

{{EmbedLiveSample("Examples")}}

+ +

Notatki

+ +

Biorąc pod uwagę sensowność deklaracji, własność background najpierw ustawia poszczególne własności tła na ich domyślne wartości, potem przydziela jawnie wartości określone w deklaracji. Nie musisz definiować wartości dla każdej warstwy, wystarczy, że zadeklarujesz tylko te, które chcesz zmienić z wartości domyślnej.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape6
Opera3.5
+ +

Zobacz także

+ +

{{ Cssxref("background") }}, {{ Cssxref("background-attachment") }}, {{ Cssxref("background-color") }}, {{ Cssxref("background-image") }}, {{ Cssxref("background-position") }}, {{ Cssxref("background-repeat") }}

diff --git a/files/pl/web/css/border-bottom-color/index.html b/files/pl/web/css/border-bottom-color/index.html new file mode 100644 index 0000000000..ba88e74906 --- /dev/null +++ b/files/pl/web/css/border-bottom-color/index.html @@ -0,0 +1,149 @@ +--- +title: border-bottom-color +slug: Web/CSS/border-bottom-color +tags: + - CSS + - Dokumentacje +translation_of: Web/CSS/border-bottom-color +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

border-bottom-color ustawia kolor dolnego obramowania elementu, poprzez wartość koloru lub słowo kluczowe transparent.

+ + + +

Składnia

+ +
border-bottom-color: color | transparent | inherit
+
+ +

Wartości

+ +
+
color 
+
Kolor może być zdefiniowany jako szestnastkowa wartość RGB, zwykła wartość RGB lub poprzez użycie jednego z predefiniowanych słów określających kolory.
+
transparent 
+
Element nie ma własnego koloru, zamiast tego pokazuje kolor elementu pod spodem.
+
+ +

Powiązane własności

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
element {
+	width: 300px;
+        padding: 15px;
+        border-bottom-size: 1px;
+        border-bottom-style: solid;
+        border-bottom-color: #000;
+}
+
+
+ +

Notatki

+ + + +

Specifications

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Backgrounds', '#border-bottom-color', 'border-bottom-color')}}{{Spec2('CSS3 Backgrounds')}}No significant changes, though the transparent keyword, now included in {{cssxref("<color>")}} which has been extended, has been formally removed.
{{SpecName('CSS2.1', 'box.html#border-color-properties', 'border-bottom-color')}}{{Spec2('CSS2.1')}}Initial definition
+ +

Browser Compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.0{{CompatGeckoDesktop("1.0")}}[1]43.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support1.0{{CompatGeckoMobile("1.0")}}[1]6.5111.0
+
+ +

[1] Gecko-based browsers like Firefox also support the non-standard {{Cssxref("-moz-border-bottom-colors")}} CSS property that sets the bottom border to multiple colors.

+ +

See also

+ + diff --git a/files/pl/web/css/border-bottom-left-radius/index.html b/files/pl/web/css/border-bottom-left-radius/index.html new file mode 100644 index 0000000000..0047da4c13 --- /dev/null +++ b/files/pl/web/css/border-bottom-left-radius/index.html @@ -0,0 +1,20 @@ +--- +title: '-moz-border-radius-bottomleft' +slug: Web/CSS/border-bottom-left-radius +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-bottom-left-radius +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-border-radius-bottomleft ustawia zaokrąglenie dolnego lewego rogu obramowania.

+ +

Zobacz więcej informacji we własności -moz-border-radius.

+ +

{{ languages( { "de": "de/CSS/border-bottom-left-radius", "en": "en/CSS/-moz-border-radius-bottomleft", "fr": "fr/CSS/border-bottom-left-radius", "ja": "ja/CSS/border-bottom-left-radius" } ) }}

diff --git a/files/pl/web/css/border-bottom-right-radius/index.html b/files/pl/web/css/border-bottom-right-radius/index.html new file mode 100644 index 0000000000..c43c814a8c --- /dev/null +++ b/files/pl/web/css/border-bottom-right-radius/index.html @@ -0,0 +1,20 @@ +--- +title: '-moz-border-radius-bottomright' +slug: Web/CSS/border-bottom-right-radius +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-bottom-right-radius +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-border-radius-bottomright ustawia zaokrąglenie dolnego prawego rogu obramowania.

+ +

Zobacz więcej informacji we własności -moz-border-radius.

+ +

{{ languages( { "de": "de/CSS/border-bottom-right-radius", "en": "en/CSS/-moz-border-radius-bottomright", "fr": "fr/CSS/-moz-border-radius-bottomright", "ja": "ja/CSS/border-bottom-right-radius" } ) }}

diff --git a/files/pl/web/css/border-bottom-style/index.html b/files/pl/web/css/border-bottom-style/index.html new file mode 100644 index 0000000000..0b212631ff --- /dev/null +++ b/files/pl/web/css/border-bottom-style/index.html @@ -0,0 +1,159 @@ +--- +title: border-bottom-style +slug: Web/CSS/border-bottom-style +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-bottom-style +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

border-bottom-style ustawia styl linii dolnego obramowania bloku.

+ + + +

Składnia

+ +
border-bottom-style: <border-style> | inherit
+
+ +

Wartości <border-style>

+ +
+
none 
+
Bez obramowania.
+
hidden 
+
Podobnie jak 'none', oprócz sytuacji konfliktu rozdzielczości obramowania dla elementów tabeli.
+
dotted 
+
Seria kropek.
+
dashed 
+
Seria krótkich kresek lub odcinków linii.
+
solid 
+
Pojedyncza, prosta, ciągła linia.
+
double 
+
Dwie proste linie, które dają w sumie liczbę pikseli zdefiniowaną jako border-width.
+
groove 
+
Efekt wyrzeźbienia.
+
ridge 
+
Przeciwieństwo groove. Obramowanie wydaje się trójwymiarowe (zapowiadane).
+
inset 
+
Sprawia wrażenie, że blok jest zapadnięty.
+
outset 
+
Przeciwieństwo inset. Sprawia, że blok wydaje się trójwymiarowy (wysunięty).
+
+ +

Powiązane własności

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
element {
+        border-bottom-size: 1px;
+        border-bottom-style: dotted;
+        border-bottom-color: #000;
+}
+
+ +

Notatki

+ +

Jeżeli wartość border-style nie jest ustawiona, wtedy twoje obramowanie nie pojawi się, ponieważ domyślna wartość jest ustawiona na none.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Backgrounds', '#border-bottom-style', 'border-bottom-style') }}{{ Spec2('CSS3 Backgrounds') }}No significant change
{{ SpecName('CSS2.1', 'box.html#border-style-properties', 'border-bottom-style') }}{{ Spec2('CSS2.1') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1.01.05.59.21.0
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}7.0{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}
+
+ +

See also

+ + diff --git a/files/pl/web/css/border-bottom-width/index.html b/files/pl/web/css/border-bottom-width/index.html new file mode 100644 index 0000000000..6b85e8972f --- /dev/null +++ b/files/pl/web/css/border-bottom-width/index.html @@ -0,0 +1,143 @@ +--- +title: border-bottom-width +slug: Web/CSS/border-bottom-width +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-bottom-width +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

border-bottom-width ustawia szerokość dolnego obramowania bloku.

+ + + +

Składnia

+ +
border-bottom-width: <border-width> | inherit
+
+ +

Wartości <border-width>

+ +
+
thin
+
Cienkie obramowanie.
+
medium
+
Średnie obramowanie.
+
thick
+
Grube obramowanie.
+
<length>
+
Grubość obramowania ma sprecyzowaną wartość. Sprecyzowana szerokość obramowania nie może być ujemna.
+
+ +

Powiązane własności

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
element {
+    border-bottom-width: thin;
+    border-bottom-style: solid;
+    border-bottom-color: #000;
+}
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Backgrounds', '#the-border-width', 'border-bottom-width') }}{{ Spec2('CSS3 Backgrounds') }}No significant change
{{ SpecName('CSS2.1', 'box.html#border-width-properties', 'border-bottom-width') }}{{ Spec2('CSS2.1') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.01.0 (1.0)4.03.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
+
+ +

See also

+ + diff --git a/files/pl/web/css/border-bottom/index.html b/files/pl/web/css/border-bottom/index.html new file mode 100644 index 0000000000..8ff156c730 --- /dev/null +++ b/files/pl/web/css/border-bottom/index.html @@ -0,0 +1,146 @@ +--- +title: border-bottom +slug: Web/CSS/border-bottom +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-bottom +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-bottom jest skróconą własnością, która ustawia wartości dla następujących własności: {{ Cssxref("border-bottom-color") }}, {{ Cssxref("border-bottom-style") }} oraz {{ Cssxref("border-bottom-width") }}. Te własności opisują dolne obramowanie elementu.

+ + + +

Składnia

+ +
border-bottom: [ <border-width> || <border-style> || <border-color> ] | inherit
+
+ +

Wartości

+ +
+
border-width 
+
Zobacz {{ Cssxref("border-bottom-width") }}.
+
border-style 
+
Zobacz {{ Cssxref("border-bottom-style") }}.
+
border-color 
+
Zobacz {{ Cssxref("border-bottom-color") }}.
+
+ +

Przykłady

+ +

Zobacz przykład

+ +
element {
+    border-bottom-width: 1px solid #000;
+}
+
+ +

Notatki

+ +

Trzy wartości skróconej własności mogą być określone w dowolnym porządku, zaś jedna lub dwie z nich mogą być pominięte.

+ +

Jak w przypadku wszystkich skróconych własności, border-bottom zawsze ustawia wartości wszystkich własności, które może ustawić, nawet, jeśli nie są określone. Zatem te, które nie są zdefiniowane, ustawia do ich domyślnych wartości. Oznacza to, że:

+ +
  border-bottom-style: dotted;
+  border-bottom: thick green;
+ +

jest dokładnie tym samym, co

+ +
  border-bottom-style: dotted;
+  border-bottom: none thick green;
+ +

i wartość {{ Cssxref("border-bottom-style") }}, nadana przed border-bottom, jest ignorowana.

+ +

Ponieważ domyślną wartością {{ Cssxref("border-bottom-style") }} jest none, nieokreślenie wartości składnika border-style oznacza, że własność ustawi brak obramowania.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Backgrounds', '#border-bottom', 'border-bottom') }}{{ Spec2('CSS3 Backgrounds') }}No direct changes, though the modification of values for the {{ cssxref("border-bottom-color") }} do apply to it.
{{ SpecName('CSS2.1', 'box.html#propdef-border-bottom', 'border-bottom') }}{{ Spec2('CSS2.1') }}No significant changes
{{ SpecName('CSS1', '#border-bottom', 'border-bottom') }}{{ Spec2('CSS1') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.0{{ CompatGeckoDesktop("1.0") }}43.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support1.0{{ CompatGeckoMobile("1.0") }}{{ CompatVersionUnknown }}{{ CompatVersionUnknown }}{{ CompatVersionUnknown }}
+
diff --git a/files/pl/web/css/border-collapse/index.html b/files/pl/web/css/border-collapse/index.html new file mode 100644 index 0000000000..24439aa553 --- /dev/null +++ b/files/pl/web/css/border-collapse/index.html @@ -0,0 +1,89 @@ +--- +title: border-collapse +slug: Web/CSS/border-collapse +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-collapse +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-collapse jest używana do stworzenia połączonych obramowań. Ma ona duży wpływ na wygląd i styl komórek tabeli. Wyświetlanie obramowań tabeli jest podzielone w CSS2 na dwie kategorie - "połączone" i "rozdzielone". Własność ta definiuje, którego rodzaju wyświetlania użyć. W modelu połączonych obramowań sąsiadujące komórki tabel współdzielą obramowania. W modelu rozdzielonych obramowań sąsiadujące komórki mają swoje własne odrębne obramowania (odległość między nimi określona jest przez własność 'border-spacing').

+ + + +

Składnia

+ +
border-collapse: value
+
+ +

Wartości

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
<table border="1" style="border-collapse: collapse" bordercolor="#111111" width="500">
+
+ +
<table border="1" style="border-collapse: separate" bordercolor="#111111" width="500">
+
+ +

Notatki

+ +

W modelu wyświetlania "połączonych obramowań" wartość 'border-style' ustawiona na "inset" zachowuje się jak "groove", zaś "outset" zachowuje się jak "ridge". CSS2 definiuje, że wartością początkową dla tej własności jest "collapse", jednak CSS2.1 oraz Mozilla/Opera określają lub zachowują się tak, że wartością początkową jest "separate".

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer5.5
Netscape7
Opera5
+ +

Zobacz także

+ +

{{ Cssxref("border-spacing") }}

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/CSS/border-collapse", "es": "es/CSS/border-collapse", "fr": "fr/CSS/border-collapse" } ) }}

diff --git a/files/pl/web/css/border-color/index.html b/files/pl/web/css/border-color/index.html new file mode 100644 index 0000000000..196f39d235 --- /dev/null +++ b/files/pl/web/css/border-color/index.html @@ -0,0 +1,135 @@ +--- +title: border-color +slug: Web/CSS/border-color +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-color +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-color jest skróconą własnością dla ustawienia koloru czterech krawędzi obramowania elementu.

+ +

{{cssinfo}}

+ +

Składnia

+ +
border-color: [ <color> || transparent ]{1,4} | inherit
+
+ +

Wartości

+ +
+
<color> 
+
Kolor może być zdefiniowany jako szesnastkowa wartość RGB, zwykła wartość RGB lub poprzez użycie jednego z predefiniowanych słów określających kolory.
+
+ +
+
transparent 
+
Obramowanie nie jest rysowane, ale zajmuje przestrzeń na stronie.
+
+ +

Można ustawić do czterech wartości.

+ +

Jeśli dana jest jedna wartość koloru, wtedy wszystkie cztery krawędzie są tego koloru.
+ Jeśli dwie wartości - obramowanie górne i dolne używa pierwszej wartości, lewe i prawe używa drugiej.
+ Jeśli trzy wartości - pierwsza jest dla górnej krawędzi, druga dla lewej i prawej, trzecia dla dolnej.
+ Jesli cztery wartości - pierwsza dla górnego obramowania, druga dla prawego, trzecia dla dolnego i czwarta dla lewego.

+ +

Przykłady

+ +

Zobacz przykład

+ +
element {
+  border-width: 1px;
+  border-style: solid;
+  border-color: black;
+}
+
+ +

Notatki

+ +

W celu zobaczenia obramowania musisz również ustawić {{ Cssxref("border-width") }} na wartość dodatnią oraz {{ Cssxref("border-style") }} na jakąś widoczną.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Backgrounds', '#border-color', 'border-color') }}{{ Spec2('CSS3 Backgrounds') }}The transparent keyword has been removed as it is now a part of the {{cssxref("<color>")}} data type.
{{ SpecName('CSS2.1', 'box.html#border-color-properties', 'border-color') }}{{ Spec2('CSS2.1') }}The property is now a shorthand property
{{ SpecName('CSS1', '#border-color', 'border-color') }}{{ Spec2('CSS1') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1.0{{ CompatGeckoDesktop("1.0") }} [1]4.03.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support4.0{{ CompatGeckoMobile("1.9.2") }} [1]7.0111.0
+
diff --git a/files/pl/web/css/border-left-color/index.html b/files/pl/web/css/border-left-color/index.html new file mode 100644 index 0000000000..80338c4cf0 --- /dev/null +++ b/files/pl/web/css/border-left-color/index.html @@ -0,0 +1,109 @@ +--- +title: border-left-color +slug: Web/CSS/border-left-color +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-left-color +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

border-left-color ustala kolor lewego obramowania elementu, poprzez konkretną wartość lub przez słowo kluczowe transparent.

+ + + +

Składnia

+ +
border-left-color: color | transparent | inherit
+
+ +

Wartości

+ +
+
color 
+
Kolor może zostać podany przy pomocy szesnastkowej reprezentacji RGB, zwykłej wartości RGB lub przez predefiniowane słowo klucz.
+
transparent 
+
Element nie ma własnego koloru, pokazuje kolor elementu spod niego.
+
+ +

Powiązane własności

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
element {
+	width: 300px;
+        padding: 15px;
+        border-bottom-size: 1px;
+        border-bottom-style: solid;
+        border-bottom-color: #000;
+}
+
+
+ +

Notatki

+ + + +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape6
Opera3.5
+ +

 

+ +

Zobacz także

+ +

{{ Cssxref("border") }}, {{ Cssxref("border-left") }}, {{ Cssxref("border-left-style") }}, {{ Cssxref("border-left-width") }},

+ +

{{ languages( { "de": "de/CSS/border-left-color", "en": "en/CSS/border-left-color", "fr": "fr/CSS/border-left-color", "ja": "ja/CSS/border-left-color" } ) }}

diff --git a/files/pl/web/css/border-left-style/index.html b/files/pl/web/css/border-left-style/index.html new file mode 100644 index 0000000000..f1bbd8935b --- /dev/null +++ b/files/pl/web/css/border-left-style/index.html @@ -0,0 +1,16 @@ +--- +title: border-left-style +slug: Web/CSS/border-left-style +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-left-style +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-left-style ustawia styl linii lewego obramowania bloku.

+

Zobacz własność border-bottom-style, aby uzyskać więcej informacji.

+ +

{{ languages( { "de": "de/CSS/border-left-style", "en": "en/CSS/border-left-style", "fr": "fr/CSS/border-left-style", "ja": "ja/CSS/border-left-style" } ) }}

diff --git a/files/pl/web/css/border-left-width/index.html b/files/pl/web/css/border-left-width/index.html new file mode 100644 index 0000000000..59ad05cd1a --- /dev/null +++ b/files/pl/web/css/border-left-width/index.html @@ -0,0 +1,19 @@ +--- +title: border-left-width +slug: Web/CSS/border-left-width +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-left-width +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

border-left-width ustawia szerokość lewego obramowania bloku. +

Zobacz właściwość border-bottom-width, aby uzyskać więcej informacji. +

+
+
+{{ languages( { "en": "en/CSS/border-left-width", "fr": "fr/CSS/border-left-width" } ) }} diff --git a/files/pl/web/css/border-left/index.html b/files/pl/web/css/border-left/index.html new file mode 100644 index 0000000000..0a6ff6563a --- /dev/null +++ b/files/pl/web/css/border-left/index.html @@ -0,0 +1,123 @@ +--- +title: border-left +slug: Web/CSS/border-left +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-left +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-left jest skróconą własnością dla ustawienia szerokości stylu i koloru lewej krawędzi elementu. Ta własność może być używana do ustawienia jednej lub kilku wartości: {{ Cssxref("border-left-width") }}, {{ Cssxref("border-left-style") }}, {{ Cssxref("border-left-color") }}. Pominięte wartości są ustawiane do ich wartości początkowych.

+ +

{{cssinfo}}

+ +

Składnia

+ +
border-left: [border-width || border-style || border-color | inherit] ;
+
+ +

Wartości

+ +
+
border-width
+
Zobacz {{ Cssxref("border-width") }}.
+
border-style 
+
Zobacz {{ Cssxref("border-style") }}.
+
border-color 
+
Zobacz {{ Cssxref("border-color") }}.
+
+ +

Przykłady

+ +
element {
+    border-left: 1px solid #000;
+}
+
+ +

Notatki

+ +

Jeśli reguła nie określi koloru krawędzi, krawędź będzie miała kolor zdefiniowany przez własność {{ Cssxref("color") }}.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Backgrounds', '#border-left', 'border-left') }}{{ Spec2('CSS3 Backgrounds') }}No direct changes, though the modification of values for the {{ cssxref("border-left-color") }} do apply to it.
{{ SpecName('CSS2.1', 'box.html#propdef-border-left', 'border-left') }}{{ Spec2('CSS2.1') }}No significant changes
{{ SpecName('CSS1', '#border-left', 'border-left') }}{{ Spec2('CSS1') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.0{{ CompatGeckoDesktop("1.0") }}43.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support1.0{{ CompatGeckoMobile("1.0") }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}
+
diff --git a/files/pl/web/css/border-radius/index.html b/files/pl/web/css/border-radius/index.html new file mode 100644 index 0000000000..ee38420619 --- /dev/null +++ b/files/pl/web/css/border-radius/index.html @@ -0,0 +1,69 @@ +--- +title: border-radius +slug: Web/CSS/border-radius +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-radius +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych border-radius może być używany do nadawania obramowaniom zaokrąglonych rogów.

+ + + +

border-radius nie stosuje się do elementów tabel, kiedy własność {{ Cssxref("border-collapse") }} ustawiona jest na collapse.

+ +

Składnia

+ +
-moz-border-radius: <border-radius>{1,4} | inherit
+
+ +

Wartości

+ +

<border-radius> reprezentuje jedną z wartości:

+ +
+
<length>
+
szerokość
+
<percentage>
+
procenty, względem długości boksu
+
+ +

Zatem są używane 4 wartości w porządku górny-lewy, górny-prawy, dolny-prawy i dolny-lewy. Jeśli podane są mniej niż 4 wartości, lista wartości jest powtarzana do wypełnienia pozostałych wartości.

+ +

Powiązane własności

+ + + +

Przykłady

+ +
hbox.example {
+  border: 10px solid #000000;
+  width: 500px;
+  height: 500px;
+  /* obramowanie wygnie się w kształt 'D' */
+  -moz-border-radius: 10px 200px 200px 10px;
+}
+
+ +

Znane błędy

+ + diff --git a/files/pl/web/css/border-right-color/index.html b/files/pl/web/css/border-right-color/index.html new file mode 100644 index 0000000000..7b17b50b3b --- /dev/null +++ b/files/pl/web/css/border-right-color/index.html @@ -0,0 +1,16 @@ +--- +title: border-right-color +slug: Web/CSS/border-right-color +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-right-color +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-right-color ustala kolor prawego obramowania elementu.

+

Zobacz również własność border-bottom-color.

+ +

{{ languages( { "de": "de/CSS/border-right-color", "en": "en/CSS/border-right-color", "fr": "fr/CSS/border-right-color", "ja": "ja/CSS/border-right-color" } ) }}

diff --git a/files/pl/web/css/border-right-style/index.html b/files/pl/web/css/border-right-style/index.html new file mode 100644 index 0000000000..eef2e15cdd --- /dev/null +++ b/files/pl/web/css/border-right-style/index.html @@ -0,0 +1,16 @@ +--- +title: border-right-style +slug: Web/CSS/border-right-style +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-right-style +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-right-style ustawia styl linii prawego obramowania bloku.

+

Zobacz własność border-bottom-style, aby uzyskać więcej informacji.

+ +

{{ languages( { "de": "de/CSS/border-right-style", "en": "en/CSS/border-right-style", "fr": "fr/CSS/border-right-style", "ja": "ja/CSS/border-right-style" } ) }}

diff --git a/files/pl/web/css/border-right-width/index.html b/files/pl/web/css/border-right-width/index.html new file mode 100644 index 0000000000..ea649dc284 --- /dev/null +++ b/files/pl/web/css/border-right-width/index.html @@ -0,0 +1,17 @@ +--- +title: border-right-width +slug: Web/CSS/border-right-width +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie + - border width +translation_of: Web/CSS/border-right-width +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-right-width ustawia szerokość prawego obramowania bloku.

+

Zobacz własność border-bottom-width, aby uzyskać więcej informacji.

+ +

{{ languages( { "de": "de/CSS/border-right-width", "en": "en/CSS/border-right-width", "fr": "fr/CSS/border-right-width", "ja": "ja/CSS/border-right-width" } ) }}

diff --git a/files/pl/web/css/border-right/index.html b/files/pl/web/css/border-right/index.html new file mode 100644 index 0000000000..a4510f4614 --- /dev/null +++ b/files/pl/web/css/border-right/index.html @@ -0,0 +1,123 @@ +--- +title: border-right +slug: Web/CSS/border-right +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-right +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-right jest skróconą własnością dla ustawienia szerokości, stylu i koloru prawej krawędzi elementu. Ta własność może być używana do ustawienia jednej lub kilku wartości: {{ Cssxref("border-right-width") }}, {{ Cssxref("border-right-style") }}, {{ Cssxref("border-right-color") }}. Pominięte wartości są ustawiane do ich wartości początkowych.

+ +

{{cssinfo}}

+ +

Składnia

+ +
border-right: [border-width || border-style || border-color | inherit] ;
+
+ +

Wartości

+ +
+
border-width
+
Zobacz {{ Cssxref("border-width") }}.
+
border-style 
+
Zobacz {{ Cssxref("border-style") }}.
+
border-color 
+
Zobacz {{ Cssxref("border-color") }}.
+
+ +

Przykłady

+ +
element {
+    border-right: 1px solid #000;
+}
+
+ +

Notatki

+ +

Jeśli reguła nie określi koloru krawędzi, krawędź będzie miała kolor zdefiniowany przez własność {{ Cssxref("color") }}.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Backgrounds', '#border-right', 'border-right') }}{{ Spec2('CSS3 Backgrounds') }}No direct changes, though the modification of values for the {{ cssxref("border-right-color") }} do apply to it.
{{ SpecName('CSS2.1', 'box.html#propdef-border-right', 'border-right') }}{{ Spec2('CSS2.1') }}No significant changes
{{ SpecName('CSS1', '#border-right', 'border-right') }}{{ Spec2('CSS1') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.0{{ CompatGeckoDesktop("1.0") }}43.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support1.0{{ CompatGeckoMobile("1.0") }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}
+
diff --git a/files/pl/web/css/border-spacing/index.html b/files/pl/web/css/border-spacing/index.html new file mode 100644 index 0000000000..d9085b8bfc --- /dev/null +++ b/files/pl/web/css/border-spacing/index.html @@ -0,0 +1,101 @@ +--- +title: border-spacing +slug: Web/CSS/border-spacing +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-spacing +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-spacing określa odległość pomiędzy obramowaniami sąsiadujących komórek (tylko dla rozdzielnych obramowań). Jest to odpowiednik atrybutu cellspacing w HTML-u.

+ + + +

Składnia

+ +

border-spacing: <length> | <length> <length> | inherit

+ +

Wartości

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
table#space {
+  border-collapse: separate;
+  border-spacing: 10px 5px;
+}
+
+ +

Notatki

+ +

Ta własność ma zastosowanie tylko, gdy {{ Cssxref("border-collapse") }} ma wartość "separate".

+ +

Własność border-spacing jest również używana przy zewnętrznej krawędzi tabeli, gdzie odległość pomiędzy obramowaniem tabeli a komórkami pierwszej/ostatniej kolumny lub wiersza jest sumą istotnej (poziomej lub pionowej) odległości od obramowania i istotnej (górnej, lewej, dolnej lub prawej) krawędzi tabeli.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Netscape6
Internet Explorer7
Firefox1
Mozilla1
Safari1
Opera6
+ +

 

+ +

Zobacz również

+ +

{{ Cssxref("border-collapse") }}

+ +
 
+ +

{{ languages( { "en": "en/CSS/border-spacing", "es": "es/CSS/border-spacing", "fr": "fr/CSS/border-spacing" } ) }}

diff --git a/files/pl/web/css/border-style/index.html b/files/pl/web/css/border-style/index.html new file mode 100644 index 0000000000..948d86d8a3 --- /dev/null +++ b/files/pl/web/css/border-style/index.html @@ -0,0 +1,126 @@ +--- +title: border-style +slug: Web/CSS/border-style +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-style +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-style jest skróconą własnością dla ustawienia stylu linii dla wszystkich czterech stron obramowania elementów.

+ + + +

Składnia

+ +
border-style: [ <border-style> ]{1,4} | inherit
+
+ +

Wartości

+ +
+
<border-style>
+
Style linii mogą przyjąć którąś z podanych wartości.
+
+ + + +

Można podać do czterech wartości.
+ Pierwsza wartość ustawia wszystkie cztery krawędzie.
+ Druga ustawia lewą i prawą.
+ Trzecia ustawia dolną.
+ Czwarta ustawia lewą

+ +

Przykłady

+ +

Zobacz przykład

+ +
element {
+  border-width: 1px;
+  border-style: solid;
+  border-color: black;
+}
+
+ +

Notatki

+ +

Domyślnie border-style jest ustawione na none. To oznacza, że, jeśli zmieniasz wartość {{ Cssxref("border-width") }} oraz {{ Cssxref("border-color") }}, nie zobaczysz obramowania, dopóki nie zmienisz tej wartości na inną niż none lub hidden

+ + + +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape4
Opera3.5
+ +

Rozszerzenia Mozilli

+ +

Następujące rozszerzenia Mozilli ustawiają poszczególne strony obramowania na wielokrotny kolor dla przeglądarek opartych na silniku Gecko.

+ + + +

Zobacz także

+ +

{{ Cssxref("border") }}, {{ Cssxref("border-width") }}, {{ Cssxref("border-color") }}, {{ Cssxref("-moz-border-radius") }}

+ + + +

{{ languages( { "de": "de/CSS/border-style", "en": "en/CSS/border-style", "es": "es/CSS/border-style", "fr": "fr/CSS/border-style", "ja": "ja/CSS/border-style" } ) }}

diff --git a/files/pl/web/css/border-top-color/index.html b/files/pl/web/css/border-top-color/index.html new file mode 100644 index 0000000000..0f28de470d --- /dev/null +++ b/files/pl/web/css/border-top-color/index.html @@ -0,0 +1,14 @@ +--- +title: border-top-color +slug: Web/CSS/border-top-color +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-top-color +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-top-color ustawia kolor górnego obramowania elementu.

+

Zobacz własność border-bottom-color, aby uzyskać więcej informacji.

diff --git a/files/pl/web/css/border-top-left-radius/index.html b/files/pl/web/css/border-top-left-radius/index.html new file mode 100644 index 0000000000..d35e50e7a0 --- /dev/null +++ b/files/pl/web/css/border-top-left-radius/index.html @@ -0,0 +1,20 @@ +--- +title: '-moz-border-radius-topleft' +slug: Web/CSS/border-top-left-radius +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-top-left-radius +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli -moz-border-radius-topleft ustawia zaokrąglenie górnego lewego rogu obramowania.

+ +

Zobacz więcej informacji we własności -moz-border-radius.

+ +

{{ languages( { "de": "de/CSS/border-top-left-radius", "en": "en/CSS/-moz-border-radius-topleft", "fr": "fr/CSS/border-top-left-radius", "ja": "ja/CSS/border-top-left-radius" } ) }}

diff --git a/files/pl/web/css/border-top-right-radius/index.html b/files/pl/web/css/border-top-right-radius/index.html new file mode 100644 index 0000000000..1bfdcab43d --- /dev/null +++ b/files/pl/web/css/border-top-right-radius/index.html @@ -0,0 +1,14 @@ +--- +title: border-top-right-radius +slug: Web/CSS/border-top-right-radius +tags: + - CSS +translation_of: Web/CSS/border-top-right-radius +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

W aplikacjach opartych na Mozilli border-top-right-radius ustawia zaokrąglenie górnego prawego rogu obramowania.

+ +

Zobacz więcej informacji we własności border-radius.

diff --git a/files/pl/web/css/border-top-style/index.html b/files/pl/web/css/border-top-style/index.html new file mode 100644 index 0000000000..a6c65d9776 --- /dev/null +++ b/files/pl/web/css/border-top-style/index.html @@ -0,0 +1,16 @@ +--- +title: border-top-style +slug: Web/CSS/border-top-style +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-top-style +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-top-style ustawia styl linii górnego obramowania bloku.

+

Zobacz własność border-bottom-style, aby uzyskać więcej informacji.

+ +

{{ languages( { "de": "de/CSS/border-top-style", "en": "en/CSS/border-top-style", "fr": "fr/CSS/border-top-style", "ja": "ja/CSS/border-top-style" } ) }}

diff --git a/files/pl/web/css/border-top-width/index.html b/files/pl/web/css/border-top-width/index.html new file mode 100644 index 0000000000..f1f68284fa --- /dev/null +++ b/files/pl/web/css/border-top-width/index.html @@ -0,0 +1,16 @@ +--- +title: border-top-width +slug: Web/CSS/border-top-width +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-top-width +--- +

{{ CSSRef() }}

+

Podsumowanie

+

border-top-width ustawia szerokość górnego obramowania bloku.

+

Zobacz własciwość border-bottom-width, aby uzyskać więcej informacji.

+ +

{{ languages( { "de": "de/CSS/border-top-width", "en": "en/CSS/border-top-width", "fr": "fr/CSS/border-top-width", "ja": "ja/CSS/border-top-width" } ) }}

diff --git a/files/pl/web/css/border-top/index.html b/files/pl/web/css/border-top/index.html new file mode 100644 index 0000000000..941f0a6821 --- /dev/null +++ b/files/pl/web/css/border-top/index.html @@ -0,0 +1,123 @@ +--- +title: border-top +slug: Web/CSS/border-top +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-top +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border-top jest skróconą własnością dla ustawienia szerokości, stylu i koloru górnej krawędzi elementu. Ta własność może być używana do ustawienia jednej lub kilku wartości: {{ Cssxref("border-top-width") }}, {{ Cssxref("border-top-style") }}, {{ Cssxref("border-top-color") }}. Pominięte wartości są ustawiane do ich wartości początkowych.

+ +
{{cssinfo}}
+ +

Składnia

+ +
border-top: [border-width || border-style || border-color | inherit] ;
+
+ +

Wartości

+ +
+
border-width
+
Zobacz {{ Cssxref("border-width") }}.
+
border-style 
+
Zobacz {{ Cssxref("border-style") }}.
+
border-color 
+
Zobacz {{ Cssxref("border-color") }}.
+
+ +

Przykłady

+ +
element {
+    border-top: 1px solid #000;
+}
+
+ +

Notatki

+ +

Jeśli reguła nie określi koloru krawędzi, krawędź będzie miała kolor zdefiniowany przez własność {{ Cssxref("color") }}.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Backgrounds', '#border-top', 'border-top')}}{{Spec2('CSS3 Backgrounds')}}No direct changes, though the modification of values for the {{cssxref("border-top-color")}} do apply to it.
{{SpecName('CSS2.1', 'box.html#propdef-border-top', 'border-top')}}{{Spec2('CSS2.1')}}No significant changes
{{SpecName('CSS1', '#border-top', 'border-top')}}{{Spec2('CSS1')}}Initial definition
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.0{{CompatGeckoDesktop("1.0")}}43.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support1.0{{CompatGeckoMobile("1.0")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
diff --git a/files/pl/web/css/border-width/index.html b/files/pl/web/css/border-width/index.html new file mode 100644 index 0000000000..ec17638eff --- /dev/null +++ b/files/pl/web/css/border-width/index.html @@ -0,0 +1,113 @@ +--- +title: border-width +slug: Web/CSS/border-width +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/border-width +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

border-width ustawia szerokość obramowania bloku.

+ + + +

Składnia

+ +
border-width: <border-width> {1,4} | inherit
+
+ +

Wartości <border-width>

+ +
+
<border-width-value>
+
thin | medium | thick | {{cssxref("<length>")}} | {{cssxref("<percentage>")}}
+
thin
+
Cienkie obramowanie.
+
medium
+
Średnie obramowanie.
+
thick
+
Grube obramowanie.
+
<length>
+
Grubość obramowania ma sprecyzowaną wartość. Sprecyzowana szerokość obramowania nie może być ujemna.
+
<percentage>
+
Grubość obramowania ma wartość procentową, w procentach szerokości zawierającego bloku. Sprecyzowane szerokości nie mogą być ujemne.
+
+ +

Uwaga: Wartość em jest również dopuszczalna.

+ +

Powiązane własności

+ + + +

 

+ +

Przykłady

+ +

Zobacz przykład

+ +
element {
+    border-width: thin;
+    border-style: solid;
+    border-color: #000;
+}
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer 
Firefox 
Netscape 
Opera 
+ +

 

+ +

Zobacz również

+ +

{{ Cssxref("border") }}, {{ Cssxref("border-style") }}, {{ Cssxref("border-color") }},

+ +

{{ languages( { "de": "de/CSS/border-width", "en": "en/CSS/border-width", "es": "es/CSS/border-width", "fr": "fr/CSS/border-width", "ja": "ja/CSS/border-width" } ) }}

diff --git a/files/pl/web/css/border/index.html b/files/pl/web/css/border/index.html new file mode 100644 index 0000000000..21b8f42f9a --- /dev/null +++ b/files/pl/web/css/border/index.html @@ -0,0 +1,123 @@ +--- +title: border +slug: Web/CSS/border +tags: + - CSS +translation_of: Web/CSS/border +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność border jest skróconą własnością dla ustawienia indywidualnych wartości własności obramowania w jednym miejscu w arkuszu stylów. border może być używane do ustawienia jednej lub więcej z następujących własności: {{ Cssxref("border-width") }}, {{ Cssxref("border-style") }}, {{ Cssxref("border-color") }}.

+ +

{{cssinfo}}

+ +

Składnia

+ +
border: [border-width || border-style || border-color | inherit] ;
+
+ +

Wartości

+ +
+
border-width
+
Zobacz {{ Cssxref("border-width") }}.
+
border-style 
+
Zobacz {{ Cssxref("border-style") }}.
+
border-color 
+
Zobacz {{ Cssxref("border-color") }}.
+
+ +

Przykłady

+ +

Zobacz przykład

+ +
element {
+    border: 1px solid #000;
+}
+
+ +

Notatki

+ +

Podczas, gdy własności {{ Cssxref("border-width") }}, {{ Cssxref("border-style") }} oraz {{ Cssxref("border-color") }} przyjmują do czterech wartości, ta własność przyjmuje tylko jedną wartość dla każdej własności.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Backgrounds', '#the-border-shorthands', 'border')}}{{Spec2('CSS3 Backgrounds')}}Technically removes the support for transparent as it is now a valid {{cssxref("<color>")}}; this has no practical influence.
+ Though it cannot be set to another value using the shorthand, border does now reset {{cssxref("border-image")}} to its initial value (none).
{{SpecName('CSS2.1', 'box.html#border-shorthand-properties', 'border')}}{{Spec2('CSS2.1')}}Accepts the inherit keyword. Also accepts transparent as a valid color.
{{SpecName('CSS1', '#border', 'border')}}{{Spec2('CSS1')}}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1.0{{CompatGeckoDesktop("1.0")}}4.03.51.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{CompatUnknown()}}{{CompatGeckoMobile("1.9.2")}}{{CompatUnknown()}}{{CompatUnknown()}}1.0
+
diff --git a/files/pl/web/css/bottom/index.html b/files/pl/web/css/bottom/index.html new file mode 100644 index 0000000000..097a323292 --- /dev/null +++ b/files/pl/web/css/bottom/index.html @@ -0,0 +1,149 @@ +--- +title: bottom +slug: Web/CSS/bottom +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/bottom +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Właściwość bottom określa część pozycji elementu pozycjonowanego.

+ +

Dla elementów pozycjonowanych absolutnie (tych z position: absolute lub position: fixed) określa odległość między dolnym marginesem krawędzi elementu a dolną krawędzią zawierającego go bloku.

+ +

Dla elementów pozycjonowanych relatywnie (tych z position: relative) określa wartość, o jaką element jest przesunięty powyżej jego normalnej pozycji. Jednak własność {{ Cssxref("top") }} unieważnia własność bottom, zatem, jeśli top nie jest ustawione na auto, wartość wyliczona bottom jest ujemną wartością wyliczoną top.

+ +

{{cssinfo}}

+ +

Składnia

+ +
   bottom: <length> | <percentage> | auto | inherit
+
+ +

Wartości

+ +
+
<length> 
+
Długość, używana jak w opisano w podsumowaniu. Może mieć wartość ujemną, zero lub dodatnią.
+
<percentage> 
+
Procenty wysokości zawierającego bloku, używane jak opisano w podsumowaniu.
+
auto 
+
Dla elementów pozycjonowanych absolutnie pozycja elementu oparta jest na własności {{ Cssxref("top") }} i przyjmuje height: auto jako wysokość bazującą na zawartości. Dla elementów pozycjonowanych relatywnie przesunięcie elementu z jego oryginalnej pozycji w oparciu o własność {{ Cssxref("top") }} lub, jeśli top jest również ustawione na auto, nie przesuwa wcale.
+
inherit 
+
Dziedziczy wartość wyliczoną od elementu rodzica (który może nie być zawierającym go blokiem). Ta wartość wyliczona jest wtedy traktowana jak to było 'z <length>, <percentage> lub auto.
+
+ +

Przykłady

+ +
element {
+    position: absolute;
+    bottom: 20px;
+    height: 200px;
+    border: 1px solid #000;
+}
+
+ +

Poniższa przykładowa strona porównuje position:absolute z position:fixed. Kiedy normalny tekst staje się wyższy niż wyświetlana część strony (obszar okna przeglądarki), elementy blokowe pozycjonowane przy użyciu position:absolute przesuwają się razem ze stroną, podczas, gdy elementy blokowe pozycjonowane przy użyciu position:fixed nie przesuwają się. Zauważ, że IE6 nie wspiera position:fixed.

+ +
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+   "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+<title>Position at bottom, absolute or fixed</title>
+<style type="text/css">
+p {font-size:30px; line-height:3em;}
+div.pos {width:49%; text-align:center; border:2px solid #00f;}
+div#abs {position:absolute; bottom:0; left:0;}
+div#fix {position:fixed; bottom:0; right:0;}
+</style>
+</head>
+<body>
+  <p>This<br>is<br>some<br>tall,<br>tall,
+    <br>tall,<br>tall,<br>tall<br>content.</p>
+  <div id="fix" class="pos"><p>Fixed</p></div>
+  <div id="abs" class="pos"><p>Absolute</p></div>
+</body>
+</html>
+ +

Notatki

+ +

Dla elementów pozycjonowanych absolutnie, których zawierający je blok jest oparty na elemencie blokowym, ta własność jest przesunięciem względem krawędzi dopełnienia tego elementu.

+ +

Dla elementów pozycjonowanych absolutnie własność bottom nie ma widocznych efektów, jeśli wszystkie wartości {{ Cssxref("top") }}, {{ Cssxref("height") }} i {{ Cssxref("margin-top") }}nieauto (co jest domyślną wartością dla top oraz height).

+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS2.1', 'visuren.html#choose-position', 'bottom')}}{{Spec2('CSS2.1')}}Initial definition
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support1.0{{CompatGeckoDesktop("1.0")}}5[1]61.0 (85)
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support{{CompatUnknown}}{{CompatGeckoMobile("1.9.2")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

[1] In Internet Explorer versions before 7.0, when both {{cssxref("top")}} and bottom are specified, the element position is over-constrained and the {{cssxref("top")}} property has precedence. In that case the computed value of bottom is set to -top, while its specified value is ignored.

diff --git a/files/pl/web/css/box-decoration-break/index.html b/files/pl/web/css/box-decoration-break/index.html new file mode 100644 index 0000000000..0bd73ac2a9 --- /dev/null +++ b/files/pl/web/css/box-decoration-break/index.html @@ -0,0 +1,202 @@ +--- +title: box-decoration-break +slug: Web/CSS/box-decoration-break +tags: + - CSS + - CSS Fragmentation + - CSS Property + - Experimental +translation_of: Web/CSS/box-decoration-break +--- +

{{CSSRef}}{{SeeCompatTable}}

+ +

Summary

+ +

The box-decoration-break CSS property specifies how the {{ Cssxref("background") }}, {{ Cssxref("padding") }}, {{ Cssxref("border") }}, {{ Cssxref("border-image") }}, {{ Cssxref("box-shadow") }}, {{ Cssxref("margin") }} and {{ Cssxref("clip") }} of an element is applied when the box for the element is fragmented.  Fragmentation occurs when an inline box wraps onto multiple lines, or when a block spans more than one column inside a column layout container, or spans a page break when printed.  Each piece of the rendering for the element is called a fragment.

+ +

{{cssinfo}}

+ +

Syntax

+ +
box-decoration-break: slice;
+box-decoration-break: clone;
+
+box-decoration-break: initial;
+box-decoration-break: inherit;
+box-decoration-break: unset;
+
+ +

Values

+ +
+
slice
+
The element is rendered as if its box were not fragmented, and then the rendering for this hypothetical box is sliced into pieces for each line/column/page. Note that the hypothetical box can be different for each fragment since it uses its own height if the break occurs in the inline direction, and its own width if the break occurs in the block direction. See the CSS specification for details.
+
clone
+
Each box fragment is rendered independently with the specified border, padding and margin wrapping each fragment. The {{ Cssxref("border-radius") }}, {{ Cssxref("border-image") }} and {{ Cssxref("box-shadow") }}, are applied to each fragment independently. The background is drawn independently in each fragment which means that a background image with {{ Cssxref("background-repeat") }}: no-repeat may be repeated multiple times.
+
+ +

Formal syntax

+ +
{{csssyntax}}
+ +

Examples

+ +

Inline box fragments

+ +

An inline element that contains line-breaks styled with:

+ +
.example {
+  background: linear-gradient(to bottom right, yellow, green);
+  box-shadow:
+    8px 8px 10px 0px deeppink,
+    -5px -5px 5px 0px blue,
+    5px 5px 15px 0px yellow;
+  padding: 0em 1em;
+  border-radius: 16px;
+  border-style: solid;
+  margin-left: 10px;
+  font: 24px sans-serif;
+  line-height: 2;
+}
+
+...
+<span class="example">The<br>quick<br>orange fox</span>
+ +

Results in:

+ +

A screenshot of the rendering of an inline element styled with box-decoration-break:slice and styles given in the example.

+ +

Adding box-decoration-break:clone to the above styles:

+ +
  -webkit-box-decoration-break: clone;
+  -o-box-decoration-break: clone;
+  box-decoration-break: clone;
+
+ +

Results in:

+ +

A screenshot of the rendering of an inline element styled with box-decoration-break:clone and styles given in the example

+ +

You can try the two inline examples above in your browser.

+ +

Here's an example of an inline element using a large border-radius value. The second "iM" has a line-break between the "i" and the "M". For comparison, the first "iM" is without line-breaks. Note that if you stack the rendering of the two fragments horizontally next to each other it will result in the non-fragmented rendering.

+ +

A screenshot of the rendering of the second inline element example.

+ +

Try the above example in your browser.

+ +

Block box fragments

+ +

A block element with similar styles as above, first without any fragmentation:

+ +

A screenshot of the rendering of the block element used in the examples without any fragmentation.

+ +

Fragmenting the above block into three columns results in:

+ +

A screenshot of the rendering of the fragmented block used in the examples styled with box-decoration-break:slice.

+ +

Note that stacking these pieces vertically will result in the non-fragmented rendering.

+ +

Now the same example styled with box-decoration-break:clone

+ +

A screenshot of the rendering of the fragmented block used in the examples styled with box-decoration-break:clone.

+ +

Note here that each fragment has an identical replicated border, box-shadow and background.

+ +

You can try the block examples above in your browser.

+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Fragmentation', '#break-decoration', 'box-decoration-break') }}{{ Spec2('CSS3 Fragmentation') }}Initial definition
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Support on inline elements{{ CompatVersionUnknown() }}{{property_prefix("-webkit")}}{{CompatGeckoDesktop(32.0)}} [1]{{ CompatUnknown() }}{{ CompatVersionUnknown() }}{{property_prefix("-o")}}{{ CompatUnknown() }}
Support on non-inline element{{CompatNo}}{{CompatGeckoDesktop(32.0)}} [1]{{ CompatUnknown() }}{{ CompatUnknown() }}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Support on inline elements{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatGeckoMobile("32.0")}}{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
Support on non-inline element{{CompatNo}}{{CompatNo}}{{ CompatGeckoMobile("32.0")}}{{ CompatUnknown() }}{{ CompatUnknown() }}{{CompatNo}}
+
+ +

[1] Note that Firefox implemented an non-standard version of this property before Firefox 32 named {{ Cssxref("-moz-background-inline-policy") }}. That property is unsupported since Firefox 32.

+ +

See also

+ + diff --git a/files/pl/web/css/box-direction/index.html b/files/pl/web/css/box-direction/index.html new file mode 100644 index 0000000000..eb85a1dad0 --- /dev/null +++ b/files/pl/web/css/box-direction/index.html @@ -0,0 +1,72 @@ +--- +title: '-moz-box-direction' +slug: Web/CSS/box-direction +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/box-direction +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

{{warning("This property reflects an old version of the specification. The -moz-box-direction will only be used for XUL while the standard box-direction has been replaced by flex-direction (which belongs to the CSS Flexible Box Layout Module currently under the Working Draft status).")}}

+ +

W aplikacjach opartych na Mozilli -moz-box-direction określa, czy pudełko rozkłada swoją zawartość normalnie (od górnej lub lewej krawędzi), czy w odwróceniu (od dolnej lub prawej krawędzi).

+ + + +

Składnia

+ +
-moz-box-direction: normal | reverse
+
+ +

Wartości

+ +
+
normal
+
Pudełko rozkłada swoją zawartość od początku (lewej lub górnej krawędzi).
+
reverse
+
Pudełko rozkłada swoją zawartość od końca (prawej lub dolnej krawędzi).
+
+ +

Przykłady

+ +
vbox.example {
+	-moz-box-direction: reverse; /* układ od dołu do góry */
+}
+
+ +

Notatki

+ +

Krawędź pudełka określona jakostart dla docelowego układu zależy od orientacji pudełka:

+ + + + + + + + + + + + +
Poziomalewa
Pionowagórna
+ +

Krawędź przeciwna do początkowej określana jest jakoend.

+ +

Jeśli kierunek jest ustawiony przy użyciu atrybutu dir elementu, wtedy styl jest ignorowany.

+ +

Zobacz także

+ +

CSS:-moz-box-orient

diff --git a/files/pl/web/css/box-shadow/index.html b/files/pl/web/css/box-shadow/index.html new file mode 100644 index 0000000000..feb07aaf0f --- /dev/null +++ b/files/pl/web/css/box-shadow/index.html @@ -0,0 +1,222 @@ +--- +title: box-shadow +slug: Web/CSS/box-shadow +tags: + - Adnotacja + - CSS + - CSS3 + - Grafika + - Referencja + - Tło CSS + - Tło CSS3 + - Układ + - Właściwość CSS + - sieć +translation_of: Web/CSS/box-shadow +--- +

{{CSSRef()}}

+ +

 

+ +
+

Generator box-shadow

+ +

Interaktywne narzędzie pozwalające stworzyć efekt box-shadow.

+
+ +

Właściwość CSS box-shadow określa jeden lub więcej efektów cieniowych jako przecinkowo-rozdzielaną listę. Pozwala na rzucenie cienia z prawie każdego elementu. Jeśli {{ cssxref("-moz-border-radius") }} jest zadeklarowany na elemencie na którym zadeklarowany jest także box-shadow, właściwość przybiera wartość z {{ cssxref("-moz-border-radius") }} i tworzy zaokrąglony cień. Użycie box-shadow wraz z {{ cssxref("z-index") }} daje taki sam efekt jak wielokrotne użycie cienia tekstu (pierwszy zadeklarowany cień jest wyświetlany ponad wszystkimi).

+ + + +

Składnia

+ +
box-shadow: none | [inset? && [ <offset-x> <offset-y> <blur-radius>? <spread-radius>? <color>? ] ]#
+ +

Wartości

+ +
+
inset
+
Jeśli inset nie zostanie ustalony (domyślnie), cień będzie wyświetlany ponad elementem. Jeśli zostanie użyty inset, cień zawrze się wewnątrz elementu. Cienie wewnętrzne są rysowane wewnątrz elementu (nawet przeźroczyste), ponad tłem, ale poniżej zawartości.
+
<offset-x> <offset-y>
+
Są dwie wartości {{ cssxref("<length>") }}, które określają odległość. <offset-x> oznacza odległość poziomą. Ujemne wartości umieszczają cień na lewo od elementu. <offset-y> wyznacza odległość pionową. Ujemne wartości umiesczają cień ponad elementem. Zobacz {{ cssxref("<length>") }} dla możliwych jednostek.
+ Jeśli obydwie wartości przyjmują 0, cień jest umiejscowiony za elementem (i może swtorzyć efekt rozmycia jeśli <blur-radius> oraz/lub <spread-radius> jest określony).
+
<blur-radius>
+
To jest trzecia wartość {{ cssxref("<length>") }}. Im większa, tym większe jest rozmycie i w efekcie cień jest większy oraz łagodniejszy. Ujemne wartości są niedozwolone. Jeśli nie ustalona, przyjmuje wartość domyślną 0 (krawędź cienia jest ostra).
+
<spread-radius>
+
To jest czwarta wartość {{ cssxref("<length>") }}. Nieujemne wartości będą powodować zwiększanie się cienia, a ujemne jego zmniejszanie. Jeśli nie ustalona, domyślnie przyjmuje wartość 0 (cień będzie tego samego rozmiaru co element).
+
<color>
+
Zobacz {{cssxref("<color>")}} dla możliwych słów kluczowych oraz notacji.
+ Jeśli nie ustalona, przyjmuje kolor zależny od przeglądarki - aktualnie jest to wartość {{ cssxref("color") }}, lecz Safari tworzy przeźroczysty cień w tej sytuacji.
+
+ +

Przykłady

+ + + +
box-shadow: 60px -16px teal;
+ +
box-shadow: 10px 5px 5px black;
+ +
box-shadow: 3px 3px red, -1em 0 0.4em olive;
+ +
box-shadow: inset 5em 1em gold;
+ +
box-shadow: 0 0 1em gold;
+ +
box-shadow: inset 0 0 1em gold;
+ +
box-shadow: inset 0 0 1em gold, 0 0 1em red;
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{ SpecName('CSS3 Backgrounds', '#box-shadow', 'box-shadow') }}{{ Spec2('CSS3 Backgrounds') }} 
+ +

Zgodność z przeglądarkami

+ +

{{ CompatibilityTable }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
WłaściwośćChromeFirefox (Gecko)Internet ExplorerOperaSafari
Podstawowa obsługa10.0
+ 1.0{{ property_prefix("-webkit") }}
{{ CompatGeckoDesktop("2.0") }}
+ {{ CompatGeckoDesktop("1.9.1") }}{{ property_prefix("-moz") }}
9.0 (Zobacz notatki)10.55.1 (WebKit 534)
+ 3.0 (WebKit 522){{ property_prefix("-webkit") }}
Wielokrotne cienie10.0
+ 1.0{{ property_prefix("-webkit") }}
{{ CompatGeckoDesktop("2.0") }}
+ {{ CompatGeckoDesktop("1.9.1") }}{{ property_prefix("-moz") }}
9.010.55.1 (WebKit 534)
+ 3.0 (WebKit 522){{ property_prefix("-webkit") }}
Wartość inset10.0
+ 4.0{{ property_prefix("-webkit") }}
{{ CompatGeckoDesktop("2.0") }}
+ {{ CompatGeckoDesktop("1.9.1") }}{{ property_prefix("-moz") }}
9.010.55.1 (WebKit 534)
+ 5.0 (WebKit 533){{ property_prefix("-webkit") }}
spread-radius10.0
+ 4.0{{ property_prefix("-webkit") }}
{{ CompatGeckoDesktop("2.0") }}
+ {{ CompatGeckoDesktop("1.9.1") }}{{ property_prefix("-moz") }}
9.010.55.1 (WebKit 534)
+ 5.0 (WebKit 533){{ property_prefix("-webkit") }}
+ +

 

+ +

 

+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
WłaściwośćiOS SafariOpera MiniOpera MobileAndroid Browser
Podstawowa obsługa +

5.0
+ {{ CompatVersionUnknown }}{{ property_prefix("-webkit") }}

+
{{ CompatUnknown }}ObsługujeObsługuje (2.2 tested) {{ property_prefix("-webkit") }}
Wielokrotne cienie5.0
+ {{ CompatVersionUnknown }}{{ property_prefix("-webkit") }}
{{ CompatUnknown }}{{ CompatUnknown }}{{ CompatUnknown }}
Wartość inset5.0
+ {{ CompatVersionUnknown }}{{ property_prefix("-webkit") }}
{{ CompatUnknown }}{{ CompatUnknown }}{{ CompatUnknown }}
spread-radius5.0
+ {{ CompatVersionUnknown }}{{ property_prefix("-webkit") }}
{{ CompatUnknown }}{{ CompatUnknown }}{{ CompatUnknown }}
+
+ +

Notatki

+ + diff --git a/files/pl/web/css/box-sizing/index.html b/files/pl/web/css/box-sizing/index.html new file mode 100644 index 0000000000..35cb212b99 --- /dev/null +++ b/files/pl/web/css/box-sizing/index.html @@ -0,0 +1,45 @@ +--- +title: box-sizing +slug: Web/CSS/box-sizing +tags: + - CSS +translation_of: Web/CSS/box-sizing +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

box-sizing jest używane przez przeglądarki oparte na Mozilli do zmiany domyślnego modelu pudełkowego CSS, używanego do obliczania szerokości i wysokości elementów. Możliwe jest użycie tej własności do zezwolenia Mozilli na naśladowanie zachowania przeglądarek, które nieprawidłowo wspierają specyfikację modelu pudełkowego CSS, chociaż nie jest to zalecane, jako że większość przeglądarek zgodnych ze standardami nie wspiera tej własności.

+ + + +

Składnia

+ +
box-sizing: content-box | border-box | padding-box
+
+ +

Wartości

+ +
+
content-box
+
Jest to domyślny styl, jak określa go standard CSS. Własności width i height są wymierzane zawierając tylko zawartość, ale nie border, margin lub padding.
+
padding-box
+
Własności width i height zawierają rozmiar dopełnienia (padding), ale nie zawierają obramowania (border) ani marginesu (margin).
+
border-box
+
Własności width i height zawierają dopełnienie i obramowanie, ale nie margines. Jest to model pudełkowy używany przez Internet Explorer, kiedy dokument nie jest w trybie zgodności ze standardami .
+
+ +

Przykłady

+ +
.exampleone {
+	box-sizing: padding-box;
+}
+
+ +
 
diff --git a/files/pl/web/css/clear/index.html b/files/pl/web/css/clear/index.html new file mode 100644 index 0000000000..5948d08cc0 --- /dev/null +++ b/files/pl/web/css/clear/index.html @@ -0,0 +1,98 @@ +--- +title: clear +slug: Web/CSS/clear +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/clear +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Właściwość clear określa, czy dany element pojawi się obok pływających elementów, które go poprzedzają, czy też ma zostać przesunięty poniżej tychże.

+ + + +

Składnia

+ +
clear: none | left | right | both | inherit
+
+ +

Wartości

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
h1 { clear: none }
+h2 { clear: right }
+ +

Notatki

+ +

Własność clear stosuje się zarówno do pływających, jak i niepływających elementów.

+ +

Kiedy odnosi się do niepływających elementów blokowych, przesuwa ona krawędź obramowania elementu w dół, dopóki nie znajdzie się pod krawędzią marginesu wszystkich danych elementów pływających. To przemieszczenie (kiedy ma miejsce) nie powoduje załamania marginesu.

+ +

Kiedy odnosi się do elementów pływających, przesuwa krawędź marginesu tego elementu poniżej krawędzi marginesu wszystkich danych elementów pływających. Wpływa to na pozycję późniejszych elementów pływających, ponieważ te nie mogą być pozycjonowane wyżej niż poprzednie.

+ +

Elementy pływające, na które wpływa własność clear są wcześniejszymi elementami pływającymi w tym samym bloku formatowania kontekstu.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape4
Mozilla1
+ +

 

+ +

Zobacz także

+ +

{{ Cssxref("float") }}

+ +
 
+ +

{{ languages( { "en": "en/CSS/clear", "fr": "fr/CSS/clear" } ) }}

diff --git a/files/pl/web/css/clip/index.html b/files/pl/web/css/clip/index.html new file mode 100644 index 0000000000..3ade3a5941 --- /dev/null +++ b/files/pl/web/css/clip/index.html @@ -0,0 +1,92 @@ +--- +title: clip +slug: Web/CSS/clip +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/clip +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność CSS clip określa, jaka część elementu jest widoczna.

+ + + +

Składnia

+ +
clip: <shape> | auto | inherit
+
+ +

Wartości

+ +
+
{{cssxref("<shape>")}}
+
określa kształt w formie rect(<top>, <right>, <bottom>, <left>);
+
{{ Cssxref("auto") }}
+
 
+
{{ Cssxref("inherit") }}
+
 
+
+ +

Przykłady

+ +
  img.clip04 {
+    clip: rect(10px, 20px, 20px, 10px);
+  }
+
+ +

Notatki

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1
Netscape4
Opera7
Safari1
+ +

Zobacz także

+ +

{{ Cssxref("overflow") }}, {{ Cssxref("position") }}

+ +

{{ languages( { "en": "en/CSS/clip", "fr": "fr/CSS/clip" } ) }}

diff --git a/files/pl/web/css/color/index.html b/files/pl/web/css/color/index.html new file mode 100644 index 0000000000..20f670855e --- /dev/null +++ b/files/pl/web/css/color/index.html @@ -0,0 +1,62 @@ +--- +title: color +slug: Web/CSS/color +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/color +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

color ustawia pierwszoplanowy kolor dla zawartości tekstowej elementu. +

+ +

Składnia

+
color: color | inherit
+
+

Wartości

+
color 
Kolor może być określony zgodnie z poniższymi zasadami: +
+ +

Przykłady

+

Poniżej są wszystkie sposoby na zrobienie czerwonego tekstu w elemencie: +

+
element { color: red }
+element { color: #f00 }
+element { color: #ff0000 }
+element { color: rgb(255,0,0) }
+element { color: rgb(100%, 0%, 0%) }
+element { color: hsl(0, 100%, 50%) } {{ Fx_minversion_inline(3) }}
+
+

Jeśli chcesz uwzględnić wartość kanału alfa by uwzględnić przezroczystość, możesz użyć kolorów w formacie RGBA lub HSLA: +

+
element { color: rgba(255, 0, 0, 0.5) } {{ Fx_minversion_inline(3) }}
+element { color: hsla(0, 100%, 50%, 0.5) } {{ Fx_minversion_inline(3) }}
+
+

Oba powyższe przykłady definiują kolor z przezroczystością ustawioną na 0.5 lub 50%. +

+

Notatki

+ +

Specyfikacje

+ +

Zgodność z przeglądarką

+
+
+{{ languages( { "en": "en/CSS/color", "es": "es/CSS/color", "fr": "fr/CSS/color", "ja": "ja/CSS/color" } ) }} diff --git a/files/pl/web/css/content/index.html b/files/pl/web/css/content/index.html new file mode 100644 index 0000000000..b9d75f21cc --- /dev/null +++ b/files/pl/web/css/content/index.html @@ -0,0 +1,107 @@ +--- +title: content +slug: Web/CSS/content +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/content +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność content określa, co jest wyświetlane wewnątrz pseudoelementów  :before i :after.

+ + + +

Składnia

+ +
content : normal | none | inherit | no-open-quote | no-close-quote ;
+
+ +
content : [ <string> | <counter> | attr(<identifier>) | <uri>
+                     | open-quote | close-quote]+ ;
+
+ +

Wartości

+ +
+
{{ Cssxref("none") }}
+
{{ Cssxref("normal") }}
+
{{cssxref("<string>")}}
+
{{cssxref("<uri>")}}
+
jeden lub więcej identyfikatorów URI odsyłających do zewnętrznego źródła, takiego jak obrazek.
+
{{cssxref("<counter>")}}
+
open-quote i close-quote
+
będzie to zamienione przez odpowiednie ciągi z własności 'quotes'.
+
no-open-quote i no-close-quote
+
zwiększa (zmniejsza) poziom zagnieżdżeń cytatów, ale nie dodaje żadnej zawartości.
+
attr(attribute-name)
+
będzie to zamienione przez wartość ciągu atrybutu węzła.
+
+ +

Przykłady

+ +
q:lang { quotes: '"' '"' "'" "'" }
+q:before { content: open-quote }
+q:after  { content: close-quote }
+
+ +
h1:before {
+  content: "Chapter: ";
+}
+
+ +

Notatki

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer?
Firefox?
Netscape?
Opera?
Safari?
+ +

Zobacz także

+ +

{{ Cssxref("quotes") }}

diff --git a/files/pl/web/css/counter-increment/index.html b/files/pl/web/css/counter-increment/index.html new file mode 100644 index 0000000000..00cdfff28b --- /dev/null +++ b/files/pl/web/css/counter-increment/index.html @@ -0,0 +1,67 @@ +--- +title: counter-increment +slug: Web/CSS/counter-increment +tags: + - CSS + - CSS List + - CSS Property +translation_of: Web/CSS/counter-increment +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

counter-increment zwiększa wartość liczników CSS o podaną wielkość.

+ + + +

Składnia

+ +
counter-increment: [<identyfikator> <liczba całkowita>?]+ | inherit | none
+
+ +

Wartości

+ +
+
identyfikator
+
Nazwa licznika, którego wartość jest zwiększana.
+
integer
+
Wartość, która ma być dodana do licznika. Domyślnie 1.
+
+ +

Można zwiększyć wartość dowolnej liczby liczników oddzielając wszystkie spacją.

+ +

Powiązane własności

+ + + +

Przykłady

+ +
h1 {
+  counter-increment: rozdzial sekcja 2 strona; /* Zwiększa wartość liczników
+                                                      rozdział i strona o 1,
+                                            oraz wartość licznika sekcja o 2 */
+}
+
+ +

Powyższy zapis jest równoważny z:

+ +
h1 {
+  counter-increment: rozdzial 1 sekcja 2 strona 1;
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/css/counter-reset/index.html b/files/pl/web/css/counter-reset/index.html new file mode 100644 index 0000000000..ff2fcd5b91 --- /dev/null +++ b/files/pl/web/css/counter-reset/index.html @@ -0,0 +1,66 @@ +--- +title: counter-reset +slug: Web/CSS/counter-reset +tags: + - CSS + - CSS List + - CSS Property + - Reference +translation_of: Web/CSS/counter-reset +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

counter-reset ustawia wartość liczników CSS.

+ + + +

Składnia

+ +
counter-reset: [ <identyfikator> <liczba całkowita>? ]+ | inherit | none
+
+ +

Wartości

+ +
+
identyfikator
+
Nazwa licznika, którego wartość jest ustawiana.
+
liczba całkowita
+
Wartość, którą ma przyjąć dany licznik przy każdym pojawieniu się danego elementu. Domyślnie 0.
+
+ +

Można ustawić dowolną liczbę liczników oddzielając wszystkie spacją.

+ +

Powiązane własności

+ + + +

Przykłady

+ +
h1 {
+  counter-reset: rozdzial sekcja 1 strona; /* Ustawia wartość liczników
+                                                rozdział i strona na 0,
+                                      oraz wartość licznika sekcja na 1 */
+}
+
+ +

Powyższy zapis jest równoważny z:

+ +
h1 {
+  counter-reset: rozdzial 0 sekcja 1 strona 0;
+}
+
+ +

Zobacz także

+ +

Liczniki CSS, {{ Cssxref("counter-increment") }}

diff --git a/files/pl/web/css/css_colors/index.html b/files/pl/web/css/css_colors/index.html new file mode 100644 index 0000000000..48b67295d0 --- /dev/null +++ b/files/pl/web/css/css_colors/index.html @@ -0,0 +1,119 @@ +--- +title: CSS Colors +slug: Web/CSS/CSS_Colors +tags: + - CSS + - CSS Colors + - NeedsTranslation + - Overview + - Reference + - TopicStub +translation_of: Web/CSS/CSS_Color +--- +
{{CSSRef}}
+ +

CSS Colors is a module of CSS that deals with colors, color types and transparency.

+ +

Reference

+ +

Properties

+ +
+ +
+ +

CSS Data Types

+ +

{{cssxref("<color>")}}

+ +

Guides

+ +

None.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Colors')}}{{Spec2('CSS3 Colors')}} 
{{SpecName('CSS2.1', 'colors.html')}}{{Spec2('CSS2.1')}} 
{{SpecName('CSS1')}}{{Spec2('CSS1')}}Initial definition
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1.0{{CompatGeckoDesktop("1")}}3.03.51.0
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Basic support1.0{{CompatGeckoMobile("1")}}6.06.01.0
+
+ +

See also

+ + diff --git a/files/pl/web/css/css_colors/narzedzie_doboru_kolorow/index.html b/files/pl/web/css/css_colors/narzedzie_doboru_kolorow/index.html new file mode 100644 index 0000000000..7907144f10 --- /dev/null +++ b/files/pl/web/css/css_colors/narzedzie_doboru_kolorow/index.html @@ -0,0 +1,3241 @@ +--- +title: Narzędzie doboru kolorów +slug: Web/CSS/CSS_Colors/Narzedzie_doboru_kolorow +tags: + - CSS + - CSS Kolory + - HTML Kolory + - Narzędzia + - kolor + - kolory + - narzędzie + - narzędzie do wybierania kolorów + - wybieranie kolorów +translation_of: Web/CSS/CSS_Colors/Color_picker_tool +--- +
+

ColorPicker tool

+ +

HTML Content

+ +
    <div id="container">
+        <div id="palette" class="block">
+            <div id="color-palette"></div>
+            <div id="color-info">
+                <div class="title"> CSS Color </div>
+            </div>
+        </div>
+
+        <div id="picker" class="block">
+            <div class="ui-color-picker" data-topic="picker" data-mode="HSL"></div>
+            <div id="picker-samples" sample-id="master"></div>
+            <div id="controls">
+                <div id="delete">
+                    <div id="trash-can"></div>
+                </div>
+                <div id="void-sample" class="icon"></div>
+            </div>
+        </div>
+
+        <div id="canvas" data-tutorial="drop">
+            <div id="zindex" class="ui-input-slider" data-topic="z-index" data-info="z-index"
+                data-max="20" data-sensivity="10"></div>
+        </div>
+    </div>
+
+
+ +

CSS Content

+ +
/*
+ * COLOR PICKER TOOL
+ */
+
+.ui-color-picker {
+	width: 420px;
+	margin: 0;
+	border: 1px solid #DDD;
+	background-color: #FFF;
+	display: table;
+
+	-moz-user-select: none;
+	-webkit-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.ui-color-picker .picking-area {
+	width: 198px;
+	height: 198px;
+	margin: 5px;
+	border: 1px solid #DDD;
+	position: relative;
+	float: left;
+	display: table;
+}
+
+.ui-color-picker .picking-area:hover {
+	cursor: default;
+}
+
+/* HSV format - Hue-Saturation-Value(Brightness) */
+.ui-color-picker .picking-area {
+	background: url('https://mdn.mozillademos.org/files/5707/picker_mask_200.png') center center;
+
+	background: -moz-linear-gradient(bottom, #000 0%, rgba(0, 0, 0, 0) 100%),
+				-moz-linear-gradient(left, #FFF 0%, rgba(255, 255, 255, 0) 100%);
+	background: -webkit-linear-gradient(bottom, #000 0%, rgba(0, 0, 0, 0) 100%),
+				-webkit-linear-gradient(left, #FFF 0%, rgba(255, 255, 255, 0) 100%);
+	background: -ms-linear-gradient(bottom, #000 0%, rgba(0, 0, 0, 0) 100%),
+				-ms-linear-gradient(left, #FFF 0%, rgba(255, 255, 255, 0) 100%);
+	background: -o-linear-gradient(bottom, #000 0%, rgba(0, 0, 0, 0) 100%),
+				-o-linear-gradient(left, #FFF 0%, rgba(255, 255, 255, 0) 100%);
+
+	background-color: #F00;
+}
+
+/* HSL format - Hue-Saturation-Lightness */
+.ui-color-picker[data-mode='HSL'] .picking-area {
+	background: -moz-linear-gradient(top, hsl(0, 0%, 100%) 0%, hsla(0, 0%, 100%, 0) 50%,
+									hsla(0, 0%, 0%, 0) 50%, hsl(0, 0%, 0%) 100%),
+				-moz-linear-gradient(left, hsl(0, 0%, 50%) 0%, hsla(0, 0%, 50%, 0) 100%);
+	background: -webkit-linear-gradient(top, hsl(0, 0%, 100%) 0%, hsla(0, 0%, 100%, 0) 50%,
+									hsla(0, 0%, 0%, 0) 50%, hsl(0, 0%, 0%) 100%),
+				-webkit-linear-gradient(left, hsl(0, 0%, 50%) 0%, hsla(0, 0%, 50%, 0) 100%);
+	background: -ms-linear-gradient(top, hsl(0, 0%, 100%) 0%, hsla(0, 0%, 100%, 0) 50%,
+									hsla(0, 0%, 0%, 0) 50%, hsl(0, 0%, 0%) 100%),
+				-ms-linear-gradient(left, hsl(0, 0%, 50%) 0%, hsla(0, 0%, 50%, 0) 100%);
+	background: -o-linear-gradient(top, hsl(0, 0%, 100%) 0%, hsla(0, 0%, 100%, 0) 50%,
+									hsla(0, 0%, 0%, 0) 50%, hsl(0, 0%, 0%) 100%),
+				-o-linear-gradient(left, hsl(0, 0%, 50%) 0%, hsla(0, 0%, 50%, 0) 100%);
+	background-color: #F00;
+}
+
+.ui-color-picker .picker {
+	width: 10px;
+	height: 10px;
+	border-radius: 50%;
+	border: 1px solid #FFF;
+	position: absolute;
+	top: 45%;
+	left: 45%;
+}
+
+.ui-color-picker .picker:before {
+	width: 8px;
+	height: 8px;
+	content: "";
+	position: absolute;
+	border: 1px solid #999;
+	border-radius: 50%;
+}
+
+.ui-color-picker .hue,
+.ui-color-picker .alpha {
+	width: 198px;
+	height: 28px;
+	margin: 5px;
+	border: 1px solid #FFF;
+	float: left;
+}
+
+.ui-color-picker .hue {
+	background: url("https://mdn.mozillademos.org/files/5701/hue.png") center;
+	background: -moz-linear-gradient(left, #F00 0%, #FF0 16.66%, #0F0 33.33%, #0FF 50%,
+				#00F 66.66%, #F0F 83.33%, #F00 100%);
+	background: -webkit-linear-gradient(left, #F00 0%, #FF0 16.66%, #0F0 33.33%, #0FF 50%,
+				#00F 66.66%, #F0F 83.33%, #F00 100%);
+	background: -ms-linear-gradient(left, #F00 0%, #FF0 16.66%, #0F0 33.33%, #0FF 50%,
+				#00F 66.66%, #F0F 83.33%, #F00 100%);
+	background: -o-linear-gradient(left, #F00 0%, #FF0 16.66%, #0F0 33.33%, #0FF 50%,
+				#00F 66.66%, #F0F 83.33%, #F00 100%);
+}
+
+.ui-color-picker .alpha {
+	border: 1px solid #CCC;
+	background: url("https://mdn.mozillademos.org/files/5705/alpha.png");
+}
+
+.ui-color-picker .alpha-mask {
+	width: 100%;
+	height: 100%;
+	background: url("https://mdn.mozillademos.org/files/6089/alpha_mask.png");
+}
+
+.ui-color-picker .slider-picker {
+	width: 2px;
+	height: 100%;
+	border: 1px solid #777;
+	background-color: #FFF;
+	position: relative;
+	top: -1px;
+}
+
+/* input HSV and RGB */
+
+.ui-color-picker .info {
+	width: 200px;
+	margin: 5px;
+	float: left;
+}
+
+.ui-color-picker .info * {
+	float: left;
+}
+
+.ui-color-picker .input {
+	width: 64px;
+	margin: 5px 2px;
+	float: left;
+}
+
+.ui-color-picker .input .name {
+	height: 20px;
+	width: 30px;
+	text-align: center;
+	font-size: 14px;
+	line-height: 18px;
+	float: left;
+}
+
+.ui-color-picker .input input {
+	width: 30px;
+	height: 18px;
+	margin: 0;
+	padding: 0;
+	border: 1px solid #DDD;
+	text-align: center;
+	float: right;
+
+	-moz-user-select: text;
+	-webkit-user-select: text;
+	-ms-user-select: text;
+}
+
+.ui-color-picker .input[data-topic="lightness"] {
+	display: none;
+}
+
+.ui-color-picker[data-mode='HSL'] .input[data-topic="value"] {
+	display: none;
+}
+
+.ui-color-picker[data-mode='HSL'] .input[data-topic="lightness"] {
+	display: block;
+}
+
+.ui-color-picker .input[data-topic="alpha"] {
+	margin-top: 10px;
+	width: 93px;
+}
+
+.ui-color-picker .input[data-topic="alpha"] > .name {
+	width: 60px;
+}
+
+.ui-color-picker .input[data-topic="alpha"] > input {
+	float: right;
+}
+
+.ui-color-picker .input[data-topic="hexa"] {
+	width: auto;
+	float: right;
+	margin: 6px 8px 0 0;
+}
+
+.ui-color-picker .input[data-topic="hexa"] > .name {
+	display: none;
+}
+
+.ui-color-picker .input[data-topic="hexa"] > input {
+	width: 90px;
+	height: 24px;
+	padding: 2px 0;
+	-moz-box-sizing: border-box;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+}
+
+/* Preview color */
+.ui-color-picker .preview {
+	width: 95px;
+	height: 53px;
+	margin: 5px;
+	margin-top: 10px;
+	border: 1px solid #DDD;
+	background-image: url("https://mdn.mozillademos.org/files/5705/alpha.png");
+	float: left;
+	position: relative;
+}
+
+.ui-color-picker .preview:before {
+	height: 100%;
+	width: 50%;
+	left: 50%;
+	top: 0;
+	content: "";
+	background: #FFF;
+	position: absolute;
+	z-index: 1;
+}
+
+.ui-color-picker .preview-color {
+	width: 100%;
+	height: 100%;
+	background-color: rgba(255, 0, 0, 0.5);
+	position: absolute;
+	z-index: 1;
+}
+
+.ui-color-picker .switch_mode {
+	width: 10px;
+	height: 20px;
+	position: relative;
+	border-radius: 5px 0 0 5px;
+	border: 1px solid #DDD;
+	background-color: #EEE;
+	left: -12px;
+	top: -1px;
+	z-index: 1;
+	transition: all 0.5s;
+}
+
+.ui-color-picker .switch_mode:hover {
+	background-color: #CCC;
+	cursor: pointer;
+}
+
+/*
+ * UI Component
+ */
+
+.ui-input-slider {
+	height: 20px;
+	font-family: "Segoe UI", Arial, Helvetica, sans-serif;
+	-moz-user-select: none;
+	user-select: none;
+}
+
+.ui-input-slider * {
+	float: left;
+	height: 100%;
+	line-height: 100%;
+}
+
+/* Input Slider */
+
+.ui-input-slider > input {
+	margin: 0;
+	padding: 0;
+	width: 50px;
+	text-align: center;
+
+	-moz-box-sizing: border-box;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+}
+
+.ui-input-slider-info {
+	width: 90px;
+	padding: 0px 10px 0px 0px;
+	text-align: right;
+	text-transform: lowercase;
+}
+
+.ui-input-slider-left, .ui-input-slider-right {
+	width: 16px;
+	cursor: pointer;
+	background: url("https://mdn.mozillademos.org/files/5679/arrows.png") center left no-repeat;
+}
+
+.ui-input-slider-right {
+	background: url("https://mdn.mozillademos.org/files/5679/arrows.png") center right no-repeat;
+}
+
+.ui-input-slider-name {
+	width: 90px;
+	padding: 0 10px 0 0;
+	text-align: right;
+	text-transform: lowercase;
+}
+
+.ui-input-slider-btn-set {
+	width: 25px;
+	background-color: #2C9FC9;
+	border-radius: 5px;
+	color: #FFF;
+	font-weight: bold;
+	line-height: 14px;
+	text-align: center;
+}
+
+.ui-input-slider-btn-set:hover {
+	background-color: #379B4A;
+	cursor: pointer;
+}
+
+/*
+ * COLOR PICKER TOOL
+ */
+
+body {
+	max-width: 1000px;
+	margin: 0 auto;
+
+	font-family: "Segoe UI", Arial, Helvetica, sans-serif;
+
+	box-shadow: 0 0 5px 0 #999;
+
+	-moz-box-sizing: border-box;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+
+	-moz-user-select: none;
+	-webkit-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+
+}
+
+/**
+ * Resize Handle
+ */
+.resize-handle {
+	width: 10px;
+	height: 10px;
+	background: url('https://mdn.mozillademos.org/files/6083/resize.png') center center no-repeat;
+	position: absolute;
+	bottom: 0;
+	right: 0;
+}
+
+[data-resize='both']:hover {
+	cursor: nw-resize !important;
+}
+
+[data-resize='width']:hover {
+	cursor: w-resize !important;
+}
+
+[data-resize='height']:hover {
+	cursor: n-resize !important;
+}
+
+[data-hidden='true'] {
+	display: none;
+}
+
+[data-collapsed='true'] {
+	height: 0 !important;
+}
+
+.block {
+	display: table;
+}
+
+
+/**
+ * 	Container
+ */
+#container {
+	width: 100%;
+
+	-moz-box-sizing: border-box;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+
+	display: table;
+}
+
+/**
+ * 	Picker Zone
+ */
+
+#picker {
+	padding: 10px;
+	width: 980px;
+}
+
+.ui-color-picker {
+	padding: 3px 5px;
+	float: left;
+	border-color: #FFF;
+}
+
+.ui-color-picker .switch_mode {
+	display: none;
+}
+
+.ui-color-picker .preview-color:hover {
+	cursor: move;
+}
+
+/**
+ * Picker Container
+ */
+
+#picker-samples {
+	width: 375px;
+	height: 114px;
+	max-height: 218px;
+	margin: 0 10px 0 30px;
+	overflow: hidden;
+	position: relative;
+	float: left;
+
+	transition: all 0.2s;
+}
+
+#picker-samples .sample {
+	width: 40px;
+	height: 40px;
+	margin: 5px;
+	border: 1px solid #DDD;
+	position: absolute;
+	float: left;
+	transition: all 0.2s;
+}
+
+#picker-samples .sample:hover {
+	cursor: pointer;
+	border-color: #BBB;
+	transform: scale(1.15);
+	border-radius: 3px;
+}
+
+#picker-samples .sample[data-active='true'] {
+	border-color: #999;
+}
+
+#picker-samples .sample[data-active='true']:after {
+	content: "";
+	position: absolute;
+	background: url('https://mdn.mozillademos.org/files/6065/arrow.png') center no-repeat;
+	width: 100%;
+	height: 12px;
+	top: -12px;
+	z-index: 2;
+}
+
+#picker-samples #add-icon {
+	width: 100%;
+	height: 100%;
+	position: relative;
+	box-shadow: inset 0px 0px 2px 0px #DDD;
+}
+
+#picker-samples #add-icon:hover {
+	cursor: pointer;
+	border-color: #DDD;
+	box-shadow: inset 0px 0px 5px 0px #CCC;
+}
+
+#picker-samples #add-icon:before,
+#picker-samples #add-icon:after {
+	content: "";
+	position: absolute;
+	background-color: #EEE;
+	box-shadow: 0 0 1px 0 #EEE;
+}
+
+#picker-samples #add-icon:before {
+	width: 70%;
+	height: 16%;
+	top: 42%;
+	left: 15%;
+}
+
+#picker-samples #add-icon:after {
+	width: 16%;
+	height: 70%;
+	top: 15%;
+	left: 42%;
+}
+
+#picker-samples #add-icon:hover:before,
+#picker-samples #add-icon:hover:after {
+	background-color: #DDD;
+	box-shadow: 0 0 1px 0 #DDD;
+}
+
+/**
+ * 	Controls
+ */
+
+#controls {
+	width: 110px;
+	padding: 10px;
+	float: right;
+}
+
+#controls #picker-switch {
+	text-align: center;
+	float: left;
+}
+
+#controls .icon {
+	width: 48px;
+	height: 48px;
+	margin: 10px 0;
+	background-repeat: no-repeat;
+	background-position: center;
+	border: 1px solid #DDD;
+	display: table;
+	float: left;
+}
+
+#controls .icon:hover {
+	cursor: pointer;
+}
+
+#controls .picker-icon {
+	background-image: url('https://mdn.mozillademos.org/files/6081/picker.png');
+}
+
+#controls #void-sample {
+	margin-right: 10px;
+	background-image: url('https://mdn.mozillademos.org/files/6087/void.png');
+	background-position: center left;
+}
+
+#controls #void-sample[data-active='true'] {
+	border-color: #CCC;
+	background-position: center right;
+}
+
+#controls .switch {
+	width: 106px;
+	padding: 1px;
+	border: 1px solid #CCC;
+	font-size: 14px;
+	text-align: center;
+	line-height: 24px;
+	overflow: hidden;
+	float: left;
+}
+
+#controls .switch:hover {
+	cursor: pointer;
+}
+
+#controls .switch > * {
+	width: 50%;
+	padding: 2px 0;
+	background-color: #EEE;
+	float: left;
+}
+
+#controls .switch [data-active='true'] {
+	color: #FFF;
+	background-image: url('https://mdn.mozillademos.org/files/6025/grain.png');
+	background-color: #777;
+}
+
+/**
+ * 	Trash Can
+ */
+
+#delete {
+	width: 100%;
+	height: 94px;
+	background-color: #DDD;
+	background-image: url('https://mdn.mozillademos.org/files/6025/grain.png');
+	background-repeat: repeat;
+
+	text-align: center;
+	color: #777;
+
+	position: relative;
+	float: right;
+}
+
+#delete #trash-can {
+	width: 80%;
+	height: 80%;
+	border: 2px dashed #FFF;
+	border-radius: 5px;
+	background: url('https://mdn.mozillademos.org/files/6085/trash-can.png') no-repeat center;
+
+	position: absolute;
+	top: 10%;
+	left: 10%;
+
+	-moz-box-sizing: border-box;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+
+	transition: all 0.2s;
+}
+
+#delete[drag-state='enter'] {
+	background-color: #999;
+}
+
+/**
+ * 	Color Theme
+ */
+
+#color-theme {
+	margin: 0 8px 0 0;
+	border: 1px solid #EEE;
+	display: inline-block;
+	float: right;
+}
+
+#color-theme .box {
+	width: 80px;
+	height: 92px;
+	float: left;
+}
+
+/**
+ * Color info box
+ */
+#color-info {
+	width: 360px;
+	float: left;
+}
+
+#color-info .title {
+	width: 100%;
+	padding: 15px;
+	font-size: 18px;
+	text-align: center;
+	background-image: url('https://mdn.mozillademos.org/files/6071/color-wheel.png');
+	background-repeat:no-repeat;
+	background-position: center left 30%;
+}
+
+#color-info .copy-container {
+	position: absolute;
+	top: -100%;
+}
+
+#color-info .property {
+	min-width: 280px;
+	height: 30px;
+	margin: 10px 0;
+	text-align: center;
+	line-height: 30px;
+}
+
+#color-info .property > * {
+	float: left;
+}
+
+#color-info .property .type {
+	width: 60px;
+	height: 100%;
+	padding: 0 16px 0 0;
+	text-align: right;
+}
+
+#color-info .property .value {
+	width: 200px;
+	height: 100%;
+	padding: 0 10px;
+	font-family: "Segoe UI", Arial, Helvetica, sans-serif;
+	font-size: 16px;
+	color: #777;
+	text-align: center;
+	background-color: #FFF;
+	border: none;
+}
+
+#color-info .property .value:hover {
+	color: #37994A;
+}
+
+#color-info .property .value:hover + .copy {
+	background-position: center right;
+}
+
+#color-info .property .copy {
+	width: 24px;
+	height: 100%;
+	padding: 0 5px;
+	background-color: #FFF;
+	background-image: url('https://mdn.mozillademos.org/files/6073/copy.png');
+	background-repeat: no-repeat;
+	background-position: center left;
+	border-left: 1px solid #EEE;
+	text-align: right;
+	float: left;
+}
+
+#color-info .property .copy:hover {
+	background-position: center right;
+}
+
+
+/**
+ * 	Color Palette
+ */
+
+#palette {
+	width: 1000px;
+	padding: 10px 0;
+	background-image: url('https://mdn.mozillademos.org/files/6025/grain.png');
+	background-repeat: repeat;
+	background-color: #EEE;
+	color: #777;
+
+	-moz-box-sizing: border-box;
+	-webkit-box-sizing: border-box;
+	box-sizing: border-box;
+}
+
+#color-palette {
+	width: 640px;
+	font-family: Arial, Helvetica, sans-serif;
+	color: #777;
+	float: left;
+}
+
+#color-palette .container {
+	width: 100%;
+	height: 50px;
+	line-height: 50px;
+	overflow: hidden;
+	float: left;
+	transition: all 0.5s;
+}
+
+#color-palette .container > * {
+	float: left;
+}
+
+#color-palette .title {
+	width: 100px;
+	padding: 0 10px;
+	text-align: right;
+	line-height: inherit;
+}
+
+#color-palette .palette {
+	width: 456px;
+	height: 38px;
+	margin: 3px;
+	padding: 3px;
+	display: table;
+	background-color: #FFF;
+}
+
+#color-palette .palette .sample {
+	width: 30px;
+	height: 30px;
+	margin: 3px;
+	position: relative;
+	border: 1px solid #DDD;
+	float: left;
+	transition: all 0.2s;
+}
+
+#color-palette .palette .sample:hover {
+	cursor: pointer;
+	border-color: #BBB;
+	transform: scale(1.15);
+	border-radius: 3px;
+}
+
+#color-palette .controls {
+}
+
+#color-palette .controls > * {
+	float: left;
+}
+
+#color-palette .controls > *:hover {
+	cursor: pointer;
+}
+
+#color-palette .controls .lock {
+	width: 24px;
+	height: 24px;
+	margin: 10px;
+	padding: 3px;
+	background-image: url('https://mdn.mozillademos.org/files/6077/lock.png');
+	background-repeat: no-repeat;
+	background-position: bottom right;
+}
+
+#color-palette .controls .lock:hover {
+	/*background-image: url('images/unlocked-hover.png');*/
+	background-position: bottom left;
+}
+
+#color-palette .controls .lock[locked-state='true'] {
+	/*background-image: url('images/locked.png');*/
+	background-position: top left ;
+}
+
+#color-palette .controls .lock[locked-state='true']:hover {
+	/*background-image: url('images/lock-hover.png');*/
+	background-position: top right;
+}
+
+/**
+ * Canvas
+ */
+
+#canvas {
+	width: 100%;
+	height: 300px;
+	min-height: 250px;
+	border-top: 1px solid #DDD;
+	background-image: url('https://mdn.mozillademos.org/files/6025/grain.png');
+	background-repeat: repeat;
+	position: relative;
+	float: left;
+}
+
+#canvas[data-tutorial='drop'] {
+	text-align: center;
+	font-size: 30px;
+	color: #777;
+}
+
+#canvas[data-tutorial='drop']:before {
+	content: "Drop colors here to compare";
+	width: 40%;
+	padding: 30px 9% 70px 11%;
+
+	background-image: url('https://mdn.mozillademos.org/files/6075/drop.png');
+	background-repeat: no-repeat;
+	background-position: left 35px top 60%;
+
+	text-align: right;
+
+	border: 3px dashed rgb(221, 221, 221);
+	border-radius: 15px;
+
+	position: absolute;
+	top: 50px;
+	left: 20%;
+}
+
+#canvas[data-tutorial='drop']:after {
+	content: "adjust, change or modify";
+	width: 40%;
+	font-size: 24px;
+	position: absolute;
+	top: 130px;
+	left: 32%;
+	z-index: 2;
+}
+
+#canvas [data-tutorial='dblclick'] {
+	background-color: #999 !important;
+}
+
+#canvas [data-tutorial='dblclick']:before {
+	content: "double click to activate";
+	width: 80px;
+	color: #FFF;
+	position: absolute;
+	top: 10%;
+	left: 20%;
+	z-index: 2;
+}
+
+#canvas .sample {
+	width: 100px;
+	height: 100px;
+	min-width: 20px;
+	min-height: 20px;
+	position: absolute;
+	border: 1px solid rgba(255, 255, 255, 0.3);
+}
+
+#canvas .sample:hover {
+	cursor: move;
+}
+
+#canvas .sample[data-active='true']:after {
+	content: "";
+	position: absolute;
+	background: url('https://mdn.mozillademos.org/files/6065/arrow.png') center no-repeat;
+	width: 100%;
+	height: 12px;
+	top: -12px;
+	z-index: 2;
+}
+
+#canvas .sample:hover > * {
+	cursor: pointer;
+	display: block !important;
+}
+
+#canvas .sample .resize-handle {
+	display: none;
+}
+
+#canvas .sample .pick {
+	width: 10px;
+	height: 10px;
+	margin: 5px;
+	background: url('https://mdn.mozillademos.org/files/6079/pick.png') center no-repeat;
+	position: absolute;
+	top: 0;
+	left: 0;
+	display: none;
+}
+
+#canvas .sample .delete {
+	width: 10px;
+	height: 10px;
+	margin: 5px;
+	background: url('https://mdn.mozillademos.org/files/6069/close.png') center no-repeat;
+	position: absolute;
+	top: 0;
+	right: 0;
+	display: none;
+}
+
+
+/**
+ * Canvas controls
+ */
+
+#canvas .toggle-bg {
+	width: 16px;
+	height: 16px;
+	margin: 5px;
+	background: url("images/canvas-controls.png") center left no-repeat;
+	position: absolute;
+	top: 0;
+	right: 0;
+}
+
+#canvas .toggle-bg:hover {
+	cursor: pointer;
+}
+
+#canvas[data-bg='true'] {
+	background: none;
+}
+
+#canvas[data-bg='true'] .toggle-bg {
+	background: url('https://mdn.mozillademos.org/files/6067/canvas-controls.png') center right no-repeat;
+}
+
+#zindex {
+	height: 20px;
+	margin: 5px;
+	font-size: 16px;
+	position: absolute;
+	opacity: 0;
+	top: -10000px;
+	left: 0;
+	color: #777;
+	float: left;
+	transition: opacity 1s;
+}
+
+#zindex input {
+	border: 1px solid #DDD;
+	font-size: 16px;
+	color: #777;
+}
+
+#zindex .ui-input-slider-info {
+	width: 60px;
+}
+
+#zindex[data-active='true'] {
+	top: 0;
+	opacity: 1;
+}
+
+
+ +

JavaScript Content

+ +
'use strict';
+
+var UIColorPicker = (function UIColorPicker() {
+
+	function getElemById(id) {
+		return document.getElementById(id);
+	}
+
+	var subscribers = [];
+	var pickers = [];
+
+	/**
+	 * RGBA Color class
+	 *
+	 * HSV/HSB and HSL (hue, saturation, value / brightness, lightness)
+	 * @param hue			0-360
+	 * @param saturation	0-100
+	 * @param value 		0-100
+	 * @param lightness		0-100
+	 */
+
+	function Color(color) {
+
+		if(color instanceof Color === true) {
+			this.copy(color);
+			return;
+		}
+
+		this.r = 0;
+		this.g = 0;
+		this.b = 0;
+		this.a = 1;
+		this.hue = 0;
+		this.saturation = 0;
+		this.value = 0;
+		this.lightness = 0;
+		this.format = 'HSV';
+	}
+
+	function RGBColor(r, g, b) {
+		var color = new Color();
+		color.setRGBA(r, g, b, 1);
+		return color;
+	}
+
+	function RGBAColor(r, g, b, a) {
+		var color = new Color();
+		color.setRGBA(r, g, b, a);
+		return color;
+	}
+
+	function HSVColor(h, s, v) {
+		var color = new Color();
+		color.setHSV(h, s, v);
+		return color;
+	}
+
+	function HSVAColor(h, s, v, a) {
+		var color = new Color();
+		color.setHSV(h, s, v);
+		color.a = a;
+		return color;
+	}
+
+	function HSLColor(h, s, l) {
+		var color = new Color();
+		color.setHSL(h, s, l);
+		return color;
+	}
+
+	function HSLAColor(h, s, l, a) {
+		var color = new Color();
+		color.setHSL(h, s, l);
+		color.a = a;
+		return color;
+	}
+
+	Color.prototype.copy = function copy(obj) {
+		if(obj instanceof Color !== true) {
+			console.log('Typeof parameter not Color');
+			return;
+		}
+
+		this.r = obj.r;
+		this.g = obj.g;
+		this.b = obj.b;
+		this.a = obj.a;
+		this.hue = obj.hue;
+		this.saturation = obj.saturation;
+		this.value = obj.value;
+		this.format = '' + obj.format;
+		this.lightness = obj.lightness;
+	};
+
+	Color.prototype.setFormat = function setFormat(format) {
+		if (format === 'HSV')
+			this.format = 'HSV';
+		if (format === 'HSL')
+			this.format = 'HSL';
+	};
+
+	/*========== Methods to set Color Properties ==========*/
+
+	Color.prototype.isValidRGBValue = function isValidRGBValue(value) {
+		return (typeof(value) === 'number' && isNaN(value) === false &&
+			value >= 0 && value <= 255);
+	};
+
+	Color.prototype.setRGBA = function setRGBA(red, green, blue, alpha) {
+		if (this.isValidRGBValue(red) === false ||
+			this.isValidRGBValue(green) === false ||
+			this.isValidRGBValue(blue) === false)
+			return;
+
+			this.r = red | 0;
+			this.g = green | 0;
+			this.b = blue | 0;
+
+		if (this.isValidRGBValue(alpha) === true)
+			this.a = alpha | 0;
+	};
+
+	Color.prototype.setByName = function setByName(name, value) {
+		if (name === 'r' || name === 'g' || name === 'b') {
+			if(this.isValidRGBValue(value) === false)
+				return;
+
+			this[name] = value;
+			this.updateHSX();
+		}
+	};
+
+	Color.prototype.setHSV = function setHSV(hue, saturation, value) {
+		this.hue = hue;
+		this.saturation = saturation;
+		this.value = value;
+		this.HSVtoRGB();
+	};
+
+	Color.prototype.setHSL = function setHSL(hue, saturation, lightness) {
+		this.hue = hue;
+		this.saturation = saturation;
+		this.lightness = lightness;
+		this.HSLtoRGB();
+	};
+
+	Color.prototype.setHue = function setHue(value) {
+		if (typeof(value) !== 'number' || isNaN(value) === true ||
+			value < 0 || value > 359)
+			return;
+		this.hue = value;
+		this.updateRGB();
+	};
+
+	Color.prototype.setSaturation = function setSaturation(value) {
+		if (typeof(value) !== 'number' || isNaN(value) === true ||
+			value < 0 || value > 100)
+			return;
+		this.saturation = value;
+		this.updateRGB();
+	};
+
+	Color.prototype.setValue = function setValue(value) {
+		if (typeof(value) !== 'number' || isNaN(value) === true ||
+			value < 0 || value > 100)
+			return;
+		this.value = value;
+		this.HSVtoRGB();
+	};
+
+	Color.prototype.setLightness = function setLightness(value) {
+		if (typeof(value) !== 'number' || isNaN(value) === true ||
+			value < 0 || value > 100)
+			return;
+		this.lightness = value;
+		this.HSLtoRGB();
+	};
+
+	Color.prototype.setHexa = function setHexa(value) {
+		var valid  = /(^#{0,1}[0-9A-F]{6}$)|(^#{0,1}[0-9A-F]{3}$)/i.test(value);
+
+		if (valid !== true)
+			return;
+
+		if (value[0] === '#')
+			value = value.slice(1, value.length);
+
+		if (value.length === 3)
+			value = value.replace(/([0-9A-F])([0-9A-F])([0-9A-F])/i,'$1$1$2$2$3$3');
+
+		this.r = parseInt(value.substr(0, 2), 16);
+		this.g = parseInt(value.substr(2, 2), 16);
+		this.b = parseInt(value.substr(4, 2), 16);
+
+		this.alpha	= 1;
+		this.RGBtoHSV();
+	};
+
+	/*========== Conversion Methods ==========*/
+
+	Color.prototype.convertToHSL = function convertToHSL() {
+		if (this.format === 'HSL')
+			return;
+
+		this.setFormat('HSL');
+		this.RGBtoHSL();
+	};
+
+	Color.prototype.convertToHSV = function convertToHSV() {
+		if (this.format === 'HSV')
+			return;
+
+		this.setFormat('HSV');
+		this.RGBtoHSV();
+	};
+
+	/*========== Update Methods ==========*/
+
+	Color.prototype.updateRGB = function updateRGB() {
+		if (this.format === 'HSV') {
+			this.HSVtoRGB();
+			return;
+		}
+
+		if (this.format === 'HSL') {
+			this.HSLtoRGB();
+			return;
+		}
+	};
+
+	Color.prototype.updateHSX = function updateHSX() {
+		if (this.format === 'HSV') {
+			this.RGBtoHSV();
+			return;
+		}
+
+		if (this.format === 'HSL') {
+			this.RGBtoHSL();
+			return;
+		}
+	};
+
+	Color.prototype.HSVtoRGB = function HSVtoRGB() {
+		var sat = this.saturation / 100;
+		var value = this.value / 100;
+		var C = sat * value;
+		var H = this.hue / 60;
+		var X = C * (1 - Math.abs(H % 2 - 1));
+		var m = value - C;
+		var precision = 255;
+
+		C = (C + m) * precision | 0;
+		X = (X + m) * precision | 0;
+		m = m * precision | 0;
+
+		if (H >= 0 && H < 1) {	this.setRGBA(C, X, m);	return; }
+		if (H >= 1 && H < 2) {	this.setRGBA(X, C, m);	return; }
+		if (H >= 2 && H < 3) {	this.setRGBA(m, C, X);	return; }
+		if (H >= 3 && H < 4) {	this.setRGBA(m, X, C);	return; }
+		if (H >= 4 && H < 5) {	this.setRGBA(X, m, C);	return; }
+		if (H >= 5 && H < 6) {	this.setRGBA(C, m, X);	return; }
+	};
+
+	Color.prototype.HSLtoRGB = function HSLtoRGB() {
+		var sat = this.saturation / 100;
+		var light = this.lightness / 100;
+		var C = sat * (1 - Math.abs(2 * light - 1));
+		var H = this.hue / 60;
+		var X = C * (1 - Math.abs(H % 2 - 1));
+		var m = light - C/2;
+		var precision = 255;
+
+		C = (C + m) * precision | 0;
+		X = (X + m) * precision | 0;
+		m = m * precision | 0;
+
+		if (H >= 0 && H < 1) {	this.setRGBA(C, X, m);	return; }
+		if (H >= 1 && H < 2) {	this.setRGBA(X, C, m);	return; }
+		if (H >= 2 && H < 3) {	this.setRGBA(m, C, X);	return; }
+		if (H >= 3 && H < 4) {	this.setRGBA(m, X, C);	return; }
+		if (H >= 4 && H < 5) {	this.setRGBA(X, m, C);	return; }
+		if (H >= 5 && H < 6) {	this.setRGBA(C, m, X);	return; }
+	};
+
+	Color.prototype.RGBtoHSV = function RGBtoHSV() {
+		var red		= this.r / 255;
+		var green	= this.g / 255;
+		var blue	= this.b / 255;
+
+		var cmax = Math.max(red, green, blue);
+		var cmin = Math.min(red, green, blue);
+		var delta = cmax - cmin;
+		var hue = 0;
+		var saturation = 0;
+
+		if (delta) {
+			if (cmax === red ) { hue = ((green - blue) / delta); }
+			if (cmax === green ) { hue = 2 + (blue - red) / delta; }
+			if (cmax === blue ) { hue = 4 + (red - green) / delta; }
+			if (cmax) saturation = delta / cmax;
+		}
+
+		this.hue = 60 * hue | 0;
+		if (this.hue < 0) this.hue += 360;
+		this.saturation = (saturation * 100) | 0;
+		this.value = (cmax * 100) | 0;
+	};
+
+	Color.prototype.RGBtoHSL = function RGBtoHSL() {
+		var red		= this.r / 255;
+		var green	= this.g / 255;
+		var blue	= this.b / 255;
+
+		var cmax = Math.max(red, green, blue);
+		var cmin = Math.min(red, green, blue);
+		var delta = cmax - cmin;
+		var hue = 0;
+		var saturation = 0;
+		var lightness = (cmax + cmin) / 2;
+		var X = (1 - Math.abs(2 * lightness - 1));
+
+		if (delta) {
+			if (cmax === red ) { hue = ((green - blue) / delta); }
+			if (cmax === green ) { hue = 2 + (blue - red) / delta; }
+			if (cmax === blue ) { hue = 4 + (red - green) / delta; }
+			if (cmax) saturation = delta / X;
+		}
+
+		this.hue = 60 * hue | 0;
+		if (this.hue < 0) this.hue += 360;
+		this.saturation = (saturation * 100) | 0;
+		this.lightness = (lightness * 100) | 0;
+	};
+
+	/*========== Get Methods ==========*/
+
+	Color.prototype.getHexa = function getHexa() {
+		var r = this.r.toString(16);
+		var g = this.g.toString(16);
+		var b = this.b.toString(16);
+		if (this.r < 16) r = '0' + r;
+		if (this.g < 16) g = '0' + g;
+		if (this.b < 16) b = '0' + b;
+		var value = '#' + r + g + b;
+		return value.toUpperCase();
+	};
+
+	Color.prototype.getRGBA = function getRGBA() {
+
+		var rgb = '(' + this.r + ', ' + this.g + ', ' + this.b;
+		var a = '';
+		var v = '';
+		var x = parseFloat(this.a);
+		if (x !== 1) {
+			a = 'a';
+			v = ', ' + x;
+		}
+
+		var value = 'rgb' + a + rgb + v + ')';
+		return value;
+	};
+
+	Color.prototype.getHSLA = function getHSLA() {
+		if (this.format === 'HSV') {
+			var color = new Color(this);
+			color.setFormat('HSL');
+			color.updateHSX();
+			return color.getHSLA();
+		}
+
+		var a = '';
+		var v = '';
+		var hsl = '(' + this.hue + ', ' + this.saturation + '%, ' + this.lightness +'%';
+		var x = parseFloat(this.a);
+		if (x !== 1) {
+			a = 'a';
+			v = ', ' + x;
+		}
+
+		var value = 'hsl' + a + hsl + v + ')';
+		return value;
+	};
+
+	Color.prototype.getColor = function getColor() {
+		if (this.a | 0 === 1)
+			return this.getHexa();
+		return this.getRGBA();
+	};
+
+	/*=======================================================================*/
+	/*=======================================================================*/
+
+	/*========== Capture Mouse Movement ==========*/
+
+	var setMouseTracking = function setMouseTracking(elem, callback) {
+		elem.addEventListener('mousedown', function(e) {
+			callback(e);
+			document.addEventListener('mousemove', callback);
+		});
+
+		document.addEventListener('mouseup', function(e) {
+			document.removeEventListener('mousemove', callback);
+		});
+	};
+
+	/*====================*/
+	// Color Picker Class
+	/*====================*/
+
+	function ColorPicker(node) {
+		this.color = new Color();
+		this.node = node;
+		this.subscribers = [];
+
+		var type = this.node.getAttribute('data-mode');
+		var topic = this.node.getAttribute('data-topic');
+
+		this.topic = topic;
+		this.picker_mode = (type === 'HSL') ? 'HSL' : 'HSV';
+		this.color.setFormat(this.picker_mode);
+
+		this.createPickingArea();
+		this.createHueArea();
+
+		this.newInputComponent('H', 'hue', this.inputChangeHue.bind(this));
+		this.newInputComponent('S', 'saturation', this.inputChangeSaturation.bind(this));
+		this.newInputComponent('V', 'value', this.inputChangeValue.bind(this));
+		this.newInputComponent('L', 'lightness', this.inputChangeLightness.bind(this));
+
+		this.createAlphaArea();
+
+		this.newInputComponent('R', 'red', this.inputChangeRed.bind(this));
+		this.newInputComponent('G', 'green', this.inputChangeGreen.bind(this));
+		this.newInputComponent('B', 'blue', this.inputChangeBlue.bind(this));
+
+		this.createPreviewBox();
+		this.createChangeModeButton();
+
+		this.newInputComponent('alpha', 'alpha', this.inputChangeAlpha.bind(this));
+		this.newInputComponent('hexa', 'hexa', this.inputChangeHexa.bind(this));
+
+		this.setColor(this.color);
+		pickers[topic] = this;
+	}
+
+	/*************************************************************************/
+	//				Function for generating the color-picker
+	/*************************************************************************/
+
+	ColorPicker.prototype.createPickingArea = function createPickingArea() {
+		var area = document.createElement('div');
+		var picker = document.createElement('div');
+
+		area.className = 'picking-area';
+		picker.className = 'picker';
+
+		this.picking_area = area;
+		this.color_picker = picker;
+		setMouseTracking(area, this.updateColor.bind(this));
+
+		area.appendChild(picker);
+		this.node.appendChild(area);
+	};
+
+	ColorPicker.prototype.createHueArea = function createHueArea() {
+		var area = document.createElement('div');
+		var picker = document.createElement('div');
+
+		area.className = 'hue';
+		picker.className ='slider-picker';
+
+		this.hue_area = area;
+		this.hue_picker = picker;
+		setMouseTracking(area, this.updateHueSlider.bind(this));
+
+		area.appendChild(picker);
+		this.node.appendChild(area);
+	};
+
+	ColorPicker.prototype.createAlphaArea = function createAlphaArea() {
+		var area = document.createElement('div');
+		var mask = document.createElement('div');
+		var picker = document.createElement('div');
+
+		area.className = 'alpha';
+		mask.className = 'alpha-mask';
+		picker.className = 'slider-picker';
+
+		this.alpha_area = area;
+		this.alpha_mask = mask;
+		this.alpha_picker = picker;
+		setMouseTracking(area, this.updateAlphaSlider.bind(this));
+
+		area.appendChild(mask);
+		mask.appendChild(picker);
+		this.node.appendChild(area);
+	};
+
+	ColorPicker.prototype.createPreviewBox = function createPreviewBox(e) {
+		var preview_box = document.createElement('div');
+		var preview_color = document.createElement('div');
+
+		preview_box.className = 'preview';
+		preview_color.className = 'preview-color';
+
+		this.preview_color = preview_color;
+
+		preview_box.appendChild(preview_color);
+		this.node.appendChild(preview_box);
+	};
+
+	ColorPicker.prototype.newInputComponent = function newInputComponent(title, topic, onChangeFunc) {
+		var wrapper = document.createElement('div');
+		var input = document.createElement('input');
+		var info = document.createElement('span');
+
+		wrapper.className = 'input';
+		wrapper.setAttribute('data-topic', topic);
+		info.textContent = title;
+		info.className = 'name';
+		input.setAttribute('type', 'text');
+
+		wrapper.appendChild(info);
+		wrapper.appendChild(input);
+		this.node.appendChild(wrapper);
+
+		input.addEventListener('change', onChangeFunc);
+		input.addEventListener('click', function() {
+			this.select();
+		});
+
+		this.subscribe(topic, function(value) {
+			input.value = value;
+		});
+	};
+
+	ColorPicker.prototype.createChangeModeButton = function createChangeModeButton() {
+
+		var button = document.createElement('div');
+		button.className = 'switch_mode';
+		button.addEventListener('click', function() {
+			if (this.picker_mode === 'HSV')
+				this.setPickerMode('HSL');
+			else
+				this.setPickerMode('HSV');
+
+		}.bind(this));
+
+		this.node.appendChild(button);
+	};
+
+	/*************************************************************************/
+	//					Updates properties of UI elements
+	/*************************************************************************/
+
+	ColorPicker.prototype.updateColor = function updateColor(e) {
+		var x = e.pageX - this.picking_area.offsetLeft;
+		var y = e.pageY - this.picking_area.offsetTop;
+		var picker_offset = 5;
+
+		// width and height should be the same
+		var size = this.picking_area.clientWidth;
+
+		if (x > size) x = size;
+		if (y > size) y = size;
+		if (x < 0) x = 0;
+		if (y < 0) y = 0;
+
+		var value = 100 - (y * 100 / size) | 0;
+		var saturation = x * 100 / size | 0;
+
+		if (this.picker_mode === 'HSV')
+			this.color.setHSV(this.color.hue, saturation, value);
+		if (this.picker_mode === 'HSL')
+			this.color.setHSL(this.color.hue, saturation, value);
+
+		this.color_picker.style.left = x - picker_offset + 'px';
+		this.color_picker.style.top = y - picker_offset + 'px';
+
+		this.updateAlphaGradient();
+		this.updatePreviewColor();
+
+		this.notify('value', value);
+		this.notify('lightness', value);
+		this.notify('saturation', saturation);
+
+		this.notify('red', this.color.r);
+		this.notify('green', this.color.g);
+		this.notify('blue', this.color.b);
+		this.notify('hexa', this.color.getHexa());
+
+		notify(this.topic, this.color);
+	};
+
+	ColorPicker.prototype.updateHueSlider = function updateHueSlider(e) {
+		var x = e.pageX - this.hue_area.offsetLeft;
+		var width = this.hue_area.clientWidth;
+
+		if (x < 0) x = 0;
+		if (x > width) x = width;
+
+		// TODO 360 => 359
+		var hue = ((359 * x) / width) | 0;
+		// if (hue === 360) hue = 359;
+
+		this.updateSliderPosition(this.hue_picker, x);
+		this.setHue(hue);
+	};
+
+	ColorPicker.prototype.updateAlphaSlider = function updateAlphaSlider(e) {
+		var x = e.pageX - this.alpha_area.offsetLeft;
+		var width = this.alpha_area.clientWidth;
+
+		if (x < 0) x = 0;
+		if (x > width) x = width;
+
+		this.color.a = (x / width).toFixed(2);
+
+		this.updateSliderPosition(this.alpha_picker, x);
+		this.updatePreviewColor();
+
+		this.notify('alpha', this.color.a);
+		notify(this.topic, this.color);
+	};
+
+	ColorPicker.prototype.setHue = function setHue(value) {
+		this.color.setHue(value);
+
+		this.updatePickerBackground();
+		this.updateAlphaGradient();
+		this.updatePreviewColor();
+
+		this.notify('red', this.color.r);
+		this.notify('green', this.color.g);
+		this.notify('blue', this.color.b);
+		this.notify('hexa', this.color.getHexa());
+		this.notify('hue', this.color.hue);
+
+		notify(this.topic, this.color);
+	};
+
+	// Updates when one of Saturation/Value/Lightness changes
+	ColorPicker.prototype.updateSLV = function updateSLV() {
+		this.updatePickerPosition();
+		this.updateAlphaGradient();
+		this.updatePreviewColor();
+
+		this.notify('red', this.color.r);
+		this.notify('green', this.color.g);
+		this.notify('blue', this.color.b);
+		this.notify('hexa', this.color.getHexa());
+
+		notify(this.topic, this.color);
+	};
+
+	/*************************************************************************/
+	//				Update positions of various UI elements
+	/*************************************************************************/
+
+	ColorPicker.prototype.updatePickerPosition = function updatePickerPosition() {
+		var size = this.picking_area.clientWidth;
+		var value = 0;
+		var offset = 5;
+
+		if (this.picker_mode === 'HSV')
+			value = this.color.value;
+		if (this.picker_mode === 'HSL')
+			value = this.color.lightness;
+
+		var x = (this.color.saturation * size / 100) | 0;
+		var y = size - (value * size / 100) | 0;
+
+		this.color_picker.style.left = x - offset + 'px';
+		this.color_picker.style.top = y - offset + 'px';
+	};
+
+	ColorPicker.prototype.updateSliderPosition = function updateSliderPosition(elem, pos) {
+		elem.style.left = Math.max(pos - 3, -2) + 'px';
+	};
+
+	ColorPicker.prototype.updateHuePicker = function updateHuePicker() {
+		var size = this.hue_area.clientWidth;
+		var offset = 1;
+		var pos = (this.color.hue * size / 360 ) | 0;
+		this.hue_picker.style.left = pos - offset + 'px';
+	};
+
+	ColorPicker.prototype.updateAlphaPicker = function updateAlphaPicker() {
+		var size = this.alpha_area.clientWidth;
+		var offset = 1;
+		var pos = (this.color.a * size) | 0;
+		this.alpha_picker.style.left = pos - offset + 'px';
+	};
+
+	/*************************************************************************/
+	//						Update background colors
+	/*************************************************************************/
+
+	ColorPicker.prototype.updatePickerBackground = function updatePickerBackground() {
+		var nc = new Color(this.color);
+		nc.setHSV(nc.hue, 100, 100);
+		this.picking_area.style.backgroundColor = nc.getHexa();
+	};
+
+	ColorPicker.prototype.updateAlphaGradient = function updateAlphaGradient() {
+		this.alpha_mask.style.backgroundColor = this.color.getHexa();
+	};
+
+	ColorPicker.prototype.updatePreviewColor = function updatePreviewColor() {
+		this.preview_color.style.backgroundColor = this.color.getColor();
+	};
+
+	/*************************************************************************/
+	//						Update input elements
+	/*************************************************************************/
+
+	ColorPicker.prototype.inputChangeHue = function inputChangeHue(e) {
+		var value = parseInt(e.target.value);
+		this.setHue(value);
+		this.updateHuePicker();
+	};
+
+	ColorPicker.prototype.inputChangeSaturation = function inputChangeSaturation(e) {
+		var value = parseInt(e.target.value);
+		this.color.setSaturation(value);
+		e.target.value = this.color.saturation;
+		this.updateSLV();
+	};
+
+	ColorPicker.prototype.inputChangeValue = function inputChangeValue(e) {
+		var value = parseInt(e.target.value);
+		this.color.setValue(value);
+		e.target.value = this.color.value;
+		this.updateSLV();
+	};
+
+	ColorPicker.prototype.inputChangeLightness = function inputChangeLightness(e) {
+		var value = parseInt(e.target.value);
+		this.color.setLightness(value);
+		e.target.value = this.color.lightness;
+		this.updateSLV();
+	};
+
+	ColorPicker.prototype.inputChangeRed = function inputChangeRed(e) {
+		var value = parseInt(e.target.value);
+		this.color.setByName('r', value);
+		e.target.value = this.color.r;
+		this.setColor(this.color);
+	};
+
+	ColorPicker.prototype.inputChangeGreen = function inputChangeGreen(e) {
+		var value = parseInt(e.target.value);
+		this.color.setByName('g', value);
+		e.target.value = this.color.g;
+		this.setColor(this.color);
+	};
+
+	ColorPicker.prototype.inputChangeBlue = function inputChangeBlue(e) {
+		var value = parseInt(e.target.value);
+		this.color.setByName('b', value);
+		e.target.value = this.color.b;
+		this.setColor(this.color);
+	};
+
+	ColorPicker.prototype.inputChangeAlpha = function inputChangeAlpha(e) {
+		var value = parseFloat(e.target.value);
+
+		if (typeof value === 'number' && isNaN(value) === false &&
+			value >= 0 && value <= 1)
+			this.color.a = value.toFixed(2);
+
+		e.target.value = this.color.a;
+		this.updateAlphaPicker();
+	};
+
+	ColorPicker.prototype.inputChangeHexa = function inputChangeHexa(e) {
+		var value = e.target.value;
+		this.color.setHexa(value);
+		this.setColor(this.color);
+	};
+
+	/*************************************************************************/
+	//							Internal Pub/Sub
+	/*************************************************************************/
+
+	ColorPicker.prototype.subscribe = function subscribe(topic, callback) {
+		this.subscribers[topic] = callback;
+	};
+
+	ColorPicker.prototype.notify = function notify(topic, value) {
+		if (this.subscribers[topic])
+			this.subscribers[topic](value);
+	};
+
+	/*************************************************************************/
+	//							Set Picker Properties
+	/*************************************************************************/
+
+	ColorPicker.prototype.setColor = function setColor(color) {
+		if(color instanceof Color !== true) {
+			console.log('Typeof parameter not Color');
+			return;
+		}
+
+		if (color.format !== this.picker_mode) {
+			color.setFormat(this.picker_mode);
+			color.updateHSX();
+		}
+
+		this.color.copy(color);
+		this.updateHuePicker();
+		this.updatePickerPosition();
+		this.updatePickerBackground();
+		this.updateAlphaPicker();
+		this.updateAlphaGradient();
+		this.updatePreviewColor();
+
+		this.notify('red', this.color.r);
+		this.notify('green', this.color.g);
+		this.notify('blue', this.color.b);
+
+		this.notify('hue', this.color.hue);
+		this.notify('saturation', this.color.saturation);
+		this.notify('value', this.color.value);
+		this.notify('lightness', this.color.lightness);
+
+		this.notify('alpha', this.color.a);
+		this.notify('hexa', this.color.getHexa());
+		notify(this.topic, this.color);
+	};
+
+	ColorPicker.prototype.setPickerMode = function setPickerMode(mode) {
+		if (mode !== 'HSV' && mode !== 'HSL')
+			return;
+
+		this.picker_mode = mode;
+		this.node.setAttribute('data-mode', this.picker_mode);
+		this.setColor(this.color);
+	};
+
+	/*************************************************************************/
+	//								UNUSED
+	/*************************************************************************/
+
+	var setPickerMode = function setPickerMode(topic, mode) {
+		if (pickers[topic])
+			pickers[topic].setPickerMode(mode);
+	};
+
+	var setColor = function setColor(topic, color) {
+		if (pickers[topic])
+			pickers[topic].setColor(color);
+	};
+
+	var getColor = function getColor(topic) {
+		if (pickers[topic])
+			return new Color(pickers[topic].color);
+	};
+
+	var subscribe = function subscribe(topic, callback) {
+		if (subscribers[topic] === undefined)
+			subscribers[topic] = [];
+
+		subscribers[topic].push(callback);
+	};
+
+	var unsubscribe = function unsubscribe(callback) {
+		subscribers.indexOf(callback);
+		subscribers.splice(index, 1);
+	};
+
+	var notify = function notify(topic, value) {
+		if (subscribers[topic] === undefined || subscribers[topic].length === 0)
+			return;
+
+		var color = new Color(value);
+		for (var i in subscribers[topic])
+			subscribers[topic][i](color);
+	};
+
+	var init = function init() {
+		var elem = document.querySelectorAll('.ui-color-picker');
+		var size = elem.length;
+		for (var i = 0; i < size; i++)
+			new ColorPicker(elem[i]);
+	};
+
+	return {
+		init : init,
+		Color : Color,
+		RGBColor : RGBColor,
+		RGBAColor : RGBAColor,
+		HSVColor : HSVColor,
+		HSVAColor : HSVAColor,
+		HSLColor : HSLColor,
+		HSLAColor : HSLAColor,
+		setColor : setColor,
+		getColor : getColor,
+		subscribe : subscribe,
+		unsubscribe : unsubscribe,
+		setPickerMode : setPickerMode
+	};
+
+})();
+
+
+
+/**
+ * UI-SlidersManager
+ */
+
+var InputSliderManager = (function InputSliderManager() {
+
+	var subscribers = {};
+	var sliders = [];
+
+	var InputComponent = function InputComponent(obj) {
+		var input = document.createElement('input');
+		input.setAttribute('type', 'text');
+		input.style.width = 50 + obj.precision * 10 + 'px';
+
+		input.addEventListener('click', function(e) {
+			this.select();
+		});
+
+		input.addEventListener('change', function(e) {
+			var value = parseFloat(e.target.value);
+
+			if (isNaN(value) === true)
+				setValue(obj.topic, obj.value);
+			else
+				setValue(obj.topic, value);
+		});
+
+		return input;
+	};
+
+	var SliderComponent = function SliderComponent(obj, sign) {
+		var slider = document.createElement('div');
+		var startX = null;
+		var start_value = 0;
+
+		slider.addEventListener("click", function(e) {
+			document.removeEventListener("mousemove", sliderMotion);
+			setValue(obj.topic, obj.value + obj.step * sign);
+		});
+
+		slider.addEventListener("mousedown", function(e) {
+			startX = e.clientX;
+			start_value = obj.value;
+			document.body.style.cursor = "e-resize";
+
+			document.addEventListener("mouseup", slideEnd);
+			document.addEventListener("mousemove", sliderMotion);
+		});
+
+		var slideEnd = function slideEnd(e) {
+			document.removeEventListener("mousemove", sliderMotion);
+			document.body.style.cursor = "auto";
+			slider.style.cursor = "pointer";
+		};
+
+		var sliderMotion = function sliderMotion(e) {
+			slider.style.cursor = "e-resize";
+			var delta = (e.clientX - startX) / obj.sensivity | 0;
+			var value = delta * obj.step + start_value;
+			setValue(obj.topic, value);
+		};
+
+		return slider;
+	};
+
+	var InputSlider = function(node) {
+		var min		= parseFloat(node.getAttribute('data-min'));
+		var max		= parseFloat(node.getAttribute('data-max'));
+		var step	= parseFloat(node.getAttribute('data-step'));
+		var value	= parseFloat(node.getAttribute('data-value'));
+		var topic	= node.getAttribute('data-topic');
+		var unit	= node.getAttribute('data-unit');
+		var name 	= node.getAttribute('data-info');
+		var sensivity = node.getAttribute('data-sensivity') | 0;
+		var precision = node.getAttribute('data-precision') | 0;
+
+		this.min = isNaN(min) ? 0 : min;
+		this.max = isNaN(max) ? 100 : max;
+		this.precision = precision >= 0 ? precision : 0;
+		this.step = step < 0 || isNaN(step) ? 1 : step.toFixed(precision);
+		this.topic = topic;
+		this.node = node;
+		this.unit = unit === null ? '' : unit;
+		this.sensivity = sensivity > 0 ? sensivity : 5;
+		value = isNaN(value) ? this.min : value;
+
+		var input = new InputComponent(this);
+		var slider_left  = new SliderComponent(this, -1);
+		var slider_right = new SliderComponent(this,  1);
+
+		slider_left.className = 'ui-input-slider-left';
+		slider_right.className = 'ui-input-slider-right';
+
+		if (name) {
+			var info = document.createElement('span');
+			info.className = 'ui-input-slider-info';
+			info.textContent = name;
+			node.appendChild(info);
+		}
+
+		node.appendChild(slider_left);
+		node.appendChild(input);
+		node.appendChild(slider_right);
+
+		this.input = input;
+		sliders[topic] = this;
+		setValue(topic, value);
+	};
+
+	InputSlider.prototype.setInputValue = function setInputValue() {
+		this.input.value = this.value.toFixed(this.precision) + this.unit;
+	};
+
+	var setValue = function setValue(topic, value, send_notify) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		value = parseFloat(value.toFixed(slider.precision));
+
+		if (value > slider.max) value = slider.max;
+		if (value < slider.min)	value = slider.min;
+
+		slider.value = value;
+		slider.node.setAttribute('data-value', value);
+
+		slider.setInputValue();
+
+		if (send_notify === false)
+			return;
+
+		notify.call(slider);
+	};
+
+	var setMax = function setMax(topic, value) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		slider.max = value;
+		setValue(topic, slider.value);
+	};
+
+	var setMin = function setMin(topic, value) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		slider.min = value;
+		setValue(topic, slider.value);
+	};
+
+	var setUnit = function setUnit(topic, unit) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		slider.unit = unit;
+		setValue(topic, slider.value);
+	};
+
+	var setStep = function setStep(topic, value) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		slider.step = parseFloat(value);
+		setValue(topic, slider.value);
+	};
+
+	var setPrecision = function setPrecision(topic, value) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		value = value | 0;
+		slider.precision = value;
+
+		var step = parseFloat(slider.step.toFixed(value));
+		if (step === 0)
+			slider.step = 1 / Math.pow(10, value);
+
+		setValue(topic, slider.value);
+	};
+
+	var setSensivity = function setSensivity(topic, value) {
+		var slider = sliders[topic];
+		if (slider === undefined)
+			return;
+
+		value = value | 0;
+
+		slider.sensivity = value > 0 ? value : 5;
+	};
+
+	var getNode =  function getNode(topic) {
+		return sliders[topic].node;
+	};
+
+	var getPrecision =  function getPrecision(topic) {
+		return sliders[topic].precision;
+	};
+
+	var getStep =  function getStep(topic) {
+		return sliders[topic].step;
+	};
+
+	var subscribe = function subscribe(topic, callback) {
+		if (subscribers[topic] === undefined)
+			subscribers[topic] = [];
+		subscribers[topic].push(callback);
+	};
+
+	var unsubscribe = function unsubscribe(topic, callback) {
+		subscribers[topic].indexOf(callback);
+		subscribers[topic].splice(index, 1);
+	};
+
+	var notify = function notify() {
+		if (subscribers[this.topic] === undefined)
+			return;
+		for (var i = 0; i < subscribers[this.topic].length; i++)
+			subscribers[this.topic][i](this.value);
+	};
+
+	var createSlider = function createSlider(topic, label) {
+		var slider = document.createElement('div');
+		slider.className = 'ui-input-slider';
+		slider.setAttribute('data-topic', topic);
+
+		if (label !== undefined)
+			slider.setAttribute('data-info', label);
+
+		new InputSlider(slider);
+		return slider;
+	};
+
+	var init = function init() {
+		var elem = document.querySelectorAll('.ui-input-slider');
+		var size = elem.length;
+		for (var i = 0; i < size; i++)
+			new InputSlider(elem[i]);
+	};
+
+	return {
+		init : init,
+		setMax : setMax,
+		setMin : setMin,
+		setUnit : setUnit,
+		setStep : setStep,
+		getNode : getNode,
+		getStep : getStep,
+		setValue : setValue,
+		subscribe : subscribe,
+		unsubscribe : unsubscribe,
+		setPrecision : setPrecision,
+		setSensivity : setSensivity,
+		getPrecision : getPrecision,
+		createSlider : createSlider,
+	};
+
+})();
+
+
+'use strict';
+
+window.addEventListener("load", function() {
+	ColorPickerTool.init();
+});
+
+var ColorPickerTool = (function ColorPickerTool() {
+
+	/*========== Get DOM Element By ID ==========*/
+
+	function getElemById(id) {
+		return document.getElementById(id);
+	}
+
+	function allowDropEvent(e) {
+		e.preventDefault();
+	}
+
+	/*========== Make an element resizable relative to it's parent ==========*/
+
+	var UIComponent = (function UIComponent() {
+
+		function makeResizable(elem, axis) {
+			var valueX = 0;
+			var valueY = 0;
+			var action = 0;
+
+			var resizeStart = function resizeStart(e) {
+				e.stopPropagation();
+				e.preventDefault();
+				if (e.button !== 0)
+					return;
+
+				valueX = e.clientX - elem.clientWidth;
+				valueY = e.clientY - elem.clientHeight;
+
+				document.body.setAttribute('data-resize', axis);
+				document.addEventListener('mousemove', mouseMove);
+				document.addEventListener('mouseup', resizeEnd);
+			};
+
+			var mouseMove = function mouseMove(e) {
+				if (action >= 0)
+					elem.style.width = e.clientX - valueX + 'px';
+				if (action <= 0)
+					elem.style.height = e.clientY - valueY + 'px';
+			};
+
+			var resizeEnd = function resizeEnd(e) {
+				if (e.button !== 0)
+					return;
+
+				document.body.removeAttribute('data-resize', axis);
+				document.removeEventListener('mousemove', mouseMove);
+				document.removeEventListener('mouseup', resizeEnd);
+			};
+
+			var handle = document.createElement('div');
+			handle.className = 'resize-handle';
+
+			if (axis === 'width') action = 1;
+			else if (axis === 'height') action = -1;
+			else axis = 'both';
+
+			handle.className = 'resize-handle';
+			handle.setAttribute('data-resize', axis);
+			handle.addEventListener('mousedown', resizeStart);
+			elem.appendChild(handle);
+		};
+
+		/*========== Make an element draggable relative to it's parent ==========*/
+
+		var makeDraggable = function makeDraggable(elem, endFunction) {
+
+			var offsetTop;
+			var offsetLeft;
+
+			elem.setAttribute('data-draggable', 'true');
+
+			var dragStart = function dragStart(e) {
+				e.preventDefault();
+				e.stopPropagation();
+
+				if (e.target.getAttribute('data-draggable') !== 'true' ||
+					e.target !== elem || e.button !== 0)
+					return;
+
+				offsetLeft = e.clientX - elem.offsetLeft;
+				offsetTop = e.clientY - elem.offsetTop;
+
+				document.addEventListener('mousemove', mouseDrag);
+				document.addEventListener('mouseup', dragEnd);
+			};
+
+			var dragEnd = function dragEnd(e) {
+				if (e.button !== 0)
+					return;
+
+				document.removeEventListener('mousemove', mouseDrag);
+				document.removeEventListener('mouseup', dragEnd);
+			};
+
+			var mouseDrag = function mouseDrag(e) {
+				elem.style.left = e.clientX - offsetLeft + 'px';
+				elem.style.top = e.clientY - offsetTop + 'px';
+			};
+
+			elem.addEventListener('mousedown', dragStart, false);
+		};
+
+		return {
+			makeResizable : makeResizable,
+			makeDraggable : makeDraggable
+		};
+
+	})();
+
+	/*========== Color Class ==========*/
+
+	var Color = UIColorPicker.Color;
+	var HSLColor = UIColorPicker.HSLColor;
+
+	/**
+	 * ColorPalette
+	 */
+	var ColorPalette = (function ColorPalette() {
+
+		var samples = [];
+		var color_palette;
+		var complementary;
+
+		var hideNode = function(node) {
+			node.setAttribute('data-hidden', 'true');
+		};
+
+		var ColorSample = function ColorSample(id) {
+			var node = document.createElement('div');
+			node.className = 'sample';
+
+			this.uid = samples.length;
+			this.node = node;
+			this.color = new Color();
+
+			node.setAttribute('sample-id', this.uid);
+			node.setAttribute('draggable', 'true');
+			node.addEventListener('dragstart', this.dragStart.bind(this));
+			node.addEventListener('click', this.pickColor.bind(this));
+
+			samples.push(this);
+		};
+
+		ColorSample.prototype.updateBgColor = function updateBgColor() {
+			this.node.style.backgroundColor = this.color.getColor();
+		};
+
+		ColorSample.prototype.updateColor = function updateColor(color) {
+			this.color.copy(color);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.updateHue = function updateHue(color, degree, steps) {
+			this.color.copy(color);
+			var hue = (steps * degree + this.color.hue) % 360;
+			if (hue < 0) hue += 360;
+			this.color.setHue(hue);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.updateSaturation = function updateSaturation(color, value, steps) {
+			var saturation = color.saturation + value * steps;
+			if (saturation <= 0) {
+				this.node.setAttribute('data-hidden', 'true');
+				return;
+			}
+
+			this.node.removeAttribute('data-hidden');
+			this.color.copy(color);
+			this.color.setSaturation(saturation);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.updateLightness = function updateLightness(color, value, steps) {
+			var lightness = color.lightness + value * steps;
+			if (lightness <= 0) {
+				this.node.setAttribute('data-hidden', 'true');
+				return;
+			}
+			this.node.removeAttribute('data-hidden');
+			this.color.copy(color);
+			this.color.setLightness(lightness);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.updateBrightness = function updateBrightness(color, value, steps) {
+			var brightness = color.value + value * steps;
+			if (brightness <= 0) {
+				this.node.setAttribute('data-hidden', 'true');
+				return;
+			}
+			this.node.removeAttribute('data-hidden');
+			this.color.copy(color);
+			this.color.setValue(brightness);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.updateAlpha = function updateAlpha(color, value, steps) {
+			var alpha = parseFloat(color.a) + value * steps;
+			if (alpha <= 0) {
+				this.node.setAttribute('data-hidden', 'true');
+				return;
+			}
+			this.node.removeAttribute('data-hidden');
+			this.color.copy(color);
+			this.color.a = parseFloat(alpha.toFixed(2));
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.pickColor = function pickColor() {
+			UIColorPicker.setColor('picker', this.color);
+		};
+
+		ColorSample.prototype.dragStart = function dragStart(e) {
+			e.dataTransfer.setData('sampleID', this.uid);
+			e.dataTransfer.setData('location', 'palette-samples');
+		};
+
+		var Palette = function Palette(text, size) {
+			this.samples = [];
+			this.locked = false;
+
+			var palette = document.createElement('div');
+			var title = document.createElement('div');
+			var controls = document.createElement('div');
+			var container = document.createElement('div');
+			var lock = document.createElement('div');
+
+			container.className = 'container';
+			title.className = 'title';
+			palette.className = 'palette';
+			controls.className = 'controls';
+			lock.className = 'lock';
+			title.textContent = text;
+
+			controls.appendChild(lock);
+			container.appendChild(title);
+			container.appendChild(controls);
+			container.appendChild(palette);
+
+			lock.addEventListener('click', function () {
+				this.locked = !this.locked;
+				lock.setAttribute('locked-state', this.locked);
+			}.bind(this));
+
+			for(var i = 0; i < size; i++) {
+				var sample = new ColorSample();
+				this.samples.push(sample);
+				palette.appendChild(sample.node);
+			}
+
+			this.container = container;
+			this.title = title;
+		};
+
+		var createHuePalette = function createHuePalette() {
+			var palette = new Palette('Hue', 12);
+
+			UIColorPicker.subscribe('picker', function(color) {
+				if (palette.locked === true)
+					return;
+
+				for(var i = 0; i < 12; i++) {
+					palette.samples[i].updateHue(color, 30, i);
+				}
+			});
+
+			color_palette.appendChild(palette.container);
+		};
+
+		var createSaturationPalette = function createSaturationPalette() {
+			var palette = new Palette('Saturation', 11);
+
+			UIColorPicker.subscribe('picker', function(color) {
+				if (palette.locked === true)
+					return;
+
+				for(var i = 0; i < 11; i++) {
+					palette.samples[i].updateSaturation(color, -10, i);
+				}
+			});
+
+			color_palette.appendChild(palette.container);
+		};
+
+		/* Brightness or Lightness - depends on the picker mode */
+		var createVLPalette = function createSaturationPalette() {
+			var palette = new Palette('Lightness', 11);
+
+			UIColorPicker.subscribe('picker', function(color) {
+				if (palette.locked === true)
+					return;
+
+				if(color.format === 'HSL') {
+					palette.title.textContent = 'Lightness';
+					for(var i = 0; i < 11; i++)
+						palette.samples[i].updateLightness(color, -10, i);
+				}
+				else {
+					palette.title.textContent = 'Value';
+					for(var i = 0; i < 11; i++)
+						palette.samples[i].updateBrightness(color, -10, i);
+				}
+			});
+
+			color_palette.appendChild(palette.container);
+		};
+
+		var isBlankPalette = function isBlankPalette(container, value) {
+			if (value === 0) {
+				container.setAttribute('data-collapsed', 'true');
+				return true;
+			}
+
+			container.removeAttribute('data-collapsed');
+			return false;
+		};
+
+		var createAlphaPalette = function createAlphaPalette() {
+			var palette = new Palette('Alpha', 10);
+
+			UIColorPicker.subscribe('picker', function(color) {
+				if (palette.locked === true)
+					return;
+
+				for(var i = 0; i < 10; i++) {
+					palette.samples[i].updateAlpha(color, -0.1, i);
+				}
+			});
+
+			color_palette.appendChild(palette.container);
+		};
+
+		var getSampleColor = function getSampleColor(id) {
+			if (samples[id] !== undefined && samples[id]!== null)
+				return new Color(samples[id].color);
+		};
+
+		var init = function init() {
+			color_palette = getElemById('color-palette');
+
+			createHuePalette();
+			createSaturationPalette();
+			createVLPalette();
+			createAlphaPalette();
+
+		};
+
+		return {
+			init : init,
+			getSampleColor : getSampleColor
+		};
+
+	})();
+
+	/**
+	 * ColorInfo
+	 */
+	var ColorInfo = (function ColorInfo() {
+
+		var info_box;
+		var select;
+		var RGBA;
+		var HEXA;
+		var HSLA;
+
+		var updateInfo = function updateInfo(color) {
+			if (color.a | 0 === 1) {
+				RGBA.info.textContent = 'RGB';
+				HSLA.info.textContent = 'HSL';
+			}
+			else {
+				RGBA.info.textContent = 'RGBA';
+				HSLA.info.textContent = 'HSLA';
+			}
+
+			RGBA.value.value = color.getRGBA();
+			HSLA.value.value = color.getHSLA();
+			HEXA.value.value = color.getHexa();
+		};
+
+		var InfoProperty = function InfoProperty(info) {
+
+			var node = document.createElement('div');
+			var title = document.createElement('div');
+			var value = document.createElement('input');
+			var copy = document.createElement('div');
+
+			node.className = 'property';
+			title.className = 'type';
+			value.className = 'value';
+			copy.className = 'copy';
+
+			title.textContent = info;
+			value.setAttribute('type', 'text');
+
+			copy.addEventListener('click', function() {
+				value.select();
+			});
+
+			node.appendChild(title);
+			node.appendChild(value);
+			node.appendChild(copy);
+
+			this.node = node;
+			this.value = value;
+			this.info = title;
+
+			info_box.appendChild(node);
+		};
+
+		var init = function init() {
+
+			info_box = getElemById('color-info');
+
+			RGBA = new InfoProperty('RGBA');
+			HSLA = new InfoProperty('HSLA');
+			HEXA = new InfoProperty('HEXA');
+
+			UIColorPicker.subscribe('picker', updateInfo);
+
+		};
+
+		return {
+			init: init
+		};
+
+	})();
+
+	/**
+	 * ColorPicker Samples
+	 */
+	var ColorPickerSamples = (function ColorPickerSamples() {
+
+		var samples = [];
+		var nr_samples = 0;
+		var active = null;
+		var container = null;
+		var	samples_per_line = 10;
+		var trash_can = null;
+		var base_color = new HSLColor(0, 50, 100);
+		var add_btn;
+		var add_btn_pos;
+
+		var ColorSample = function ColorSample() {
+			var node = document.createElement('div');
+			node.className = 'sample';
+
+			this.uid = samples.length;
+			this.index = nr_samples++;
+			this.node = node;
+			this.color = new Color(base_color);
+
+			node.setAttribute('sample-id', this.uid);
+			node.setAttribute('draggable', 'true');
+
+			node.addEventListener('dragstart', this.dragStart.bind(this));
+			node.addEventListener('dragover' , allowDropEvent);
+			node.addEventListener('drop'     , this.dragDrop.bind(this));
+
+			this.updatePosition(this.index);
+			this.updateBgColor();
+			samples.push(this);
+		};
+
+		ColorSample.prototype.updateBgColor = function updateBgColor() {
+			this.node.style.backgroundColor = this.color.getColor();
+		};
+
+		ColorSample.prototype.updatePosition = function updatePosition(index) {
+			this.index = index;
+			this.posY = 5 + ((index / samples_per_line) | 0) * 52;
+			this.posX = 5 + ((index % samples_per_line) | 0) * 52;
+			this.node.style.top  = this.posY + 'px';
+			this.node.style.left = this.posX + 'px';
+		};
+
+		ColorSample.prototype.updateColor = function updateColor(color) {
+			this.color.copy(color);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.activate = function activate() {
+			UIColorPicker.setColor('picker', this.color);
+			this.node.setAttribute('data-active', 'true');
+		};
+
+		ColorSample.prototype.deactivate = function deactivate() {
+			this.node.removeAttribute('data-active');
+		};
+
+		ColorSample.prototype.dragStart = function dragStart(e) {
+			e.dataTransfer.setData('sampleID', this.uid);
+			e.dataTransfer.setData('location', 'picker-samples');
+		};
+
+		ColorSample.prototype.dragDrop = function dragDrop(e) {
+			e.stopPropagation();
+			this.color = Tool.getSampleColorFrom(e);
+			this.updateBgColor();
+		};
+
+		ColorSample.prototype.deleteSample = function deleteSample() {
+			container.removeChild(this.node);
+			samples[this.uid] = null;
+			nr_samples--;
+		};
+
+		var updateUI = function updateUI() {
+			updateContainerProp();
+
+			var index = 0;
+			var nr = samples.length;
+			for (var i=0; i < nr; i++)
+				if (samples[i] !== null) {
+					samples[i].updatePosition(index);
+					index++;
+				}
+
+			AddSampleButton.updatePosition(index);
+		};
+
+		var deleteSample = function deleteSample(e) {
+			trash_can.parentElement.setAttribute('drag-state', 'none');
+
+			var location = e.dataTransfer.getData('location');
+			if (location !== 'picker-samples')
+				return;
+
+			var sampleID = e.dataTransfer.getData('sampleID');
+			samples[sampleID].deleteSample();
+			console.log(samples);
+
+			updateUI();
+		};
+
+		var createDropSample = function createDropSample() {
+			var sample = document.createElement('div');
+			sample.id = 'drop-effect-sample';
+			sample.className = 'sample';
+			container.appendChild(sample);
+		};
+
+		var setActivateSample = function setActivateSample(e) {
+			if (e.target.className !== 'sample')
+				return;
+
+			unsetActiveSample(active);
+			Tool.unsetVoidSample();
+			CanvasSamples.unsetActiveSample();
+			active = samples[e.target.getAttribute('sample-id')];
+			active.activate();
+		};
+
+		var unsetActiveSample = function unsetActiveSample() {
+			if (active)
+				active.deactivate();
+			active = null;
+		};
+
+		var getSampleColor = function getSampleColor(id) {
+			if (samples[id] !== undefined && samples[id]!== null)
+				return new Color(samples[id].color);
+		};
+
+		var updateContainerProp = function updateContainerProp() {
+			samples_per_line = ((container.clientWidth - 5) / 52) | 0;
+			var height = 52 * (1 + (nr_samples / samples_per_line) | 0);
+			container.style.height = height + 10 + 'px';
+		};
+
+		var AddSampleButton = (function AddSampleButton() {
+			var node;
+			var _index = 0;
+			var _posX;
+			var _posY;
+
+			var updatePosition = function updatePosition(index) {
+				_index = index;
+				_posY = 5 + ((index / samples_per_line) | 0) * 52;
+				_posX = 5 + ((index % samples_per_line) | 0) * 52;
+
+				node.style.top  = _posY + 'px';
+				node.style.left = _posX + 'px';
+			};
+
+			var addButtonClick = function addButtonClick() {
+				var sample = new ColorSample();
+				container.appendChild(sample.node);
+				updatePosition(_index + 1);
+				updateUI();
+			};
+
+			var init = function init() {
+				node = document.createElement('div');
+				var icon = document.createElement('div');
+
+				node.className = 'sample';
+				icon.id = 'add-icon';
+				node.appendChild(icon);
+				node.addEventListener('click', addButtonClick);
+
+				updatePosition(0);
+				container.appendChild(node);
+			};
+
+			return {
+				init : init,
+				updatePosition : updatePosition
+			};
+		})();
+
+		var init = function init() {
+			container = getElemById('picker-samples');
+			trash_can = getElemById('trash-can');
+
+			AddSampleButton.init();
+
+			for (var i=0; i<16; i++) {
+				var sample = new ColorSample();
+				container.appendChild(sample.node);
+			}
+
+			AddSampleButton.updatePosition(samples.length);
+			updateUI();
+
+			active = samples[0];
+			active.activate();
+
+			container.addEventListener('click', setActivateSample);
+
+			trash_can.addEventListener('dragover', allowDropEvent);
+			trash_can.addEventListener('dragenter', function() {
+				this.parentElement.setAttribute('drag-state', 'enter');
+			});
+			trash_can.addEventListener('dragleave', function(e) {
+				this.parentElement.setAttribute('drag-state', 'none');
+			});
+			trash_can.addEventListener('drop', deleteSample);
+
+			UIColorPicker.subscribe('picker', function(color) {
+				if (active)
+					active.updateColor(color);
+			});
+
+		};
+
+		return {
+			init : init,
+			getSampleColor : getSampleColor,
+			unsetActiveSample : unsetActiveSample
+		};
+
+	})();
+
+	/**
+	 * Canvas Samples
+	 */
+	var CanvasSamples = (function CanvasSamples() {
+
+		var active = null;
+		var canvas = null;
+		var samples = [];
+		var zindex = null;
+		var tutorial = true;
+
+		var CanvasSample = function CanvasSample(color, posX, posY) {
+
+			var node = document.createElement('div');
+			var pick = document.createElement('div');
+			var delete_btn = document.createElement('div');
+			node.className = 'sample';
+			pick.className = 'pick';
+			delete_btn.className = 'delete';
+
+			this.uid = samples.length;
+			this.node = node;
+			this.color = color;
+			this.updateBgColor();
+			this.zIndex = 1;
+
+			node.style.top = posY - 50 + 'px';
+			node.style.left = posX - 50 + 'px';
+			node.setAttribute('sample-id', this.uid);
+
+			node.appendChild(pick);
+			node.appendChild(delete_btn);
+
+			var activate = function activate() {
+				setActiveSample(this);
+			}.bind(this);
+
+			node.addEventListener('dblclick', activate);
+			pick.addEventListener('click', activate);
+			delete_btn.addEventListener('click', this.deleteSample.bind(this));
+
+			UIComponent.makeDraggable(node);
+			UIComponent.makeResizable(node);
+
+			samples.push(this);
+			canvas.appendChild(node);
+			return this;
+		};
+
+		CanvasSample.prototype.updateBgColor = function updateBgColor() {
+			this.node.style.backgroundColor = this.color.getColor();
+		};
+
+		CanvasSample.prototype.updateColor = function updateColor(color) {
+			this.color.copy(color);
+			this.updateBgColor();
+		};
+
+		CanvasSample.prototype.updateZIndex = function updateZIndex(value) {
+			this.zIndex = value;
+			this.node.style.zIndex = value;
+		};
+
+		CanvasSample.prototype.activate = function activate() {
+			this.node.setAttribute('data-active', 'true');
+			zindex.setAttribute('data-active', 'true');
+
+			UIColorPicker.setColor('picker', this.color);
+			InputSliderManager.setValue('z-index', this.zIndex);
+		};
+
+		CanvasSample.prototype.deactivate = function deactivate() {
+			this.node.removeAttribute('data-active');
+			zindex.removeAttribute('data-active');
+		};
+
+		CanvasSample.prototype.deleteSample = function deleteSample() {
+			if (active === this)
+				unsetActiveSample();
+			canvas.removeChild(this.node);
+			samples[this.uid] = null;
+		};
+
+		CanvasSample.prototype.updatePosition = function updatePosition(posX, posY) {
+			this.node.style.top = posY - this.startY + 'px';
+			this.node.style.left = posX - this.startX + 'px';
+		};
+
+		var canvasDropEvent = function canvasDropEvent(e) {
+			var color = Tool.getSampleColorFrom(e);
+
+			if (color) {
+				var offsetX = e.pageX - canvas.offsetLeft;
+				var offsetY = e.pageY - canvas.offsetTop;
+				var sample = new CanvasSample(color, offsetX, offsetY);
+				if (tutorial) {
+					tutorial = false;
+					canvas.removeAttribute('data-tutorial');
+					var info = new CanvasSample(new Color(), 100, 100);
+					info.node.setAttribute('data-tutorial', 'dblclick');
+				}
+			}
+
+		};
+
+		var setActiveSample = function setActiveSample(sample) {
+			ColorPickerSamples.unsetActiveSample();
+			Tool.unsetVoidSample();
+			unsetActiveSample();
+			active = sample;
+			active.activate();
+		};
+
+		var unsetActiveSample = function unsetActiveSample() {
+			if (active)
+				active.deactivate();
+			active = null;
+		};
+
+		var createToggleBgButton = function createToggleBgButton() {
+			var button = document.createElement('div');
+			var state = false;
+			button.className = 'toggle-bg';
+			canvas.appendChild(button);
+
+			button.addEventListener('click', function() {
+				console.log(state);
+				state = !state;
+				canvas.setAttribute('data-bg', state);
+			});
+		};
+
+		var init = function init() {
+			canvas = getElemById('canvas');
+			zindex = getElemById('zindex');
+
+			canvas.addEventListener('dragover', allowDropEvent);
+			canvas.addEventListener('drop', canvasDropEvent);
+
+			createToggleBgButton();
+
+			UIColorPicker.subscribe('picker', function(color) {
+				if (active)	active.updateColor(color);
+			});
+
+			InputSliderManager.subscribe('z-index', function (value) {
+				if (active)	active.updateZIndex(value);
+			});
+
+			UIComponent.makeResizable(canvas, 'height');
+		};
+
+		return {
+			init : init,
+			unsetActiveSample : unsetActiveSample
+		};
+
+	})();
+
+	var StateButton = function StateButton(node, state) {
+		this.state = false;
+		this.callback = null;
+
+		node.addEventListener('click', function() {
+			this.state = !this.state;
+			if (typeof this.callback === "function")
+				this.callback(this.state);
+		}.bind(this));
+	};
+
+	StateButton.prototype.set = function set() {
+		this.state = true;
+		if (typeof this.callback === "function")
+			this.callback(this.state);
+	};
+
+	StateButton.prototype.unset = function unset() {
+		this.state = false;
+		if (typeof this.callback === "function")
+			this.callback(this.state);
+	};
+
+	StateButton.prototype.subscribe = function subscribe(func) {
+		this.callback = func;
+	};
+
+
+	/**
+	 * Tool
+	 */
+	var Tool = (function Tool() {
+
+		var samples = [];
+		var controls = null;
+		var void_sw;
+
+		var createPickerModeSwitch = function createPickerModeSwitch() {
+			var parent = getElemById('controls');
+			var icon = document.createElement('div');
+			var button = document.createElement('div');
+			var hsv = document.createElement('div');
+			var hsl = document.createElement('div');
+			var active = null;
+
+			icon.className = 'icon picker-icon';
+			button.className = 'switch';
+			button.appendChild(hsv);
+			button.appendChild(hsl);
+
+			hsv.textContent = 'HSV';
+			hsl.textContent = 'HSL';
+
+			active = hsl;
+			active.setAttribute('data-active', 'true');
+
+			function switchPickingModeTo(elem) {
+				active.removeAttribute('data-active');
+				active = elem;
+				active.setAttribute('data-active', 'true');
+				UIColorPicker.setPickerMode('picker', active.textContent);
+			};
+
+			var picker_sw = new StateButton(icon);
+			picker_sw.subscribe(function() {
+				if (active === hsv)
+					switchPickingModeTo(hsl);
+				else
+					switchPickingModeTo(hsv);
+			});
+
+			hsv.addEventListener('click', function() {
+				switchPickingModeTo(hsv);
+			});
+			hsl.addEventListener('click', function() {
+				switchPickingModeTo(hsl);
+			});
+
+			parent.appendChild(icon);
+			parent.appendChild(button);
+		};
+
+		var setPickerDragAndDrop = function setPickerDragAndDrop() {
+			var preview = document.querySelector('#picker .preview-color');
+			var picking_area = document.querySelector('#picker .picking-area');
+
+			preview.setAttribute('draggable', 'true');
+			preview.addEventListener('drop', drop);
+			preview.addEventListener('dragstart', dragStart);
+			preview.addEventListener('dragover', allowDropEvent);
+
+			picking_area.addEventListener('drop', drop);
+			picking_area.addEventListener('dragover', allowDropEvent);
+
+			function drop(e) {
+				var color = getSampleColorFrom(e);
+				UIColorPicker.setColor('picker', color);
+			};
+
+			function dragStart(e) {
+				e.dataTransfer.setData('sampleID', 'picker');
+				e.dataTransfer.setData('location', 'picker');
+			};
+		};
+
+		var getSampleColorFrom = function getSampleColorFrom(e) {
+			var sampleID = e.dataTransfer.getData('sampleID');
+			var location = e.dataTransfer.getData('location');
+
+			if (location === 'picker')
+				return UIColorPicker.getColor(sampleID);
+			if (location === 'picker-samples')
+				return ColorPickerSamples.getSampleColor(sampleID);
+			if (location === 'palette-samples')
+				return ColorPalette.getSampleColor(sampleID);
+		};
+
+		var setVoidSwitch = function setVoidSwitch() {
+			var void_sample = getElemById('void-sample');
+			void_sw = new StateButton(void_sample);
+			void_sw.subscribe( function (state) {
+				void_sample.setAttribute('data-active', state);
+				if (state === true) {
+					ColorPickerSamples.unsetActiveSample();
+					CanvasSamples.unsetActiveSample();
+				}
+			});
+		};
+
+		var unsetVoidSample = function unsetVoidSample() {
+			void_sw.unset();
+		};
+
+		var init = function init() {
+			controls = getElemById('controls');
+
+			var color = new Color();
+			color.setHSL(0, 51, 51);
+			UIColorPicker.setColor('picker', color);
+
+			setPickerDragAndDrop();
+			createPickerModeSwitch();
+			setVoidSwitch();
+		};
+
+		return {
+			init : init,
+			unsetVoidSample : unsetVoidSample,
+			getSampleColorFrom : getSampleColorFrom
+		};
+
+	})();
+
+	var init = function init() {
+		UIColorPicker.init();
+		InputSliderManager.init();
+		ColorInfo.init();
+		ColorPalette.init();
+		ColorPickerSamples.init();
+		CanvasSamples.init();
+		Tool.init();
+	};
+
+	return {
+		init : init
+	};
+
+})();
+
+
+
+ +

{{CSSRef}}

+ +

To narzędzie ułatwia tworzenie, wybieranie i eksperymentowanie z niestandadrowymi kolorami w sieci. Umożliwia także konwersję pomiędzy różnymi formatami kolorów obsługiwanymi przez CSS, w tym: kolory HEXA, RGB (Red/Green/Blue) i HSL (Hue/Saturation/Lightness). Możliwa jest też kontrola kanału alpha w formatach RGB (rgba) i HSL.

+ +

Każdy wybrany kolor prezentowany jest we wszystkich trzech standardowych formatach CSS . Dodatkowo, bazując na obecnie wybranym kolorze, tworzona jest paleta HSL, HSV oraz alpha. Okno wyboru koloru "zakraplacz" można przełączać pomiędzy formatami HSL i HSV. Przeciągając kolory do pojemnika na dole i poruszając nimi nad sobą możesz przetestować jak wyglądają obok siebie. Zmieniaj względną wartość z-index aby przesunąc kolor na wierzch lub schować za innym.

+ +

To narzędzie pozwoli ci odnależć idealne kolory CSS do wykorzystania w twoim HTML.

+ +
{{ EmbedLiveSample('ColorPicker_Tool', '100%', '900') }}
+ +

Wygenerowane kolory można użyć wszędzie gdzie potrzeba w obrębie CSS i HTML, chyba że stwierdzono inaczej.

+ +

Zobacz też

+ +

Więcej o używaniu kolrów, sprawdź:

+ + diff --git a/files/pl/web/css/css_flexible_box_layout/index.html b/files/pl/web/css/css_flexible_box_layout/index.html new file mode 100644 index 0000000000..ae8c92e4d8 --- /dev/null +++ b/files/pl/web/css/css_flexible_box_layout/index.html @@ -0,0 +1,156 @@ +--- +title: Elastyczny model pudełkowy CSS +slug: Web/CSS/CSS_Flexible_Box_Layout +translation_of: Web/CSS/CSS_Flexible_Box_Layout +--- +
{{CSSRef}}
+ +

Elastyczny model pudełkowy CSS jest modułem CSS definiującym model pudełkowy CSS zoptymalizowany do projektowania interfejsów użytkownika i układania elementów wzdłuż osi. W elastycznym modelu pudełkowym dzieci elastycznego kontenera mogą być ułożone w dowolnym kierunku oraz zmieniać swoje rozmiary albo rosnąc w celu zajęcia nieużytej przestrzeni albo kurcząc się by uniknąć przepełnienia kontenera. Zarówno horyzontalne jak i wertykalne ułożenie dzieci może być łatwo kontrolowane.

+ +

Prosty przykład

+ +

W poniższym przykładzie kontenerowi ustawiono display: flex co oznacza, że trójka dzieci stała się elastycznymi elementami. Wartość justify-content została ustawiona na space-between w celu równego rozproszenia elementów wzdłuż głównej osi. Między elementami umieszczona zostanie jednakowa ilość przestrzeni, a prawy i lewy element zostaną wypchnięte do krawędzi kontenera. Ponadto elementy są rozciągnięte na całą długość osi prostopadłej z powodu domyślnej wartości align-items wynoszącej stretch. Elementy rozciągają się do maksymanlej wysokości elastycznego kontenera sprawiając, że każdy z nich ma wysokość najwyższego.

+ +

{{EmbedGHLiveSample("css-examples/flexbox/basics/simple-example.html", '100%', 500)}}

+ +

Odnośniki

+ +

Atrybuty CSS

+ +
+ +
+ +

Słownik pojęć

+ +
+ +
+ +

Przewodniki

+ +
+
Podstawowe zagadnienia Flexboksa
+
Przegląd funkcji flexboksa
+
Powiązania flexboksa z innymi sposobami układu
+
Jak flexbox jest powiązany z innymi rodzajami układu i innymi specyfikacjami CSS
+
Rozmieszczanie elementów w elastycznym kontenerze
+
Jak atrybuty ustawiania elementów dziłają z flexboksem.
+
Kolejność elementów elastycznego kontenera
+
Wyjaśnienie różnych sposobów na zmienianie kolejności i kierunku elementów oraz omówienie potencjalnych problemów z tym związanych.
+
Kontrola proporcji elastycznych elementów wzdłuż osi głównej
+
Artykuł wyjaśniający atrybuty flex-grow, flex-shrink oraz flex-basis.
+
Przechodzenie elastycznych elementów do nowego wiersza
+
Tworzenie wielolinijkowych kontenerów flex oraz kontrola wyświetlania elementów w tych linijkach.
+
Typowe zastosowania flexboksa
+
Częste wzorce projektowe będące typowymi zastosowaniami flexboksa.
+
Kompatybilność wsteczna flexboksa
+
Stan flexboksa w przeglądarkach, problemy "interoperability", wsparcie starszych przeglądarek i wersji specyfikacji.
+
+ + + +

Specyfikacje

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Flexbox') }}{{ Spec2('CSS3 Flexbox') }}Initial definition.
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable()}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureFirefox (Gecko)ChromeInternet ExplorerOperaSafari
Basic support{{CompatGeckoDesktop("20.0")}}21.0{{property_prefix("-webkit")}}
+ 29.0
10.0{{property_prefix("-ms")}}
+ 11.0
12.106.1{{property_prefix("-webkit")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureFirefox Mobile (Gecko)AndroidIE PhoneOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown()}}4.41112.107.1{{property_prefix("-webkit")}}
+
+ +

 

+ +

Zobacz również

+ +
+
Flexbugs
+
tworzona przez społeczność lista błędów flexboksa w przeglądarkach i sposoby ich obejścia
+
Cross-browser Flexbox mixins
+
Artykuł zawierający zbiór mixinów dla tych którzy chcą stworzyć wieloprzeglądarkowe rozwiązania typu flexbox działające nawet w starszych przeglądarkach nie wspierających nowoczesnej składni flexbox.
+
+ +

 

diff --git a/files/pl/web/css/css_grid_layout/auto-placement_in_css_grid_layout/index.html b/files/pl/web/css/css_grid_layout/auto-placement_in_css_grid_layout/index.html new file mode 100644 index 0000000000..eb9d550390 --- /dev/null +++ b/files/pl/web/css/css_grid_layout/auto-placement_in_css_grid_layout/index.html @@ -0,0 +1,609 @@ +--- +title: Auto-placement in CSS Grid Layout +slug: Web/CSS/CSS_Grid_Layout/Auto-placement_in_CSS_Grid_Layout +translation_of: Web/CSS/CSS_Grid_Layout/Auto-placement_in_CSS_Grid_Layout +--- +

Poza możliwością umieszczania elementów

+ +
+ + +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(3, 1fr);
+  grid-gap: 10px;
+}
+
+ +
<div class="wrapper">
+  <div>One</div>
+  <div>Two</div>
+  <div>Three</div>
+  <div>Four</div>
+  <div>Five</div>
+</div>
+
+ +

{{ EmbedLiveSample('placement_1', '500', '230') }}

+
+ +

Default rules for auto-placement

+ +

As you can see with the above example, if you create a grid all child items will lay themselves out one into each grid cell. The default flow is to arrange items by row. Grid will lay an item out into each cell of row 1. If you have created additional rows using the grid-template-rows property then grid will continue placing items in these rows. If the grid does not have enough rows in the explicit grid to place all of the items new implicit rows will be created.

+ +

Sizing rows in the implicit grid

+ +

The default for automatically created rows in the implicit grid is for them to be auto-sized. This means that they will contain the content added to them without causing an overflow.

+ +

You can however control the size of these rows with the property grid-auto-rows. To cause all created rows to be 100 pixels tall for example you would use:

+ +
+ + +
<div class="wrapper">
+    <div>One</div>
+    <div>Two</div>
+    <div>Three</div>
+    <div>Four</div>
+    <div>Five</div>
+</div>
+
+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(3, 1fr);
+  grid-gap: 10px;
+  grid-auto-rows: 100px;
+}
+
+ +

{{ EmbedLiveSample('placement_2', '500', '330') }}

+
+ +

You can use {{cssxref("minmax","minmax()")}} in your value for {{cssxref("grid-auto-rows")}} enabling the creation of rows that are a minimum size but then grow to fit content if it is taller.

+ +
+ + +
<div class="wrapper">
+     <div>One</div>
+     <div>Two</div>
+     <div>Three</div>
+     <div>Four
+     <br>This cell
+     <br>Has extra
+     <br>content.
+     <br>Max is auto
+     <br>so the row expands.
+     </div>
+     <div>Five</div>
+</div>
+
+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(3, 1fr);
+  grid-gap: 10px;
+  grid-auto-rows: minmax(100px, auto);
+}
+
+ +

{{ EmbedLiveSample('placement_3', '500', '330') }}

+
+ +

You can also pass in a track listing, this will repeat. The following track listing will create an initial implicit row track as 100 pixels and a second as 200px. This will continue for as long as content is added to the implicit grid. Track listings are not supported in Firefox.

+ +
+ + +
<div class="wrapper">
+   <div>One</div>
+   <div>Two</div>
+   <div>Three</div>
+   <div>Four</div>
+   <div>Five</div>
+   <div>Six</div>
+   <div>Seven</div>
+   <div>Eight</div>
+</div>
+
+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(3, 1fr);
+  grid-gap: 10px;
+  grid-auto-rows: 100px 200px;
+}
+
+ +

{{ EmbedLiveSample('placement_4', '500', '330') }}

+
+ +

Auto-placement by column

+ +

You can also ask grid to auto-place items by column. Using the property {{cssxref("grid-auto-flow")}} with a value of column. In this case grid will add items in rows that you have defined using {{cssxref("grid-template-rows")}}. When it fills up a column it will move onto the next explicit column, or create a new column track in the implicit grid. As with implicit row tracks, these column tracks will be auto sized. You can control the size of implicit column tracks with {{cssxref("grid-auto-columns")}}, this works in the same way as {{cssxref("grid-auto-rows")}}.

+ +

In this next example I have created a grid with three row tracks of 200 pixels height. I am auto-placing by column and the columns created will be a column width of 300 pixels, then a column width of 100 pixels until there are enough column tracks to hold all of the items.

+ +
+
.wrapper {
+    display: grid;
+    grid-template-rows: repeat(3, 200px);
+    grid-gap: 10px;
+    grid-auto-flow: column;
+    grid-auto-columns: 300px 100px;
+}
+
+ + + +
<div class="wrapper">
+   <div>One</div>
+   <div>Two</div>
+   <div>Three</div>
+   <div>Four</div>
+   <div>Five</div>
+   <div>Six</div>
+   <div>Seven</div>
+   <div>Eight</div>
+</div>
+
+ +

{{ EmbedLiveSample('placement_5', '500', '640') }}

+
+ +

The order of auto placed items

+ +

A grid can contain a mixture of items. Some of the items may have a position on the grid, but others may be auto-placed. This can be helpful, if you have a document order that reflects the order in which items sit on the grid you may not need to write CSS rules to place absolutely everything. The specification contains a long section detailing the Grid item placement algorithm, however for most of us we just need to remember a few simple rules for our items.

+ +

Order modified document order

+ +

Grid places items that have not been given a grid position in what is described in the specification as “order modified document order”. This means that if you have used the order property at all, the items will be placed by that order, not their DOM order. Otherwise they will stay by default in the order that they are entered in the document source.

+ +

Items with placement properties

+ +

The first thing grid will do is place any items that have a position. In the example below I have 12 grid items. Item 2 and item 5 have been placed using line based placement on the grid. You can see how those items are placed and the other items then auto-place in the spaces. The auto-placed items will place themselves before the placed items in DOM order, they don’t start after the position of a placed item that comes before them.

+ +
+ + +
<div class="wrapper">
+   <div>One</div>
+   <div>Two</div>
+   <div>Three</div>
+   <div>Four</div>
+   <div>Five</div>
+   <div>Six</div>
+   <div>Seven</div>
+   <div>Eight</div>
+   <div>Nine</div>
+   <div>Ten</div>
+   <div>Eleven</div>
+   <div>Twelve</div>
+</div>
+
+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(4, 1fr);
+  grid-auto-rows: 100px;
+  grid-gap: 10px;
+}
+ .wrapper div:nth-child(2) {
+   grid-column: 3;
+   grid-row: 2 / 4;
+ }
+ .wrapper div:nth-child(5) {
+   grid-column: 1 / 3;
+   grid-row: 1 / 3;
+}
+
+ +

{{ EmbedLiveSample('placement_6', '500', '450') }}

+
+ +

Deal with items that span tracks

+ +

You can use placement properties while still taking advantage of auto-placement. In this next example I have added to the layout by setting odd items to span two tracks both for rows and columns. I do this with the {{cssxref("grid-column-end")}} and {{cssxref("grid-row-end")}} properties and setting the value of this to span 2. What this means is that the start line of the item will be set by auto-placement, and the end line will span two tracks.

+ +

You can see how this then leaves gaps in the grid, as for the auto-placed items if grid comes across an item that doesn’t fit into a track, it will move to the next row until it finds a space the item can fit in.

+ +
+ + +
<div class="wrapper">
+   <div>One</div>
+   <div>Two</div>
+   <div>Three</div>
+   <div>Four</div>
+   <div>Five</div>
+   <div>Six</div>
+   <div>Seven</div>
+   <div>Eight</div>
+   <div>Nine</div>
+   <div>Ten</div>
+   <div>Eleven</div>
+   <div>Twelve</div>
+</div>
+
+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(4, 1fr);
+  grid-auto-rows: 100px;
+  grid-gap: 10px;
+}
+.wrapper div:nth-child(4n+1) {
+  grid-column-end: span 2;
+  grid-row-end: span 2;
+  background-color: #ffa94d;
+}
+ .wrapper div:nth-child(2) {
+   grid-column: 3;
+   grid-row: 2 / 4;
+ }
+ .wrapper div:nth-child(5) {
+   grid-column: 1 / 3;
+   grid-row: 1 / 3;
+}
+
+ +

{{ EmbedLiveSample('placement_7', '500', '770') }}

+
+ +

Filling in the gaps

+ +

So far, other than items we have specifically placed, grid is always progressing forward and keeping items in DOM order. This is generally what you want, if you are laying out a form for example you wouldn’t want the labels and fields to become jumbled up in order to fill in some gap. However sometimes, we are laying things out that don’t have a logical order and we would like to create a layout that doesn’t have gaps in it.

+ +

To do this, add the property {{cssxref("grid-auto-flow")}} with a value of dense to the container. This is the same property you use to change the flow order to column, so if you were working in columns you would add both values grid-auto-flow: column dense.

+ +

Having done this, grid will now backfill the gaps, as it moves through the grid it leaves gaps as before, but then if it finds an item that will fit in a previous gap it will pick it up and take it out of DOM order to place it in the gap. As with any other reordering in grid this does not change the logical order. Tab order for example, will still follow the document order. We will take a look at the potential accessibility issues of Grid Layout in a later guide, but you should take care when creating this disconnect between the visual order and display order.

+ +
+ + +
<div class="wrapper">
+   <div>One</div>
+   <div>Two</div>
+   <div>Three</div>
+   <div>Four</div>
+   <div>Five</div>
+   <div>Six</div>
+   <div>Seven</div>
+   <div>Eight</div>
+   <div>Nine</div>
+   <div>Ten</div>
+   <div>Eleven</div>
+   <div>Twelve</div>
+</div>
+
+ +
.wrapper div:nth-child(4n+1) {
+  grid-column-end: span 2;
+  grid-row-end: span 2;
+  background-color: #ffa94d;
+}
+ .wrapper div:nth-child(2) {
+   grid-column: 3;
+   grid-row: 2 / 4;
+ }
+ .wrapper div:nth-child(5) {
+   grid-column: 1 / 3;
+   grid-row: 1 / 3;
+}
+.wrapper {
+  display: grid;
+  grid-template-columns: repeat(4, 1fr);
+  grid-auto-rows: 100px;
+  grid-gap: 10px;
+  grid-auto-flow: dense;
+}
+
+ +

{{ EmbedLiveSample('placement_8', '500', '730') }}

+
+ +

Anonymous grid items

+ +

There is a mention in the specification of anonymous grid items. These are created if you have a string of text inside your grid container, that is not wrapped in any other element. In the example below we have three grid items, assuming you had set the parent with a class of grid to display: grid. The first is an anonymous item as it has no enclosing markup, this item will always be dealt with via the auto-placement rules. The other two are grid items enclosed in a div, they might be auto-placed or you could place these with a positioning method onto your grid.

+ +
<div class="grid">
+  I am a string and will become an anonymous item
+  <div>A grid item</div>
+  <div>A grid item</div>
+</div>
+
+ +

Anonymous items are always auto-placed because there is no way to target them. Therefore if you have some unwrapped text for some reason in your grid, be aware that it might show up somewhere unexpected as it will be auto-placed according to the auto-placement rules.

+ +

Use cases for auto-placement

+ +

Auto-placement is useful whenever you have a collection of items. That could be items that do not have a logical order such as a gallery of photos, or product listing. In that case you might choose to use the dense packing mode to fill in any holes in your grid. In my image gallery example I have some landscape and some portrait images. I have set landscape images – with a class of landscape to span two column tracks. I then use grid-auto-flow: dense to create a densely packed grid.

+ +
+
.wrapper {
+    display: grid;
+    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
+    grid-gap: 10px;
+    grid-auto-flow: dense;
+    list-style: none;
+    margin: 1em auto;
+    padding: 0;
+    max-width: 800px;
+}
+.wrapper li {
+    border: 1px solid #ccc;
+}
+.wrapper li.landscape {
+    grid-column-end: span 2;
+}
+.wrapper li img {
+   display: block;
+   object-fit: cover;
+   width: 100%;
+   height: 100%;
+}
+
+ +
<ul class="wrapper">
+   <li><img src="https://placehold.it/200x300" alt="placeholder"></li>
+   <li class="landscape"><img src="https://placehold.it/350x200" alt="placeholder"></li>
+   <li class="landscape"><img src="https://placehold.it/350x200" alt="placeholder"></li>
+   <li class="landscape"><img src="https://placehold.it/350x200" alt="placeholder"></li>
+   <li><img src="https://placehold.it/200x300" alt="placeholder"></li>
+   <li><img src="https://placehold.it/200x300" alt="placeholder"></li>
+   <li class="landscape"><img src="https://placehold.it/350x200" alt="placeholder"></li>
+   <li><img src="https://placehold.it/200x300" alt="placeholder"></li>
+   <li><img src="https://placehold.it/200x300" alt="placeholder"></li>
+   <li><img src="https://placehold.it/200x300" alt="placeholder"></li>
+</ul>
+
+ +

{{ EmbedLiveSample('placement_9', '500', '1300') }}

+
+ +

Auto-placement can also help you lay out interface items which do have logical order. An example is the definition list in this next example. Definition lists are an interesting challenge to style as they are flat, there is nothing wrapping the groups of dt and dd items. In my example I am allowing auto-placement to place the items, however I have classes that start a dt in column 1, and dd in column 2, this ensure that terms go on one side and definitions on the other - no matter how many of each we have.

+ +
+ + +
<div class="wrapper">
+   <dl>
+       <dt>Mammals</dt>
+       <dd>Cat</dd>
+       <dd>Dog</dd>
+       <dd>Mouse</dd>
+       <dt>Fish</dt>
+       <dd>Guppy</dd>
+       <dt>Birds</dt>
+       <dd>Pied Wagtail</dd>
+       <dd>Owl</dd>
+   </dl>
+</div>
+
+ +
dl {
+  display: grid;
+  grid-template-columns: auto 1fr;
+  max-width: 300px;
+  margin: 1em;
+  line-height: 1.4;
+}
+dt {
+  grid-column: 1;
+  font-weight: bold;
+}
+dd {
+   grid-column: 2;
+ }
+
+ +

{{ EmbedLiveSample('placement_10', '500', '230') }}

+
+ +

What can’t we do with auto-placement (yet)?

+ +

There are a couple of things that often come up as questions. Currently we can’t do things like target every other cell of the grid with our items. A related issue may have already come to mind if you followed the last guide about named lines on the grid. It would be to define a rule that said “auto-place items against the next line named “n”, and grid would then skip other lines.There is an issue raised about this on the CSSWG GitHub repository, and you would be welcome to add your own use cases to this.

+ +

It may be that you come up with your own use cases for auto-placement or any other part of grid layout. If you do, raise them as issues or add to an existing issue that could solve your use case. This will help to make future versions of the specification better.

+ + diff --git a/files/pl/web/css/css_grid_layout/index.html b/files/pl/web/css/css_grid_layout/index.html new file mode 100644 index 0000000000..0894a70679 --- /dev/null +++ b/files/pl/web/css/css_grid_layout/index.html @@ -0,0 +1,245 @@ +--- +title: CSS Grid Layout +slug: Web/CSS/CSS_Grid_Layout +tags: + - CSS +translation_of: Web/CSS/CSS_Grid_Layout +--- +

CSS Grid Layout jest najlepszą metodą aby podzielić strone na części lub definiowanie relacji takich jak rozmiar, pozycja i warstwa, pomiędzy podstawowymi elementami HTML.

+ +

Podobnie do tabel (ang. "tables"), rozmieszczenie grid (ang. "siatka") pozwala autorowi wyrównać elementy w kolumny i wiersze. Jednakowoż grid pozwala na wiele więcej ułożeń niż tabele. Na przykład kontener grid potrafi spozycjonować elementy wewnątrz siebie w taki sposób aby na siebie nachodziły oraz używały warstw, podobnie jak elementy pozycjonowane przy użyciu CSS.

+ +

Przykład

+ +

Przykład poniżej pokazuje trzy kolumnową ścieżkę siatki z utworzonymi nowymi wierszami z ustawioną własnością minimalną na 100 pikseli i wartością maksymalną ustawioną na auto. Elementy zostały ustawione na siatce przy pomocy miejsc opartych na liniach siatki.

+ +
+ + +

HTML

+ +
<div class="wrapper">
+  <div class="one">Jeden</div>
+  <div class="two">Dwa</div>
+  <div class="three">Trzy</div>
+  <div class="four">Cztery</div>
+  <div class="five">Pięć</div>
+  <div class="six">Sześć</div>
+</div>
+ +

CSS

+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(3, 1fr);
+  grid-gap: 10px;
+  grid-auto-rows: minmax(100px, auto);
+}
+.one {
+  grid-column: 1 / 3;
+  grid-row: 1;
+}
+.two {
+  grid-column: 2 / 4;
+  grid-row: 1 / 3;
+}
+.three {
+  grid-column: 1;
+  grid-row: 2 / 5;
+}
+.four {
+  grid-column: 3;
+  grid-row: 3;
+}
+.five {
+  grid-column: 2;
+  grid-row: 4;
+}
+.six {
+  grid-column: 3;
+  grid-row: 4;
+}
+
+ +

{{ EmbedLiveSample('example', '500', '440') }}

+
+ +

Reference

+ +

Własności CSS

+ +
+ +
+ +

CSS functions

+ +
+ +
+ +

CSS data types

+ +
+ +
+ +

Glossary entries

+ +
+ +
+ +

Poradniki

+ +
+ +
+ +

Zewnętrzne źródła

+ + + +

Specyfikacja

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{ SpecName('CSS3 Grid') }}{{ Spec2('CSS3 Grid') }}Initial definition.
+ + diff --git a/files/pl/web/css/css_grid_layout/realizacja_typowych_ukladow_za_pomoca_ukladu_siatki_css/index.html b/files/pl/web/css/css_grid_layout/realizacja_typowych_ukladow_za_pomoca_ukladu_siatki_css/index.html new file mode 100644 index 0000000000..93ac130fce --- /dev/null +++ b/files/pl/web/css/css_grid_layout/realizacja_typowych_ukladow_za_pomoca_ukladu_siatki_css/index.html @@ -0,0 +1,594 @@ +--- +title: Projektowanie typowych układów za pomocą układu siatki CSS +slug: >- + Web/CSS/CSS_Grid_Layout/Realizacja_typowych_ukladow_za_pomoca_ukladu_siatki_CSS +translation_of: Web/CSS/CSS_Grid_Layout/Realizing_common_layouts_using_CSS_Grid_Layout +--- +

Na zakończenie tego zestawu poradników do Układów Siatki CSS (ang. CSS Grid Layout), przejdę przez kilka różnych układów, demonstrujących niektóre z  technik, których można użyć podczas projektowania z użyciem tej technologii. Przyjrzymy się przykładowi, korzystającemu z wartości grid-template-areas, typowemu 12-kolumnowemu systemowi elastycznej siatki, a także wykazowi produktów stworzonemu za pomocą automatycznego rozmieszczania. Jak wynika z wyżej przedstawionych przykładów, często istnieje więcej niż jeden sposób, aby osiągnąć pożądany efekt z układem siatki. Wybierz  tę metodę, która jest najbardziej pomocna w rozwiązaniu problemów przed którymi stoisz i  dla projektów, które realizujesz.

+ +

Responsywny układ strony korzystający z 1 do 3 kolumn o zmiennej pozycji elementów przy użyciu grid-template-areas

+ +

Znacząca część stron internetowych jest odmianą tego typu układu; zawierającego treść, panele boczne, nagłówek oraz stopkę. Podczas projektowania responsywnej witryny, możesz zechcieć wyświetlić stronę w układzie pojedynczej kolumny dla małych ekranów, dla  wyświetlacza o wartości granicznej dodać panel boczny, a dla najszerszych ekranów wprowadzić układ w trzech kolumnach.

+ +

Image of the three different layouts created by redefining our grid at two breakpoints.

+ +

Zamierzam stworzyć taki układ korzystając z  nazwanych pól szablonu, o których możecie dowiedzieć się więcej z kursu Grid template areas.

+ +

Mój szkielet  składa się z pojemnika zawierającego elementy z przeznaczeniem na: nagłówek i stopkę, główną zawartość strony, menu, panel boczny oraz blok przeznaczony na reklamę.

+ +
+ + +
<div class="wrapper">
+        <header class="main-head">The header</header>
+        <nav class="main-nav">
+            <ul>
+                <li><a href="">Nav 1</a></li>
+                <li><a href="">Nav 2</a></li>
+                <li><a href="">Nav 3</a></li>
+            </ul>
+        </nav>
+        <article class="content">
+            <h1>Main article area</h1>
+            <p>In this layout, we display the areas in source order for any screen less that 500 pixels wide. We go to a two column layout, and then to a three column layout by redefining the grid, and the placement of items on the grid.</p>
+        </article>
+        <aside class="side">Sidebar</aside>
+        <div class="ad">Advertising</div>
+        <footer class="main-footer">The footer</footer>
+</div>
+
+ +

Używamy cechy {{cssxref("grid-template-areas")}} by stworzyć układ strony. Nie korzystamy jeszcze z zapytań o środki dostępu (ang. media-queries). Musimy teraz nadać odpowiednie nazwy polom. Żeby to zrobić skorzystamy z właściwości {{cssxref("grid-area")}}.

+ +
.main-head {
+  grid-area: header;
+}
+.content {
+  grid-area: content;
+}
+.main-nav {
+  grid-area: nav;
+}
+.side {
+  grid-area: sidebar;
+}
+.ad {
+  grid-area: ad;
+}
+.main-footer {
+  grid-area: footer;
+}
+
+ +

Sama w sobie, operacja ta nie tworzy żadnego układu, aczkolwiek pozwala nam na to, dzięki nadanym nazwom.   Nadal nie korzystając z zapytań o urządzenie dostępu, nadam teraz stronie układ tworzony z myślą o wyświetlaczach mobilnych. W tym wypadku zachowam pierwotną kolejność elementów, taką jak w układzie szkieletu, starając się uniknąć najmniejszego rozdźwięku pomiędzy szablonem znaczników, a ukladem siatki, zgodnie z poradami zawartymi w Grid layout and accessibility. Nie definuję kolumn, ani rzędów, jednak taka stylizacja tworzy nam układ jednokolumnowy, co się zaś tyczy rzędów, zostaną stworzone samoistnie dla każdego elementu wskazanej siatki.

+ +
.wrapper {
+  display: grid;
+  grid-gap: 20px;
+  grid-template-areas:
+    "header"
+    "nav"
+    "content"
+    "sidebar"
+    "ad"
+    "footer";
+}
+
+ +

Zdefiniowany mobilny układ strony (jedna kolumna) będzie się teraz wyświetlał jednakowo na każdym urządzeniu, nieleżnie od jego rozmiarów. Żeby to zmienić możemy posłużyć się zapytaniem o środek dostępu i przedefiniować nasz układ na wypadek, gdyby pojawiło się wystarczająco dużo miejsca na ekranie, żeby zmieścić kolejną kolumnę.

+ +
@media (min-width: 500px) {
+  .wrapper {
+    grid-template-columns: 1fr 3fr;
+    grid-template-areas:
+      "header  header"
+      "nav     nav"
+      "sidebar content"
+      "ad      footer";
+  }
+  nav ul {
+    display: flex;
+    justify-content: space-between;
+  }
+}
+
+ +

Możesz zaobserwować, jak będzie wyglądał nowy układ przyglądając się wartości cechy {{cssxref("grid-template-areas")}}. Element header  (nagłówek) rozciąga się na dwie kolumny, tak, jak i element nav (menu). Wtrzecim rzędzie sąsiaduje element sidebar (panel boczny) oraz element content (zawartość strony). W czwartym rzędzie umieściłem element ad (blok reklamowy) zamiast panelu bocznego, a na samym końcu element footer (stopkę) rozciągnietą na cały piąty rząd. Użyłem elastycznego bloku (flexbox) dla menu, tak by wyświetliło się w oddalonym rzędzie.

+ +

Mogę teraz dodać ostatnią wartość graniczną, wyznaczającą przejście do układu w trzech kolumnach.

+ +
@media (min-width: 700px) {
+  .wrapper {
+    grid-template-columns: 1fr 4fr 1fr;
+    grid-template-areas:
+      "header header  header"
+      "nav    content sidebar"
+      "nav    content ad"
+      "footer footer  footer"
+   }
+   nav ul {
+     flex-direction: column;
+   }
+}
+
+ +

The three-column layout has two 1fr unit side columns and a middle column that has 4fr as the track size. This means that the available space in the container is split into 6 and assigned in proportion to our three tracks – one part each to the side columns and 4 parts to the center.

+ +

In this layout I am displaying the nav in the left column, alongside the content. In the right column we have the sidebar and underneath it the advertisements (ad). The footer now spans right across the bottom of the layout. I then use a flexbox to display the navigation as a column.

+ +

{{ EmbedLiveSample('layout_1', '800', '500') }}

+
+ +

This is a simple example but demonstrates how we can use a grid layout to rearrange our layout for different breakpoints. In particular I am changing the location of that ad block, as appropriate in my different column setups. I find this named areas method very helpful at a prototyping stage, it is easy to play around with the location of elements. You could always begin to use grid in this way for prototyping, even if you can’t rely on it fully in production due to the browsers that visit your site.

+ +

A flexible 12-column layout

+ +

If you have been working with one of the many frameworks or grid systems you may be accustomed to laying out your site on a 12- or 16-column flexible grid. We can create this type of system using CSS Grid Layout. As a simple example, I am creating a 12-column flexible grid that has 12 1fr-unit column tracks, they all have a start line named col-start. This means that we will have twelve grid lines named col-start.

+ +
+ + +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(12, [col-start] 1fr);
+  grid-gap: 20px;
+}
+
+ +

To demonstrate how this grid system works I have four child elements inside my wrapper.

+ +
<div class="wrapper">
+  <div class="item1">Start column line 1, span 3 column tracks.</div>
+  <div class="item2">Start column line 6, span 4 column tracks. 2 row tracks.</div>
+  <div class="item3">Start row 2 column line 2, span 2 column tracks.</div>
+  <div class="item4">Start at column line 3, span to the end of the grid (-1).</div>
+</div>
+
+ +

I can then place these on the grid using the named lines, and also the span keyword.

+ +
.item1 {
+  grid-column: col-start / span 3;
+}
+.item2 {
+  grid-column: col-start 6 / span 4 ;
+  grid-row: 1 / 3;
+}
+.item3 {
+  grid-column: col-start 2 / span 2;
+  grid-row: 2;
+}
+.item4 {
+  grid-column: col-start 3 / -1;
+  grid-row: 3;
+}
+
+ +

{{ EmbedLiveSample('layout_2', '800', '400') }}

+
+ +

As described in the guide to named lines, we are using the named line to place our item. As we have 12 lines all with the same name we use the name, and then the index of the line. You could also use the line index itself if you prefer and avoid using named lines at all.

+ +

Rather than setting the end line number, I have chosen to say how many tracks this element should span, using the span keyword. I like this approach as when working with a multiple-column layout system we usually think of blocks in terms of the number of tracks of the grid they span, and adjust that for different breakpoints. To see how the blocks align themselves to the tracks, use the Firefox Grid Inspector. It clearly demonstrates how our items are placed.

+ +

Showing the items placed on the grid with grid tracks highlighted.

+ +

There are some key differences with how a grid layout works over the grid systems you may have used previously. As you can see, we do not need to add any markup to create a row, grid systems need to do this to stop elements popping up into the row above. With CSS Grid Layout, we can place things into rows, with no danger of them rising up into the row above if it is left empty. Due to this strict column and row placement we can also easily leave white space in our layout. We also don’t need special classes to pull or push things, to indent them into the grid. All we need to do is specify the start and end line for the item.

+ +

Building a layout using the 12-column system

+ +

To see how this layout method works in practice, we can create the same layout that we created with {{cssxref("grid-template-areas")}}, this time using the 12-column grid system. I am starting with the same markup as used for the grid template areas example.

+ +
+ + +
<div class="wrapper">
+        <header class="main-head">The header</header>
+        <nav class="main-nav">
+            <ul>
+                <li><a href="">Nav 1</a></li>
+                <li><a href="">Nav 2</a></li>
+                <li><a href="">Nav 3</a></li>
+            </ul>
+        </nav>
+        <article class="content"><h1>Main article area</h1>
+        <p>In this layout, we display the areas in source order for any screen less that 500 pixels wide. We go to a two column layout, and then to a three column layout by redefining the grid, and the placement of items on the grid.</p></article>
+        <aside class="side">Sidebar</aside>
+        <div class="ad">Advertising</div>
+        <footer class="main-footer">The footer</footer>
+    </div>
+
+ +

I can then set up our grid, as for the example 12-column layout above.

+ +
.wrapper {
+  display: grid;
+  grid-template-columns: repeat(12, [col-start] 1fr);
+  grid-gap: 20px;
+}
+
+ +

We are once again going to make this a responsive layout, this time however using named lines. Every breakpoint will use a 12-column grid, however the number of tracks that items will span changes depending on the size of the screen.

+ +

We start mobile first, and all we want for the narrowest screens is for the items to remain in source order, and all span right across the grid.

+ +
.wrapper > * {
+  grid-column: col-start / span 12;
+}
+
+ +

At the next breakpoint we want to move to a two-column layout. Our header and navigation still span the full grid, so we do not need to specify any positioning for them. The sidebar is starting on the first column line named col-start, spanning 3 lines. It goes after row line 3, as the header and navigation are in the first two row tracks.

+ +

The ad panel is below the sidebar, so starts at grid row line 4. Then we have the content and footer starting at col-start 4 and spanning 9 tracks taking them to the end of the grid.

+ +
@media (min-width: 500px) {
+
+  .side {
+    grid-column: col-start / span 3;
+    grid-row: 3;
+  }
+  .ad {
+    grid-column: col-start / span 3;
+    grid-row: 4;
+  }
+  .content, .main-footer {
+    grid-column: col-start 4 / span 9;
+  }
+  nav ul {
+    display: flex;
+    justify-content: space-between;
+  }
+}
+
+ +

Finally we go to the three-column version of this layout. The header continues to span right across the grid, but now the navigation moves down to become the first sidebar, with the content and then the sidebar next to it. The footer now also spans across the full layout.

+ +
@media (min-width: 700px) {
+  .main-nav {
+    grid-column: col-start / span 2;
+    grid-row: 2 / 4;
+  }
+  .content {
+    grid-column: col-start 3 / span 8;
+    grid-row: 2 / 4;
+  }
+  .side {
+    grid-column: col-start 11 / span 2;
+    grid-row: 2;
+  }
+  .ad {
+    grid-column: col-start 11 / span 2;
+    grid-row: 3;
+  }
+  .main-footer {
+    grid-column: col-start / span 12;
+  }
+  nav ul {
+    flex-direction: column;
+  }
+}
+
+ +

{{ EmbedLiveSample('layout_3', '800', '450') }}

+
+ +

Once again the Grid Inspector is useful to help us see how our layout has taken shape.

+ +

Showing the layout with grid tracks highlighted by the grid inspector.

+ +

Something to note as we create this layout is that we haven’t needed to explicitly position every element on the grid at each breakpoint. We have been able to inherit the placement set up for earlier breakpoints – an advantage of working “mobile first”. We are also able to take advantage of grid auto-placement. By keeping elements in a logical order, auto-placement does quite a lot of work for us in placing items onto the grid. In the final example in this guide we will create a layout that entirely relies on auto-placement.

+ +

A product listing with auto-placement

+ +

Many layouts are essentially sets of “cards” – product listings, image galleries, and so on. A grid can make it very easy to create these listings in a way that is responsive without needing to add media queries to make it so. In this next example I’m combining CSS Grid and Flexbox Layouts to make a simple product listing layout.

+ +

The markup for my listing is an unordered list of items. Each item contains a heading, some text of varying height, and a call to action link.

+ +
+
<ul class="listing">
+  <li>
+    <h2>Item One</h2>
+    <div class="body"><p>The content of this listing item goes here.</p></div>
+    <div class="cta"><a href="">Call to action!</a></div>
+  </li>
+   <li>
+     <h2>Item Two</h2>
+     <div class="body"><p>The content of this listing item goes here.</p></div>
+     <div class="cta"><a href="">Call to action!</a></div>
+   </li>
+   <li class="wide">
+     <h2>Item Three</h2>
+     <div class="body"><p>The content of this listing item goes here.</p>
+     <p>This one has more text than the other items.</p>
+     <p>Quite a lot more</p>
+     <p>Perhaps we could do something different with it?</p></div>
+     <div class="cta"><a href="">Call to action!</a></div>
+    </li>
+    <li>
+     <h2>Item Four</h2>
+     <div class="body"><p>The content of this listing item goes here.</p></div>
+     <div class="cta"><a href="">Call to action!</a></div>
+    </li>
+     <li>
+     <h2>Item Five</h2>
+     <div class="body"><p>The content of this listing item goes here.</p></div>
+      <div class="cta"><a href="">Call to action!</a></div>
+    </li>
+</ul>
+
+ + + +

We are going to create a grid with a flexible number of flexible columns. I want them never to become smaller than 200 pixels, and then to share any available remaining space equally – so we always get equal width column tracks. We achieve this with the minmax() function in our repeat notation for track sizing.

+ +
.listing {
+  list-style: none;
+  margin: 2em;
+  display: grid;
+  grid-gap: 20px;
+  grid-template-columns: repeat(auto-fill,minmax(200px, 1fr));
+}
+
+ +

As soon as I add this CSS, the items start to lay out as a grid. If I make the window smaller or wider the number of column tracks changes – without me needing to add breakpoints using media queries and redefine the grid.

+ +

I can then tidy up the internals of the boxes using a little touch of flexbox. I set the list item to display: flex and the flex-direction to column. I can then use an auto margin on the .cta to push this bar down to the bottom of the box.

+ +
.listing li {
+  border: 1px solid #ffe066;
+  border-radius: 5px;
+  display: flex;
+  flex-direction: column;
+}
+.listing .cta {
+  margin-top: auto;
+  border-top: 1px solid #ffe066;
+  padding: 10px;
+  text-align: center;
+}
+.listing .body {
+  padding: 10px;
+}
+
+ +

This is really one of the key reasons I would use flexbox rather than grid, if I am just aligning or distributing something in a single dimension, that’s a flexbox use case. 

+ +

{{ EmbedLiveSample('layout_4', '800', '900') }}

+
+ +

This is all looking fairly complete now, however we sometimes have these cards which contain far more content than the others. It might be nice to cause those to span two tracks, and then they won’t be so tall. I have a class of wide on my larger item, and I add a rule {{cssxref("grid-column-end")}} with a value of span 2. Now when grid encounters this item, it will assign it two tracks. At some breakpoints, this means that we'll get a gap in the grid – where there isn’t space to lay out a two-track item.

+ +

The layout has gaps as there is not space to layout a two track item.

+ +

I can cause a grid to backfill those gaps by setting {{cssxref("grid-auto-flow")}}: dense on the grid container. Take care when doing this however as it does take items away from their logical source order. You should only do this if your items do not have a set order – and be aware of the issues of the tab order following the source and not your reordered display.

+ +
+ + +
.listing {
+  list-style: none;
+  margin: 2em;
+  display: grid;
+  grid-gap: 20px;
+  grid-auto-flow: dense;
+  grid-template-columns: repeat(auto-fill,minmax(200px, 1fr));
+}
+.listing .wide {
+  grid-column-end: span 2;
+}
+
+ +

{{ EmbedLiveSample('layout_5', '800', '900') }}

+ +

This technique of using auto-placement with some rules applied to certain items is very useful, and can help you to deal with content that is being output by a CMS for example, where you have repeated items and can perhaps add a class to certain ones as they are rendered into the HTML.

+
+ +

Further exploration

+ +

The best way to learn to use grid layout is to continue to build examples like the ones we have covered here. Pick something that you normally build using your framework of choice, or using floats, and see if you can build it using grid. Don’t forget to find examples that are impossible to build with current methods. That might mean taking inspiration from magazines or other non-web sources. Grid Layout opens up possibilities that we have not had before, we don’t need to be tied to the same old layouts to use it.

+ + + + diff --git a/files/pl/web/css/css_reference/index.html b/files/pl/web/css/css_reference/index.html new file mode 100644 index 0000000000..c6b8ea66c6 --- /dev/null +++ b/files/pl/web/css/css_reference/index.html @@ -0,0 +1,56 @@ +--- +title: Dokumentacja CSS +slug: Web/CSS/CSS_Reference +translation_of: Web/CSS/Reference +--- +

Specyfikacja CSS zawiera wszystkie standardowe właściwości CSS, w tym  pseudo-klas i pseudo-elementow, zasad używania znaku @i selektorów w porządku alfabetycznym. Taka organizacja specyfikacji pozwala na szybki dostęp do szczegółowych informacji o każdym elemencie specyfikacji.
+
+ Specyfikacja CSS nie tylko opisuje ustandaryzowane właściwości CSS1 i CSS2.1, ale odnosi się również do specyfikacji najnowszej wersji - CSS3, zarówno elementów w fazie koncepcji jak i elementów zatwierdzonych.

+
+ Zobacz także rozszerzenie CSS Mozilli skonstrułowanych dla programów opartych na Gecko, z prefiksem -moz; oraz rozszerzenia CSS WebKit dla programów opartych na tym silniku. Sprawdź zestawienie właściwości wszystko prefiksów CSS autorstwa Petera Beverloo.
+

 

+
+ {{ CSS_Ref() }}
+

Selektory

+ +

diverso

+ +

Pojęcia

+ diff --git a/files/pl/web/css/css_selectors/index.html b/files/pl/web/css/css_selectors/index.html new file mode 100644 index 0000000000..a93359f339 --- /dev/null +++ b/files/pl/web/css/css_selectors/index.html @@ -0,0 +1,133 @@ +--- +title: CSS selectors +slug: Web/CSS/CSS_Selectors +tags: + - CSS + - NeedsTranslation + - Overview + - Reference + - Selectors + - TopicStub +translation_of: Web/CSS/CSS_Selectors +--- +
{{CSSRef("Selectors")}}
+ +

CSS selectors define the elements to which a set of CSS rules apply.

+ +
+

Note: There are no selectors or combinators to select parent items, siblings of parents, or children of parent siblings.

+
+ +

Basic selectors

+ +
+
Universal selector
+
Selects all elements. Optionally, it may be restricted to a specific namespace or to all namespaces.
+ Syntax: * ns|* *|*
+ Example: * will match all the elements of the document.
+
Type selector
+
Selects all elements that have the given node name.
+ Syntax: elementname
+ Example: input will match any {{HTMLElement("input")}} element.
+
Class selector
+
Selects all elements that have the given class attribute.
+ Syntax: .classname
+ Example: .index will match any element that has a class of "index".
+
ID selector
+
Selects an element based on the value of its id attribute. There should be only one element with a given ID in a document.
+ Syntax: #idname
+ Example: #toc will match the element that has the ID "toc".
+
Attribute selector
+
Selects all elements that have the given attribute.
+ Syntax: [attr] [attr=value] [attr~=value] [attr|=value] [attr^=value] [attr$=value] [attr*=value]
+ Example: [autoplay] will match all elements that have the autoplay attribute set (to any value).
+
+ +

Grouping selectors

+ +
+
Selector list
+
The , is a grouping method, it selects all the matching nodes.
+ Syntax: A, B
+ Example: div, span will match both {{HTMLElement("span")}} and {{HTMLElement("div")}} elements.
+
+ +

Combinators

+ +
+
Descendant combinator
+
The   (space) combinator selects nodes that are descendants of the first element.
+ Syntax: A B
+ Example: div span will match all {{HTMLElement("span")}} elements that are inside a {{HTMLElement("div")}} element.
+
Child combinator
+
The > combinator selects nodes that are direct children of the first element.
+ Syntax: A > B
+ Example: ul > li will match all {{HTMLElement("li")}} elements that are nested directly inside a {{HTMLElement("ul")}} element.
+
General sibling combinator
+
The ~ combinator selects siblings. This means that the second element follows the first (though not necessarily immediately), and both share the same parent.
+ Syntax: A ~ B
+ Example: p ~ span will match all {{HTMLElement("span")}} elements that follow a {{HTMLElement("p")}}, immediately or not.
+
Adjacent sibling combinator
+
The + combinator selects adjacent siblings. This means that the second element directly follows the first, and both share the same parent.
+ Syntax: A + B
+ Example: h2 + p will match all {{HTMLElement("p")}} elements that directly follow an {{HTMLElement("h2")}}.
+
Column combinator {{Experimental_Inline}}
+
The || combinator selects nodes which belong to a column.
+ Syntax: A || B
+ Example: col || td will match all {{HTMLElement("td")}} elements that belong to the scope of the {{HTMLElement("col")}}.
+
+ +

Pseudo

+ +
+
Pseudo classes
+
The : pseudo allow the selection of elements based on state information that is not contained in the document tree.
+ Example: a:visited will match all {{HTMLElement("a")}} elements that have been visited by the user.
+
Pseudo elements
+
The :: pseudo represent entities that are not included in HTML.
+ Example: p::first-line will match the first line of all {{HTMLElement("p")}} elements.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("CSS4 Selectors")}}{{Spec2("CSS4 Selectors")}}Added the || column combinator, grid structural selectors, logical combinators, location, time-demensional, resource state, linguistic and UI pseudo-classes, modifier for ASCII case-sensitive and case-insensitive attribute value selection.
{{SpecName("CSS3 Selectors")}}{{Spec2("CSS3 Selectors")}}Added the ~ general sibling combinator and tree-structural pseudo-classes.
+ Made pseudo-elements use a :: double-colon prefix. Additional attribute selectors
{{SpecName("CSS2.1", "selector.html")}}{{Spec2("CSS2.1")}}Added the > child and + adjacent sibling combinators.
+ Added the universal and attribute selectors.
{{SpecName("CSS1")}}{{Spec2("CSS1")}}Initial definition.
+ +

See the pseudo-class and pseudo-element specification tables for details on those.

+ +

See also

+ + diff --git "a/files/pl/web/css/css_selectors/u\305\274ycie_pseudoklasy__colon_target_w_selektorach/index.html" "b/files/pl/web/css/css_selectors/u\305\274ycie_pseudoklasy__colon_target_w_selektorach/index.html" new file mode 100644 index 0000000000..ff4ec92e20 --- /dev/null +++ "b/files/pl/web/css/css_selectors/u\305\274ycie_pseudoklasy__colon_target_w_selektorach/index.html" @@ -0,0 +1,64 @@ +--- +title: 'Użycie pseudoklasy :target w selektorach' +slug: 'Web/CSS/CSS_Selectors/Użycie_pseudoklasy_:target_w_selektorach' +translation_of: 'Web/CSS/CSS_Selectors/Using_the_:target_pseudo-class_in_selectors' +--- +
{{CSSRef}}
+ +

Czasami adres URL wskazuje na konkretny fragment dokumentu, ale użytkownikowi może być ciężko to zauważyć. Sprawdź, jak można łatwo zwrócić uwagę użytkownika na target naszego adresu URL za pomocą CSS.

+ +

Wybór targetu

+ +

Pseudoklasy {{cssxref(":target")}} używa się, aby ostylować targetowany element adresu URL, który zawiera identyfikator fragmentu.

+ +

Przykładowo, adres URL http://developer.mozilla.org/en/docs/Using_the_:target_selector#example zawiera identyfikator fragmentu o treści #example. W HTML identyfikatory fragmentu to wartości atrybutów id lub name jako że atrybuty te dzielą tę samą przestrzeń na nazwy. A więc adres URL z naszego przykładu wskazywałby nam część strony o tytule "example".

+ +

Przypuśćmy, że chcesz ostylować każdy element h2, który jest targetem URL i nie chcesz, żeby elementy innego rodzaju dostały ostylowane w ten sposób. To proste:

+ +
h2:target { font-weight: bold; }
+ +

Można też stworzyć style, które dotyczą jedynie konkretnego fragmentu naszej strony. Robi się to używając tego samego identyfikatora, który znajduje się w naszym URL. Tak więc aby dodać obramowanie do fragmentu strony zawierającego element #example, napisalibyśmy:

+ +
#example:target { border: 1px solid black; }
+ +

Targetowanie wszystkich elementów

+ +

Jeżeli chcemy stworzyć uniwersalne stylowanie, którego będziemy używać do wszystkich targetowanych elementów, możemy użyć uniwersalnego selektora:

+ +
:target { color: red; }
+
+ +

Przykład

+ +

W poniższym przykładzie jest pięć odnośników, które przenoszą nas do różnych elementów należących do jednego dokumentu. Wybierając link "Pierwszy" sprawi, że <h1 id="one"> zostanie naszym pierwszym targetowanym elementem. Zwróć uwagę, że dokument zostać przewinięty przewinąć do nowej pozycji, jako że targetowane elementy umieszcza się w miarę możliwości na górze okna przeglądarki.

+ +
+
<h4 id="jeden">...</h4> <p id="dwa">...</p>
+<div id="trzy">...</div> <a id="cztery">...</a> <em id="piec">...</em>
+
+<a href="#jeden">Pierwszy</a>
+<a href="#dwa">Drugi</a>
+<a href="#trzy">Trzeci</a>
+<a href="#cztery">Czwarty</a>
+<a href="#piec">Piąty</a>
+
+ +

Podsumowanie

+ +

W przypadkach, gdy identyfikator fragmentu wskazuje na dany kawałek dokumentu, użytkownik może nie być pewny, którą część dokumentu ma czytać. Dzięki ostylowaniu targetu adresu URL można tego uniknąć.

+ + + + + +
+

Original Document Information

+ + +
diff --git a/files/pl/web/css/cursor/index.html b/files/pl/web/css/cursor/index.html new file mode 100644 index 0000000000..74575073a9 --- /dev/null +++ b/files/pl/web/css/cursor/index.html @@ -0,0 +1,156 @@ +--- +title: cursor +slug: Web/CSS/cursor +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/cursor +--- +

{{CSSRef}}

+ +

Podsumowanie

+ +

Własność cursor określa kursor myszy wyświetlany, kiedy wskaźnik myszy jest nad elementem.

+ +

{{cssinfo}}

+ +

Składnia

+ +
cursor: <std-cursor-name> | <url> [<x> <y>]? [, <url> [<x> <y>]?]* | {{ Cssxref("inherit") }} ;
+
+ +
cursor: [<url> [<x> <y>]?,]*  <std-cursor-name> ;
+
+ +

Wartości

+ +
+
<url> {{ mediawiki.external(' ') }}? 
+
URL własnego kursora. Może być podany więcej niż jeden w wypadku, kiedy niektóre typy obrazów nie są obsługiwane. Pozostałe adresy URL muszą być podane jako ostatnie. Zobacz Użycie wartości URL dla własności cursor po więcej informacji.
+
<std-cursor-name>
+
Jedna z nazw kursorów podanych w poniższej tabeli.
+
+ +
+
default 
+
domyślny kursor (zazwyczaj strzałka)
+
auto 
+
odpowiednik text, kiedy jest ponad tekstem i default w innych przypadkach
+
crosshair 
+
kursor w kształcie krzyżyka, często używany do wskazania zaznaczenia w bitmapie
+
pointer 
+
kursor używany nad linkami (zwykle ręka)
+
move 
+
kursor przenoszenia
+
e-resize 
+
kursor do zmiany rozmiaru prawej krawędzi pudełka
+
ne-resize 
+
kursor do zmiany rozmiaru górnego prawego rogu pudełka
+
nw-resize 
+
kursor do zmiany rozmiaru górnego lewego rogu pudełka
+
n-resize 
+
kursor do zmiany rozmiaru górnej krawędzi pudełka
+
se-resize 
+
kursor do zmiany rozmiaru dolnego prawego rogu pudełka
+
sw-resize 
+
kursor do zmiany rozmiaru dolnego lewego rogu pudełka
+
s-resize 
+
kursor do zmiany rozmiaru dolnej krawędzi pudełka
+
w-resize 
+
kursor do zmiany rozmiaru lewej krawędzi pudełka
+
text 
+
kursor wskazujący tekst, który może być zaznaczony (zwykle belka w kształcie I)
+
wait 
+
kursor wskazujący, że program jest zajęty (czasami klepsydra lub zegarek)
+
help 
+
kursor wskazujący, że dostępna jest pomoc
+
progress 
+
kursor wskazujący, że program jest jest zajęty, ale użytkownik może nadal oddziaływać z nim (w przeciwieństwie do busy)
+
copy 
+
kursor pokazujący, że coś może być skopiowane
+
alias 
+
kursor wskazujący, że alias lub skrót jest do utworzenia
+
context-menu 
+
kursor wskazujący, że menu kontekstowe jest dostępne pod kursorem
+
cell 
+
kursor wskazujący, że komórki mogą być zaznaczone
+
not-allowed 
+
kursor pokazujący, że coś nie może być zrobione
+
col-resize 
+
kursor do zmiany rozmiaru kolumn poziomo
+
row-resize 
+
kursor do zmiany rozmiaru wierszy pionowo
+
no-drop 
+
kursor pokazujący, że opuszczenie nie jest dozwolone w aktualnym położeniu
+
vertical-text 
+
kursor wskazujący, że poziomy tekst może być zaznaczony (zwykle boczna belka w kształcie I)
+
all-scroll 
+
kursor pokazujący, że coś może być przewijane w dowolnym kierunku (przesuwane)
+
nesw-resize 
+
kursor do zmiany rozmiaru w kierunkach górny prawy lub dolny lewy
+
nwse-resize 
+
kursor do zmiany rozmiaru w kierunkach górny lewy lub dolny prawy
+
ns-resize 
+
kursor do zmiany rozmiaru w górę lub w dół
+
ew-resize 
+
kursor do zmiany rozmiaru w lewo lub prawo
+
+ +

Przykłady

+ +

Zobacz przykład

+ +
Liniowy:
+
+<span style="cursor: crosshair">Jakiś tekst</span>
+
+Zewnętrzny:
+
+.pointer {
+	cursor: pointer;
+}
+.move {
+	cursor: move;
+}
+
+
+ +

Notatki

+ +

Ta własność działa na starszych przeglądarkach, jednak nie wszystkie wartości są w pełni wspierane.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Firefox1.5
Netscape6
Opera7
diff --git "a/files/pl/web/css/cursor/u\305\274ycie_warto\305\233ci_url_dla_w\305\202asno\305\233ci_cursor/index.html" "b/files/pl/web/css/cursor/u\305\274ycie_warto\305\233ci_url_dla_w\305\202asno\305\233ci_cursor/index.html" new file mode 100644 index 0000000000..f6e786ee52 --- /dev/null +++ "b/files/pl/web/css/cursor/u\305\274ycie_warto\305\233ci_url_dla_w\305\202asno\305\233ci_cursor/index.html" @@ -0,0 +1,41 @@ +--- +title: Użycie wartości URL dla własności cursor +slug: Web/CSS/cursor/Użycie_wartości_URL_dla_własności_cursor +tags: + - CSS + - CSS_2.1 + - Programowanie_WWW + - Programowanie_dla_wielu_przeglądarek + - Wszystkie_kategorie +translation_of: Web/CSS/CSS_Basic_User_Interface/Using_URL_values_for_the_cursor_property +--- +

 

+

Gecko 1.8 (Firefox 1.5, SeaMonkey 1.0) wspiera wartości URL dla własności cursor CSS 2/2.1. To pozwala używać zewnętrzne obrazki jako kursory myszy — można użyć każdego formatu wspieranego przez Gecko.

+

Składnia

+

Składnia dla tej własności:

+
cursor: [<url>,]* słowo_kluczowe;
+
+

To oznacza, że można podać zero lub więcej adresów URL (oddzielonych przecinkiem), a na końcu musi pojawić się jedno ze słów kluczowych zdefiniowanych w specyfikacji CSS, takie jak auto czy pointer.

+

Na przykład, taka wartość jest dozwolona:

+
cursor: url(foo.cur), url(http://www.example.com/bar.gif), auto;
+
+

Najpierw nastąpi próba pobrania pliku foo.cur. Jeżeli ten plik nie istnieje, lub jest nieprawidłowy z jakiegoś powodu, nastąpi próba pobrania bar.gif, a jeśli to się nie uda, zostanie użyta wartość auto.

+

Wsparcie dla składni CSS3 dla wartości własności cursor zostało dodane w Gecko 1.8beta3 (Deer Partk Alpha 2); zatem działa ono w Firefoksie 1.5. Pozwala to na określanie punktu wiązania kursora, który musi być wewnątrz wymiarów obrazka kursora; koordynaty na zewnątrz obrazka będą przybliżane do krawędzi (n.p. ujemna wartość będzie interpretowana jako 0, a wartości wykraczające poza wymiary obrazka będą przycinane do najbliższego piksela w obrazku). Jeśli nie zostaną podane, dla plików CUR i XBM wartości zostaną pobrane z plików, a dla pozostałych zostanie ustalony lewy górny róg obrazka. Przykładem składni CSS3 jest:

+
cursor: url(foo.png) 4 12, auto;
+
+

Pierwsza liczba to wartość x, a drugi y. W tym przypadku punkt wiązania zostanie ustawiony w pikselu (4,12) licząc od lewego górnego rogu (0,0).

+

Ograniczenia

+

Można używać wszystkich formatów obrazków wspieranych przez Gecko. To oznacza, że możesz użyć BMP, JPG, CUR, GIF, itp. Jednak ANI nie jest wspierane. I nawet, jeżeli zostanie podany animowany GIF, kursor nie będzie animowany. To ograniczenie zostanie usunięte w przyszłych wersjach.

+

Gecko, samo w sobie, nie tworzy żadnych ograniczeń, co do rozmiaru kursora. Jednak powinieneś ograniczyć obrazek do 32x32 dla maksymalnej kompatybilności z różnymi systemami operacyjnymi. W szczególności kursory większe, niż podany rozmiar nie będą działały na Windows 9x (95, 98, ME).

+

Przezroczyste kursory nie są wspierane na systemie Windows w wersjach wcześniejszych niż XP. To ograniczenie systemu operacyjnego. Przezroczystość działa na pozostałych platformach.

+

Tylko wydania Mozilli na platformy Windows, OS/2 i Linux (z GTK+ 2.4 lub nowszym) wspierają wartości URL dla kursorów. Wsparcie dla innych platform może zostać dodane w przyszłości (Mac OS: {{ Bug(286304) }}, QNX Neutrino: {{ Bug(286307) }}, XLib: {{ Bug(286309) }}, Qt: {{ Bug(286310) }}, BeOS: {{ Bug(298184) }}, Gtk 2.0/2.2: {{ Bug(308536) }})

+

Kompatybilność z innymi przeglądarkami

+

Microsoft Internet Explorer także wspiera wartości URI dla własności cursor. Jednak wspiera wyłącznie formaty CUR i ANI.

+

Jest także znacznie mniej restrykcyjny w zakresie składni. To oznacza, że wartości takie jak:

+
cursor: url(foo.cur);
+
+

lub:

+
cursor: url(foo.cur), pointer, url(bar.cur), auto;
+
+

będą działały w MSIE, ale nie będą w Gecko. Dla kompatybilności z Gecko i zgodności ze specyfikacja CSS, zawsze na początku należy podać URI, oraz użyć dokładnie jednego słowa kluczowego na końcu.

+

 

diff --git "a/files/pl/web/css/cz\304\231ste_pytania_o_css/index.html" "b/files/pl/web/css/cz\304\231ste_pytania_o_css/index.html" new file mode 100644 index 0000000000..12a84d8c20 --- /dev/null +++ "b/files/pl/web/css/cz\304\231ste_pytania_o_css/index.html" @@ -0,0 +1,162 @@ +--- +title: Częste pytania o CSS +slug: Web/CSS/Częste_pytania_o_CSS +tags: + - CSS + - Wszystkie_kategorie +translation_of: Learn/CSS/Howto/CSS_FAQ +--- +

+

+

Często zadawane pytania

+

Stworzyłem poprawny CSS, ale przeglądarka go źle wyświetla

+

Jeśli chcesz, aby Twoja przeglądarka poprawnie wyświetlała strony stworzone zgodnie ze standardami HTML/CSS, to musisz zadeklarować na początku każdego pliku HTML Deklarację Typu Dokumentu (DTD - Document Type Declaration). +

Nowoczesne przeglądarki obsługują dwa główne tryby wyświetlania: +

+ +

Jeśli Twoja deklaracja (DTD) jest niepełna, przestarzała lub jej brak, to przeglądarki będą wyświetlały strony używając trybu zgodności wstecznej. +

Oto lista najczęściej używanych DTD: +

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+"http://www.w3.org/TR/html4/strict.dtd">
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+

Różnice między id i class

+

Bloki i elementy HTML-a mogą mieć atrybut id i/lub class. Atrybut id pozwala nadać unikalną nazwę wybranemu elementowi. W jednym dokumencie nie może być dwóch elementów o tej samej nazwie (identyfikatorze). Atrybut class pozwala na grupowanie elementów w określonej klasie. Z założenia identyczny atrybut jest stosowany dla wielu elementów. CSS pozwala zdefiniować style, które mają być użyte do elementów z odpowiednim atrybutem id i/lub class. +

Używaj styli zależnych od id, gdy chcesz ograniczyć ich działanie do konkretnego bloku lub elementu. Dla przykładu - dobrym miejscem na użycie atrybutu id jest blok, w którym umieszczamy menu, ponieważ występuje on tylko raz na stronie. +

Używaj atrybutu class, gdy chcesz aby ten sam styl był stosowany do grupy elementów. +

Zobacz Selektory CSS +

+

Przywracanie domyślnej wartości własności

+

W CSS2 nie ma możliwości ustawienia standardowej wartości dla własności CSS. Jedyna droga, aby przywrócić standardową wartość, to przedeklarowanie (musisz znać standardową wartość, ponieważ CSS nie posiada słowa kluczowego default) +

Musisz zachować szczególną ostrożność pisząc reguły stylów, gdy używasz selektorów (np. selektorów po nazwie znacznika jak na przykład p), które możesz chcieć nadpisać bardziej szczegółowymi regułami (jak te przy użyciu ID lub selektorów klas), ponieważ oryginalna standardowa wartość nie może być automatycznie odzyskana. +

Z powodu kaskadowej natury CSS dobrą praktyką jest definiowanie reguł stylów najszczegółowiej jak się tylko da, żeby wpływały tylko na to, co chcesz. +

+

Style pochodne

+

CSS nie pozwala na definiowanie stylów w regułach innego, głównie z powodu user agents performance issues (Eric Meyer words about it). +

W każdym razie, dobrze zorganizowany dokument HTML nie potrzebuje zagnieżdżonych stylów, dzięki kaskadowej naturze stylów. W rzeczywistości, jeśli potrzebujesz dokonać drobnej zmiany konkretnej reguły, stwórz oddzielną regułę zawierającą tylko zmiany. W HTML-u zastosuj główną regułę, a potem tą ze zmianami (patrz następna sekcja na temat przydzielania kilku klas). +

+

Przydzielanie kilku klas

+

Elementy HTML-a mogą być opisane przez kilka klas. Robi się to wymieniając nazwy kolejnych klas w atrybucie class, oddzielając kolejne nazwy spacjami. +

+
<style type="text/css">
+.firstclass { background: black; color: white; }
+.secondclass { font-weight: bold; }
+</style>
+
+<div class="firstclass secondclass">
+... treść ...
+... treść ...
+... treść ...
+</div>
+
+

Jeśli ta sama własność jest zadeklarowana w dwóch regułach, to konflikt rozwiązywany jest najpierw poprzez ich specyfikę, a później kolejność w arkuszu stylów. Kolejność klas w atrybucie class jest nieistotna. +

+

Własności stylów, które nie działają

+

Często się zdarza, że poprawnie zdefiniowane style są ignorowane. Nie wynika to ani z błędu przeglądarki, ani z błędnej składni w CSS. Zwykle jest to zachowanie jak najbardziej prawidłowe, wynikające bezpośrednio ze składni i kolejności intepretacji reguł CSS. +

Najczęstsze powody ignorowania niektórych styli to: +

+ +

Aby zlokalizować omówiony powyżej problem narzędziem zwanym " Inspektor DOM", w którym będziemy mogli zobaczyć jego lokalizację. +

Hierarchia elementów HTML-a +

Sposób, w jaki style CSS są stosowane do elementów HTML, zależy od hierarchii samych elementów HTML. Ważne jest, aby to zapamiętać, ponieważ reguła potomka jest zawsze ważniejsza od reguły elementu nadrzędnego. +

+
#section { font-weight: bold; }
+.redtext { font-weight: normal; color: red; }
+
+<div id="section">
+   To jest pogrubiony tekst
+   <span class="redtext"> ten ma normalną grubość, lecz jest czerwony,</span>
+   i znów pogrubiony
+</div>
+
+

Wydaje się to dość oczywiste, gdyż wynika z prostoty kaskadowych arkuszy stylów. Gdy w przypadku skomplikowanych hierarchii HTML jakaś reguła wydaje sie być ignorowana, najpierw sprawdź, czy podejrzany element nie jest wewnątrz innego ze zdefiniowanym innym stylem. +


+Przedefiniowywanie reguł stylów +

W arkuszach stylów kolejność jest istotna. W praktyce, jeśli zdefiniujesz regułę, a następnie zmienisz tą definicję w dalszej części arkusza stylów to użyta będzie ostatnia definicja. +

+
#sekcja { font-weight: bold; }
+.czerwony_tekst { color: red; }
+/* inne reguły                         */
+/*             inne reguły             */
+/*                         inne reguły */
+.czerwony_tekst { font-weight: normal; }
+
+<div id="sekcja">
+   Ten tekst jest pogrubiony,
+   <span class="redtext"> ten jest normalny i czerwony,</span>
+   a ten znów pogrubiony.
+</div>
+
+

Aby uniknąć tego typu błędów, spróbuj definiować reguły tylko raz dla konkretnego selektora i należącej do niego grupy reguł. +


+Używanie skrótów własności +

Używanie skrótów własności do definiowania reguł stylów jest dobre, ponieważ używa zwięzłej składni. Używanie ~shorthand~ tylko z niektórymi atrybutami jest możliwe i poprawne, ale trzeba pamiętać, że niezadeklarowane atrybuty są automatycznie resetowane do wartości standardowych. Oznacza to, że poprzednia reguła dla pojedynczego atrybutu może być bezwarunkowo nadpisana. +

+
#sekcja { font-size: 12px; font-family: Verdana; font-weight: bold; }
+.czerwony_tekst { font: 14px Arial; color: red; }
+
+<div id="sekcja">
+   To jest pogrubiona 12-o pikselowa Verdana,
+   <span class="czerwony_tekst">to jest normalny 14-o pikselowy, czerwony Arial,</span>
+   i znów 12-o pikselowa Verdana
+</div>
+
+

W poprzednim przykładnie problem w regułach należących do różnych elementów, ale to samo może się zdarzyć dla tego samego elementu, ponieważ kolejność reguł jest istotna. +

+
#sekcja {
+   font-weight: bold;
+   font: 12px Verdana;  /* skrót nadpisuje pogrubienie i zwraca normalny */
+}
+
+


+Używanie selektora: * +

Selektor gwiazdki (*) pozwala na odniesienie się do dowolnego elementu i powinien być używany ze szczególną ostrożnością, ponieważ może być trudne kontrolowanie elementów, do których reguły są dodawane. +

+
body * { font-weight: normal; }
+#sekcja { font: 12px Verdana; }
+.pogrubiony_tekst { font-weight: bold; }
+.czerwony_tekst { color: red; }
+
+<div id="sekcja">
+   Ten jest normalny,
+   <span class="pogrubiony_tekst">
+      <span class="czerwony_tekst"> ten jest normalny i czerwony,</span>
+   </span>
+   i znów normalny.
+</div>
+
+

W tym przykładzie body * pozwala na zastosowanie reguł do wszystkich elementów wewnątrz body, na każdym poziomie hierarchii - także do czerwony_tekst. Tak więc font-weight: bold; zastosowany do klasy pogrubiony_tekst jest nadpisane przez font-weight: normal; klasy czerwony_tekst. +

Starszeństwo w CSS +

Gdy stosowane są różne reguły dla konkretnego elementu to która z nich zostanie zastosowana zależy od starszeństwa stylów. Style inline (liniowe, takie jak span) są interpretowane na początku, potem te oparte na identyfikatorze (id), następnie klasie (class) i ewentualnie znajdujące się wewnątrz elementu (style=""). +


+

+
div { color: black; }
+#pomaranczowy { color: orange; }
+.zielony { color: green; }
+
+<div id="pomaranczowy" class="zielony" style="color: red;">To jest czerwony tekst</div>
+
+

Więcej informacji na temat działania selektorów można znaleźć w sieci → CSS 2.1 Specification chapter 6.4.3 +

+

Co wykonuje własność -moz-*?

+

Zobacz: Rozszerzenia CSS Mozilli. +

+
+
+{{ languages( { "en": "en/Common_CSS_Questions", "zh-tw": "zh_tw/CSS_\u4e00\u822c\u554f\u984c" } ) }} diff --git a/files/pl/web/css/direction/index.html b/files/pl/web/css/direction/index.html new file mode 100644 index 0000000000..cc214c0395 --- /dev/null +++ b/files/pl/web/css/direction/index.html @@ -0,0 +1,50 @@ +--- +title: direction +slug: Web/CSS/direction +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/direction +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

Własność direction powinna być ustawiana w celu dobrania kierunku tekstu: rtl dla hebrajskiego lub arabskiego tekstu oraz ltr dla innych pism. Normalnie powinno być to robione raczej jako cześć dokumentu (np. poprzez użycie atrybutu dir w HTML) niż poprzez bezpośrednie użycie CSS. +

Własność ustawia bazowy kierunek tekstu elementów blokowych oraz kierunek osadzonych utworzonych przez własność {{ Cssxref("unicode-bidi") }}. Ustawia również domyślne wyrównanie tekstu i elementów blokowych oraz kierunek, w jakim komórki następują w wierszu tabeli. +

+ +

Składnia

+
direction: [ 'ltr' | 'rtl' | inherit ] ;
+
+

Wartości

+
ltr 
Domyślna wartość direction. Tekst i inne elementy idą od lewej do prawej, +
rtl 
Tekst i inne elementy idą od prawej do lewej. +
+

Aby własność direction miała jakiś efekt w elementach inline, wartością własności {{ Cssxref("unicode-bidi") }} musi być 'embed' lub 'override'. +

+

Przykłady

+
blockquote {
+  direction : rtl ;
+}
+
+

Notatki

+

W odróżnieniu od atrybutu dir w HTML, własność direction nie jest dziedziczona od kolumn tabeli do komórek tabeli, ponieważ dziedziczenie CSS spływa po drzewie dokumentu, a komórki tabeli są wewnątrz wierszy, ale nie wewnątrz kolumn. +

+

Specyfikacje

+ +

Zobacz także

+

{{ Cssxref("unicode-bidi") }} +

+
+
+{{ languages( { "en": "en/CSS/direction", "es": "es/CSS/direction", "fr": "fr/CSS/direction" } ) }} diff --git a/files/pl/web/css/display/index.html b/files/pl/web/css/display/index.html new file mode 100644 index 0000000000..1c85584a65 --- /dev/null +++ b/files/pl/web/css/display/index.html @@ -0,0 +1,168 @@ +--- +title: display +slug: Web/CSS/display +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/display +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Ta własność określa typ wyświetlania pudełka używanego dla elementu. W języku takim jak HTML, gdzie istniejące elementy mają dobrze określone zachowanie, domyślne wartości własności 'display' są brane z zachowań opisanych w specyfikacji HTML lub z domyślnego arkusza stylu przeglądarki/użytkownika. W językach, gdzie zachowanie 'display' nie jest zdefiniowane (jak XML), domyślną wartością jest 'inline'.

+ +

Oprócz wielu różnych dozwolonych typów wyświetlania pudełka, jedna wartość, "none", pozwala wyłączyć wyświetlanie elementu; wszystkie elementy potomne również mają wyłączone wyświetlanie. Dokument jest wyświetlany jak gdyby element nie istniał w drzewie dokumentu. Ta wartość daje potężne możliwości, ale powinna być używana z ostrożnością.

+ + + +

Składnia

+ +

display: <display-value> | {{ Cssxref("inherit") }}

+ +

Wartości

+ +
+
<display-value> 
+
Wartością 'display' może być jedna z poniższych wartości.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Przykłady

+ +

Zobacz przykład

+ +
Ext/Doc: p  { display: block }
+In-Line:  <p STYLE="display: block">text</p>
+
+ +

Uwagi

+ + + +
Elementy blokowe kontra elementy liniowe
+ + + + + +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + +
BrowserLowest Version
Internet Explorer4
Netscape4
Opera3.5
+ +

Wartości table-* są wspierane w Firefoksie i ???.

+ +

Wartości compact oraz run-in nie są wspierane w Firefoksie. Wspierane są w ???.

+ +

Wartości inline-block oraz inline-table są wstępnie wspierane w Firefoksie 3 / Gecko 1.9. inline-block jest również wspierane w ???, a inline-table jest również wspieranie w ???.

+ +

Zobacz także

+ +

{{ Cssxref("visibility") }}, {{ Cssxref("float") }}, {{ Cssxref("position") }}

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/CSS/display", "es": "es/CSS/display", "fr": "fr/CSS/display", "pt": "pt/CSS/display", "zh-cn": "cn/CSS/display" } ) }}

diff --git a/files/pl/web/css/dziedziczenie/index.html b/files/pl/web/css/dziedziczenie/index.html new file mode 100644 index 0000000000..e8049231f1 --- /dev/null +++ b/files/pl/web/css/dziedziczenie/index.html @@ -0,0 +1,50 @@ +--- +title: Dziedziczenie +slug: Web/CSS/Dziedziczenie +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/inheritance +--- +

+{{ CSSRef() }} +

+

Podsumowanie

+

Podsumowanie każdej definicji własności CSS zawiera informację, czy dana własność jest dziedziczona domyślnie ("Dziedziczona: tak"), czy też nie ("Dziedziczona: nie"). Umożliwia to kontrolę nad tym, co się dzieje, gdy nie została określona żadna wartość własności elementu. +

+

Własności dziedziczone

+

Gdy nie została określona wartość własności dziedziczonej elementu, element otrzymuje wartość wyliczoną własności elementu-rodzica. Tylko element główny dokumentu otrzymuje wartość początkową podaną w podsumowaniu własności. +

Typowym przykładem własności dziedziczonej jest własność {{ Cssxref("color") }}. Mając następujące reguły stylu: +

+
 p { color: green }
+
+

i znaczniki +

+
 <p>Ten akapit zawiera <em>wyróżniony tekst</em> wewnątrz.</p>
+
+

wyrażenie "wyróżniony tekst" będzie miało kolor zielony, ponieważ element em odziedziczył wartość własności {{ Cssxref("color") }} po elemencie p. Nie otrzymuje on początkowej wartości własności (którą jest kolor użyty w elemencie głównym, gdy nie został określony dla strony żaden kolor). +

+

Własności niedziedziczone

+

Gdy nie została określona wartość własności niedziedziczonej (czasami nazywanej własnością reset w kodzie Mozilli) elementu, element otrzymuje wartość początkową tej własności (jak podano w podsumowaniu własności). +

Typowym przykładem własności niedziedziczonej jest własność {{ Cssxref("border") }}. Mając następujące reguły stylu: +

+
 p { border: medium solid }
+
+

i znaczniki +

+
 <p>Ten akapit zawiera <em>wyróżniony tekst</em> wewnątrz.</p>
+
+

wyrażenie "wyróżniony tekst" nie będzie posiadało ramki (ponieważ wartość początkowa własności {{ Cssxref("border-style") }} to none). +

+

Uwagi

+

Słowo kluczowe {{ Cssxref("inherit") }} pozwala na bezpośrednie określenie dziedziczenia. Działa ono zarówno na własnościach dziedziczonych jak i niedziedziczonych. +

+

Zobacz również

+

{{ Cssxref("inherit") }}, wartość początkowa +


+

+
+
+{{ languages( { "en": "en/CSS/inheritance", "es": "es/CSS/inheritance", "fr": "fr/CSS/H\u00e9ritage", "ja": "ja/CSS/inheritance" } ) }} diff --git a/files/pl/web/css/empty-cells/index.html b/files/pl/web/css/empty-cells/index.html new file mode 100644 index 0000000000..7c203acf00 --- /dev/null +++ b/files/pl/web/css/empty-cells/index.html @@ -0,0 +1,77 @@ +--- +title: empty-cells +slug: Web/CSS/empty-cells +tags: + - CSS + - Dokumentacje +translation_of: Web/CSS/empty-cells +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność CSS empty-cells określa, jak program powinien wyświetlać obramowania i tła wokół komórek, które nie mają widocznej zawartości.

+ +

{{cssinfo}}

+ +

Składnia

+ +
empty-cells: show | hide | inherit
+
+
+ +

Wartości

+ +
+
{{ Cssxref("inherit") }}
+
show
+
obramowania i tła powinny być wyświetlane jak normalne komórki
+
hide
+
obramowania i tła nie powinny być wyświetlane
+
+ +

Przykłady

+ +
.contentbox td {
+  empty-cells: show;
+}
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer?
Firefox?
Netscape?
Opera?
Safari?
diff --git a/files/pl/web/css/float/index.html b/files/pl/web/css/float/index.html new file mode 100644 index 0000000000..0c8a73f00d --- /dev/null +++ b/files/pl/web/css/float/index.html @@ -0,0 +1,116 @@ +--- +title: float +slug: Web/CSS/float +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/float +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność float określa, że element powinien być wyjęty z normalnego przepływu i umieszczony przy lewej lub prawej stronie zawierającego go kontenera, zaś tekst i elementy liniowe będą zawijały się wokół niego.

+ + + +

Element pływający jest jedynym, gdzie wartość wyliczona float nie jest równa none.

+ +

Zauważ, że, jeśli odwołujesz się do tej wartości z JavaScript jako elementu obiektu element.style, musisz oznaczyć to cssFloat (zobacz listę na DOM:CSS). Zwróć też uwagę, że IE nazywa to styleFloat.

+ +

Składnia

+ +

float: left | right | none | inherit

+ +

Wartości

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
<html>
+ <head>
+  <style type="text/css">
+   b
+   {
+     font-size: 25px;
+     float:right;
+   }
+  </style>
+ </head>
+ <body>
+
+  <p>
+    <b>HELLO!</b>
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+    To jest jakiś tekst. To jest jakiś tekst. To jest jakiś tekst.
+  </p>
+
+</body>
+</html>
+
+ +

Notatki

+ +

TODO: Notatka powinna wyjaśniać, jak elementy pływające są pozycjonowane. Wzmianka o block formatting context.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Netscape4
Opera3.5
+ +

Zobacz także

+ +

{{ Cssxref("clear") }}, {{ Cssxref("display") }}, {{ Cssxref("position") }}

+ +
 
+ +

{{ languages( { "en": "en/CSS/float", "es": "es/CSS/float", "fr": "fr/CSS/float" } ) }}

diff --git a/files/pl/web/css/font-family/index.html b/files/pl/web/css/font-family/index.html new file mode 100644 index 0000000000..7a9bff6328 --- /dev/null +++ b/files/pl/web/css/font-family/index.html @@ -0,0 +1,58 @@ +--- +title: font-family +slug: Web/CSS/font-family +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font-family +--- +

{{CSSRef}}

+ +

Podsumowanie

+ +

font-family dopuszcza uszeregowaną pod względem ważności listę nazw rodzin czcionek oraz/lub nazwy rodzajów czcionek do zdefiniowania dla wybranego elementu. W przeciwieństwie do większości innych własności CSS, wartości są oddzielone przecinkiem, by wskazywały, że są alternatywami.

+ +

{{cssinfo}}

+ +

Składnia

+ +
font-family: <family-or-generic-name> [, <family-or-generic-name>]* | inherit
+
+ +

Wartości

+ +
+
<family-generic-name>
+
jest jedną z wartości <family-name> lub <generic-family>
+
family-name 
+
Nazwa rodziny czcionek. Na przykład: "Times" i "Helvetica" są rodzinami czcionek. Nazwy rodziny czcionek, zawierające białe znaki, powinny być ujęte w cudzysłowy.
+
generic-family 
+
Zdefiniowane są następujące rodzaje czcionek: serif, sans-serif, cursive, fantasy, monospace. Nazwy rodzajów są słowami kluczowymi i nie muszą być brane w cudzysłowy.
+
+ +

Przykłady

+ +

Zobacz przykład

+ +
body { font-family: "Gill Sans Extrabold", Helvetica, sans-serif }
+
+.receipt { font-family: Courier, "Lucida Console", monospace }
+
+ +

Uwagi

+ +

Powinieneś zawsze określić nazwę rodzaju jako ostatnią wartość we własności font-family.

+ +

Własność font-family wyszczególnia listę czcionek, od najwyższego priorytetu do najniższego. Wybór czcionki nie kończy się po prostu, gdy pierwsza z wymienionych czcionek jest w systemie użytkownika. Wybór czcionki odbywa się raczej jako jeden znak naraz, zatem, jeśli dostępna czcionka nie ma glifu (matrycy), który może wyświetlić potrzebny znak, wypróbowywana jest kolejna dostępna czcionka.

+ +

Jeśli dla czcionki dostępne są tylko niektóre własności styles, variants lub sizes, mogą one również wpływać na to, które rodziny czcionek zostaną wybrane.

+ +

Specyfikacje

+ + diff --git a/files/pl/web/css/font-size-adjust/index.html b/files/pl/web/css/font-size-adjust/index.html new file mode 100644 index 0000000000..56561c4285 --- /dev/null +++ b/files/pl/web/css/font-size-adjust/index.html @@ -0,0 +1,60 @@ +--- +title: font-size-adjust +slug: Web/CSS/font-size-adjust +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font-size-adjust +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność {{ Cssxref("font-size-adjust") }} określa, że rozmiar czcionki powinien być wybrany raczej na podstawie wysokości małych liter niż wysokości dużych liter.

+ +

Jest to użyteczne, ponieważ czytelność czcionek, zwłaszcza o małych rozmiarach, jest zdeterminowana bardziej przez rozmiar małych liter niż dużych liter. Może to powodować problemy, kiedy pierwsza czcionka zdefiniowana w {{ Cssxref("font-family") }} jest niedostępna, zaś czcionka ją zamieniająca ma znacząco odmienny stosunek proporcji (proporcję rozmiaru małych liter do rozmiaru czcionki).

+ +

Zrobienie tego w sposób, który jest zgodny z przeglądarkami niewspierającymi {{ Cssxref("font-size-adjust") }}, polega na określeniu liczby, która zwielokrotnia własność {{ Cssxref("font-size") }}. Oznacza to, że wartość określona dla tej własności powinna być zasadniczo stosunkiem proporcji pierwszej deklarowanej czcionki. Na przykład, arkusz stylu, który definiuje font-size: 16px; font-size-adjust: 0.5, w praktyce określa, że rozmiar małych liter czcionki powinien wynosić 8px wysokości (16px razy 0.5).

+ +

{{cssinfo}}

+ +

Składnia

+ +

font-size-adjust: <liczba> | none | {{ Cssxref("inherit") }}

+ +

Wartości

+ +
+
none 
+
Wybiera rozmiar czcionki opierając się jedynie na własności {{ Cssxref("font-size") }}.
+
<liczba> 
+
+

Wybiera rozmiar czcionki w ten sposób, że jej małe litery (jako wyznaczone przez wartość x-height czcionki) są określane liczbą zwielokrotniająca {{ Cssxref("font-size") }}.

+ +

Zdefiniowana liczba powinna być zasadniczo stosunkiem proporcji (proporcja wartości x-height do rozmiaru czcionki) czcionki wybieranej w pierwszej kolejności w {{ Cssxref("font-family") }}. Będzie to oznaczało, że czcionka wybrana w pierwszej kolejności, kiedy jest dostępna, wyświetli się w tym samym rozmiarze w przeglądarkach, niezależnie, czy wspierają własność {{ Cssxref("font-size-adjust") }}.

+
+
+ +

Przykłady

+ +

Zobacz przykład

+ +
p{
+  font: 12px Verdana, sans-serif;
+  font-size-adjust: 0.58;
+}
+
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ +

Wspierana na wszystkich platformach począwszy od Gecko 1.9 / Firefox 3, zaś w Windows wpierana wcześniej.

diff --git a/files/pl/web/css/font-size/index.html b/files/pl/web/css/font-size/index.html new file mode 100644 index 0000000000..a269accdc6 --- /dev/null +++ b/files/pl/web/css/font-size/index.html @@ -0,0 +1,339 @@ +--- +title: font-size +slug: Web/CSS/font-size +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/CSS/font-size +--- +
{{CSSRef}}
+ +

The font-size CSS property specifies the size of the font. Setting this property may change the size of other items, too, since it is used to compute the value of em, ex, and various other relative {{cssxref("<length>")}} units.

+ +
/* <absolute-size> values */
+font-size: xx-small;
+font-size: x-small;
+font-size: small;
+font-size: medium;
+font-size: large;
+font-size: x-large;
+font-size: xx-large;
+
+/* <relative-size> values */
+font-size: smaller;
+font-size: larger;
+
+/* <length> values */
+font-size: 12px;
+font-size: 0.8em;
+
+/* <percentage> values */
+font-size: 80%;
+
+/* Global values */
+font-size: inherit;
+font-size: initial;
+font-size: unset;
+
+ + + +

{{EmbedLiveSample("font-size", 1200, 180, "", "", "example-outcome-frame")}}

+ +

{{cssinfo}}

+ +

Syntax

+ +

The font-size property is specified in one of the following ways:

+ + + +

Values

+ +
+
xx-small, x-small, small, medium, large, x-large, xx-large
+
Absolute-size keywords, based on the user's default font size (which is medium).
+
larger, smaller
+
Relative-size keywords. The font will be larger or smaller relative to the parent element's font size, roughly by the ratio used to separate the absolute-size keywords above.
+
{{cssxref("<length>")}}
+
+

A positive {{cssxref("<length>")}} value. For most font-relative units (such as em and ex), the font size is relative to the parent element's font size.

+ +

For font-relative units that are root-based (such as rem), the font size is relative to the size of the font used by the {{HTMLElement("html")}} (root) element.

+
+
{{cssxref("<percentage>")}}
+
+

A positive {{cssxref("<percentage>")}} value, relative to the parent element's font size.

+
+
+ +
+

Note: To maximize accessibility, it is generally best to use values that are relative to the user's default font size.

+
+ +

Formal syntax

+ +
{{csssyntax}}
+ +

Possible approaches

+ +

There are several ways to specify the font size, including with keywords or numerical values for pixels or ems. Choose the appropriate method based on the needs for the particular web page.

+ +

Keywords

+ +

Keywords are a good way to set the size of fonts on the web. By setting a keyword font size on the body element, you can set relative font-sizing everywhere else on the page, giving you the ability to easily scale the font up or down on the entire page accordingly.

+ +

Pixels

+ +

Setting the font size in pixel values (px) is a good choice when you need pixel accuracy. A px value is static. This is an OS-independent and cross-browser way of literally telling the browsers to render the letters at exactly the number of pixels in height that you specified. The results may vary slightly across browsers, as they may use different algorithms to achieve a similar effect.

+ +

Font sizing settings can also be used in combination. For example, if a parent element is set to 16px and its child element is set to larger, the child element displays larger than the parent element in the page.

+ +
Note: Defining font sizes in px is not accessible, because the user cannot change the font size from the browser. For example, users with limited vision may wish to set the font size much larger than the size chosen by a web designer. Avoid using them for font sizes if you wish to create an inclusive design.
+ +

Ems

+ +

Another way of setting the font size is with em values. The size of an em value is dynamic. When defining the font-size property, an em is equal to the size of the font that applies to the parent of the element in question. If you haven't set the font size anywhere on the page, then it is the browser default, which is often 16px. So, by default 1em = 16px, and 2em = 32px. If you set a font-size of 20px on the body element, then 1em = 20px and 2em = 40px. Note that the value 2 is essentially a multiplier of the current em size.

+ +

In order to calculate the em equivalent for any pixel value required, you can use this formula:

+ +
em = desired element pixel value / parent element font-size in pixels
+ +

For example, suppose the font-size of the body of the page is set to 16px. If the font-size you want is 12px, then you should specify 0.75em (because 12/16 = 0.75). Similarly, if you want a font size of 10px, then specify 0.625em (10/16 = 0.625); for 22px, specify 1.375em (22/16).

+ +

The em is a very useful unit in CSS, since it automatically adapts its length relative to the font that the reader chooses to use.

+ +

One important fact to keep in mind: em values compound. Take the following HTML and CSS:

+ +
html {
+  font-size: 62.5%; /* font-size 1em = 10px on default browser settings */
+}
+span {
+  font-size: 1.6em;
+}
+ +
<div>
+<span>Outer <span>inner</span> outer</span>
+</div>
+
+ +

The result is:

+ +

{{EmbedLiveSample("Ems", 400, 40)}}

+ +

Assuming that the browser's default font-size is 16px, the words “outer” would be rendered at 16px, but the word “inner” would be rendered at 25.6px. This is because the inner span's font-size is 1.6 em which is relative to its parent's font-size, which is in turn relative to its parent's font-size. This is often called compounding.

+ +

Rems

+ +

rem values were invented in order to sidestep the compounding problem. rem values are relative to the root html element, not the parent element. In other words, it lets you specify a font size in a relative fashion without being affected by the size of the parent, thereby eliminating compounding.

+ +

The CSS below is nearly identical to the previous example. The only exception is that the unit has been changed to rem.

+ +
html {
+  font-size: 62.5%; /* font-size 1em = 10px on default browser settings */
+}
+span {
+  font-size: 1.6rem;
+}
+
+ +

Then we apply this CSS to the same HTML, which looks like this:

+ +
<span>Outer <span>inner</span> outer</span>
+ +

{{EmbedLiveSample("Rems", 400, 40)}}

+ +

In this example, the words “outer inner outer” are all displayed at 16px (assuming that the browser's font-size has been left at the default value of 16px).

+ +

Examples

+ +

Example 1

+ +
/* Sets paragraph text to be very large */
+p { font-size: xx-large; }
+
+/* Sets <h1> text to be 2.5 times the size
+   of the text around it */
+h1 { font-size: 250%; }
+
+/* Sets text enclosed within span tag to be 16px */
+span { font-size: 16px; }
+
+ +

Example 2

+ +

CSS

+ +
.small {
+  font-size: xx-small;
+}
+.larger {
+  font-size: larger;
+}
+.point {
+  font-size: 24pt;
+}
+.percent {
+  font-size: 200%;
+}
+
+ +

HTML

+ +
<h1 class="small">Small H1</h1>
+<h1 class="larger">Larger H1</h1>
+<h1 class="point">24 point H1</h1>
+<h1 class="percent">200% H1</h1>
+ +

Result

+ +

{{EmbedLiveSample('Example_2','600','200')}}

+ +

Notes

+ +

em and ex units on the {{Cssxref("font-size")}} property are relative to the parent element's font size (unlike all other properties, where they're relative to the font size on the element). This means em units and percentages do the same thing for {{Cssxref("font-size")}}.

+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Fonts', '#font-size-prop', 'font-size')}}{{Spec2('CSS3 Fonts')}}No change.
{{SpecName('CSS3 Transitions', '#animatable-css', 'font-size')}}{{Spec2('CSS3 Transitions')}}Defines font-size as animatable.
{{SpecName('CSS2.1', 'fonts.html#propdef-font-size', 'font-size')}}{{Spec2('CSS2.1')}}No change.
{{SpecName('CSS1', '#font-size', 'font-size')}}{{Spec2('CSS1')}}Initial definition.
+ +

Browser compatibility

+ + + +

{{Compat("css.properties.font-size")}}

diff --git a/files/pl/web/css/font-stretch/index.html b/files/pl/web/css/font-stretch/index.html new file mode 100644 index 0000000000..751195d6e4 --- /dev/null +++ b/files/pl/web/css/font-stretch/index.html @@ -0,0 +1,77 @@ +--- +title: font-stretch +slug: Web/CSS/font-stretch +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font-stretch +--- +

{{CSSRef}}

+ +

Podsumowanie

+ +

Własność font-stretch wybiera normalny, zwężony lub poszerzony krój z rodziny czcionek.

+ +

{{cssinfo}}

+ +

Składnia

+ +
+
Wartości bezwględne
+
 
+
font-stretch: normal ;
+
font-stretch: {{ mediawiki.external('ultra-condensed | extra-condensed | condensed | semi-condensed') }} ;
+
font-stretch: {{ mediawiki.external('semi-expanded | expanded | extra-expanded | ultra-expanded') }} ;
+
+ +
+
Wartości względne
+
 
+
font-stretch: {{ mediawiki.external('wider | narrower') }} ;
+
+ +

Wartości

+ +
+
normal
+
Definiuje normalną szerokość kroju czcionki.
+
+ +
+
semi-condensed, condensed, extra-condensed, ultra-condensed
+
Definiuje krój czcionki węższy niż normalny, przy czym ultra-condensed jest najwęższy.
+
+ +
+
semi-expanded, expanded, extra-expanded, ultra-expanded
+
Definiuje krój czcionki szerszy niż normalny, przy czym ultra-expanded jest najszerszy.
+
+ +
+
wider
+
Wartość względna 'wider' ustawia szerszy o jedną wartość krój czcionki niż wartość odziedziczona (lecz nie szerszą niż ultra-expanded).
+
+ +
+
narrower
+
Wartość względna 'narrower' ustawia węższy o jedną wartość krój czcionki niż wartość odziedziczona (lecz nie węższą niż ultra-condensed).
+
+ +

Przykłady

+ +
h1 { font-stretch: extra-expanded }
+p { font-stretch: narrower}
+
+ +

Notatki

+ +

UWAGA: Ta własność CSS NIE JEST JESZCZE ZAIMPLEMENTOWANA, zobacz {{ Bug(3512) }}, by sprawdzić aktualny status prośby o dodanie.

+ +

Specyfikacje

+ + diff --git a/files/pl/web/css/font-style/index.html b/files/pl/web/css/font-style/index.html new file mode 100644 index 0000000000..3c04d0a8ac --- /dev/null +++ b/files/pl/web/css/font-style/index.html @@ -0,0 +1,49 @@ +--- +title: font-style +slug: Web/CSS/font-style +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font-style +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność font-style definiuje kroje czcionki normal (określany również jako upright lub roman), italic oraz oblique spośród rodziny czcionek.

+ +

{{cssinfo}}

+ +

Składnia

+ +
{{csssyntax}}
+ +

Wartości

+ +
+
normal, oblique, italic 
+
Określa, że program powinien wybrać krój czcionki normal, oblique lub italic dla czcionki zdefiniowanej w {{ Cssxref("font-family") }}.
+
+ +

Przykłady

+ +

 

+ +

Zobacz przykład

+ +

 

+ +
h1 { font-style: italic }
+p { font-style: oblique }
+
+
+ +

Specyfikacje

+ + diff --git a/files/pl/web/css/font-variant/index.html b/files/pl/web/css/font-variant/index.html new file mode 100644 index 0000000000..e1c3cab355 --- /dev/null +++ b/files/pl/web/css/font-variant/index.html @@ -0,0 +1,79 @@ +--- +title: font-variant +slug: Web/CSS/font-variant +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font-variant +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność font-variant wybiera z rodziny czcionek wygląd normalny lub kapitaliki.

+ +

{{cssinfo}}

+ +

Składnia

+ +
+
font-variant: {{ mediawiki.external('normal | small-caps') }} ;
+
+ +

Wartości

+ +
+
normal
+
Definiuje normalny krój czcionki.
+
+ +
+
small-caps
+
Definiuje czcionkę, która jest wyróżniona kapitalikami. Jeśli kapitaliki nie są dostępne, Mozilla będzie symulowała kapitaliki, np. poprzez użycie normalnego kroju czcionki i zamianę małych liter przeskalowanymi wielkimi literami.
+
+ +

Przykłady

+ +
h1 { font-variant: small-caps }
+p { font-variant: small-caps}
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer?
Firefox?
Netscape?
Opera?
Safari?
diff --git a/files/pl/web/css/font-weight/index.html b/files/pl/web/css/font-weight/index.html new file mode 100644 index 0000000000..8e4779355b --- /dev/null +++ b/files/pl/web/css/font-weight/index.html @@ -0,0 +1,107 @@ +--- +title: font-weight +slug: Web/CSS/font-weight +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font-weight +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność {{ Cssxref("font-weight") }} określa wagę lub grubość czcionki.

+ +

{{cssinfo}}

+ +

Składnia

+ +

font-weight: normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | {{ Cssxref("inherit") }}

+ +

Wartości

+ +
+
normal 
+
Normalna waga czcionki. Identycznie jak 400.
+
bold 
+
Pogrubiona czcionka. Identycznie jak 700.
+
lighter 
+
Waga czcionki lżejsza o jedną wartość niż w elemencie rodzica (spośród dostępnych wag czcionki)
+
bolder 
+
Waga czcionki cięższa o jedną wartość niż w elemencie rodzica (spośród dostępnych wag czcionki)
+
100, 200, 300, 400, 500, 600, 700, 800, 900 
+
Liczbowe wartość wag czcionek dla czcionek, które mają więcej niż tylko waga normalna i pogrubiona. Jeśli wybrana waga jest niedostępna, wtedy dla wartości 600-900 używana jest najbliższa dostępna większa wagi (lub jeśli takiej nie ma, najbliższa dostępna lżejsza waga), a dla wartości 100-500 używana jest najbliższa dostępna mniejsza waga (lub jeśli takiej nie ma, najbliższa dostępna większa waga). Oznacza to, że dla czcionek, które mają tylko wagi normalną i pogrubioną, wartości 100-500 stają się wagą normalną, a 600-900 pogrubioną.
+
+ +

Przykłady

+ +

HTML

+ +
<p>
+  Alice was beginning to get very tired of sitting by her sister on the
+  bank, and of having nothing to do: once or twice she had peeped into the
+  book her sister was reading, but it had no pictures or conversations in
+  it, 'and what is the use of a book,' thought Alice 'without pictures or
+  conversations?'
+</p>
+
+<div>I'm heavy<br/>
+  <span>I'm lighter</span>
+</div>
+
+ +

CSS

+ +
/* Set paragraph text to be bold. */
+p {
+  font-weight: bold;
+}
+
+/* Set div text to two steps darker than
+   normal but less than a standard bold. */
+div {
+ font-weight: 600;
+}
+
+/* Sets text enclosed within span tag
+   to be one step lighter than the parent. */
+span {
+  font-weight: lighter;
+}
+ +

Result

+ +

{{EmbedLiveSample("Przykłady","400","300")}}

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer3
Netscape4
Opera3.5
diff --git a/files/pl/web/css/font/index.html b/files/pl/web/css/font/index.html new file mode 100644 index 0000000000..8e8c668216 --- /dev/null +++ b/files/pl/web/css/font/index.html @@ -0,0 +1,145 @@ +--- +title: font +slug: Web/CSS/font +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/font +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność font jest skrótową własnością do ustawienia {{ Cssxref("font-style") }}, {{ Cssxref("font-variant") }}, {{ Cssxref("font-weight") }}, {{ Cssxref("font-size") }}, {{ Cssxref("line-height") }} oraz {{ Cssxref("font-family") }} w jednym miejscu w arkuszu stylów.

+ + + +

Składnia

+ +

font: [ <{{ Cssxref("font-style") }}> || <{{ Cssxref("font-variant") }}> || <{{ Cssxref("font-weight") }}> ]? <{{ Cssxref("font-size") }}> [ / <{{ Cssxref("line-height") }}> ]? <{{ Cssxref("font-family") }}>

+ +

font: caption | icon | menu | message-box | small-caption | status-bar | -moz-window | -moz-document | -moz-workspace | -moz-desktop | -moz-info | -moz-dialog | -moz-button | -moz-pull-down-menu | -moz-list | -moz-field

+ +

font: {{ Cssxref("inherit") }}

+ +

Wartości

+ +

Użycie skrótowej własności {{ Cssxref("font") }} ustawia własności pisma jako określone oraz ustawia wszystkie inne własności związane z czcionką do ich wartości początkowych.

+ +

Zobacz {{ Cssxref("font-style") }}, {{ Cssxref("font-variant") }}, {{ Cssxref("font-weight") }}, {{ Cssxref("font-size") }} oraz {{ Cssxref("font-family") }}, by sprawdzić prawidłowe wartości każdej własności.

+ +

Również czcionki systemowe mogą być określone przy użyciu własności {{ Cssxref("font") }}zamiast określania indywidualnych własności pisma:

+ +
+
caption 
+
Czcionka używana w opisanych kontrolkach (na przykład w przyciskach, listach rozwijanych itd.).
+
icon 
+
Czcionka używana do podpisywania ikon.
+
menu 
+
Czcionka używana w menu (na przykład menu rozwijanym, listach menu).
+
message-box 
+
Czcionka używana w oknach dialogowych.
+
small-caption 
+
Czcionka używana do opisywania małych kontrolek.
+
status-bar 
+
Czcionka używana w pasku stanu okna.
+
-moz-window 
+
 
+
-moz-document 
+
 
+
-moz-workspace 
+
 
+
-moz-desktop 
+
 
+
-moz-info 
+
 
+
-moz-dialog 
+
 
+
-moz-button 
+
 
+
-moz-pull-down-menu 
+
 
+
-moz-list 
+
 
+
-moz-field 
+
 
+
+ +

Przykłady

+ +

Zobacz przykład

+ +
/* Ustawia rozmiar czcionki na 12pt oraz odstęp między liniami na 14pt.
+Ustawia rodzinę czcionek na bezszeryfowe */
+p { font: 12pt/14pt sans-serif }
+
+ +
/* Ustawia rozmiar czcionki na 80% rozmiaru znacznika-rodzica lub wartości domyślnej
+(jeśli nie ma obecnego znacznika-rodzica) oraz ustawia rodzinę czcionek na bezszeryfowe */
+p { font: 80% sans-serif }
+
+ +
/* Ustawia wagę (grubość) czcionki na pogrubioną, styl czcionki na kursywę,
+rozmiar na duży i rodzinę czcionek na szeryfowe */
+p { font: bold italic large serif }
+
+ +

Uwagi

+ +

Składniki {{ Cssxref("font-size") }} oraz {{ Cssxref("font-family") }} skrótowej własności są obowiązkowe. Pominięcie ich jest błędem składniowym i powoduje, że cała własność zostanie zignorowana.

+ +

Własności, dla których nie ma podanych żadnych wartości, są ustawiane do ich wartości domyślnej, którą jest normal dla wszystkich własności, które mogą być pominięte ({{ Cssxref("font-style") }}, {{ Cssxref("font-variant") }}, {{ Cssxref("font-weight") }}, oraz {{ Cssxref("line-height") }}).

+ +

Własność {{ Cssxref("font-size-adjust") }} jest również ustawiana do jej wartości początkowej (none), kiedy określona jest skrótowa własność {{ Cssxref("font") }}.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer3
Netscape4
Opera3.5
+ +

Zobacz także

+ +

{{ Cssxref("font-family") }}, {{ Cssxref("font-size") }}, {{ Cssxref("font-size-adjust") }}, {{ Cssxref("font-style") }}, {{ Cssxref("font-variant") }}, {{ Cssxref("font-weight") }}, {{ Cssxref("line-height") }}

+ +

 

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/CSS/font", "es": "es/CSS/font", "fr": "fr/CSS/font", "ja": "ja/CSS/font" } ) }}

diff --git a/files/pl/web/css/grid/index.html b/files/pl/web/css/grid/index.html new file mode 100644 index 0000000000..7510f2db2c --- /dev/null +++ b/files/pl/web/css/grid/index.html @@ -0,0 +1,200 @@ +--- +title: grid +slug: Web/CSS/grid +translation_of: Web/CSS/grid +--- +

grid jest własnością skrótową, która ustawia wszystkie wyraźne oraz domniemane własności grid przy pomocy pojedynczej deklaracji.

+ +
{{EmbedInteractiveExample("pages/css/grid.html")}}
+ + + +
+

Uwaga: Można ustawić jedynie sprecyzowane bądź domniemane wartości w jednej deklaracji własności grid. Podwłasności, których nie określisz zostaną ustawione na wartości początkowe. Własności odstępów nie zostaną zresetowane przez ten zapis skrótowy.

+
+ +

Własności składowe

+ +

Ta własność jest zapisem skrótowym następujących własności

+ + + +

Składnia

+ +
/* <'grid-template'> values */
+grid: none;
+grid: "a" 100px "b" 1fr;
+grid: [linename1] "a" 100px [linename2];
+grid: "a" 200px "b" min-content;
+grid: "a" minmax(100px, max-content) "b" 20%;
+grid: 100px / 200px;
+grid: minmax(400px, min-content) / repeat(auto-fill, 50px);
+
+/* <'grid-template-rows'> /
+   [ auto-flow && dense? ] <'grid-auto-columns'>? values */
+grid: 200px / auto-flow;
+grid: 30% / auto-flow dense;
+grid: repeat(3, [line1 line2 line3] 200px) / auto-flow 300px;
+grid: [line1] minmax(20em, max-content) / auto-flow dense 40%;
+
+/* [ auto-flow && dense? ] <'grid-auto-rows'>? /
+   <'grid-template-columns'> values */
+grid: auto-flow / 200px;
+grid: auto-flow dense / 30%;
+grid: auto-flow 300px / repeat(3, [line1 line2 line3] 200px);
+grid: auto-flow dense 40% / [line1] minmax(20em, max-content);
+
+/* Global values */
+grid: inherit;
+grid: initial;
+grid: unset;
+
+ +

Wartości

+ +
+
<'grid-template'>
+
Definiuje szablon siatki strony - własności grid-template-columns, grid-template-rows oraz grid-template-areas.
+
<'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>?
+
Ustawia auto-wyrównanie przy pomocy jawnych wierszy ustawionych własnością grid-template-rows, ustawieniem wartości grid-template-rows na none oraz określeniem w jaki sposób wykonywać automatyczne powtarzanie kolumn przy pomocy grid-auto-columns i ustawienie wartości grid-auto-rows na auto. grid-auto-flow zostaje ustawione na column, jeśli dense jest określone. Wszystkie inne podwłasności grid są ustawiane na wartości początkowe.
+
[ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>
+
Ustawia auto-wyrównanie przy pomocy jawnych kolumn ustawionych własnością grid-template-columns, ustawieniem wartości własności grid-template-rows na none oraz określeniem w jaki sposób wykonywać automatyczne powtarzanie wierszy przy pomocy grid-auto-rows i ustawienie wartości grid-auto-columns na auto. grid-auto-flow zostaje ustawione na row, jeśli dense jest określon. Wszystkie inne podwłasności grid są ustawiane na wartości początkowe.
+
+ +

Formalna definicja

+ +

{{cssinfo}}

+ +

Formalna składna

+ +
{{csssyntax}}
+ +

Przykłady

+ +

Tworzenie układu grid (układ siatki)

+ +

HTML

+ +
<div id="container">
+  <div></div>
+  <div></div>
+  <div></div>
+  <div></div>
+  <div></div>
+  <div></div>
+  <div></div>
+  <div></div>
+</div>
+ +

CSS

+ +
#container {
+  display: grid;
+  grid: repeat(2, 60px) / auto-flow 80px;
+}
+
+#container > div {
+  background-color: #8ca0ff;
+  width: 50px;
+  height: 50px;
+}
+ +

Result

+ +

{{EmbedLiveSample("Creating_a_grid_layout", "100%", 150)}}

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName("CSS3 Grid", "#propdef-grid", "grid")}}{{Spec2("CSS3 Grid")}}Initial definition
+ +

Kompatybilność z wersjami przeglądarek

+ + + +

{{Compat("css.properties.grid")}}

+ +

Zobacz także

+ + + + diff --git a/files/pl/web/css/height/index.html b/files/pl/web/css/height/index.html new file mode 100644 index 0000000000..a17ec96c3f --- /dev/null +++ b/files/pl/web/css/height/index.html @@ -0,0 +1,92 @@ +--- +title: height +slug: Web/CSS/height +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/height +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność height definiuje w elemencie wysokość obszaru zawartości. Obszar zawartości znajduje sięwewnątrz dopełnienia, obramowania i marginesów elementu.

+ + + +

Składnia

+ +
height: <length> | <percentage> | auto | inherit
+
+ +

Wartości

+ + + +

Przykłady

+ +

Zobacz przykład

+ +
table { height: 100%; }
+
+img { height: 200px; }
+
+form { height: auto; }
+
+ +

Uwagi

+ +

Własności {{ Cssxref("min-height") }} i {{ Cssxref("max-height") }} nadpisują {{ Cssxref("height") }}.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4
Netscape4
Opera3.5
+ +

Zobacz także

+ +

box model, {{ Cssxref("width") }}, {{ Cssxref("-moz-box-sizing") }}, {{ Cssxref("min-height") }}, {{ Cssxref("max-height") }}

+ +

 

+ +
 
+ +

{{ languages( { "en": "en/CSS/height", "es": "es/CSS/height", "fr": "fr/CSS/height" } ) }}

diff --git a/files/pl/web/css/id_selectors/index.html b/files/pl/web/css/id_selectors/index.html new file mode 100644 index 0000000000..927d3795be --- /dev/null +++ b/files/pl/web/css/id_selectors/index.html @@ -0,0 +1,77 @@ +--- +title: Selektory ID +slug: Web/CSS/ID_selectors +tags: + - Beginner + - CSS + - CSS Reference + - Selektory +translation_of: Web/CSS/ID_selectors +--- +
{{CSSRef("Selectors")}}
+Selektor ID wyszukuje każdy element z atrybutem {{htmlattrxref("ID")}} o takiej samej nazwie w dokumencie HTML.
+ +
 
+ +

Składnia

+ +
#przykladowe_id { właściwości stylu }
+ +

Jest to równoważne z {{Cssxref("Attribute_selectors", "attribute selector")}}:

+ +
[id=przykladowe_id] { właściwości stylu }
+ +

Przykład

+ +
span#mojeid {
+  background-color: DodgerBlue;
+}
+
+ +
<span id="mojeid">Przykładowy tekst.</span>
+<span>Kolejny przykładowy tekst.</span>
+
+ +

Specyfikacje

+ + + +

Kompatybilność z przeglądarkami

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaWsparcie
ChromeTak
EdgeTak
FirefoxTak
Internet ExplorerTak
OperaTak
SafariTak
diff --git a/files/pl/web/css/ime-mode/index.html b/files/pl/web/css/ime-mode/index.html new file mode 100644 index 0000000000..ea3fbd0d3e --- /dev/null +++ b/files/pl/web/css/ime-mode/index.html @@ -0,0 +1,9 @@ +--- +title: ime-mode +slug: Web/CSS/ime-mode +tags: + - CSS +translation_of: Web/CSS/ime-mode +--- +

Ta strona nie ma treści. Możesz stworzyć MDC.

+

test pl

diff --git a/files/pl/web/css/index.html b/files/pl/web/css/index.html new file mode 100644 index 0000000000..eabf6e687b --- /dev/null +++ b/files/pl/web/css/index.html @@ -0,0 +1,95 @@ +--- +title: 'CSS: Kaskadowe arkusze stylów' +slug: Web/CSS +tags: + - CSS + - Kaskadowe arkusze stylów + - arkusze stylów + - szablony + - wygląd +translation_of: Web/CSS +--- +
{{CSSRef}}
+ +

Kaskadowe arkusze stylów (CSS) są językiem stylów używanym do opisania warstwy prezentacji dokumentów napisanych w HTML lub XML (włączając pochodne SVG czy XHTML). CSS opisuje jak elementy powinny być prezentowane na ekranie, przy wydruku, w czytniku ekranowym, albo w innych mediach.

+ +

CSS jest jednym z podstawowych języków otwartej sieci i jest ustandaryzowany pomiędzy przeglądarkami zgodnie ze specyfikacją W3C. Rozwijany stopniowo, CSS1 obecnie przestarzały , CSS2.1 rekomendowany, oraz CSS3, obecnie rozbity na mniejsze moduły w ciągłym procesie standaryzacji.

+ +
+ + +
+
+

Poradniki

+ +

CSS Learning Area zawiera wiele modułów, które pozwolą Ci nauczyć się CSS od podstaw bez potrzeby wcześniejszej znajomości zagadnień.

+ +
+
Wprowadzenie do CSS
+
Ten moduł wprowadza w podstawowe zagadnienia, tłumaczy jak CSS działa, omawia selektory i właściwości, pisanie reguł CSS, dodawanie CSS do HTMLa, jednostki i kolory, kaskadowość i dziedziczenie, podstawy modelu blokowego, a także debugowania.
+
Stylowanie tekstu
+
Ten moduł opisuje podstawy stylowania tekstów, włączając w to ustawienia fontów, grubość, kursywe, interlinie i odstępy między literami, cienie oraz inne właściwości tekstu. Ten moduł kończy się dodaniem niestandardowych fontów na Twoją stronę oraz stylowaniem list i linków.
+
Stylowanie bloków
+
Moduł ten poświęcony jest stylowaniu bloków, jest to krok w przód jeżeli chodzi o ułożenie elementów na stronie. W tym module streścimy czym jest model blokowy (ang. box model), a następnie zajmiemy się kontrolą wyglądu witryny poprzez wewnętrzne i zewnętrzne marginesy, obramowania, kolorowe tła, obrazki i inne właściwści, a także rzeczy bardziej widowiskowe takie jak cienie i filtry.
+
CSS layout
+
Do tej pory poznaliśmy podstawy takie jak stylowanie tekstu czy stylowanie i manipulowanie blokami z treścią. Przyszedł czas przyjrzeć się w jaki sposób umieścić dane bloki w odpowiednich miejscach m.in. w zależności od szerokości ekranu. Dzięki poznaniu niezabędnych podstaw możemy teraz wejść głębiej w tematykę szablonów CSS, omówić różne ustawienia wyświetlania, tradycyjne metody wykorzystujące float i position, a także nowe narzędzia takie jak flexbox.
+
+
+ +
+

Referencje

+ + + +

Narzędzia dla developerów CSS

+ + + +

Meta bugs

+ +
    +
  • Firefox: {{bug(1323667)}}
  • +
+
+
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/css/initial/index.html b/files/pl/web/css/initial/index.html new file mode 100644 index 0000000000..e6d882efe5 --- /dev/null +++ b/files/pl/web/css/initial/index.html @@ -0,0 +1,118 @@ +--- +title: initial +slug: Web/CSS/initial +translation_of: Web/CSS/initial +--- +
{{CSSRef}}
+ +

Słowo kluczowe initial aplikuje w CSSie początkową wartość do właściwości danego elementu. Jest ono dozwolne w każdej właściwości CSS i powoduje ono użycie wartości początkowej.

+ +
+

We właściwościach dziedziczonych wartość początkowa może być zaskakująca i powinieneś się zastanowić nad użyciem słów kluczowych {{cssxref("inherit")}}, {{cssxref("unset")}}, lub {{cssxref("revert")}} zamiast wartości początkowej.

+
+ +

Przykłady

+ +
 /* nagłówek z zieloną ramką */
+ h2 { border: medium solid green }
+
+ /* poniższy kod użyty w sidebarze przywraca kolor początkowy (initial) ramki */
+ #sidebar h2 { border-color: initial; }
+
+ +
 <p style="color:red">
+    ten tekst jest czerwony
+       <em style="color:initial">
+         ten tekst ma kolor początkowy (initial), np. czarny
+       </em>
+    ponownie kolor czerwony
+ </p> 
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{ SpecName('CSS4 Cascade', '#initial', 'initial') }}{{Spec2('CSS4 Cascade')}}No changes from Level 3.
{{ SpecName('CSS3 Cascade', '#initial', 'initial') }}{{Spec2('CSS3 Cascade')}}Defines what an initial value is.
{{ SpecName('CSS3 Values', "#common-keywords", "initial") }}{{Spec2('CSS3 Values')}}Defines the keyword.
+ +

Wsparcie przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Podstawowe wspracie1.0{{CompatGeckoDesktop("1.9.1")}}{{property_prefix("-moz")}}[1]
+ {{CompatGeckoDesktop("19.0")}}
{{CompatNo}}15.01.2
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Podstawowe wsparcie1.0{{CompatGeckoMobile("1.9.1")}}{{property_prefix("-moz")}}[1]
+ {{CompatGeckoMobile("19.0")}}
{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}
+
+ +

[1] Od wersji Firefox 1.0 wzwyż, wsparcie dla -moz-initial zostało dodane do każdej wersji, zakończono obsługę{{cssxref("quotes")}} od wersji Firefox 3.5 (Gecko 1.9.1). Wsparie dla niestandardowych prefiksów {{cssxref("-moz-border-top-colors","-moz-border-*-colors")}} w wersji Firefox 3.6 (Gecko 1.9.2). Wsparcie dla prefiksu -moz-initial zostało usunięte w Firefox 24 na korzyść słowa kluczowego initial.

+ +

Zobacz również

+ + diff --git a/files/pl/web/css/inne_zasoby/index.html b/files/pl/web/css/inne_zasoby/index.html new file mode 100644 index 0000000000..8db0f7556b --- /dev/null +++ b/files/pl/web/css/inne_zasoby/index.html @@ -0,0 +1,28 @@ +--- +title: Inne zasoby +slug: Web/CSS/Inne_zasoby +tags: + - CSS + - Wszystkie_kategorie +translation_of: Web/CSS +--- +

+

+

Dokumenty W3C

+ +

Inne zasoby

+ +{{ languages( { "en": "en/CSS/Other_Resources", "fr": "fr/CSS/Autres_ressources", "ja": "ja/CSS/Other_Resources" } ) }} diff --git a/files/pl/web/css/letter-spacing/index.html b/files/pl/web/css/letter-spacing/index.html new file mode 100644 index 0000000000..423f1e2c1d --- /dev/null +++ b/files/pl/web/css/letter-spacing/index.html @@ -0,0 +1,74 @@ +--- +title: letter-spacing +slug: Web/CSS/letter-spacing +tags: + - CSS +translation_of: Web/CSS/letter-spacing +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność CSS letter-spacing określa odstępy między literami w tekstowej zawartości elementu. Można zdefiniować od jednej do trzech wartości, by wskazać minimalny, maksymalny oraz optymalny odstęp między literami.

+ +

{{cssinfo}}

+ +

Składnia

+ +
letter-spacing: [ normal | <length> ] {1,3}
+
+ +

Wartości

+ +
+
normal 
+
 
+
{{cssxref("<length>")}}  
+
 
+
+ +

Przykłady

+ +
p {
+  letter-spacing: .3em .6em .4em;
+}
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer?
Firefox?
Netscape?
Opera?
Safari?
diff --git a/files/pl/web/css/list-style-image/index.html b/files/pl/web/css/list-style-image/index.html new file mode 100644 index 0000000000..91d05bc8bf --- /dev/null +++ b/files/pl/web/css/list-style-image/index.html @@ -0,0 +1,70 @@ +--- +title: list-style-image +slug: Web/CSS/list-style-image +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/list-style-image +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

list-style-image określa plik graficzny, który ma zostać użyty jako znacznik elementu listy.

+ + + +

Składnia

+ +
list-style-image: <uri> | none | inherit
+
+ +

Wartości

+ +
+
uri
+
Adres pliku graficznego.
+
+ +

Przykłady

+ +

HTML

+ +
<ul>
+    <li>Item 1</li>
+    <li>Item 2</li>
+</ul>
+
+ +

CSS

+ +
ul {
+  list-style-image: url("https://mdn.mozillademos.org/files/11981/starsolid.gif")
+}
+ +

Result

+ +

{{EmbedLiveSample('Przykłady')}}

+ +

Dokumentacja

+ + + +

Kompatybilność z przeglądarkami

+ +

Zobacz także

+ +

{{ Cssxref("list-style") }}, {{ Cssxref("list-style-type") }}, {{ Cssxref("list-style-position") }}

diff --git a/files/pl/web/css/list-style-position/index.html b/files/pl/web/css/list-style-position/index.html new file mode 100644 index 0000000000..62b79481be --- /dev/null +++ b/files/pl/web/css/list-style-position/index.html @@ -0,0 +1,99 @@ +--- +title: list-style-position +slug: Web/CSS/list-style-position +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/list-style-position +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

list-style-position określa pozycję znacznika listy w elemencie listy.

+ + + +

Składnia

+ +
list-style-position: inside | outside | inherit
+
+ +

Wartości

+ +
+
outside
+
Znacznik jest umieszczany poza elementem listy.
+
inside
+
Znacznik jest umieszczany wewnątrz elementu listy. Jest on pierwszym blokiem inline i zawartość elementu go opływa.
+
+ +

Przykłady

+ +

HTML

+ +
<ul class="one"> List 1
+  <li>List Item 1-1</li>
+  <li>List Item 1-2</li>
+  <li>List Item 1-3</li>
+  <li>List Item 1-4</li>
+</ul>
+<ul class="two"> List 2
+  <li>List Item 2-1</li>
+  <li>List Item 2-2</li>
+  <li>List Item 2-3</li>
+  <li>List Item 2-4</li>
+</ul>
+<ul class="three"> List 3
+  <li>List Item 3-1</li>
+  <li>List Item 3-2</li>
+  <li>List Item 3-3</li>
+  <li>List Item 3-4</li>
+</ul>
+ +

CSS

+ +
.one {
+  list-style:square inside;
+}
+
+.two {
+  list-style-position: outside;
+  list-style-type: circle;
+}
+
+.three {
+  list-style-image: url("https://mdn.mozillademos.org/files/11979/starsolid.gif");
+  list-style-position: inherit;
+}
+ +

Result

+ +

{{EmbedLiveSample("Przykłady","200","420")}}

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ +

Zobacz także

+ +

{{ Cssxref("list-style") }}, {{ Cssxref("list-style-type") }}, {{ Cssxref("list-style-image") }}

+ +
 
+ +

{{ languages( { "en": "en/CSS/list-style-position", "es": "es/CSS/list-style-position", "fr": "fr/CSS/list-style-position" } ) }}

diff --git a/files/pl/web/css/list-style-type/index.html b/files/pl/web/css/list-style-type/index.html new file mode 100644 index 0000000000..34e55005fe --- /dev/null +++ b/files/pl/web/css/list-style-type/index.html @@ -0,0 +1,108 @@ +--- +title: list-style-type +slug: Web/CSS/list-style-type +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/list-style-type +--- +

{{CSSRef}}

+ +

Podsumowanie

+ +

list-style-type określa wygląd znacznika elementu listy.

+ +

{{cssinfo}}

+ +

Składnia

+ +
 list-style-type:  <std-list-style-name> | {{ Cssxref("none") }} | {{ Cssxref("inherit") }} ;
+
+ +

Wartości

+ +
+
<std-list-style-name>
+
Standardowa nazwa stylu listy disc, circle, square, decimal, decimal-leading-zero, lower-roman, upper-roman, lower-greek, lower-latin, upper-latin, armenian, georgian, lower-alpha, upper-alpha
+
disc
+
Wypełniony okrąg.
+
circle
+
Pusty okrąg.
+
square
+
Wypełniony kwadrat.
+
decimal
+
Liczby dziesiętne, zaczynając od 1.
+
decimal-leading-zero
+
Liczby dziesiętne poprzedzone początkowym zerem (np. 01, 02, 03, ..., 98, 99).
+
lower-roman
+
Małe cyfry rzymskie (i, ii, iii, iv, v itp.).
+
upper-roman
+
Duże cyfry rzymskie (I, II, III, IV, V itp.).
+
lower-greek
+
Małe litery z klasycznej greki: alpha, beta, gamma, ... (α, β, γ, ...).
+
lower-latin
+
Małe litery ascii (a, b, c, ... z).
+
upper-latin
+
Duże litery ascii (A, B, C, ... Z).
+
armenian
+
Tradycyjna numeracja ormiańska (Armenian) (ayb/ayp, ben/pen, gim/keem, ...).
+
georgian
+
Tradycyjna numeracja gruzińska (Georgian) (an, ban, gan, ..., he, tan, in, in-an, ...).
+
lower-alpha
+
Tak samo jak lower-latin.
+
upper-alpha
+
Tak samo jak upper-latin.
+
none
+
Bez wypunktowania.
+
+ +

Przykłady

+ +

CSS

+ +
ol.normal {
+  list-style-type: upper-alpha;
+}
+
+/* or use the shortcut "list-style": */
+ol.shortcut {
+  list-style: upper-alpha;
+}
+ +

HTML

+ +
<ol class="normal">List 1
+  <li>Hello</li>
+  <li>World</li>
+  <li>What's up?</li>
+</ol>
+
+<ol class="shortcut">List 2
+  <li>Looks</li>
+  <li>Like</li>
+  <li>The</li>
+  <li>Same</li>
+</ol>
+
+ +

Result

+ +

{{EmbedLiveSample("Przykłady","200","300")}}

+ +

Uwagi

+ +

Ta specyfikacja nie definiuje, w jaki sposób systemy alfabetyczne zachowują się na końcu alfabetu. Na przykład, po 26 elementach listy numerowanie typu lower-latin jest niezdefiniowane (i będzie kontynuowane jako AA, AB, AC,...). Dlatego też dla długich list jest zalecane, aby autorzy określili prawidłowe numery.

+ +

Specyfikacje

+ + + +

Zobacz także

+ +

{{ Cssxref("list-style") }}, {{ Cssxref("list-style-image") }}, {{ Cssxref("list-style-position") }}

diff --git a/files/pl/web/css/margin/index.html b/files/pl/web/css/margin/index.html new file mode 100644 index 0000000000..b5710503ad --- /dev/null +++ b/files/pl/web/css/margin/index.html @@ -0,0 +1,112 @@ +--- +title: margin +slug: Web/CSS/Margin +translation_of: Web/CSS/margin +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność margin określa marginesy elementu. Jest ona również sposobem na ustawienie wszystkich marginesów jednocześnie. Negatywne wartosci są dozwolone.

+ +

{{cssinfo}}

+ +

Składnia

+ +
margin: <length> {1,4} | <percentage> {1,4} | inherit | auto;
+
+ +

Wartości

+ +
+
<length>
+
przyjmuje konkretną odległość.
+
<percentage>
+
procentowa wartość szerokości zawierającego bloku
+
auto
+
przeglądarka obliczy i wybierze margines dla określonego elementu
+
+ +

Jeśli podano:

+ + + +

Przykłady

+ +
  .content {
+    margin: 5%;  /* wszystkie strony margines 5% */
+  }
+
+  .sidebox {
+    margin: 10px;  /* wszystkie strony margines 10px */
+  }
+
+  .rightbox {
+    margin: 10px 20px;  /*  górny i dolny margines 10px */
+  }                     /*  lewy i prawy margines 20px */
+
+
+  .leftbox {               /*  górny margines 10px */
+    margin: 10px 3% 20px;  /*  lewy i prawy margines 3% */
+  }                        /*  dolny margines 20px */
+
+
+  .mainbox {                    /*  górny margines 10px */
+     margin: 10px 3px 30px 5px; /*  prawy margines 3px */
+  }                             /*  dolny margines 30px */
+                                /*  lewy margines 5px */
+
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{ SpecName('CSS3 Box', '#margin', 'margin') }}{{ Spec2('CSS3 Box') }}No significant change
{{ SpecName('CSS3 Transitions', '#animatable-css', 'margin') }}{{ Spec2('CSS3 Transitions') }}Defines margin as animatable.
{{ SpecName('CSS2.1', 'box.html#margin-properties', 'margin') }}{{ Spec2('CSS2.1') }}Removes its effect on inline elements.
{{ SpecName('CSS1', '#margin', 'margin') }}{{ Spec2('CSS1') }}Initial definition
+ +

Browser compatibility

+ + + +

{{Compat("css.properties.margin")}}

+ +

 

+ +

 

+ +
 
diff --git a/files/pl/web/css/media_queries/index.html b/files/pl/web/css/media_queries/index.html new file mode 100644 index 0000000000..a7a793852e --- /dev/null +++ b/files/pl/web/css/media_queries/index.html @@ -0,0 +1,122 @@ +--- +title: Media queries +slug: Web/CSS/Media_Queries +tags: + - CSS + - Media Queries + - NeedsTranslation + - Overview + - Reference + - TopicStub +translation_of: Web/CSS/Media_Queries +--- +

{{CSSRef}}

+ +

Media Queries is a module of CSS that defines expressions allowing to tailor presentations to a specific range of output devices without changing the content itself.

+ +

Reference

+ +

At-rules

+ +
+ +
+ +

Guides

+ +
+
Using media queries
+
Presents what media queries are doing and explains the possible expressions.
+
Testing media queries
+
Explains how to test a media query programmatically, from JavaScript.
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Conditional')}}{{Spec2('CSS3 Conditional')}} 
{{SpecName('CSS4 Media Queries')}}{{Spec2('CSS4 Media Queries')}} +


+  

+
{{SpecName('CSS3 Media Queries')}}{{Spec2('CSS3 Media Queries')}} 
{{SpecName('CSS2.1', 'media.html')}}{{Spec2('CSS2.1')}} 
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support1.0{{ CompatGeckoDesktop(1.7) }}9.09.21.3
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support1.0{{ CompatGeckoMobile(1.7) }}9.09.03.1
+
diff --git a/files/pl/web/css/media_queries/using_media_queries/index.html b/files/pl/web/css/media_queries/using_media_queries/index.html new file mode 100644 index 0000000000..8944867c66 --- /dev/null +++ b/files/pl/web/css/media_queries/using_media_queries/index.html @@ -0,0 +1,643 @@ +--- +title: Using media queries +slug: Web/CSS/Media_Queries/Using_media_queries +translation_of: Web/CSS/Media_Queries/Using_media_queries +--- +

Media query składa się z jej typu oraz przynajmniej jednego wyrażenia, zadaniem którego jest określenie zakresu działania kodu css, poprzez użycie takich wartości jak szerokość, wysokość czy kolor. Media queries zostały dodane w specyfikacji CSS3, pozwalając na przygotowanie określonego stylu zawartości strony, w zależności od urządzenia docelowego dla kodu, bez potrzeby zmiany samej treści w każdym z przypadków. 

+ +

Składnia

+ +

Każda Media query składa się z typu medium docelowego, a także, zgodnie ze specyfikacją CSS3, zawiera jedno lub więcej wyrażeń logicznych (ang. media features), które zwracają wartość true lub false. Wynik query jest prawdziwy, jeżeli typ medium jest zgodny z aktualnym urządzaniem (np. gdy rozdzielczość ekranu jest zgodna z podanymi warunkami). Media query zostanie wykonana, tylko jeśli wszystkie jej wyrażenia będą prawdziwe. 

+ +
<!-- Media query użyta na elemencie link -->
+<link rel="stylesheet" media="(max-width: 800px)" href="example.css" />
+
+<!-- Media query w środku arkusza stylów  -->
+<style>
+@media (max-width: 600px) {
+  .facet_sidebar {
+    display: none;
+  }
+}
+</style>
+
+ +

Jeżeli warunki zostaną spełnione, wskazane arkusze stylów, lub zasady CSS w przypadku stylu osadzonego, zostaną załadowane, zgodnie z zasadą kaskadowości css. Należy zaznaczyć, że załączone style za pomocą znacznika link będą pobierane niezależnie od tego czy media query zostanie wykonana.

+ +

Dopóki nie użyjesz operatorów not lub optional, typ medium nie jest wymagany i dla danej query nadany zostanie typ all.

+ +

Operatory logiczne

+ +

Możesz tworzyć zaawansowane media queries za pomocą operatorów logicznych - not, and oraz only. Operator and używany jest do łączenia wielu wyrażeń logicznych, w jedną media query. Nakładają one wymaganie, aby każda zeleżność była prawdziwa, wykonując przez to podany zestaw styli. Operator not używany jest do zanegowanie całej media query. Celem operatora only jest zaaplikowanie CSS'a tylko w przypadku, gdy wszystkie warunki są spełnione ( użyteczne gdy chcemy zapobiec użyciu znacznika media przez starsze przeglądarki. Jak już wspomnieliśmy, używając operatorów only oraz not musisz określić typ medium.

+ +

Możesz również połączyć wiele media queries w listę, oddzielając kolejne wyrażenia media średnikiem. Jeżeli jakakolwiek query jest prawdziwa, całe wyrażenie zwróci true. Takie wyrażenie jest równoznaczne z logicznym operatorem or

+ +

and

+ +

The and keyword is used for combining multiple media features together, as well as combining media features with media types. A basic media query, a single media feature with the implied all media type, could look like this:

+ +
@media (min-width: 700px) { ... }
+ +

If, however, you wanted this to apply only if the display is in landscape, you could use an and operator to chain the media features together.

+ +
@media (min-width: 700px) and (orientation: landscape) { ... }
+ +

Now the above media query will only return true if the viewport is 700px wide or wider and the display is in landscape. If, however, you only wanted this to apply if the display in question was of the media type TV, you could chain these features with a media type using an and operator.

+ +
@media tv and (min-width: 700px) and (orientation: landscape) { ...  }
+ +

Now, the above media query will only apply if the media type is TV, the viewport is 700px wide or wider, and the display is in landscape.

+ +

comma-separated lists

+ +

Comma-separated lists behave like the logical operator or when used in media queries. When using a comma-separated list of media queries, if any of the media queries returns true, the styles or style sheets get applied. Each media query in a comma-separated list is treated as an individual query, and any operator applied to one media query does not affect the others. This means the comma-separated media queries can target different media features, types, and states.

+ +

For instance, if you wanted to apply a set of styles if the viewing device either had a minimum width of 700px or was a handheld in landscape, you could write the following:

+ +
@media (min-width: 700px), handheld and (orientation: landscape) { ... }
+ +

Above, if I were on a screen device with a viewport width of 800px, the media statement would return true because the first part, interpreted as @media all and (min-width: 700px) would apply to my device and therefore return true, despite the fact that my screen device would fail the handheld media type check in the second media query. Likewise, if I were on a handheld device held in landscape with a viewport width of 500px, while the first media query would fail due to the viewport width, the second media query would succeed and thus the media statement would return true.

+ +

not

+ +

The not keyword applies to the whole media query and returns true if the media query would otherwise return false (such as monochrome on a color display or a screen width of 600px with a min-width: 700px feature query). A not will only negate the media query it is applied to and not to every media query if present in a comma-separated list of media queries. The not keyword cannot be used to negate an individual feature query, only an entire media query. For example, the not is evaluated last in the following query:

+ +
@media not all and (monochrome) { ... }
+
+ +

This means that the query is evaluated like this:

+ +
@media not (all and (monochrome)) { ... }
+
+ +

... rather than like this:

+ +
@media (not all) and (monochrome) { ... }
+ +

As another example, look at the following media query:

+ +
@media not screen and (color), print and (color)
+
+ +

It is evaluated like this:

+ +
@media (not (screen and (color))), print and (color)
+ +

only

+ +

The only keyword prevents older browsers that do not support media queries with media features from applying the given styles:

+ +
<link rel="stylesheet" media="only screen and (color)" href="example.css" />
+
+ +

Pseudo-BNF (for those of you that like that kind of thing)

+ +
media_query_list: <media_query> [, <media_query> ]*
+media_query: [[only | not]? <media_type> [ and <expression> ]*]
+  | <expression> [ and <expression> ]*
+expression: ( <media_feature> [: <value>]? )
+media_type: all | aural | braille | handheld | print |
+  projection | screen | tty | tv | embossed
+media_feature: width | min-width | max-width
+  | height | min-height | max-height
+  | device-width | min-device-width | max-device-width
+  | device-height | min-device-height | max-device-height
+  | aspect-ratio | min-aspect-ratio | max-aspect-ratio
+  | device-aspect-ratio | min-device-aspect-ratio | max-device-aspect-ratio
+  | color | min-color | max-color
+  | color-index | min-color-index | max-color-index
+  | monochrome | min-monochrome | max-monochrome
+  | resolution | min-resolution | max-resolution
+  | scan | grid
+ +

Media queries are case insensitive.  Media queries involving unknown media types are always false.

+ +
Note: Parentheses are required around expressions; failing to use them is an error.
+ +

Media features

+ +

Most media features can be prefixed with "min-" or "max-" to express "greater or equal to" or "less than or equal to" constraints.  This avoids using the "<" and ">" symbols, which would conflict with HTML and XML.  If you use a media feature without specifying a value, the expression resolves to true if the feature's value is non-zero.

+ +
Note: If a media feature doesn't apply to the device on which the browser is running, expressions involving that media feature are always false.  For example, querying the aspect ratio of an aural device always results in false.
+ +

color

+ +

Value: {{cssxref("<color>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: yes

+ +

Indicates the number of bits per color component of the output device.  If the device is not a color device, this value is zero.

+ +
Note: If the color components have different numbers of bits per color component, the smallest number is used.  For example, if a display uses 5 bits for blue and red and 6 bits for green, then the device is considered to use 5 bits per color component.  If the device uses indexed colors, the minimum number of bits per color component in the color table is used.
+ +

Examples

+ +

To apply a style sheet to all color devices:

+ +
@media all and (color) { ... }
+
+ +

To apply a style sheet to devices with at least 4 bits per color component:

+ +
@media all and (min-color: 4) { ... }
+
+ +

color-index

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: yes

+ +

Indicates the number of entries in the color look-up table for the output device.

+ +

Examples

+ +

To indicate that a style sheet should apply to all devices using indexed color, you can do:

+ +
@media all and (color-index) { ... }
+
+ +

To apply a style sheet to indexed color devices with at least 256 colors:

+ +
<link rel="stylesheet" media="all and (min-color-index: 256)" href="http://foo.bar.com/stylesheet.css" />
+
+ +

aspect-ratio

+ +

Value: {{cssxref("<ratio>")}}
+ Media: {{cssxref("Media/Visual")}}, {{cssxref("Media/Tactile")}}
+ Accepts min/max prefixes: yes

+ +

Describes the aspect ratio of the targeted display area of the output device.  This value consists of two positive integers separated by a slash ("/") character.  This represents the ratio of horizontal pixels (first term) to vertical pixels (second term).

+ +

Example

+ +

The following selects a special style sheet to use for when the display area is at least as wide as it is high.

+ +
@media screen and (min-aspect-ratio: 1/1) { ... }
+ +

This selects the style when the aspect ratio is either 1:1 or greater. In other words, these styles will only be applied when the viewing area is square or landscape.

+ +

device-aspect-ratio

+ +

Value: {{cssxref("<ratio>")}}
+ Media: {{cssxref("Media/Visual")}}, {{cssxref("Media/Tactile")}}
+ Accepts min/max prefixes: yes

+ +

Describes the aspect ratio of the output device.  This value consists of two positive integers separated by a slash ("/") character.  This represents the ratio of horizontal pixels (first term) to vertical pixels (second term).

+ +

Example

+ +

The following selects a special style sheet to use for widescreen displays.

+ +
@media screen and (device-aspect-ratio: 16/9), screen and (device-aspect-ratio: 16/10) { ... }
+ +

This selects the style when the aspect ratio is either 16:9 or 16:10.

+ +

device-height

+ +

Value: {{cssxref("<length>")}}
+ Media: {{cssxref("Media/Visual")}}, {{cssxref("Media/Tactile")}}
+ Accepts min/max prefixes: yes

+ +

Describes the height of the output device (meaning the entire screen or page, rather than just the rendering area, such as the document window).

+ +

Example

+ +

To apply a style sheet to a document when displayed on a screen that is less than 800 pixels long, you can use this:

+ +
<link rel="stylesheet" media="screen and (max-device-height: 799px)" />
+
+ +

device-width

+ +

Value: {{cssxref("<length>")}}
+ Media: {{cssxref("Media/Visual")}}, {{cssxref("Media/Tactile")}}
+ Accepts min/max prefixes: yes

+ +

Describes the width of the output device (meaning the entire screen or page, rather than just the rendering area, such as the document window).

+ +

Example

+ +

To apply a style sheet to a document when displayed on a screen that is less than 800 pixels wide, you can use this:

+ +
<link rel="stylesheet" media="screen and (max-device-width: 799px)" />
+ +

grid

+ +

Value: <mq-boolean> which is an {{cssxref("<integer>")}} that can only have the 0 and 1 value.
+ Media: all
+ Accepts min/max prefixes: no

+ +

Determines whether the output device is a grid device or a bitmap device.  If the device is grid-based (such as a TTY terminal or a phone display with only one font), the value is 1.  Otherwise it is zero.

+ +

Example

+ +

To apply a style to handheld devices with a 15-character or narrower display:

+ +
@media handheld and (grid) and (max-width: 15em) { ... }
+
+ +
Note: The "em" unit has a special meaning for grid devices; since the exact width of an "em" can't be determined, 1em is assumed to be the width of one grid cell horizontally, and the height of one cell vertically.
+ +

height

+ +

Value: {{cssxref("<length>")}}
+ Media: {{cssxref("Media/Visual")}}, {{cssxref("Media/Tactile")}}
+ Accepts min/max prefixes: yes

+ +

The height media feature describes the height of the output device's rendering surface (such as the height of the viewport or of the page box on a printer).

+ +
Note: As the user resizes the window, Firefox switches style sheets as appropriate based on media queries using the width and height media features.
+ +

monochrome

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: yes

+ +

Indicates the number of bits per pixel on a monochrome (greyscale) device.  If the device isn't monochrome, the device's value is 0.

+ +

Examples

+ +

To apply a style sheet to all monochrome devices:

+ +
@media all and (monochrome) { ... }
+
+ +

To apply a style sheet to monochrome devices with at least 8 bits per pixel:

+ +
@media all and (min-monochrome: 8) { ... }
+
+ +

orientation

+ +

Value: landscape | portrait
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

Indicates whether the viewport is in landscape (the display is wider than it is tall) or portrait (the display is taller than it is wide) mode.

+ +

Example

+ +

To apply a style sheet only in portrait orientation:

+ +
@media all and (orientation: portrait) { ... }
+ +
Note: This value does not correspond to actual device orientation. Opening the soft keyboard on most devices in portrait orientation will cause the viewport to become wider than it is tall, thereby causing the browser to use landscape styles instead of portrait.
+ +

resolution

+ +

Value: {{cssxref("<resolution>")}}
+ Media: {{cssxref("Media/Bitmap", "bitmap")}}
+ Accepts min/max prefixes: yes

+ +

Indicates the resolution (pixel density) of the output device.  The resolution may be specified in either dots per inch (dpi) or dots per centimeter (dpcm).

+ +

Example

+ +

To apply a style sheet to devices with at least 300 dots per inch of resolution:

+ +
@media print and (min-resolution: 300dpi) { ... }
+
+ +

To replace the old (min-device-pixel-ratio: 2) syntax:

+ +
@media screen and (min-resolution: 2dppx) { ... }
+ +

scan

+ +

Value: progressiveinterlace
+ Media: {{cssxref("Media/TV")}}
+ Accepts min/max prefixes: no

+ +

Describes the scanning process of television output devices.

+ +

Example

+ +

To apply a style sheet only to progressive scanning televisions:

+ +
@media tv and (scan: progressive) { ... }
+
+ +

width

+ +

Value: {{cssxref("<length>")}}
+ Media: {{cssxref("Media/Visual")}}, {{cssxref("Media/Tactile")}}
+ Accepts min/max prefixes: yes

+ +

The width media feature describes the width of the rendering surface of the output device (such as the width of the document window, or the width of the page box on a printer).

+ +
Note: As the user resizes the window, Firefox switches style sheets as appropriate based on media queries using the width and height media features.
+ +

Examples

+ +

If you want to specify a style sheet for handheld devices, or screen devices with a width greater than 20em, you can use this query:

+ +
@media handheld and (min-width: 20em), screen and (min-width: 20em) { ... }
+
+ +

This media query specifies a style sheet that applies to printed media wider than 8.5 inches:

+ +
<link rel="stylesheet" media="print and (min-width: 8.5in)"
+    href="http://foo.com/mystyle.css" />
+
+ +

This query specifies a style sheet that is usable when the viewport is between 500 and 800 pixels wide:

+ +
@media screen and (min-width: 500px) and (max-width: 800px) { ... }
+
+ +

Mozilla-specific media features

+ +

Mozilla offers several Gecko-specific media features. Some of these may be proposed as official media features.

+ +

{{ h3_gecko_minversion("-moz-images-in-menus", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device allows images to appear in menus, this is 1; otherwise, the value is 0. This corresponds to the {{ cssxref(":-moz-system-metric(images-in-menus)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-mac-graphite-theme", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the user has configured their device to use the "Graphite" appearance on Mac OS X, this is 1. If the user is using the standard blue appearance, or is not on Mac OS X, this is 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(mac-graphite-theme)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-maemo-classic", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the user is using Maemo with the original theme, this is 1; if it's using the newer Fremantle theme, this is 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(maemo-classic)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-device-pixel-ratio", "2.0") }} {{ deprecated_inline("gecko&16") }}

+ +

Value: {{cssxref("<number>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: yes

+ +

Gives the number of device pixels per CSS pixel.

+ +
+

Do not use this feature.

+ +

Use the resolution feature with the dppx unit instead.
+
+ -moz-device-pixel-ratio may be used for compatibility with Firefox older than 16 and -webkit-device-pixel-ratio with WebKit-based browsers that do not support dppx.

+ +

Example:

+ +
@media (-webkit-min-device-pixel-ratio: 2), /* Webkit-based browsers */
+       (min--moz-device-pixel-ratio: 2),    /* Older Firefox browsers (prior to Firefox 16) */
+       (min-resolution: 2dppx),             /* The standard way */
+       (min-resolution: 192dpi)             /* dppx fallback */ 
+ +

See this CSSWG article for compatibility good practices regarding resolution and dppx.

+
+ +
Note: This media feature is also implemented by Webkit and by IE 11 for Windows Phone 8.1 as -webkit-device-pixel-ratio. The min and max prefixes as implemented by Gecko are named min--moz-device-pixel-ratio and max--moz-device-pixel-ratio; but the same prefixes as implemented by Webkit are named -webkit-min-device-pixel-ratio and -webkit-max-device-pixel-ratio.
+ +

{{ h3_gecko_minversion("-moz-os-version", "25.0") }}

+ +

Value: windows-xp | windows-vista | windows-win7 | windows-win8 | windows-win10
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

Indicates which operating system version is currently being used. Currently only implemented on Windows. Possible values are:

+ + + +

This is provided for application skins and other chrome code to be able to adapt to work well with the current operating system version.

+ +

{{ h3_gecko_minversion("-moz-scrollbar-end-backward", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device's user interface displays a backward arrow button at the end of scrollbars, this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(scrollbar-end-backward)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-scrollbar-end-forward", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device's user interface displays a forward arrow button at the end of scrollbars, this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(scrollbar-end-forward)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-scrollbar-start-backward", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device's user interface displays a backward arrow button at the beginning of scrollbars, this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(scrollbar-start-backward)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-scrollbar-start-forward", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device's user interface displays a forward arrow button at the beginning of scrollbars, this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(scrollbar-start-forward)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-scrollbar-thumb-proportional", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device's user interface displays the thumb of scrollbars proportionally (that is, sized based on the percentage of the document that is visible), this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(scrollbar-thumb-proportional)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-touch-enabled", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the device supports touch events (for a touch screen), this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(touch-enabled)") }} CSS pseudo-class.

+ +

Example

+ +

You might use this to render your buttons slightly larger, for example, if the user is on a touch-screen device, to make them more finger-friendly.

+ +

{{ h3_gecko_minversion("-moz-windows-classic", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the user is using Windows unthemed (in classic mode instead of using uxtheme), this is 1; otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(windows-classic)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-windows-compositor", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the user is using Windows with the DWM compositor, this is 1; otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(windows-compositor)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-windows-default-theme", "1.9.2") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the user is currently using one of the default Windows themes (Luna, Royale, Zune, or Aero (including Vista Basic, Vista Advanced, and Aero Glass), this is 1. Otherwise it's 0.

+ +

This corresponds to the {{ cssxref(":-moz-system-metric(windows-default-theme)") }} CSS pseudo-class.

+ +

{{ h3_gecko_minversion("-moz-windows-glass", "21.0") }}

+ +

Value: {{cssxref("<integer>")}}
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

If the user is using Windows Glass theme, this is 1; otherwise it's 0. Note that this only exists for Windows 7 and earlier.

+ +

{{ h3_gecko_minversion("-moz-windows-theme", "2.0") }}

+ +

Value: aero | luna-blue | luna-olive | luna-silver | royale | generic | zune
+ Media: {{cssxref("Media/Visual")}}
+ Accepts min/max prefixes: no

+ +

Indicates which Windows theme is currently being used. Only available on Windows. Possible values are:

+ + + +

This is provided for application skins and other chrome code to be able to adapt to work well with the current Windows theme.

+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{ CompatChrome("21") }}{{ CompatGeckoDesktop("1.9.1") }}{{ CompatIE("9.0") }}{{ CompatOpera("9") }}{{ CompatSafari("4") }}
grid{{ CompatUnknown() }}{{ CompatNo() }} [1]{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
resolution{{ CompatChrome("29") }}{{ CompatGeckoDesktop("1.9.1") }} [2]
+ {{ CompatGeckoDesktop("8.0") }} [3]
{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
scan{{ CompatUnknown() }}{{ CompatNo() }} [4]{{ CompatUnknown() }}{{ CompatUnknown() }}{{ CompatUnknown() }}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}{{ CompatUnknown() }}{{ CompatVersionUnknown() }}{{ CompatVersionUnknown() }}
+
+ +

[1] grid media type is not supported

+ +

[2] Supports {{cssxref("<integer>")}} values;

+ +

[3] Supports {{cssxref("<number>")}} values, as per the spec.

+ +

[4] tv media type is not supported

+ +

 

+ +

See also

+ + diff --git a/files/pl/web/css/mozilla_extensions/index.html b/files/pl/web/css/mozilla_extensions/index.html new file mode 100644 index 0000000000..7bdbe05032 --- /dev/null +++ b/files/pl/web/css/mozilla_extensions/index.html @@ -0,0 +1,679 @@ +--- +title: Rozszerzenia Mozilli +slug: Web/CSS/Mozilla_Extensions +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dodatki + - Dokumentacje + - Rozszerzenia + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/CSS/Mozilla_Extensions +--- +
{{CSSRef}}
+ +

Mozilla applications such as Firefox support a number of special Mozilla extensions to CSS, including properties, values, pseudo-elements and pseudo-classes, at-rules, and media queries. These extensions are prefixed with -moz.

+ +

Mozilla-only properties and pseudo-classes (avoid using on websites)

+ +
+

Note: These properties and pseudo-classes will only work in Mozilla applications such as Firefox, and are not on a standards track. Some of them apply only to XUL elements.

+
+ +
+

B

+ + + +

C – I

+ + + +

O

+ + + +

S – Z

+ + +
+ +

Formerly proprietary properties that are now standard

+ +
+

Note: To maximize the compatibility of your CSS, you should use the unprefixed standard properties instead of the prefixed ones listed below. Once a given property is standardized and implemented without the prefix, the prefixed version is typically dropped after a while.

+
+ +
+ +
+ +

Values

+ +

Global values

+ +
+ +
+ +

{{Cssxref("-moz-appearance")}}

+ +
+ +
+ +

{{cssxref("background-image")}}

+ +
+ +
+ +

{{Cssxref("border-color")}}

+ +
+ +
+ +

{{Cssxref("border-style")}} and {{Cssxref("outline-style")}}

+ +
+ +
+ +

{{cssxref("<color>")}} keywords

+ +
+ +
+ +

{{Cssxref("display")}}

+ +
+ +
+ +

{{cssxref("empty-cells")}}

+ +
+ +
+ +

{{Cssxref("font")}}

+ +
+ +
+ +

{{Cssxref("font-family")}}

+ +
+ +
+ +

{{Cssxref("image-rendering")}}

+ +
+ +
+ +

{{cssxref("<length>")}}

+ +
+ +
+ +

{{Cssxref("list-style-type")}}

+ +
+ +
+ +

{{Cssxref("overflow")}}

+ +
+ +
+ +

{{Cssxref("text-align")}}

+ +
+ +
+ +

{{Cssxref("text-decoration")}}

+ +
+ +
+ +

{{Cssxref("-moz-user-select")}}

+ +
+ +
+ +

{{Cssxref("width")}}, {{Cssxref("min-width")}}, and {{Cssxref("max-width")}}

+ +
+ +
+ +

Pseudo-elements and pseudo-classes

+ +
+ +
+ +

At-rules

+ +
+ +
+ +

Media features

+ +
+ +
+ +

Other

+ +
+ +
+ +

See also

+ + diff --git "a/files/pl/web/css/na_pocz\304\205tek/bloki/index.html" "b/files/pl/web/css/na_pocz\304\205tek/bloki/index.html" new file mode 100644 index 0000000000..0835e0b145 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/bloki/index.html" @@ -0,0 +1,70 @@ +--- +title: Bloki +slug: Web/CSS/Na_początek/Bloki +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Building_blocks +--- +

 

+

Ta strona opisuje jak możesz użyć CSS do kontroli przestrzeni, którą zajmuje wyświetlany element.

+

W swoim przykładowym dokumencie będziesz zmieniać odstępy i dodawać reguły dekoracyjne.

+

Informacja: Bloki

+

Kiedy Twoja przeglądarka wyświetla element, zajmuje on miejsce. Przestrzeń, którą zajmuje element, dzieli się na cztery części.

+

W środku istnieje przestrzeń, której element potrzebuje do wyświetlenia swojej zawartości. Wokół tego jest margines wewnętrzny. Wokół tego jest ramka. Wokół tego jest margines zewnętrzny.

+ +

margines zewnętrzny

ramka

margines wewnętrzny

element

Jasny szary wskazuje części układu strony.

 

 

 

element

Tak wygląda to w przeglądarce.

+

Marginesy wewnętrzne, zewnętrzne i ramka mogą mieć różne wielkości na górze, na dole, po prawej i po lewej stronie elementu. Każdy z nich może mieć wartość zero.

+

Margines wewnętrzny ma zawsze ten sam kolor, co tło elementu. Zatem kiedy określasz kolo tła, widzisz ten kolor w tle elementu i jego marginesu wewnętrznego. Margines jest zawsze przezroczysty.

+ +

margines zewnętrzny

ramka

margines wewnętrzny

element

Ten element ma zielone tło.

 

 

 

element

Tak wygląda to w przeglądarce.

+

Ramki

+

Możesz użyć ramek do dekoracji elementów liniami lub blokami.

+

Aby utworzyć jednakową ramkę wokół całego elementu, użyj własności border. Określ szerokość (zwykle w pikselach), styl i kolor.

+

Istnieją następujące style:

+ +
solid
dotted
dashed
double
inset
outset
ridge
groove
+

Możesz także ustawić styl na none lub hidden, aby usunąć ramkę, lub ustawić kolor na transparent, aby ustawić przezroczystą ramkę bez dotykania układu.

+

Aby określić osobno każdą krawędź ramki, użyj własności: border-top (góra), border-right (prawo), border-bottom (dół), border-left (lewo). Możesz ich użyć do określenia ramki tylko po jednej stronie lub różnych ramek dla każdej krawędzi.

+ +
Przykłady
Ta reguła ustawia kolor tła i górną ramkę dla elementów nagłówka:

h3 {

 border-top: 4px solid #7c7; /* mid green */
+ background-color: #efe;     /* pale green */
+ color: #050;                /* dark green */
+ }
+

Wygląda to tak:

Nagłówek w dobrym stylu

Dzięki tej regule obrazki są lepiej widoczne dzięki lekko szarej ramce wokół każdego z nich:

img {border: 2px solid #ccc;}

Rezultat jest następujący:

Obrazek: Image:Blue-rule.png
+

Marginesy zewnętrzne i wewnętrzne

+

Użyj marginesów zewnętrznych i wewnętrznych, aby dopasować pozycję elementów i stworzyć przestrzeń wokół nich.

+

Użyj własności margin lub padding, aby ustawić szerokość marginesu wewnętrznego lub zewnętrznego.

+

Jeżeli podasz tylko jedną wartość, zostanie ona zastosowana wokół całego elementu (góra, prawo, dół i lewo).

+

Jeżeli określisz dwie wartości, pierwsza zostanie używa do określenia wymiarów góry i dołu, druga do prawa i lewa.

+

Możesz też określić wszystkie cztery szerokości w kolejności: góra, prawo, dół, lewo.

+ +
Przykład
Ta reguła oznacza akapity z klasą remark poprzez dodanie czerwonej ramki wokół nich.

Marginesy wewnętrzne ustawione dla wszystkie boków odsuną trochę ramki od tekstu.

Lewy margines zewnętrzny odsuwa akapit od reszty tekstu:

p.remark {

 border: 2px solid red;
+ padding: 4px;
+ margin-left: 24px;
+ }
+

Wynik wygląda tak:

Oto zwykły akapit.

A to akapit z klasą remark.

+ +
Więcej szczegółów
Kiedy używasz marginesów zewnętrznych i wewnętrznych do określania, jak układane są elementu, Twoje reguły stylu wpływają na domyślne wartości przeglądarki w sposób, który może być bardzo skomplikowany.

Różne przeglądarki układają elementy na różne sposoby. Wynik może wyglądać podobnie, póki Twój arkusz stylów nic nie zmienia. Czasem może to dać dość zaskakujące rezultaty.

Aby uzyskać spodziewany rezultat, możesz chcieć zmienić znaczniki dokumentu. Następna strona tego kursu tłumaczy, jak to zrobić.

Aby dowiedzieć się więcej o marginesach i ramkach, zajrzyj do specyfikacji CSS do rozdziału model blokowy.

+

Zadanie: Dodawanie ramek

+

Wyedytuj swój plik CSS. Dodaj poniższą regułę, aby rysować linię nad każdym nagłówkiem:

+
+

h3 {border-top: 1px solid gray;}

+
+

Jeżeli podjąłeś(aś) wyzwanie z poprzedniej strony, zmodyfikuj stworzoną regułę; w przeciwnym wypadku dodaj nową regułę, która doda przestrzeń pod każdym elementem listy:

+
+

li {

+
 list-style: lower-roman;
+ margin-bottom: 8px;
+ }
+
+
+

Odśwież okno przeglądarki, aby zobaczyć wynik:

+ +

(A) Oceany

  • Arktyczny
  • Atlantycki
  • Spokojny
  • Indyjski
  • Południowy

(B) Numbered paragraphs

1: Lorem ipsum

2: Dolor sit

3: Amet consectetuer

4: Magna aliquam

5: Autem veleum

+

 

+ +
Wyzwanie
Dodaj regułę do swojego arkusza stylów, która stworzy szeroką ramkę wokół wszystkich oceanów w kolorze, który kojarzy Ci się z morzem — coś w stylu:

(A) The oceans

  • Arctic
  • Atlantic
  • Pacific
  • Indian
  • Southern

(B) Numbered paragraphs

. . .

(Nie musisz uzyskać identycznej szerokości ani koloru jak tutaj.)

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji.

+

Poprzez określenie marginesów modyfikujesz układ dokumentu. Na następnej stronie nauczysz się zmieniać układ w inny sposób: Układ

+

{{ languages( { "en": "en/CSS/Getting_Started/Boxes", "fr": "fr/CSS/Premiers_pas/Bo\u00eetes", "pt": "pt/CSS/Como_come\u00e7ar/Caixas" } ) }}

diff --git "a/files/pl/web/css/na_pocz\304\205tek/czym_jest_css/index.html" "b/files/pl/web/css/na_pocz\304\205tek/czym_jest_css/index.html" new file mode 100644 index 0000000000..2472a575c4 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/czym_jest_css/index.html" @@ -0,0 +1,132 @@ +--- +title: Czym jest CSS +slug: Web/CSS/Na_początek/Czym_jest_CSS +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/First_steps/How_CSS_works +--- +

 

+ +

Ta strona opisuje, czym jest CSS.

+ +

Informacja: Czym jest CSS?

+ +

CSS jest językiem określającym, jak dokumenty mają być prezentowane użytkownikowi.

+ +

Dokumentjest to kolekcja informacji ułożona w strukturę przy użyciujęzyka znaczników.

+ + + + + + + + +
Przykłady
+
    +
  • Strona, taka jak ta, jest dokumentem.
    + Informacje, które widzisz na stronie, zazwyczaj są ułożone w strukturę przy użyciu języka znaczników HTML (HyperText Markup Language).
  • +
+ +
    +
  • Okienko dialogowe w aplikacji Mozilli jest dokumentem.
    + Kontrolki interfejsu użytkownika, które widzisz w okienku dialogowym Mozilli, są ułożone w strukturę przy użyciu języka znaczników XUL (XML User-interface Language).
  • +
+
+ +

W tym kursie bloki oznaczone Więcej szczegółów, jak poniższy, zawierają informacje, których znajomość nie jest wymagana do dalszego korzystania z kursu. Jeżeli się spieszysz, możesz spokojnie pominąć te bloki i na przykład wrócić do nich później.

+ + + + + + + + +
Więcej szczegółów
+

Dokument nie jest tym samym co plik. Dokument może, ale nie musi być składowany w pliku.

+ +

Na przykład dokument, który w tym momencie czytasz, nie jest zapisany w pliku. Kiedy Twoja przeglądarka prosi o stronę, serwer odpytuje bazę danych i generuje dokument, składając jego części z wielu plików i fragmentów z bazy danych. Jednak w trakcie tego kursu będziesz pracować z dokumentami składowanymi w plikach.

+ +

Więcej informacji na temat dokumentów i języków znaczników znajdziesz w innych częściach tej strony — na przykład:

+ + + + + + + + + + + + + + + + + + + + +
HTMLo stronach internetowych
XMLo strukturalnych dokumentach
SVGo grafice
XULo interfejsie użytkownika w Mozilli
+
+ +

Prezentowaniedokumentu użytkownikowi oznacza skonwertowanie go do postaci, w jakiej będzie on przydatny użytkownikowi. Mozilla prezentuje dokumenty wizualnie — na przykład na ekranie komputera, obrazie wyświetlanym przez projektor lub wydruku.

+ + + + + + + + +
Więcej szczegółów
CSS jest przeznaczony nie tylko dla przeglądarek i prezentacji graficznych. W formalnej terminologii CSS program, który prezentuje dokumenty użytkownikowi, nazywany jestagentem (ang. User Agent - UA). Przeglądarka jest tylko jednym z wielu rodzajów UA. Jednakże część pierwsza tego kursu skupia się na pracy z językiem CSS w przeglądarce. +

Formalne definicje terminologii związanej z CSS znajdziesz w Specyfikacji CSS w dziale Definicje.

+
+ +

Zadanie: Tworzenie dokumentu

+ +

Stwórz nowy katalog, a w nim nowy plik. Ten plik będzie Twoim dokumentem.

+ +

Skopiuj i wklej poniższy kod HTML. Zapisz plik pod nazwą doc1.html

+ +
+
<!DOCTYPE html>
+<html>
+  <head>
+  <meta charset="UTF-8">
+  <title>Sample document</title>
+  </head>
+
+  <body>
+    <p>
+      <strong>C</strong>ascading
+      <strong>S</strong>tyle
+      <strong>S</strong>heets
+    </p>
+  </body>
+</html>
+
+ +

Otwórz nowy panel lub nowe okno w Twojej przeglądarce i otwórz ten plik.

+ +

Powinieneś zobaczyć tekst zaczynający się od pogrubionych liter:

+ + + + + + + +
Cascading Style Sheets
+ +

To, co widzisz w przeglądarce, może się trochę różnić z powodu ustawień przeglądarki oraz tego wiki. Jeżeli istnieją jakieś różnice w kroju pisma, odstępach i kolorach, które widzisz, nie jest to żaden problem.

+ +

Co dalej?

+ +

Jeżeli masz problemy ze zrozumieniem tej strony lub chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji.

+ +

Twój dokument nie używa jeszcze CSS. Na następnej stronie zaczniesz używać CSS do określania stylów: Po co używać CSS

+ +

{{ languages( { "en": "en/CSS/Getting_Started/What_is_CSS", "fr": "fr/CSS/Premiers_pas/Pr\u00e9sentation_des_CSS", "it": "it/Conoscere_i_CSS/Che_cosa_sono_i_CSS", "ja": "ja/CSS/Getting_Started/What_is_CSS", "pt": "pt/CSS/Como_come\u00e7ar/O_que_\u00e9_CSS", "zh-cn": "cn/CSS/Getting_Started/What_is_CSS" } ) }}

diff --git "a/files/pl/web/css/na_pocz\304\205tek/czytelny_css/index.html" "b/files/pl/web/css/na_pocz\304\205tek/czytelny_css/index.html" new file mode 100644 index 0000000000..ca79229c4c --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/czytelny_css/index.html" @@ -0,0 +1,153 @@ +--- +title: Czytelny CSS +slug: Web/CSS/Na_początek/Czytelny_CSS +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Introduction_to_CSS/Syntax#Beyond_syntax_make_CSS_readable +--- +

+

Ta strona opisuje styl i gramatykę języka CSS. +

Zmienisz wygląd swojego pliku CSS, aby był bardziej czytelny. +

+

Informacja: Czytelny CSS

+

Możesz dodać białe znaki i komentarze do swojego arkusza stylów, aby uczynić go bardziej czytelnym. +Możesz też grupować selektory razem, kiedy te same reguły stylów dotyczą wybranych elementów w różny sposób. +

+

Białe znaki

+

Białe znaki to spacje, tabulatory i nowe linie. +Dzięki białym znakom arkusz stylów będzie bardzie czytelny. +

Twój przykładowy plik CSS zawiera w tej chwili jedną regułę na linię i prawie minimalną liczbę białych znaków. W złożonych arkuszach stylów taki układ byłby bardzo trudny do czytania, utrudniając zarządzanie arkuszem. +

Styl, który wybierzesz, zazwyczaj zależy od prywatnych przyzwyczajeń, ale Twój arkusz stylów może być częścią projektu, którym zajmuje się więcej osób. W takiej sytuacji przyjmuje się pewne konwencje. +

+ + +
Przykłady +
Niektórzy ludzie lubią zwięzły układ, którego używaliśmy do tej pory, dzieląc linię jedynie wtedy, kiedy staje się ona bardzo długa: +
+.carrot {color: orange; text-decoration: underline; font-style: italic;}
+
+

Inni wolą układać jedną własność-wartość na linię: +

+
+

.carrot +{ +color: orange; +text-decoration: underline; +font-style: italic; +} +

+
+

Inni używają wcięć — często używane są dwie spacje, cztery spacje lub tabulator: +

+
+

.carrot { +

+
 color: orange;
+ text-decoration: underline;
+ font-style: italic;
+
+

} +

+
+

Inni wolą ustawiać wszystko względem pionowej osi (jednak taki układ jest trudny w zarządzaniu): +

+
+

.carrot +

+
   {
+   color           : orange;
+   text-decoration : underline;
+   font-style      : italic;
+   }
+
+
+

Tworząc wcięcia jedni wolą używać tabulatorów, inni zaś tylko spacji. +

+
+

Komentarze

+

Komentarze w CSS zaczynają się od /*, a kończą się na */. +

Możesz używać komentarzy, aby komentować elementy swojego arkusza stylów oraz do wykomentowywania części aktualnie nieużywanych. +

Aby wykomentować części arkusza stylów, umieść tę część w komentarzu, a przeglądarka ją zignoruje. +Należy uważać, gdzie zaczyna, a gdzie kończy się komentarz. +Dalsza część arkusza stylów musi mieć poprawną składnię. +

+ + +
Przykład +
+

/* styl dla początkowej litery C w pierwszym paragrafie */ +.carrot { +

+
 color:            orange;
+ text-decoration:  underline;
+ font-style:       italic;
+ }
+
+
+
+

Grupy Selektorów

+

Kiedy wiele selektorów ma ten sam styl, możesz określić grupę selektorów, oddzielając je przecinkami. +Deklaracja zostanie zastosowana do wszystkich wybranych elementów. +

W innych miejscach arkusza stylów możesz określić te same selektory ponownie, aby nadać im indywidualne reguły. +

+ + +
Przykład +
Ta reguła sprawia, że elementy H1, H2 oraz H3 są tego samego koloru. +

Wygodnie jest określić kolor tylko w jednym miejscu, na wypadek, gdyby miał być zmieniany. +

+
+

/* kolory nagłówków */ +h1, h2, h3 {color: navy;} +

+
+
+

Zadanie: Dodawanie komentarzy i poprawianie układu

+

Wyedytuj swój plik CSS i upewnij się, że posiada on te reguły (w dowolnej kolejności): +

+
+

strong {color: red;} +.carrot {color: orange;} +.spinach {color: green;} +

+
  1. first {font-style: italic;} +
+

p {color: blue;} +

+
+

Spraw, aby stał się bardziej czytelny, zmieniając kolejność w sposób, który uznasz za logiczny oraz dodając białe znaki i komentarze w taki sposób, jaki uznasz za najlepszy. +

Zapisz ten plik i odśwież stronę w przeglądarce, aby upewnić się, że Twoje zmiany nie wpłynęły na działanie arkusza stylów: +

+ + + + +
Cascading Style Sheets +
Cascading Style Sheets +
+


+

+ + +
Wyzwanie +
Wykomentuj część arkusza stylów bez zmieniania czegokolwiek poza tym, aby pierwsza litera dokumentu była czerwona: + + + + +
Cascading Style Sheets +
Cascading Style Sheets +
+

(Jest więcej niż jeden sposób, aby to zrobić.) +

+
+


+

+

Co dalej?

+

Twój przykładowy dokument używa kursywy oraz podkreślenia. +Następna strona omawia kolejne sposoby na określanie wyglądu tekstu w dokumencie: +Style tekstowe +

+
+
+{{ languages( { "en": "en/CSS/Getting_Started/Readable_CSS", "fr": "fr/CSS/Premiers_pas/Des_CSS_lisibles", "it": "it/Conoscere_i_CSS/CSS_leggibili", "ja": "ja/CSS/Getting_Started/Readable_CSS", "pt": "pt/CSS/Como_come\u00e7ar/CSS_leg\u00edvel" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/dane_xml/index.html" "b/files/pl/web/css/na_pocz\304\205tek/dane_xml/index.html" new file mode 100644 index 0000000000..3352d21184 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/dane_xml/index.html" @@ -0,0 +1,191 @@ +--- +title: Dane XML +slug: Web/CSS/Na_początek/Dane_XML +tags: + - 'CSS:Na_początek' +translation_of: Archive/Beginner_tutorials/XML_data +--- +

+

Ta strona zawiera przykład tego, jak możesz używać CSS z danymi XML. +

Stworzysz przykładowy dokument XML oraz arkusz stylów, którego możesz użyć do wyświetlenia tego dokumentu w przeglądarce. +

+

Informacja: Dane XML

+

XML (Rozszerzalny Język Znaczników) jest językiem ogólnego przeznaczenia dla wszelkiego typu danych strukturalnych. +

Domyślnie, Twoja przeglądarka Mozilla wyświetla XML w formacie bardzo podobnym do ułożenia danych w oryginalnym pliku XML. +Dzięki temu możesz obejrzeć znaczniki, które określają strukturę danych. +

Przez podpięcie arkusza stylów CSS do dokumentu XML, może określić inne sposoby wyświetlenia go. +Aby to zrobić, Twój arkusz stylów używa reguł, które mapuje znaczniki w dokumencie XML, aby były wyświetlane w typach znanych HTML-owi. +

+ + +
Przykład +
Dane w dokumencie XML używają tagu <INFO>. Chcesz, aby wszystkie elementy INFO w dokumencie były wyświetlane jak HTML-owe akapity. +

W arkuszu stylów dokumentu, określasz jak wyświetlane będą elementy INFO: +

+
+
INFO {
+ display: block;
+ margin: 1em 0;
+ }
+
+
+
+

Najczęstszymi wartościami własności display są: +

+ + + + +
blockWyświetlane jak HTML-owy DIV (nagłówki, akapity itp.) +
inlineWyświetlany jak HTML-owy SPAN (dla typów tekstowych) +
+

Dodaj własne reguły stylów, które określą krój, odstępy i inne szczegóły w taki sam sposób, jak dla HTML-a. +

+ + +
Więcej szczegółów +
Inne wartości własności display pozwalają wyświetlać element jako punkt listy lub jako komponent tabeli. +

Pełną listę typów wyświetlania można znaleźć w specyfikacji CSS na stronie The display property. +

Jeśli korzystasz wyłącznie z CSS, struktura wyświetlania musi być taka sama jak struktura dokumentu. +Inne technologie pozwalają modyfikować strukturę wyświetlania—na przykład XBL może dodawać treść, a JavaScript może modyfikować DOM. +

Aby dowiedzieć się więcej o XML-u w Mozilli, zajrzyj na stronę XML w tym wiki. +

+
+

Zadanie: Demonstracja XML-a

+

Stwórz nowy plik XML, doc9.xml. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
<?xml version="1.0"?>
+<!-- XML demonstration -->
+
+<?xml-stylesheet type="text/css" href="style9.css"?>
+
+<!DOCTYPE planet>
+<planet>
+
+<ocean>
+<name>Arctic</name>
+<area>13,000</area>
+<depth>1,200</depth>
+</ocean>
+
+<ocean>
+<name>Atlantic</name>
+<area>87,000</area>
+<depth>3,900</depth>
+</ocean>
+
+<ocean>
+<name>Pacific</name>
+<area>180,000</area>
+<depth>4,000</depth>
+</ocean>
+
+<ocean>
+<name>Indian</name>
+<area>75,000</area>
+<depth>3,900</depth>
+</ocean>
+
+<ocean>
+<name>Southern</name>
+<area>20,000</area>
+<depth>4,500</depth>
+</ocean>
+
+</planet>
+
+

Stwórz nowy plik CSS, style9.css. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
/*** XML demonstration ***/
+
+planet:before {
+  display: block;
+  width: 8em;
+  font-weight: bold;
+  font-size: 200%;
+  content: "Oceans";
+  margin: -.75em 0px .25em -.25em;
+  padding: .1em .25em;
+  background-color: #cdf;
+  }
+
+planet {
+  display: block;
+  margin: 2em 1em;
+  border: 4px solid #cdf;
+  padding: 0px 1em;
+  background-color: white;
+  }
+
+ocean {
+  display: block;
+  margin-bottom: 1em;
+  }
+
+name {
+  display: block;
+  font-weight: bold;
+  font-size: 150%;
+  }
+
+area {
+  display: block;
+  }
+
+area:before {
+  content: "Area: ";
+  }
+
+area:after {
+  content: " million km\B2";
+  }
+
+depth {
+  display: block;
+  }
+
+depth:before {
+  content: "Mean depth: ";
+  }
+
+depth:after {
+  content: " m";
+  }
+
+

Otwórz dokument w swojej przeglądarce: +

+ + +
+

Oceans

+

Arctic
+Area: 13,000 million km²
+Mean depth: 1,200 m

+

Atlantic
+Area: 87,000 million km²
+Mean depth: 3,900 m

+

. . .

+
+
+


+Uwagi dotyczące tej demonstracji: +

+ +


+

+ + +
Wyzwanie +
Zmień arkusz stylów, aby wyświetlał dokument jako tabelę. +

(Zajrzyj na stronę Tables w specyfikacji CSS, aby znaleźć przykłady.) +

+
+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony, lub jeżeli masz jakieś komentarze na jej temat, pomóż nam dopisując się na stronie Dyskusji. +

To jest ostatnia strona tego kursu. +Więcej informacji na temat CSS w Mozilli możesz znaleźć na głównej stronie CSS-a na tym wiki. +

{{ languages( { "en": "en/CSS/Getting_Started/XML_data", "fr": "fr/CSS/Premiers_pas/Donn\u00e9es_XML", "pt": "pt/CSS/Como_come\u00e7ar/Dados_XML", "ko": "ko/CSS/Getting_Started/XML_data" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/grafika_svg/index.html" "b/files/pl/web/css/na_pocz\304\205tek/grafika_svg/index.html" new file mode 100644 index 0000000000..1581fbdcd8 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/grafika_svg/index.html" @@ -0,0 +1,195 @@ +--- +title: Grafika SVG +slug: Web/CSS/Na_początek/Grafika_SVG +tags: + - 'CSS:Na_początek' +translation_of: Web/SVG/Tutorial/SVG_and_CSS +--- +

+

Ta strona ilustruje specjalny język do tworzenia grafiki: SVG. +

Stworzysz prostą demonstrację, która działa w przeglądarce Mozilli z obsługą SVG.

+

Informacja: SVG

+

SVG (Skalowalna Grafika Wektorowa) jest bazującym na XML-u językiem do tworzenia grafiki. +

Może być używana do tworzenia statycznych obrazków, ale także animacji i interfejsów użytkownika. +

Podobnie jak inne bazujące na XML-u języki, SVG obsługuje arkusze stylów CSS, dzięki czemu możesz oddzielić styl grafiki od jej zawartości. +

Ponadto, arkusz stylów, którego używasz w innych językach znaczników dokumentu, może wskazywać adres grafiki SVG tam, gdzie potrzebny jest obrazek. +Na przykład, arkusz stylów, którego używasz w dokumencie HTML może wskazywać na adres URL grafiki SVG jako wartość własności background. +

+ + +
Więcej szczegółów +
W trakcie pisania tego kursu (połowa 2005) tylko najnowsze wydania przeglądarek Mozilli posiadają wbudowaną obsługę SVG. +

Możesz dodać wsparcie dla SVG do innych wersji instalując wtyczkę taką, jak ta wydana przez Adobe. +

Aby dowiedzieć się więcej o SVG w Mozilli, zajrzyj na stronę SVG w tym wiki. +

+
+

Zadanie: Demonstracja SVG

+

Stwórz nowy dokument SVG jako czysty plik tekstowy, doc8.svg. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
<?xml version="1.0" standalone="no"?>
+
+<?xml-stylesheet type="text/css" href="style8.css"?>
+
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+
+<svg width="600px" height="600px" viewBox="-300 -300 600 600"
+  xmlns="http://www.w3.org/2000/svg" version="1.1"
+  xmlns:xlink="http://www.w3.org/1999/xlink">
+
+<title>SVG demonstration</title>
+<desc>Mozilla CSS Getting Started - SVG demonstration</desc>
+
+<defs>
+  <g id="segment" class="segment">
+    <path class="segment-fill" d="M0,0 v-200 a40,40 0 0,0 -62,10 z"/>
+    <path class="segment-edge" d="M0,-200 a40,40 0 0,0 -62,10"/>
+    </g>
+  <g id="quadrant">
+    <use xlink:href="#segment"/>
+    <use xlink:href="#segment" transform="rotate(18)"/>
+    <use xlink:href="#segment" transform="rotate(36)"/>
+    <use xlink:href="#segment" transform="rotate(54)"/>
+    <use xlink:href="#segment" transform="rotate(72)"/>
+    </g>
+  <g id="petals">
+    <use xlink:href="#quadrant"/>
+    <use xlink:href="#quadrant" transform="rotate(90)"/>
+    <use xlink:href="#quadrant" transform="rotate(180)"/>
+    <use xlink:href="#quadrant" transform="rotate(270)"/>
+    </g>
+  <radialGradient id="fade" cx="0" cy="0" r="200"
+      gradientUnits="userSpaceOnUse">
+    <stop id="fade-stop-1" offset="33%"/>
+    <stop id="fade-stop-2" offset="95%"/>
+    </radialGradient>
+  </defs>
+
+<text id="heading" x="-280" y="-270">
+  SVG demonstration</text>
+<text  id="caption" x="-280" y="-250">
+  Move your mouse pointer over the flower.</text>
+
+<g id="flower">
+  <circle id="overlay" cx="0" cy="0" r="200"
+    stroke="none" fill="url(#fade)"/>
+  <use id="outer-petals" xlink:href="#petals"/>
+  <use id="inner-petals" xlink:href="#petals"
+    transform="rotate(9) scale(0.33)"/>
+  </g>
+
+</svg>
+
+

Stwórz nowy plik CSS, style8.css. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
/*** SVG demonstration ***/
+
+/* page */
+svg {
+  background-color: beige;
+  }
+
+#heading {
+  font-size: 24px;
+  font-weight: bold;
+  }
+
+#caption {
+  font-size: 12px;
+  }
+
+/* flower */
+#flower:hover {
+  cursor: crosshair;
+  }
+
+/* gradient */
+#fade-stop-1 {
+  stop-color: blue;
+  }
+
+#fade-stop-2 {
+  stop-color: white;
+  }
+
+/* outer petals */
+#outer-petals {
+  opacity: .75;
+  }
+
+#outer-petals .segment-fill {
+  fill: azure;
+  stroke: lightsteelblue;
+  stroke-width: 1;
+  }
+
+#outer-petals .segment-edge {
+  fill: none;
+  stroke: deepskyblue;
+  stroke-width: 3;
+  }
+
+#outer-petals .segment:hover > .segment-fill {
+  fill: plum;
+  stroke: none;
+  }
+
+#outer-petals .segment:hover > .segment-edge {
+  stroke: slateblue;
+  }
+
+/* inner petals */
+#inner-petals .segment-fill {
+  fill: yellow;
+  stroke: yellowgreen;
+  stroke-width: 1;
+  }
+
+#inner-petals .segment-edge {
+  fill: none;
+  stroke: yellowgreen;
+  stroke-width: 9;
+  }
+
+#inner-petals .segment:hover > .segment-fill {
+  fill: darkseagreen;
+  stroke: none;
+  }
+
+#inner-petals .segment:hover > .segment-edge {
+  stroke: green;
+  }
+
+

Otwórz ten dokument w swojej przeglądarce z obsługą SVG. Przesuwaj kursor myszy nad grafiką. +

To wiki nie obsługuję SVG na stronach, więc nie jest możliwe pokazanie demonstracji. +Grafika wygląda mniej więcej tak: +

+ + +
Demonstracja SVG +
+

Uwagi dotyczące tej demonstracji: +

+ +


+

+ + +
Wyzwanie +
Zmień ten arkusz stylów, aby wewnętrzne płatki zmieniały się wszystkie na różowy, kiedy wskaźnik myszy znajduje się nad jednym z nich, bez zmiany działania zewnętrznych płatków. +
+


+

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony, lub jeżeli masz jakieś komentarze na jej temat, pomóż nam dopisując się na stronie Dyskusji. +

W tej demonstracji Twoja przeglądarka, obsługująca SVG, umie już wyświetlić elementy SVG. +Arkusz stylów modyfikuje tylko sposób wyświetlania elementów. +Tak samo dzieje się z dokumentami HTML i XUL. +Możesz też używać CSS-a w dokumentach XML ogólnego przeznaczenia, gdzie nie istnieje domyślny sposób wyświetlania elementów. +Następna strona omawia ten temat: +Dane XML +

{{ languages( { "en": "en/CSS/Getting_Started/SVG_graphics", "fr": "fr/CSS/Premiers_pas/Graphiques_SVG", "pt": "pt/CSS/Como_come\u00e7ar/Gr\u00e1ficos_SVG" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/index.html" "b/files/pl/web/css/na_pocz\304\205tek/index.html" new file mode 100644 index 0000000000..dd8cd83dcb --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/index.html" @@ -0,0 +1,63 @@ +--- +title: Na początek +slug: Web/CSS/Na_początek +tags: + - CSS + - 'CSS:Na_początek' + - Wszystkie_kategorie +translation_of: Learn/CSS/First_steps +--- +

 

+

Wprowadzenie

+

Ten kurs wprowadza użytkownika w świat kaskadowych arkuszy stylów (CSS).

+

Pokaże Ci on, jak korzystać z podstawowych funkcji CSS przy użyciu praktycznych przykładów, które możesz sprawdzić na swoim komputerze. Kurs składa się z dwóch części.

+ + +

Ten kurs bazuje na specyfikacji CSS 2.1.

+

Kto może skorzystać z tego kursu?

+

Kurs jest przeznaczony dla początkujących, ale może być też przydatny dla osób mających już pewną wiedzę o CSS.

+

Jeżeli jesteś początkujący, skorzystaj z pierwszej części tego kursu, by zrozumieć działanie CSS i nauczyć się go używać. Potem przeczytaj część drugą, aby zrozumieć zakres wykorzystania CSS w produktach Mozilli.

+

Jeżeli znasz już trochę CSS, możesz pominąć części kursu, które omawiają znane Ci tematy i skupić się na tych, które są dla Ciebie nowe.

+

Jeżeli znasz dobrze CSS, ale nie w Mozilli, przejdź do części drugiej.

+

Czego potrzebujesz, zanim zaczniesz?

+

Aby móc swobodnie korzystać z tego kursu, potrzebujesz edytora plików tekstowych oraz przeglądarkę Mozilla (Firefox lub Mozilla Suite) i powinieneś umieć korzystać z obu tych produktów w podstawowym zakresie.

+

Jeżeli nie chcesz edytować plików, możesz po prostu czytać kurs i patrzeć na obrazki, ale taka metoda nauki jest znacznie mniej efektywna.

+

Niektóre części tego kursu mogą wymagać innych aplikacji Mozilli. Części te są opcjonalne. Jeżeli nie chcesz pobierać innych aplikacji Mozilli, po prostu pomiń je.

+

Uwaga:  CSS umożliwia pracę z kolorami, więc niektóre części kursu zależą od kolorów. Możesz z nich wygodnie korzystać, jeśli posiadasz kolorowy wyświetlacz i prawidłowo rozróżniasz kolory.

+

Jak korzystać z tego kursu

+

Aby korzystać z tego kursu, przeczytaj uważnie wszystkie strony po kolei. Jeżeli pominiesz jedną stronę, możesz mieć trudności z rozumieniem dalszych.

+

Na każdej stronie sekcja Informacja opisuje, jak działa CSS. Dzięki sekcji Zadanie będziesz mógł wypróbować użycie CSS na swoim komputerze.

+

Aby sprawdzić, jak dobrze rozumiesz treść, podejmij wyzwanie znajdujące się na dole każdej strony. Rozwiązania niektórych wyzwań są prezentowane na późniejszych stronach kursu.

+

Aby lepiej zrozumieć CSS, przeczytaj informacje znajdujące się w boksach oznaczonych Więcej szczegółów. Użyj znajdujących się tam odnośników, aby dowiedzieć się więcej ze specyfikacji CSS.

+

Kurs – część pierwsza

+

Podstawowy kurs CSS, krok po kroku.

+
    +
  1. Czym jest CSS
  2. +
  3. Po co używać CSS
  4. +
  5. Jak działa CSS
  6. +
  7. Kaskadowość i dziedziczenie
  8. +
  9. Selektory
  10. +
  11. Czytelny CSS
  12. +
  13. Style tekstowe
  14. +
  15. Kolor
  16. +
  17. Treść
  18. +
  19. Listy
  20. +
  21. Bloki
  22. +
  23. Układ
  24. +
  25. Tabele
  26. +
  27. Media
  28. +
+

Kurs – część druga

+

Przykłady wykorzystania CSS w Mozilli.

+
    +
  1. JavaScript
  2. +
  3. Wiązania XBL
  4. +
  5. XUL-owe interfejsy użytkownika
  6. +
  7. Grafika SVG
  8. +
  9. Dane XML
  10. +
+

{{ languages( { "en": "en/CSS/Getting_Started", "fr": "fr/CSS/Premiers_pas", "it": "it/Conoscere_i_CSS", "ja": "ja/CSS/Getting_Started", "nl": "nl/CSS/Voor_Beginners", "zh-cn": "cn/CSS/\u5f00\u59cb", "pt": "pt/CSS/Como_come\u00e7ar" } ) }}

diff --git "a/files/pl/web/css/na_pocz\304\205tek/jak_dzia\305\202a_css/index.html" "b/files/pl/web/css/na_pocz\304\205tek/jak_dzia\305\202a_css/index.html" new file mode 100644 index 0000000000..f660589f31 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/jak_dzia\305\202a_css/index.html" @@ -0,0 +1,113 @@ +--- +title: Jak działa CSS +slug: Web/CSS/Na_początek/Jak_działa_CSS +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/First_steps/How_CSS_works +--- +

+

Ta strona wyjaśnia, jak działa CSS w przeglądarce. +Przeanalizujesz przykładowy dokument, poznając szczegóły jego stylów. +

+

Informacja: Jak działa CSS

+

Kiedy Mozilla wyświetla dokument, musi połączyć treść dokumentu z jego informacjami o stylu. Tak więc dzieli ona proces na dwa etapy: +

+ + +

Język znaczników używa znaczników do opisywania struktury dokumentu. Znacznik może być kontenerem, zawierającym inne znaczniki. +

DOM posiada strukturę drzewiastą. Każdy znacznik i fragment tekstowy w języku znaczników staje się węzłem w strukturze drzewiastej. Węzły DOM nie są kontenerami. W zamian za to mogą posiadać węzły rodziców i dzieci. +

Węzły, które odpowiadają znacznikom, znane są także jako elementy. +

+ + +
Przykład +
W Twoim przykładowym dokumencie znacznik <P> i jego znacznik </P> tworzą kontener: +
+
<P>
+  <STRONG>C</STRONG>ascading
+  <STRONG>S</STRONG>tyle
+  <STRONG>S</STRONG>heets
+</P>
+
+
+

W DOM odpowiadający węzeł P jest rodzicem. +Jego dzieci to węzły STRONG oraz węzły tekstowe. +Węzły STRONG same są rodzicami posiadającymi węzły tekstowe jako swoje dzieci: +

+
+

P +├─STRONG +│ │ +│ └─"C" +│ +├─"ascading" +│ +├─STRONG +│ │ +│ └─"S" +│ +├─"tyle" +│ +├─STRONG +│ │ +│ └─"S" +│ +└─"heets" +

+
+
+

Zrozumienie DOM pomaga w tworzeniu, debugowaniu i zarządzaniu CSS, ponieważ DOM jest punktem, w którym łączona jest treść dokumentu ze stylami CSS. +

+

Zadanie: Analiza DOM

+

Do analizy DOM potrzebny jest specjalny program. +Służy do tego na przykład Inspektor DOM Mozilli. +

Użyj przeglądarki Mozilla do otworzenia przykładowego dokumentu. +

Z paska menu przeglądarki wybierz Narzędzia – Inspektor DOM lub Narzędzia – Programowanie WWW – Inspektor DOM. +

+ + +
Więcej szczegółów +
Jeżeli Twoja przeglądarka Mozilli nie posiada Inspektora DOM, możesz zainstalować przeglądarkę ponownie, zaznaczając przy instalacji komponent narzędzi programistycznych. Potem wróć do tego kursu. +

DevmoPL: Możesz też zainstalować DOMi jako rozszerzenie +

Jeżeli nie chcesz instalować Inspektora DOM, możesz pominąć ten rozdział i przejść do następnej strony. Pominięcie tej sekcji nie wpłynie na resztę kursu. +

+
+

W Inspektorze DOM rozwiń węzły dokumentu, klikając na strzałki. +

Notka:  Formatowanie spacjami dokumentu HTML spowoduje, że pojawią się puste węzły, które możesz zignorować. +

Część wyniku może wyglądać tak: +

+ + +
+

│ +P +│ │ +│ STRONG +│ │ └#text +│ ├╴#text +│ STRONG +│ │ +

+
+
+

Kiedy wybierasz jakikolwiek węzeł, możesz dowiedzieć się o nim więcej, używając prawej kolumny Inspektora DOM. +Na przykład po wybraniu węzła tekstowego Inspektor DOM pokazuje jego zawartość w prawej kolumnie. +

Kiedy zaznaczasz węzeł elementu, Inspektor DOM analizuje go i podaje w prawym panelu ogromną liczbę informacji. Informacje o stylu są tylko częścią informacji, jakie można tam znaleźć. +

+ + +
Wyzwanie +
W Inspektorze DOM wybierz węzeł STRONG. +

Skorzystaj z prawego panelu Inspektora, aby dowiedzieć się, gdzie kolor węzła ustawiony został na czerwony i gdzie jego wygląd jest ustawiany na grubszy niż normalny tekst. +

+
+


+

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

Jeżeli podjąłeś(podjęłaś) wyzwanie, widzisz, że informacje o stylu z wielu miejsc wiążą się, tworząc końcowy styl elementu. +

Następna strona wyjaśnia więcej na temat tych interakcji: +Kaskadowość i dziedziczenie +

{{ languages( { "en": "en/CSS/Getting_Started/How_CSS_works", "fr": "fr/CSS/Premiers_pas/Fonctionnement_de_CSS", "it": "it/Conoscere_i_CSS/Come_funzionano_i_CSS", "ja": "ja/CSS/Getting_Started/How_CSS_works", "pt": "pt/CSS/Como_come\u00e7ar/Como_o_CSS_trabalha", "zh-cn": "cn/CSS/Getting_Started/How_CSS_works" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/javascript/index.html" "b/files/pl/web/css/na_pocz\304\205tek/javascript/index.html" new file mode 100644 index 0000000000..68a2900407 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/javascript/index.html" @@ -0,0 +1,126 @@ +--- +title: JavaScript +slug: Web/CSS/Na_początek/JavaScript +tags: + - 'CSS:Na_początek' +translation_of: Learn/JavaScript/Client-side_web_APIs/Manipulating_documents +--- +

+

Jest to druga część tego kursu. Część II zawiera trochę przykładów pokazujących zakres użycia CSS w Mozilli. +

Każda strona Części II ilustruje jak CSS współpracuje z innymi technologiami. +Te strony nie zostały stworzone po to, aby nauczyć Cię korzystać z tych technologii. +Jeśli chcesz je poznać, skorzystaj z innych kursów. +

Natomiast, te strony zostały stworzone po to, aby pokazać wiele możliwości wykorzystania CSS. +Aby używać tych stron, powinieneś(aś) znać CSS, ale nie musisz znać innych technologii. +

+

Informacja: JavaScript

+

JavaScript jest językiem programowania. +Duża część kodu aplikacji Mozilla (na przykład przeglądarki) jest napisana w JavaScripcie. +

JavaScript może współpracować z arkuszami stylów, pozwalając Ci pisać aplikacje, które dynamicznie zmieniają styl dokumentu. +

Istnieją na to trzy sposoby: +

+ + + +
Więcej szczegółów +
Aby dowiedzieć się więcej o JavaScripcie w Mozilli, zajrzyj na stronę JavaScript na tym wiki. +
+

Zadanie: Demonstracja wykorzystania Javascript-u

+

Stwórz nowy dokument HTML, doc5.html. +Skopiuj i wklej poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+
+<HEAD>
+<TITLE>Mozilla CSS Getting Started - JavaScript demonstration</TITLE>
+<LINK rel="stylesheet" type="text/css" href="style5.css">
+<SCRIPT type="text/javascript" src="script5.js"></SCRIPT>
+</HEAD>
+
+<BODY>
+<H1>JavaScript sample</H1>
+
+<DIV id="square"></DIV>
+
+<BUTTON type="button" onclick="doDemo(this);">Click Me</BUTTON>
+
+</BODY>
+</HTML>
+
+

Stwórz nowy plik CSS, style5.css. +Skopiuj i wklej do niego poniższy kod: +

+
/*** JavaScript demonstration ***/
+#square {
+  width: 20em;
+  height: 20em;
+  border: 2px inset gray;
+  margin-bottom: 1em;
+  }
+
+button {
+  padding: .5em 2em;
+  }
+
+

Stwórz nowy plik tekstowy, script5.js. +Skopiuj i wklej do niego poniższy kod: +

+
// JavaScript demonstration
+function doDemo (button) {
+  var square = document.getElementById("square")
+  square.style.backgroundColor = "#fa4"
+  button.setAttribute("disabled", "true")
+  setTimeout(clearDemo, 2000, button)
+  }
+
+function clearDemo (button) {
+  var square = document.getElementById("square")
+  square.style.backgroundColor = "transparent"
+  button.removeAttribute("disabled")
+  }
+
+

Otwórz dokument w swojej przeglądarce i naciśnij przycisk. +

To wiki nie obsługuje JavaScriptu na stronach, więc nie jest możliwe zademonstrowanie działania tego kodu tutaj. +Wygląda to mniej więcej jak poniżej, przed i po naciśnięciu przycisku: +

+ + +
+ + +

JavaScript demonstration

+
+
+
+
+ + +

JavaScript demonstration

+
+
+
+
+

Uwagi dotyczące demonstracji: +

+ + + +
Wyzwanie +
Zmień skrypt tak, aby obiekt square skakał w prawo o 20 em, kiedy jego kolor się zmienia, i skakał z powrotem, kiedy kolor wraca do podstawowego. +
+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

W tej demonstracji dokument HTML posiada odnośnik do skryptu, mimo że używa go tylko element przycisku. +Mozilla rozszerza CSS, aby umożliwić wiązanie kodu JavaScript (oraz treści i innych arkuszy stylów) z wybranymi elementami. +Następna strona opisuje to: +Wiązania XBL +

{{ languages( { "en": "en/CSS/Getting_Started/JavaScript", "fr": "fr/CSS/Premiers_pas/JavaScript", "pt": "pt/CSS/Como_come\u00e7ar/JavaScript" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/kaskadowo\305\233\304\207_i_dziedziczenie/index.html" "b/files/pl/web/css/na_pocz\304\205tek/kaskadowo\305\233\304\207_i_dziedziczenie/index.html" new file mode 100644 index 0000000000..dbf53074b0 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/kaskadowo\305\233\304\207_i_dziedziczenie/index.html" @@ -0,0 +1,96 @@ +--- +title: Kaskadowość i dziedziczenie +slug: Web/CSS/Na_początek/Kaskadowość_i_dziedziczenie +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Building_blocks/Cascade_and_inheritance +--- +

+

Ta strona tłumaczy jak arkusze stylów oddziaływują w kaskadzie, oraz jak elementy dziedziczą style od swoich rodziców. +

Nauczysz się zmieniać styl wielu elementów dokumentu jednym ruchem dzięki dziedziczeniu. +

+

Informacja: Kaskadowość i dziedziczenie

+

Ostateczny styl elementu może być określony w wielu różnych miejscach, które mogą na siebie oddziaływać w złożony sposób. +Złożone interakcje czynią CSS potężnym, ale także mogą uczynić go niezrozumiałym i trudnym do debugowania. +

Trzy główne źródła informacji o stylu tworzą kaskadę. +Są to: +

+ +

Styl użytkownika modyfikuje domyślny styl przeglądarki. +Styl autora dokumentu modyfikuje ten styl jeszcze bardziej. +W tym kursie Ty jesteś autorem przykładowego dokumentu i pracujesz tylko ze stylem autora. +

+ + +
Przykład +
Kiedy czytasz ten dokument w przeglądarce Mozilla, część stylu, który widzisz, pochodzi z domyślnego stylu przeglądarki dla HTML-a. +

Część tego stylu pochodzi z Twoich ustawień przeglądarki w Opcjach lub z pliku userContent.css w profilu przeglądarki. +

Część tego stylu pochodzi z arkusza stylów podpiętego do tego dokumentu przez serwer wiki. +

+
+

Kiedy otwierasz przykładowy dokument w swojej przeglądarce, elementy STRONG są pogrubione w stosunku do reszty tekstu. Dzieje się tak, ponieważ zostało to ustawione w domyślnym stylu przeglądarki dla HTML-a. +

Elementy STRONG są czerwone. To ustawienie pochodzi z Twojego arkusza stylów. +

Elementy STRONG dziedziczą też większość ustawień stylu elementu P, ponieważ są jego dziećmi. W ten sam sposób element P dziedziczy wiele ustawień ze stylu elementu BODY. +

Dla stylów w kaskadzie najważniejsze są style autora strony, potem czytelnika, a na końcu ustawienia domyślne przeglądarki. +

Dla dziedziczonych stylów własne style ich dzieci mają wyższy priorytet od stylu dziedziczonego po rodzicu. +

Nie są to jedyne istniejące priorytety. Dalsze strony tego kursu wyjaśnią więcej. +

+ + +
Więcej szczegółów +
CSS daje też czytelnikowi możliwość nadpisania stylów autora dokumentu przez użycie słowa kluczowego !important. +

Oznacza to, że jako autor dokumentu, nie możesz nigdy dokładnie przewidzieć, co czytelnicy zobaczą. +

Jeżeli chcesz poznać wszystkie szczegóły kaskadowości i dziedziczenia, zobacz Przypisywanie wartości własności, Kaskadowość oraz dziedziczenie w specyfikacji CSS. +

+
+

Zadanie: Używanie dziedziczenia

+

Wyedytuj Twój przykładowy plik CSS. +

Dodaj tę linię poprzez skopiowanie i wklejenie jej. +Nie ma żadnego znaczenia, czy dodasz ją pod czy nad linią, która już tam jest. +Jednakże dodawanie jej na górze jest bardziej logiczne, ponieważ w Twoim dokumencie element P jest rodzicem elementu STRONG: +

+
p {color: blue; text-decoration: underline;}
+
+

Teraz odśwież okno przeglądarki, aby obejrzeć efekt na przykładowym dokumencie. +Podkreślenie wpłynęło na cały tekst paragrafu, włączając w to początkowe litery. +Elementy STRONG dziedziczyły styl podkreślenia po swoim rodzicu, elemencie P. +

Ale elementy STRONG nadal są czerwone. Kolor czerwony jest ich własnym stylem, ma zatem wyższy priorytet niż niebieski kolor ich rodzica, elementu P. +

+ + +
+ + +
Przed +
Cascading Style Sheets +
+
+ + +
Po +
Cascading Style Sheets +
+
+


+

+ + +
Wyzwanie +
Zmień swój arkusz stylów, aby tylko czerwone litery były podkreślone: + + +
Cascading Style Sheets +
+
+


+

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

Twój przykładowy arkusz stylów opisuje style dla znaczników P oraz STRONG, +zmieniając styl odpowiednich elementów w Twoim dokumencie. +Następna strona opisuje, jak określić styl w bardziej selektywny sposób: +Selektory +

{{ languages( { "en": "en/CSS/Getting_Started/Cascading_and_inheritance", "fr": "fr/CSS/Premiers_pas/Cascade_et_h\u00e9ritage", "it": "it/Conoscere_i_CSS/Cascata_ed_ereditariet\u00e0", "ja": "ja/CSS/Getting_Started/Cascading_and_inheritance", "pt": "pt/CSS/Como_come\u00e7ar/Cascata_e_heran\u00e7a", "zh-cn": "cn/CSS/Getting_Started/Cascading_and_inheritance" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/kolor/index.html" "b/files/pl/web/css/na_pocz\304\205tek/kolor/index.html" new file mode 100644 index 0000000000..2edc0a662c --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/kolor/index.html" @@ -0,0 +1,208 @@ +--- +title: Kolor +slug: Web/CSS/Na_początek/Kolor +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Introduction_to_CSS/Values_and_units#Colors +--- +

+

Ta strona dokładniej opisuje sposoby pracy z kolorami w CSS-ie. +

W swoim przykładowym arkuszu stylów, dodasz kolory tła. +

+

Informacja: Kolor

+

Do tej pory w tym kursie używałeś(aś) ograniczonej liczby nazwanych kolorów. +CSS 2 definiuje 17 nazwanych kolorów. +Niektóre z nazw mogą nie być tym, czego się spodziewasz: +

+ + + + + + + + +
  black   gray   silver   white +
podstawowe red   lime   blue +
drugorzędne yellow   aqua   fuchsia +
 maroon  orange  olive  purple  green  navy  teal +
+


+

+ + +
Więcej szczegółów +
Twoja przeglądarka może obsługiwać znacznie więcej nazwanych kolorów, na przykład: + + +
dodgerblue  peachpuff   tan   firebrick   aquamarine +
+

Szczegółową listę znajdziesz w dokumentacji CSS 3, w module Kolor, sekcji +słowa kluczowe kolorów w SVG. Unikaj używania nazwanych kolorów, których przeglądarka osoby czytającej Twój dokument może nie obsługiwać. +

+
+

Aby móc korzystać w większej palety kolorów, określ czerwony, zielony i niebieski komponent koloru, z którego chcesz skorzystać, używając znaku "hash" oraz trzech heksadecymalnych liczb w zakresie od 0 – 9, a – f. Litery a – f reprezentują wartości 10 – 15. +

+ + + + + + + + + + +
black  #000 +
pure red   #f00 +
pure green   #0f0 +
pure blue   #00f +
white   #fff +
+

Aby skorzystać z pełnej palety, określ dwie heksadecymalne liczby na każdy komponent: +

+ + + + + + + + + + +
black   #000000 +
pure red   #ff0000 +
pure green   #00ff00 +
pure blue   #0000ff +
white   #ffffff +
+

Zazwyczaj te sześcioliczbowe, heksadecymalne kody możesz pobrać z Twojego programu graficznego lub innego narzędzia. +

+ + + + +
Przykłady +
Odrobina praktyki i w większości wypadków możesz modyfikować trzyliczbowe kolory ręcznie: + + + + + + + + + + + + +
Zacznij od czystej czerwieni:  #f00 +
Aby ją rozjaśnić, dodaj trochę zielonego i niebieskiego:  #f77 +
Aby kolor był bardziej pomarańczowy, dodaj trochę zielonego:  #fa7 +
Aby kolor był ciemniejszy, zmniejsz wartość wszystkich komponentów:  #c74 +
Aby zmniejszyć nasycenie, zmniejsz różnice między wartościami komponentów:  #c98 +
Jeśli ustawisz jednakową wartość wszystkich komponentów, uzyskasz kolor szary:  #ccc +
+
Aby uzyskać pastelowy odcień, taki jak blady niebieski: + + + + +
Zacznij od białego:  #fff +
Zredukuj trochę wartości komponentów innych, niż niebieski:  #eef +
+
+


+

+ + +
Więcej szczegółów +
Możesz także określić kolor, używając decymalnych wartości RGB w zakresie 0 – 255, lub procentów. +

Na przykład to jest kasztanowaty (ciemnoczerwony): +

+
+rgb(128, 0, 0)
+
+

Więcej szczegółów na temat określania kolorów znajdziesz w sekcji +Kolory w specyfikacji CSS. +

Więcej informacji na temat dopasowania kolorów do kolorów systemowych, jak Menu czy ThreeDFace, znajdziesz w: +CSS2 Kolory Systemowe specyfikacji CSS. +

+
+


+

+

Własności kolorów

+

Korzystałeś(aś) już z własności color dla tekstu. +

Możesz też użyć własności background-color, aby zmienić tła elementów. +

Jeżeli ustawisz wartość tła na transparent, będzie ono przezroczyste i pokaże tło elementu rodzica. +

+ + +
Przykład +
Boksy Przykład w tym kursie używają bladożółtego tła: +
+background-color: #fffff4;
+
+

Boksy Więcej szczegółów używają bladoszarego: +

+
+background-color: #f4f4f4;
+
+
+

Zadanie: Korzystanie z kodów kolorów

+

Wyedytuj swój plik CSS. +

Wykonaj zmiany oznaczone tutaj pogrubieniem, aby nadać pierwszym literom bladoniebieskie tło. +(Styl i komentarze w Twoim pliku będą prawdopodobnie inne niż pokazane tutaj. +Zachowaj styl i komentarze w stylu jaki wybrałeś(aś)). +

+
+
/*** CSS Tutorial: Color page ***/
+
+/* page font */
+body {font: 16px "Comic Sans MS", cursive;}
+
+/* paragraphs */
+p {color: blue;}
+#first {font-style: italic;}
+
+/* initial letters */
+strong {
+ color: red;
+ background-color: #ddf;
+ font: 200% serif;
+ }
+
+.carrot {color: red;}
+.spinach {color: green;}
+
+
+

Odśwież okno przeglądarki, aby zobaczyć wynik: +

+ + + + +
Cascading Style Sheets +
Cascading Style Sheets +
+


+

+ + +
Wyzwanie +
W swoim pliku CSS zmień wszystkie nazwy kolorów na 3-cyfrowe kody kolorów, tak, żeby rezultat pozostał taki sam. +

(To nie jest do końca możliwe, ale możesz być blisko ideału. +Aby uzyskać dokładnie taki efekt, potrzebujesz 6-cyfrowych kodów oraz musisz zajrzeć do specyfikacji CSS lub użyć narzędzia graficznego, aby znaleźć odpowiednie kody). +

+
+


+

+

Co dalej?

+

Twój przykładowy dokument i przykładowy arkusz stylów ściśle rozdzielają treść od stylu. +

Następna strona wyjaśnia, jak robić wyjątki od tego rozdziału: +Treść +

+
+
+{{ languages( { "en": "en/CSS/Getting_Started/Color", "fr": "fr/CSS/Premiers_pas/Couleurs", "it": "it/Conoscere_i_CSS/Colori", "ja": "ja/CSS/Getting_Started/Color", "pt": "pt/CSS/Como_come\u00e7ar/Cor" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/listy/index.html" "b/files/pl/web/css/na_pocz\304\205tek/listy/index.html" new file mode 100644 index 0000000000..18c61f4bce --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/listy/index.html" @@ -0,0 +1,268 @@ +--- +title: Listy +slug: Web/CSS/Na_początek/Listy +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Styling_text/Styling_lists +--- +

+

Ta strona opisuje jak możesz użyć CSS-a do określania wyglądu list. +

Stworzysz nowy dokument zawierający listę, oraz nowy arkusz stylów ze stylami dla niej. +

+

Informacja: Listy

+

Jeżeli podjąłeś(aś) wyzwanie z poprzedniej strony (Treść), widziałeś(aś), jak można dodać treść przed jakimś elementem, aby wyglądało to jak elementy listy. +

CSS posiada specjalne własności stworzone dla list. +Staraj się z nich korzystać, jeśli masz możliwość. +

Aby określić styl dla listy, użyj własności list-style do określenia typu znacznika. +

Selektor w regule CSS może określać elementy listy (np. LI) lub element rodzica list (np. UL), z którego elementy listy będą dziedziczyły te style. +

+

Listy nieuporządkowane (unordered lists)

+

W liście nieuporządkowanej każdy element jest oznaczony w ten sam sposób. +

W CSS występują trzy typy oznaczeń. +Wyświetlane są w następujący sposób: +

+ +

Alternatywnie możesz określić URL do obrazka. +

+ + +
Przykład +
Te reguły określają różne oznaczenia dla różnych klas elementów listy: +
+

li.open {list-style: circle;} +li.closed {list-style: disc;} +

+
+

Kiedy użyjesz tych klas w liście, rozdzielisz elementy otwarte i zamknięte: +

+
+

<UL> +

+
 <LI class="open">Lorem ipsum</LI>
+ <LI class="closed">Dolor sit</LI>
+ <LI class="closed">Amet consectetuer</LI>
+ <LI class="open">Magna aliquam</LI>
+ <LI class="closed">Autem veleum</LI>
+
+

</UL> +

+
+

Wynik może wyglądać na przykład tak: +

+ + +
    +
  • Lorem ipsum
  • +
  • Dolor sit
  • +
  • Amet consectetuer
  • +
  • Magna aliquam
  • +
  • Autem veleum
  • +
+
+
+

Listy uporządkowane (ordered lists)

+

W przypadku list uporządkowanych każdy element listy jest osobno oznaczony, aby zaznaczyć jego pozycję w sekwencji. +

Użyj własności list-style, aby określić typ oznaczenia: +

+ + + +
Przykład +
Ta reguła określa, że w bloku OL z klasą info elementy są oznaczane dużymi literami. +
+

ol.info {list-style: upper-latin;} +

+
+

Elementy LI dziedziczą ten styl: +

+ + +
    +
  • Lorem ipsum
  • +
  • Dolor sit
  • +
  • Amet consectetuer
  • +
  • Magna aliquam
  • +
  • Autem veleum
  • +
+
+
+ + +
Więcej szczegółów +
Własność list-style jest własnością skrótową. W złożonych arkuszach stylów raczej będziesz wolał(a) używać osobnych własności dla osobnych wartości. Aby dowiedzieć się więcej na temat osobnych własności oraz jak CSS określa listy, zajrzyj do sekcji Listy w dokumentacji CSS. +

Jeżeli używasz języka znaczników, jak HTML, który korzysta z własnych znaczników dla list nieuporządkowanych (UL) i uporządkowanych (OL), wówczas dobrym zwyczajem jest korzystanie z nich zgodnie z przeznaczeniem. Jednakże możesz użyć CSS, aby wyświetlić UL jako posortowaną, a OL jako nieposortowaną, jeśli wolisz. +

Różne przeglądarki w różny sposób obsługują te style dla list. +Nie oczekuj, że Twój arkusz stylów zostanie wyświetlony identycznie we wszystkich. +

+
+

Liczniki

+
+

Notatka:  Niektóre przeglądarki nie obsługują liczników.

+
+

Możesz używać liczników do różnych elementów, nie tylko list. +Na przykład w niektórych dokumentacjach możesz chcieć numerować nagłówki lub paragrafy. +

Aby określić numerację, musisz zadeklarować counter z określoną nazwą. +

W którymś z elementów, zanim rozpocznie się naliczanie, zresetuj licznik, używając właściwości counter-reset i nazwą Twojego licznika. +Rodzic elementów, które liczysz, jest dobrym miejscem na reset, ale możesz użyć dowolnego elementu, który pojawia się przed elementami listy. +

W każdym elemencie, w którym licznik jest inkrementowany, dodaj właściwość counter-increment. Jako wartość podaj nazwę licznika. +

Aby wyświetlić wartość licznika, dodaj :before lub :after do selektora i użyj własności content (tak jak na poprzedniej stronie Treść). +

Jako wartość własności content wstaw counter() z nazwą swojego licznika. +Opcjonalnie określ typ. +Typy są takie same jak w sekcji 'listy uporządkowane. +

Zwykle element, który wyświetla licznik, inkrementuje go. +

+ + +
Przykład +
Ta reguła inicjalizuje licznik w każdym elemencie H3 z klasą numbered: +
+

h3.numbered {counter-reset: mynum;} +

+
+

Ta reguła wyświetla i inkrementuje licznik dla każdego elementu P z klasą numbered: +

+
+

p.numbered:before { +

+
 content: counter(mynum) ": ";
+ counter-increment: mynum;
+ font-weight: bold;}
+
+
+

Wynik wygląda tak: +

+ + +
Heading
+

1: Lorem ipsum

+

2: Dolor sit

+

3: Amet consectetuer

+

4: Magna aliquam

+

5: Autem veleum

+
+
+ + +
Więcej szczegółów +
Nie należy używać liczników, jeśli nie masz pewności, że każdy, kto czyta Twój dokument, posiada obsługującą je przeglądarkę. +

Jeżeli możesz używać liczników, mają one tę zaletę, że określasz ich styl niezależnie od elementów listy. W powyższym przykładzie liczniki są pogrubione, a elementu listy nie. +

Możesz też używać liczników w bardziej złożony sposób — na przykład do numerowania sekcji, nagłówków, podnagłówków i paragrafów w dokumentach. +Aby dowiedzieć się więcej, zajrzyj do specyfikacji CSS do sekcji Automatyczne liczniki i numerowanie. +

+
+

Zadanie: Style list

+

Stwórz nowy dokument HTML, doc2.html. +Skopiuj i wklej poniższą treść, upewniając się, że zaznaczyłeś(aś) cały: +

+
+

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> +<HTML> +<HEAD> +<TITLE>Sample document 2</TITLE> +<LINK rel="stylesheet" type="text/css" href="style2.css"> +</HEAD> +<BODY> + +<H3 id="oceans">The oceans</H3> +<UL> +<LI>Arctic</LI> +<LI>Atlantic</LI> +<LI>Pacific</LI> +<LI>Indian</LI> +<LI>Southern</LI> +</UL> + +<H3 class="numbered">Numbered paragraphs</H3> +<P class="numbered">Lorem ipsum</P> +<P class="numbered">Dolor sit</P> +<P class="numbered">Amet consectetuer</P> +<P class="numbered">Magna aliquam</P> +<P class="numbered">Autem veleum</P> + +</BODY> +</HTML> +

+
+

Stwórz nowy arkusz stylów, style2.css. +Skopiuj i wklej poniższą treść: +

+
+

/* numbered paragraphs */ +h3.numbered {counter-reset: mynum;} + +p.numbered:before { +

+
 content: counter(mynum) ": ";
+ counter-increment: mynum;
+ font-weight: bold;}
+
+
+

Jeżeli układ i komentarze Ci nie odpowiadają, zmień je. +

Otwórz ten dokument w swojej przeglądarce. +Jeżeli Twoja przeglądarka obsługuje liczniki, zobaczysz coś takiego, jak poniżej. +Jeżeli Twoja przeglądarka nie obsługuje stylów, wówczas nie zobaczysz liczb (i prawdopodobnie także dwukropków): +

+ + +

The oceans

+
    +
  • Arctic
  • +
  • Atlantic
  • +
  • Pacific
  • +
  • Indian
  • +
  • Southern
  • +
+

Numbered paragraphs

+

1: Lorem ipsum

+

2: Dolor sit

+

3: Amet consectetuer

+

4: Magna aliquam

+

5: Autem veleum

+
+


+

+ + +
Wyzwania +
Dodaj jedną regułę do swojego arkusza stylów, aby ponumerować oceany, używając rzymskich liczb od i do v: + + +

The oceans

+
    +
  • Arctic
  • +
  • Atlantic
  • +
  • Pacific
  • +
  • Indian
  • +
  • Southern
  • +
+
+

Jeżeli Twoja przeglądarka obsługuje liczniki, zmień swój arkusz stylów, aby identyfikował nagłówki dużymi literami w takim stylu: +

+ + +

(A) The oceans

+

. . . +

+

(B) Numbered paragraphs

+

. . . +

+
+
+


+

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

Kiedy Twoja przeglądarka wyświetla przykładowy dokument, tworzy przy okazji przestrzeń dookoła elementów, które określają ich rozkład na stronie. +

Następna strona opisuje, jak można użyć CSS do pracy z przestrzenią wokół elementów: +Bloki +

{{ languages( { "en": "en/CSS/Getting_Started/Lists", "fr": "fr/CSS/Premiers_pas/Listes", "pt": "pt/CSS/Como_come\u00e7ar/Listas" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/media/index.html" "b/files/pl/web/css/na_pocz\304\205tek/media/index.html" new file mode 100644 index 0000000000..ef6c87f8cf --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/media/index.html" @@ -0,0 +1,318 @@ +--- +title: Media +slug: Web/CSS/Na_początek/Media +tags: + - 'CSS:Na_początek' +translation_of: Web/Progressive_web_apps/Responsive/Media_types +--- +

+

Wiele stron tego kursu skupiało się na własnościach i wartościach CSS, których możesz użyć do określania wyglądu dokumentu. +

Ta strona wraca do tematu przeznaczenia i struktury arkuszy stylów. +

+

Informacja: Media

+

Przeznaczeniem CSS-u jest określanie jak dokumentu mają być prezentowane użytkownikowi. +Prezentacja może przyjąć wiele różnych form. +

Na przykład prawdopodobnie czytasz tę stronę na jakimś urządzeniu wyświetlającym. Ale możesz również chcieć wyświetlić ją na ekranie dla większego grona odbiorców lub wydrukować ją. +To są różne media o różnych charakterystykach. +CSS daje możliwość prezentowania dokumentu w różny sposób dla różnych mediów. +

Aby zdefiniować regułę, która będzie dotyczyła tylko określonego typu mediów, użyj @media z typem mediów oraz klamrami obejmującymi reguły, których ma to dotyczyć. +

+ + +
Przykład +
Dokument na stronie WWW posiada pole nawigacyjne pozwalające użytkownikowi poruszać się po stronie. +

W języku znaczników element rodzica pola nawigacyjnego ma id nav-area. +

Kiedy dokument jest drukowany, pole nawigacyjne nie ma żadnego zastosowania, więc arkusz stylów usuwa je w całości: +

+
+

@media print { +

+
 #nav-area {display: none;}
+ }
+
+
+
+

Niektóre z popularnych typów mediów: +

+ + + + + + + + +
screenKolorowy wyświetlacz komputera +
printWyświetlanie na stronach +
projectionWyświetlane podczas projekcji +
allWszystkie media (domyślne) +
+


+

+ + +
Więcej szczegółów +
Istnieją też inne sposoby określenia docelowych mediów. +

Język znaczników dokumentu może pozwalać na określenie typu mediów w odnośniku wiążącym arkusz stylów z dokumentem. Na przykład w HTML-u możesz opcjonalnie określić typ mediów w atrybucie media w znaczniku LINK. +

W CSS możesz użyć @import na początku arkusza stylów, aby zaimportować inny arkusz stylów z podanego adresu URL, opcjonalnie podając też typ mediów. +

Dzięki wykorzystaniu tych technik możesz rozdzielić reguły stylów dla różnych typów mediów do różnych plików. Może to być czasem przydane do ułożenia struktury Twojego dokumentu. +

Aby dowiedzieć się więcej na temat typów mediów, zajrzyj na stronę Media w specyfikacji CSS. +

Istnieje więcej przykładów wykorzystania własności display na dalszej stronie kursu: Dane XML. +

+
+

Drukowanie

+

CSS posiada specyficzne własności przeznaczone dla mediów stronicowych. +

Reguła @page może ustawiać marginesy strony. +Aby ustawić drukowanie dwustronne, możesz określić marginesy osobno dla @page:left oraz @page:right. +

Dla mediów stronicowych zazwyczaj należy używać odpowiednich jednostek długości takich jak cale (in), punkty (pt) = 1/72 cala), centymetry (cm) lub milimetry (mm). Równie dobrze możesz używać ems (em), aby dopasować się do rozmiaru czcionki, oraz procentów (%). +

Możesz kontrolować, jak zawartość dokumentu jest przełamywana na strony, przy użyciu własności page-break-before, page-break-after i page-break-inside. +

+ + +
Przykład +
Ta reguła ustawia margines strony na jeden cal dla każdej strony: +
+

@page {margin: 1in;} +

+
+

Ta reguła zapewnia, że każdy element H! zaczyna się na nowej stronie: +

+
+

h1 {page-break-before: always;} +

+
+
+


+

+ + +
Więcej szczegółów +
Aby dowiedzieć się więcej o obsłudze mediów stronicowych, zajrzyj na stronę Media stronicowe w specyfikacji CSS. +

Drukowanie, podobnie jak inne funkcje CSS, zależy od Twojej przeglądarki i jej ustawień. +Na przykład przeglądarka Mozilla ustawia domyślne marginesy, nagłówki i stopkę podczas druku. +Raczej nie będziesz w stanie przewidzieć ustawień przeglądarek innych użytkowników drukujących Twój dokument &mbdash; nie masz możliwości w pełni kontrolować wyniku. +

+
+

Interfejsy użytkownika

+

CSS ma pewne specjalne własności przeznaczone dla urządzeń obsługujących interfejs użytkownika, takich jak wyświetlacz komputera. To sprawia, że widok dokumentu zmienia się dynamicznie w trakcie pracy użytkownika z interfejsem. +

Nie istnieje osobny typ mediów dla urządzeń z interfejsem użytkownika. +

Istnieje pięć specjalnych selektorów: +

+ + + + + + + + + + + + +
SelektorWybiera +
E:hoverDowolny element E, nad którym znajduje się wskaźnik +
E:focusDowolny element E, który jest w danym momencie aktywny dla interfejsu +
E:activeElement E, który jest wykorzystywany w aktualnie wykonywanej akcji użytkownika +
E:linkDowolny element E, który jest odnośnikiem do strony której użytkownik nie odwiedzał ostatnio +
E:visitedDowolny element E, który jest odnośnikiem do adresu URL, który użytkownik odwiedził niedawno +
+

Własność cursor określa kształt wskaźnika; niektóre z podstawowych kształtów podane są poniżej. Umieść kursor myszy nad elementami na tej liście, aby zobaczyć jak wygląda podany kursor: +

+ + + + + + + + + + +
SelektorWybiera +
pointerWskazuje odnośnik +
waitWskazuje, że program nie może przyjmować danych +
progressWskazuje, że program w tej chwili pracuje, ale może przyjmować dane od użytkownika +
defaultDomyślny (zazwyczaj strzałka) +
+

Własność outline tworzy zewnętrzną linię, która zazwyczaj jest używana do oznaczenia pola aktywnego dla klawiatury. +Jej wartości są podobne do własności border, poza tym, że nie możesz określać osobno wartości dla poszczególnych boków. +

Kilka innych funkcji interfejsu użytkownika zostało zaimplementowanych przy użyciu atrybutów w tradycyjny sposób. Na przykład elementy, które są nieaktywne albo w trybie tylko do odczytu posiadają atrybut disabled lub readonly. +Selektory mogą określać takie atrybuty podobnie jak każde inne — poprzez użycie prostokątnych nawiasów: {{ mediawiki.external('disabled') }} lub {{ mediawiki.external('readonly') }}. +


+

+ + +
Przykład +
Te reguły określają style dla przycisku, który zmienia się dynamicznie, kiedy użytkownik na nim operuje: +
+.green-button {
+  background-color:#cec;
+  color:#black;
+  border:2px outset #cec;
+  }
+
+.green-button[disabled] {
+  background-color:#cdc;
+  color:#777;
+  }
+
+.green-button:active {
+  border-style: inset;
+  }
+
+

To wiki nie obsługuje interfejsu użytkownika na tej stronie, zatem przyciski nie mogą być *klikalne*. Poniżej znajdują się statyczne obrazki ilustrujące ideę: +

+ + +
+ + + + + + +
Click Me +Click Me +Click Me +
+
disablednormalactive +
+
+

W pełni funkcjonalny przycisk posiada dodatkowo ciemną linię wokół całego przycisku, kiedy jest on domyślny, oraz kropkowaną linię na przycisku, kiedy jest on aktywny dla klawiatury. Może także posiadać efekt aktywizacji, kiedy wskaźnik znajduje się nad nim. +

+
+ + +
Więcej szczegółów +
Aby dowiedzieć się więcej o interfejsach użytkownika w CSS, zobacz stronę User interface w specyfikacji CSS. +

Istnieje też przykład napisany w języku znaczników Mozilli, XUL-u, w drugiej części tego kursu. +

+
+

Zadanie: Drukowanie dokumentu

+

Stwórz nowy dokument HTML, doc4.html. +Skopiuj i wklej poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+
+<HEAD>
+<TITLE>Print sample</TITLE>
+<LINK rel="stylesheet" type="text/css" href="style4.css"></strong>
+</HEAD>
+
+<BODY>
+<H1>Section A</H1>
+<P>This is the first section...</P>
+
+<H1>Section B</H1>
+<P>This is the second section...</P>
+
+<DIV id="print-head">
+Heading for paged media
+</DIV>
+
+<DIV id="print-foot">
+Page:
+</DIV>
+
+</BODY>
+</HTML>
+
+

Stwórz nowy arkusz stylów, style4.css. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
/*** Print sample ***/
+
+/* defaults  for screen */
+#print-head,
+#print-foot {
+  display: none;
+  }
+
+/* print only */
+@media print {
+
+h1 {
+  page-break-before: always;
+  padding-top: 2em;
+  }
+
+h1:first-child {
+  page-break-before: avoid;
+  counter-reset: page;
+  }
+
+#print-head {
+  display: block;
+  position: fixed;
+  top: 0pt;
+  left:0pt;
+  right: 0pt;
+
+  font-size: 200%;
+  text-align: center;
+  }
+
+#print-foot {
+  display: block;
+  position: fixed;
+  bottom: 0pt;
+  right: 0pt;
+
+  font-size: 200%;
+  }
+
+#print-foot:after {
+  content: counter(page);
+  counter-increment: page;
+  }
+
+} /* end print only */
+
+

Kiedy oglądasz ten dokument w swojej przeglądarce, używa on domyślnego stylu przeglądarki. +

Kiedy drukujesz go (lub oglądasz podgląd wydruku), arkusz stylów umieszcza każdą sekcję na osobnej stronie oraz dodaje nagłówek i stopkę do każdej strony. Jeżeli Twoja przeglądarka obsługuje także liczniki, dodaje numer strony w stopce. +

+ + +
+ + +
+ + +
Heading
+
Section A
+
This is the first section...
+
Page: 1
+
+
+
+ + +
+ + +
Heading
+
Section B
+
This is the second section...
+
Page: 2
+
+
+
+


+

+ + +
Wyzwanie +
Przesuń reguły stylu dotyczące drukowania do osobnego pliku CSS. +

Użyj wcześniejszych odnośników na tej stronie, aby znaleźć informacje w specyfikacji CSS. Znajdź szczegóły na temat, jak importować nowy plik CSS do swojego arkusza stylów. +

Spraw, aby nagłówek stawał się niebieski, kiedy kursor myszy znajdzie się nad nim. +

+
+


+

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

Na razie wszystkie reguły stylów w tym kursie znajdowały się w plikach. Reguły i ich wartości są stałe. Następna strona opisuje, jak można modyfikować reguły dynamicznie, używając języka programowania: JavaScript +

{{ languages( { "en": "en/CSS/Getting_Started/Media", "fr": "fr/CSS/Premiers_pas/M\u00e9dias", "pt": "pt/CSS/Como_come\u00e7ar/M\u00eddia" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/po_co_u\305\274ywa\304\207_css/index.html" "b/files/pl/web/css/na_pocz\304\205tek/po_co_u\305\274ywa\304\207_css/index.html" new file mode 100644 index 0000000000..73fb92e4cb --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/po_co_u\305\274ywa\304\207_css/index.html" @@ -0,0 +1,85 @@ +--- +title: Po co używać CSS +slug: Web/CSS/Na_początek/Po_co_używać_CSS +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/First_steps/How_CSS_works +--- +

+

Ta strona tłumaczy, do czego dokumenty wykorzystują CSS. +Używając CSS dodasz do swojego dokumentu arkusz stylów. +

+

Informacja: Po co używać CSS?

+

CSS pomaga utrzymać treść dokumentu oddzieloną od informacji o tym, jak należy ją wyświetlać. Szczegóły opisujące, jak należy wyświetlać dokument, są znane jako styl. Utrzymywanie rozdzielenia treści od wyglądu: +

+ + + +
Przykład +
Twoja strona WWW może mieć wiele dokumentów wyglądających podobnie. Korzystając z CSS, przechowujesz informacje o wyglądzie w osobnych plikach używanych we wszystkich dokumentach. +

Kiedy użytkownik ogląda stronę WWW, przeglądarka pobiera informacje o stylach równolegle z treścią strony. +

Kiedy użytkownik drukuje stronę, można mu dostarczyć inne informacje o stylu, które sprawią, że wydrukowany dokument będzie bardziej czytelny. +

+
+

Ogólnie rzecz biorąc, dzięki CSS język znaczników jest wykorzystywany wyłącznie do opisu treści dokumentu, a nie jego stylu. CSS jest zaś używany do opisu stylu, nie treści. (Dalej w tym kursie będzie można zobaczyć pewne wyjątki od tej reguły.) +

+ + +
Więcej szczegółów +
Język znaczników, taki jak HTML, również dostarcza pewnych mechanizmów opisu stylów. Na przykład w HTML-u można użyć znacznika <B>, aby pogrubić tekst albo określić kolor tła strony w znaczniku <BODY>. +

Kiedy używasz CSS, zazwyczaj unikasz stosowania tych funkcji języka znaczników, aby trzymać wszystkie informacje o stylu dokumentu w jednym miejscu. +

+
+

Zadanie: Tworzenia arkusza stylów

+

Stwórz inny plik tekstowy w tym samym katalogu, co poprzednio. +Ten plik będzie arkuszem stylów. +Nazwij go: style1.css +

Skopiuj poniższą linię i wklej ją do pliku CSS, a następnie zapisz ten plik: +

+
+

strong {color: red;} +

+
+

Wiązanie arkusza stylów do dokumentu

+

Aby powiązać swój dokument z arkuszem stylów, wyedytuj plik HTML. +Dodaj pogrubioną linię: +

+
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+  <HEAD>
+  <TITLE>Sample document</TITLE>
+  <LINK rel="stylesheet" type="text/css" href="style1.css">
+  </HEAD>
+  <BODY>
+    <P>
+      <STRONG>C</STRONG>ascading
+      <STRONG>S</STRONG>tyle
+      <STRONG>S</STRONG>heets
+    </P>
+  </BODY>
+</HTML>
+
+
+

Zapisz ten plik i odśwież widok w swojej przeglądarce. +Ten arkusz stylów sprawia, że pierwsze litery są czerwone: +

+ + +
Cascading Style Sheets +
+ + +
Wyzwanie +
Poza czerwonym, CSS pozwala używać innych nazw kolorów. +

Bez patrzenia w dokumentację znajdź pięć innych nazw kolorów, które działają w Twoim arkuszu stylów. +

+
+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

Teraz masz już przykładowy dokument powiązany z osobnym arkuszem stylów, jesteś zatem gotów do zrozumienia, jak przeglądarka wiąże je podczas wyświetlania dokumentu: +Jak działa CSS +

{{ languages( { "en": "en/CSS/Getting_Started/Why_use_CSS", "fr": "fr/CSS/Premiers_pas/Pourquoi_utiliser_CSS", "it": "it/Conoscere_i_CSS/Perch\u00e9_usare_i_CSS", "ja": "ja/CSS/Getting_Started/Why_use_CSS", "pt": "pt/CSS/Como_come\u00e7ar/Porque_usar_CSS", "zh-cn": "cn/CSS/Getting_Started/Why_use_CSS" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/selektory/index.html" "b/files/pl/web/css/na_pocz\304\205tek/selektory/index.html" new file mode 100644 index 0000000000..521a92b641 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/selektory/index.html" @@ -0,0 +1,259 @@ +--- +title: Selektory +slug: Web/CSS/Na_początek/Selektory +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Building_blocks/Selectors +--- +

Ta strona jest częścią piątą kursu CSS Getting Started. Wyjaśnia ona jak możesz używać stylów selektywnie, i jak różne typy selektorów mają różne priorytety. Dodasz pewne atrybuty do znaczników w swoim przykładowym dokumencie oraz użyjesz w nim tych atrybutów.

+ +

Informacja: Selektory

+ +

CSS posiada własną terminologię do opisania języka CSS. Poprzednio w trakcie tego kursu stworzyłeś(aś) linię w swoim arkuszu stylów w ten sposób:

+ +
+
strong {
+   color: red;
+}
+
+
+ +

W terminologii CSS cała ta linia jest regułą. Ta reguła zaczyna się od strong, który jest selektorem. Wybiera, które elementy w drzewie DOM będą używały tej reguły.

+ + + + + + + +
+

Więcej szczegółów
+ Część wewnątrz nawiasów klamrowych nazywamy się deklaracją.

+ +

Słowo kluczowe color jest własnością, a red jest wartością.

+ +

Średnik po parze własność-wartość oddziela ją od innych par własność-wartość w tym samym opisie.

+ +

Ten kurs odwołuje się do selektorów takich jak strong jako selektorów znaczników. Specyfikacja CSS odwołuje się do nich jako selektorów typu.

+
+ +

Ta strona kursu wyjaśnia więcej na temat selektorów, których możesz używać w regułach CSS.

+ +

Dodatkowo do nazw znaczników możesz używać wartości atrybutów w selektorach. To pozwala sprecyzować Twoje reguły.

+ +

Dwa atrybuty posiadają specjalny status w CSS. Są to class oraz id.

+ +

Selektor class

+ +

Użycie atrybutu class w znaczniku przypisuje znacznikowi nazwaną klasę. Ty decydujesz jak ją nazwiesz.

+ +

W swoim arkuszu stylów wpisz kropkę przed nazwą klasy, kiedy używasz jej w selektorze.

+ +

Selektor ID

+ +

Użycie atrybutu id w znaczniku przypisuje id do znacznika. Ty decydujesz, jakie id mu nadasz. Nazwa id musi być unikalna w dokumencie.

+ +

W swoim arkuszu stylów wpisz znak numeru ("płotek" (ang. hash)) przed tym id, kiedy używasz go w selektorze.

+ + + + + + + +
+

Przykłady
+ Ten znacznik HTML posiada zarówno atrybut class, jak i id:

+ +
+
+<p class="key" id="principal">
+
+
+ +

Id, principal, musi być unikalne w dokumencie, lecz inne znaczniki mogą używać tej samej nazwy klasy key.

+ +

W arkuszu stylów CSS ta reguła powoduje, że wszystkie elementy klasy key staną się zielone. (Nie wszystkie muszą być elementami P.)

+ +
+
+.key {
+   color: green;
+}
+
+
+ +

Ta reguła powoduje, że jeden element o id principal zostanie pogrubiony:

+ +
+
+#principal {
+   font-weight: bolder;
+}
+
+
+
+ +

Jeżeli więcej niż jedna reguła odnosi się do elementu i określa tę samą własność, wtedy CSS nadaje priorytet regule, która posiada bardziej szczegółowy selektor. Selektor id jest bardziej szczegółowy od selektora klasy, który z kolei jest bardziej szczegółowy od selektora znacznika.

+ + + + + + + + +
Więcej szczegółów
Możesz też mieszać selektory, czyniąc je bardziej szczegółowymi. +

Na przykład selektor .key wybiera wszystkie elementy, które mają klasę o nazwie key. Selektor p.key wybiera tylko elementy P, które mają klasę o nazwie key.

+ +

Nie jesteś ograniczony(a) do dwóch specjalnych atrybutów, class i id. Możesz określać inne atrybuty poprzez użycie nawiasów kwadratowych. Na przykład selektor {{ mediawiki.external('type=button') }} wybiera wszystkie elementy, które mają atrybut type o wartości button.

+ +

W dalszej części kursu (Tabele) można znaleźć informacje na temat złożonych selektorów opartych na wzajemnych relacjach.

+ +

Aby dowiedzieć się więcej o selektorach, zajrzyj na stronę Selektory w specyfikacji CSS.

+
+ +

Jeżeli arkusz stylów posiada sprzeczne reguły i są one równie szczegółowe, wtedy CSS nadaje wyższy priorytet regule, która występuje później w arkuszu stylów.

+ +

Gdy napotkasz problem ze sprzecznymi regułami, spróbuj rozwiązać go poprzez ustawienie jednej z reguł jako bardziej szczegółowej, aby można im było nadać priorytety. Jeżeli nie możesz tego zrobić, spróbuj przesunąć jedną z reguł bliżej końca arkusza stylów, aby nadać jej wyższy priorytet.

+ +

Zadanie: Używanie selektorów class i id

+ +

1. Wyedytuj swój plik HTML i zduplikuj akapit poprzez skopiowanie i wklejenie go.
+ 2. Następnie dodaj atrybuty id i class do pierwszej kopii, a potem id do drugiej:

+ +
+
<!doctype html>
+<html>
+  <head>
+  <meta charset="UTF-8">
+  <title>Sample document</title>
+  <link rel="stylesheet" href="style1.css">
+  </head>
+  <body>
+    <p id="first">
+      <strong class="carrot">C</strong>ascading
+      <strong class="spinach">S</strong>tyle
+      <strong class="spinach">S</strong>heets
+    </p>
+    <p id="second">
+      <strong>C</strong>ascading
+      <strong>S</strong>tyle
+      <strong>S</strong>heets
+    </p>
+  </body>
+</html
+
+ +

Teraz wyedytuj swój plik CSS. Zamień całą treść na:

+ +
+
strong { color: red; }
+.carrot { color: orange; }
+.spinach { color: green; }
+#first { font-style: italic; }
+
+ +

Odśwież okno przeglądarki, aby zobaczyć wynik:

+ + + + + + + + + + +
Cascading Style Sheets
Cascading Style Sheets
+ +

Możesz zmieniać kolejność linii w pliku CSS, aby zobaczyć, że kolejność nie ma wpływu na wynik.

+ +

Selektory klas .carrot oraz .spinach mają priorytety nad selektorem znaczników strong.

+ +

Selektor id #first ma priorytet nad selektorami klas i znaczników.

+ + + + + + + + +
Wyzwanie
Bez zmieniania pliku HTML dodaj do pliku CSS pojedyncze reguły, które sprawią, że wszystkie początkowe litery będą nadal tego samego koloru, ale cały pozostały tekst w drugim akapicie stanie się niebieski: + + + + + + + + + +
Cascading Style Sheets
Cascading Style Sheets
+ +

Teraz zmień regułę, którą właśnie dodałeś(aś) (bez zmieniania czegokolwiek innego), aby pierwszy akapit też był niebieski:

+ + + + + + + + + + +
Cascading Style Sheets
Cascading Style Sheets
+
+ +

Zadanie: użycie pseudo selectorów

+ +
    +
  1. Utwórz plik HTML z następują treścią: +
    <!doctype html>
    +<html>
    +  <head>
    +  <meta charset="UTF-8">
    +  <title>Sample document</title>
    +  <link rel="stylesheet" href="style1.css">
    +  </head>
    +  <body>
    +    <p>Go to our <a class="homepage" href="http://www.example.com/" title="Home page">Home page</a>.</p>
    +  </body>
    +</html>
    +
  2. +
  3. Edytuj plik CSS. Zamień jego treść na: +
    a.homepage:link, a.homepage:visited {
    +  padding: 1px 10px 1px 10px;
    +  color: #fff;
    +  background: #555;
    +  border-radius: 3px;
    +  border: 1px outset rgba(50,50,50,.5);
    +  font-family: georgia, serif;
    +  font-size: 14px;
    +  font-style: italic;
    +  text-decoration: none;
    +}
    +
    +a.homepage:hover, a.homepage:focus, a.homepage:active {
    +  background-color: #666;
    +}
    +
  4. +
  5. Zapisz pliki i odśwież przeglądarkę aby zobaczyć rezultat (przeciągnij muszkę nad przycisk, aby zobaczyć efekt): + + + + + + +
    Go to our Home page
    +
  6. +
+ +

Co dalej?

+ +

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji.

+ +

Twój przykładowy arkusz stylów zaczyna wyglądać na zbity i skomplikowany. W następnej części opiszemy jak sprawić, by CSS był łatwiejszy w czytaniu: Czytelny CSS

+ +

{{ languages( { "en": "en/CSS/Getting_Started/Selectors", "fr": "fr/CSS/Premiers_pas/Les_s\u00e9lecteurs", "it": "it/Conoscere_i_CSS/I_Selettori", "ja": "ja/CSS/Getting_Started/Selectors", "pt": "pt/CSS/Como_come\u00e7ar/Seletores" } ) }}

diff --git "a/files/pl/web/css/na_pocz\304\205tek/style_tekstowe/index.html" "b/files/pl/web/css/na_pocz\304\205tek/style_tekstowe/index.html" new file mode 100644 index 0000000000..170f28ef88 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/style_tekstowe/index.html" @@ -0,0 +1,115 @@ +--- +title: Style tekstowe +slug: Web/CSS/Na_początek/Style_tekstowe +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Styling_text/Fundamentals +--- +

+

Na tej stronie znajdziesz więcej przykładów stylów tekstowych. +

Zmodyfikujesz przykładowy arkusz stylów, aby używał różnych krojów pisma. +

+

Informacja: Style tekstowe

+

CSS posiada kilka własności do określania stylu tekstu. +

Istnieje wygodna, krótka własność font, której można użyć do określenia kilku cech na raz — na przykład: +

+ + + +
Przykład +
+

p {font: italic 75%/125% "Comic Sans MS", cursive;} +

+
+

Ta reguła określa kilka własności fontu, sprawiając, że wszystkie akapity będą pisane kursywą. +

Rozmiar fontu jest określony jako trzy czwarte rozmiaru każdego nadrzędnego akapitu, a wysokość linii jest określona na 125% (co da trochę więcej przestrzeni). +

Typ fontu jest określony jako Comic Sans MS, lecz jeśli ten font nie jest dostępny, wówczas przeglądarka użyje domyślnego fontu kursywy (a'la ręczne pismo). +

Ta reguła dodatkowo wyłącza pogrubienie i małe litery (ustawiając je na normal): +

+
+

Typy fontów

+

Nie da się przewidzieć, jakie fonty będzie posiadał czytelnik dokumentu. +Zatem kiedy określasz typy fontów, dobrym pomysłem jest podanie listy alternatywnych. +

Listę należy zakończyć jednym z domyślnych, wbudowanych fontów: serif, sans-serif, cursive, fantasy lub monospace, (niektóre z nich pasują do ustawień w opcjach Twojej przeglądarki). +

Jeżeli dany typ fontu nie wspiera jakiejś funkcji w dokumencie, wówczas przeglądarka może zmienić go na inny. Na przykład, dokument może posiadać specjalne znaki, których font podstawowy nie obsługuje. Jeżeli przeglądarka znajdzie inny font, który obsługuje te znaki, wówczas zostanie on użyty. +

Aby określić wyłącznie typ fontu, użyj własności font-family. +

+

Rozmiary fontów

+

Czytelnik używający przeglądarki Mozilla może w opcjach ustawić domyślne rozmiary fontów i zmienić rozmiar tekstu podczas czytania stron, zatem dobrym pomysłem jest używanie relatywnych rozmiarów tam, gdzie tylko się da. +

Możesz wykorzystać różne wbudowane wartości dla rozmiarów fontów, jak small, medium czy large. Możesz też użyć wartości relatywnych względem rozmiaru fontu nadrzędnego elementu, na przykład: smaller, larger, 150% lub 1.5. +

Jeżeli trzeba, możesz określić bezpośredni rozmiar: 12px (12 pikseli) dla urządzenia wyświetlającego, lub 12pt (12 punktów) dla drukarki. Ten rozmiar jest nominalnie szerokością litery m, ale różne fonty mogą mieć różne rozmiary i możesz inaczej widzieć je względem rozmiaru, który określisz. +

Aby określić sam rozmiary fontu, użyj własności font-size. +

+

Wysokość linii

+

Wysokość linii określa odstępy między liniami. +Jeżeli Twój dokument posiada długie akapity z wieloma liniami, większe niż normalnie odstępy sprawią, że będzie go łatwiej czytać, zwłaszcza, jeśli rozmiary fontu są małe. +

Aby określić samą wysokość linii, użyj własności line-height. +

+

Ozdobniki

+

Odrębna własność text-decoration może określać inne style, jak underline (podkreślenie) lub line-through (przekreślenie). +Ustawiając tę własność na normal, usuniesz wszystkie ozdobniki. +

+

Inne własności

+

Aby ustawić kursywę, użyj font-style: italic;
+Aby ustawić pogrubienie, użyj font-weight: bold;
+Aby określić, że wszystkie litery mają być małymi literami, użyj font-variant: small-caps; +

Aby ustawić dowolną z nich indywidualnie, możesz ustawić wartość na normal lub +inherit (dziedzicz). +

+ + +
Więcej szczegółów +
Możesz określić style tekstowe na kilka innych sposobów. +

Na przykład, niektóre własności wymienione w tym rozdziale mają inne wartości, których możesz użyć. +

W złożonym arkuszu stylów unikaj używania skrótowej własności font, ponieważ ma to efekty uboczne (resetuje inne własności danego fontu). +

Aby zapoznać się ze szczegółami własności fontów, zajrzyj do rozdziału Fonty w specyfikacji CSS. +Aby zapoznać się ze szczegółami odnośnie dekoracji tekstu, zajrzyj Tutaj. +

+
+

Zadanie: Określanie fontu

+

W prostych dokumentach możesz określić font elementu BODY, a reszta dokumentu będzie dziedziczyć jego ustawienia. +

Wyedytuj swój plik CSS. +Dodaj regułę, która zmieni font. +Logicznie byłoby umieścić tę regułę na górze pliku CSS, ale będzie ona miała taki sam efekt niezależnie od miejsca położenia: +

+
+

body {font: 16px "Comic Sans MS", cursive;} +

+
+

Dodaj komentarz wyjaśniający regułę oraz dodaj białe znaki, aby całość pasowała do Twojego ulubionego schematu. +

Odśwież okno przeglądarki, aby zobaczyć efekt. +Jeżeli Twój system zawiera Comic Sans MS lub inny font kursywy, który nie obsługuje pochylenia, wtedy Twoja przeglądarka wybierze inny typ fontu dla pochylonego tekstu w pierwszej linii: +

+ + + + +
Cascading Style Sheets +
Cascading Style Sheets +
+

Z paska menu przeglądarki wybierz Widok – Rozmiar tekstu – Powiększ. Nawet jeśli określiłeś(aś) w stylu rozmiar 16 pikseli, użytkownik czytający dokument może zmienić jego rozmiar. +

+ + +
Wyzwanie +
Nie zmieniając nic innego, powiększ dwukrotnie wszystkie sześć pierwszych liter w domyślnym foncie szeryfowym przeglądarki: + + + + +
Cascading Style Sheets +
Cascading Style Sheets +
+
+

Co dalej?

+

Twój przykładowy dokument korzysta już z kilku nazwanych kolorów. +Na następnej stronie znajdziesz listę nazwanych, standardowych kolorów oraz opis, jak można określić inne: +Kolor +

+
+
+{{ languages( { "en": "en/CSS/Getting_Started/Text_styles", "fr": "fr/CSS/Premiers_pas/Styles_de_texte", "it": "it/Conoscere_i_CSS/Stili_del_testo", "ja": "ja/CSS/Getting_Started/Text_styles", "pt": "pt/CSS/Como_come\u00e7ar/Estilos_de_texto" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/tables/index.html" "b/files/pl/web/css/na_pocz\304\205tek/tables/index.html" new file mode 100644 index 0000000000..78f9c67236 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/tables/index.html" @@ -0,0 +1,596 @@ +--- +title: Tabele +slug: Web/CSS/Na_początek/Tables +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/Building_blocks/Styling_tables +--- +

 

+

Ta strona bardziej szczegółowo opisuje selektory oraz sposoby tworzenia stylów dla tabel.

+

Stworzysz nowy dokument zawierający tabelę oraz nadasz mu styl.

+

Informacja: Więcej o selektorach

+

CSS daje wiele sposobów na wybranie elementów, bazując na ich wzajemnych relacjach. Możesz ich użyć, aby stworzyć bardziej dokładne selektory.

+

Poniżej znajduje się podsumowanie selektorów bazujące na ich wzajemnych relacjach:

+ + + + + + + + + + + + + + + + + + + + + + + +
SelektorWybiera
A EDowolny element E, który jest potomkiem elementu A (to znaczy jest dzieckiem albo dzieckiem dziecka, itp.))
A > EDowolny element E, który jest dzieckiem elementu A
E:first-childDowolny element E, który jest pierwszym dzieckiem swojego rodzica
B + EDowolny element E, który jest następnym z rodzeństwa elementu B (to znaczy: następnym dzieckiem tego samego rodzica)
+

Możesz łączyć te selektory w złożone relacje.

+

Możesz też użyć symbolu * (gwiazdka), który znaczy "dowolny element".

+ + + + + + + +
+ Przykład
Tabela HTML posiada atrybut id, ale jej wiersze i komórki nie posiadają własnych identyfikatorów: +
+

<TABLE id="data-table-1"> ... <TR> <TD>Prefiks</TD> <TD>0001</TD> <TD>domyślnie</TD> </TR> ...

+
+

Poniższe reguły powodują, że pierwsza komórka w każdym wierszu jest pogrubiona, natomiast druga używa kroju monospace. Dotyczą one tylko jednej, określonej tabeli w dokumencie:

+
+
    +
  1. data-table-1 td:first-child {font-weight: bolder;}
  2. +
  3. data-table-1 td:first-child + td {font-family: monospace;}
  4. +
+
+

Wygląda to tak:

+ + + + + + +
+ + + + + + + + +
Prefiks<tt>0001</tt>domyślnie
+
+
+ + + + + + + +
+ Więcej szczegółów
Kiedy stworzysz bardziej szczegółowy selektor, zazwyczaj wzrośnie jego priorytet. +

Jeżeli korzystasz z opisanych tu technik, unikasz potrzeby określania atrybutu class lub id w wielu znacznikach dokumentu. Zamiast tego logika zostaje przeniesiona na CSS.

+

W dużych projektach, gdzie prędkość ma duże znaczenie, możesz sprawić, że twój arkusz stylów będzie działał szybciej, poprzez unikanie złożonych reguł, które zależą od relacji między elementami.

+

Aby dowiedzieć się więcej o selektorach, zajrzyj do specyfikacji CSS na stronę Selektory.

+
+

Informacja: Tabele

+

Tabela układa informacje w prostokątną siatkę. Niektóre tabele mogą być skomplikowane, a różne przeglądarki mogą pokazywać różne wyniki.

+

Kiedy tworzysz swój dokument, użyj tabel do wyrażenia relacji między elementami informacji. Wówczas nie ma znaczenia, jeśli różne przeglądarki wyświetlą je w trochę inny sposób, ponieważ przekaz pozostanie jasny.

+

Nie używaj tabel w sposób, do którego nie zostały przeznaczone, na przykład aby tworzyć przy ich pomocy układ wizualny. Techniki opisane na poprzedniej stronie tego kursu (Układ) nadają się do tego znacznie lepiej.

+

Struktura tabeli

+

W tabeli każdy kawałek informacji jest wyświetlany w komórce.

+

Komórki wyświetlane w jednej linii tworzą wiersz.

+

W niektórych tabelach wiersze mogą być grupowane. Specjalna grupa wierszy, która znajduje się na górze tabeli, nazywa się nagłówkiem. Specjalna grupa wierszy znajdująca się na dole tabeli nazywa się stopką. Główne wiersze w tabeli tworzą jej ciało i one również mogą być łączone w grupy.

+

Komórki ułożone w pionowej linii tworzą kolumnę, ale użyteczność kolumn w tabelach CSS jest ograniczona.

+ + + + + + + +
+ Przykład
Tabela selektorów znajdująca się na górze tej strony posiada dziesięć komórek i pięć wierszy. +

Pierwszy wiersz jest nagłówkiem. Kolejne cztery są ciałem tabeli. Nie posiada ona stopki.

+

Ma natomiast dwie kolumny.

+
+


+ Ten kurs omawia tylko proste tabele, dla których wynik jest przewidywalny. W prostej tabeli każda komórka zajmuje miejsce w jednym wierszu i jednej kolumnie. Możesz skorzystać z CSS-u do złożonych tabel, gdzie komórki rozciągają się na więcej niż jeden wiersz lub kolumnę, ale tego typu tabele wykraczają poza zakres tego kursu.

+

Ramki

+

Komórki nie posiadają marginesów zewnętrznych.

+

Komórki posiadają ramki oraz marginesy wewnętrzne. Domyślnie ramki są oddzielone o wartość własności border-spacing tabeli. Możesz usunąć całkowicie odstępy przez ustawienie własności border-collapse tabeli na wartość collapse.

+ + + + + + + +
+ Przykład
Poniżej widać trzy tabele. +

Tabela po lewej ma ustawione odstępy ramek na 0.5 em. Tabela w środku ma ustawione odstępy ramek na zero. Tabela po prawej ma zwinięte ramki:

+ + + + + + + + +
+ + + + + + + + + + + +
ClubsHearts
DiamondsSpades
+
+ + + + + + + + + + + +
ClubsHearts
DiamondsSpades
+
+ + + + + + + + + + + +
ClubsHearts
DiamondsSpades
+
+
+

Opis

+

Opis jest etykietą opisującą całą tabelę. Domyślnie jest wyświetlana nad tabelą.

+

Aby przesunąć opis na dół, ustaw jego własność caption-side na bottom. Ta własność jest dziedziczona, więc możesz ją ustawić dla całej tabeli lub innego rodzica.

+

Aby ustawić styl tekstu opisu, użyj normalnych własności tekstowych.

+ + + + + + + +
+ Przykład
Ta tabela posiada opis na dole: +
+
    +
  1. demo-table > caption {
  2. +
+
+ caption-side: bottom;
+ font-style: italic;
+ text-align: right;
+ }
+
+
+ + + + + + +
+ + + + + + + +
+ Suits
+ + + + + + + + + + + +
ClubsHearts
DiamondsSpades
+
+
+
+

Puste komórki

+

Możesz wyświetlić puste komórki (czyli ich ramki oraz tło) przez określenie empty-cells: show; dla elementu tabeli.

+

Możesz je ukryć, określając empty-cells: hide;. Wtedy jeżeli element rodzic komórki posiada tło, zostanie ono pokazane w miejscu pustej komórki.

+ + + + + + + +
+ Przykład
Poniższe tabele mają jasnozielone tło. Ich komórki mają tło jasnoszare i ciemnoszare ramki. +

W lewej tabeli puste komórki są wyświetlane, w prawej ukrywane:

+ + + + + + + +
+ + + + + + + + + + + +
 Hearts
DiamondsSpades
+
+ + + + + + + + + + + +
 Hearts
DiamondsSpades
+
+
+

 

+ + + + + + + +
+ Więcej szczegółów
Aby dowiedzieć się więcej o tabelach, zajrzyj do rozdziału Tabele w specyfikacji CSS. +

Informacje tam zawarte wykraczają poza ten kurs, ale nie opisują różnic miedzy przeglądarkami, które mogą wpływać na wyświetlanie złożonych tabel.

+
+

Zadanie: Ustawianie stylów dla tabeli

+

Stwórz nowy dokument HTML, doc3.html. Skopiuj i wklej poniższy kod, upewniając się, że zaznaczasz całą zawartość:

+
+
<DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+<HEAD>
+<TITLE>Przykładowy dokument 3</TITLE>
+<LINK rel="stylesheet" type="text/css" href="style3.css">
+</HEAD>
+<BODY>
+
+<TABLE id="demo-table">
+<CAPTION>Oceans</CAPTION>
+
+<THEAD>
+<TR>
+<TH></TH>
+<TH>Area</TH>
+<TH>Mean depth</TH>
+</TR>
+<TR>
+<TH></TH>
+<TH>million km<SUP>2</SUP></TH>
+<TH>m</TH>
+</TR>
+</THEAD>
+
+<TBODY>
+<TR>
+<TH>Arctic</TH>
+<TD>13,000</TD>
+<TD>1,200</TD>
+</TR>
+<TR>
+<TH>Atlantic</TH>
+<TD>87,000</TD>
+<TD>3,900</TD>
+</TR>
+<TR>
+<TH>Pacific</TH>
+<TD>180,000</TD>
+<TD>4,000</TD>
+</TR>
+<TR>
+<TH>Indian</TH>
+<TD>75,000</TD>
+<TD>3,900</TD>
+</TR>
+<TR>
+<TH>Southern</TH>
+<TD>20,000</TD>
+<TD>4,500</TD>
+</TR>
+</TBODY>
+
+<TFOOT>
+<TR>
+<TH>Total</TH>
+<TD>361,000</TD>
+<TD></TD>
+</TR>
+<TR>
+<TH>Mean</TH>
+<TD>72,000</TD>
+<TD>3,800</TD>
+</TR>
+</TFOOT>
+
+</TABLE>
+
+</BODY>
+</HTML>
+
+
+

Stwórz nowy arkusz stylów, style3.css. Skopiuj i wklej poniższy kod, upewniając się, że zaznaczasz cały:

+
+
/*** Styl dla doc3.html (Tabele) ***/
+
+#demo-table {
+  font: 100% sans-serif;
+  background-color: #efe;
+  border-collapse: collapse;
+  empty-cells: show;
+  border: 1px solid #7a7;
+  }
+
+#demo-table > caption {
+  text-align: left;
+  font-weight: bold;
+  font-size: 200%;
+  border-bottom: .2em solid #4ca;
+  margin-bottom: .5em;
+  }
+
+
+/* basic shared rules */
+#demo-table th,
+#demo-table td {
+  text-align: right;
+  padding-right: .5em;
+  }
+
+#demo-table th {
+  font-weight: bold;
+  padding-left: .5em;
+  }
+
+
+/* header */
+#demo-table > thead > tr:first-child > th {
+  text-align: center;
+  color: blue;
+  }
+
+#demo-table > thead > tr + tr > th {
+  font-style: italic;
+  color: gray;
+  }
+
+/* fix size of superscript */
+#demo-table sup {
+  font-size: 75%;
+  }
+
+/* body */
+#demo-table td {
+  background-color: #cef;
+  padding:.5em .5em .5em 3em;
+  }
+
+#demo-table tbody th:after {
+  content: ":";
+  }
+
+
+/* footer */
+#demo-table tfoot {
+  font-weight: bold;
+  }
+
+#demo-table tfoot th {
+  color: blue;
+  }
+
+#demo-table tfoot th:after {
+  content: ":";
+  }
+
+#demo-table > tfoot td {
+  background-color: #cee;
+  }
+
+#demo-table > tfoot > tr:first-child td {
+  border-top: .2em solid #7a7;
+  }
+
+
+

Otwórz dokument w swojej przeglądarce. Powinien wyglądać mniej więcej tak:

+ + + + + + +
+
+

Oceans

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 AreaMean depth
 million km2m
Arctic:13,0001,200
Atlantic:87,0003,900
Pacific:180,0004,000
Indian:75,0003,900
Southern:20,0004,500
Total:361,000 
Mean:72,0003,800
+
+
+
+

Porównaj reguły ze swojego arkusza stylów z wyświetloną tabelą, aby upewnić się, że rozumiesz działanie każdej reguły. Jeżeli napotkasz regułę, której nie rozumiesz, wykomentuj ją i odśwież okno przeglądarki, aby zobaczyć, co się stanie.

+

Poniżej znajduje się kilka uwag dotyczących tej tabeli:

+ +

 

+ + + + + + + +
+ Wyzwania
Zmień arkusz stylów tak, aby tabela wyglądała jak poniżej: + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 AreaMean depth
 million km2m
Arctic:13,0001,200
Atlantic:87,0003,900
Pacific:180,0004,000
Indian:75,0003,900
Southern:20,0004,500
Total:361,000 
Mean:72,0003,800
+
+

Oceans

+
+
+
+

 

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji.

+

Jest to ostatnia strona tego kursu, która opisuje własności i wartości CSS. Aby dowiedzieć się więcej o własnościach i wartościach w CSS, zajrzyj na stronę Full property table w specyfikacji CSS.

+

Następna strona znowu wraca do tematu przeznaczenia i struktury arkuszy stylów CSS: Media

diff --git "a/files/pl/web/css/na_pocz\304\205tek/uk\305\202ad/index.html" "b/files/pl/web/css/na_pocz\304\205tek/uk\305\202ad/index.html" new file mode 100644 index 0000000000..9499cdcdcd --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/uk\305\202ad/index.html" @@ -0,0 +1,274 @@ +--- +title: Układ +slug: Web/CSS/Na_początek/Układ +tags: + - 'CSS:Na_początek' +translation_of: Learn/CSS/CSS_layout +--- +

+

Ta strona opisuje kilka sposobów na modyfikację układu dokumentu. +

Nauczysz się zmieniać układ przykładowego dokumentu... +

+

Informacja: Układ

+

Możesz użyć CSS-u do określenia wielu efektów wizualnych, które zmieniają układ Twojego dokumentu. +Niektóre z technik tworzenia układu są bardziej zaawansowane, wykraczające poza zakres podstawowego kursu. +

Kiedy modelujesz układ strony, który ma wyglądać podobnie w wielu przeglądarkach, Twój arkusz stylów łączy się z domyślnym arkuszem stylów przeglądarki oraz silnikiem układu stron w sposób, który może być bardzo złożony. +To także wykracza poza zakres tego kursu. +

Ta strona opisuje proste techniki, których możesz spróbować. +

+

Struktura dokumentu

+

Jeżeli chcesz kontrolować układ dokumentu, być może będziesz musiał(a) zmienić jego strukturę. +

Język składni Twojego dokumentu może posiadać znaczniki ogólnego przeznaczenia do tworzenia struktury. +Na przykład w HTML-u możesz użyć znacznika DIV do tworzenia struktury. +

+ + +
Przykład +
W Twoim przykładowym dokumencie ponumerowane paragrafy pod drugim nagłówkiem nie mają własnego kontenera. +

Twój arkusz stylów nie może narysować ramki wokół tych paragrafów, ponieważ nie istnieje element, dla którego można stworzyć selektor. +

Aby poprawić ten problem strukturalny, możesz dodać znacznik DIV wokół paragrafów. +Ten znacznik jest unikalny, zatem można go identyfikować przez atrybut id. +

+
+
 <H3 class="numbered">Numbered paragraphs</H3>
+ <DIV id="numbered">
+ <P class="numbered">Lorem ipsum</P>
+ <P class="numbered">Dolor sit</P>
+ <P class="numbered">Amet consectetuer</P>
+ <P class="numbered">Magna aliquam</P>
+ <P class="numbered">Autem veleum</P>
+ </DIV>
+
+
+

Teraz Twój arkusz stylów może używać jednej reguły do określania ramek wokół obu list: +

+
+
 ul, #numbered {
+ border: 1em solid #69b;
+ padding-left:1em;
+ }
+
+
+

Wynik wygląda tak: +

+ + +

(A) The oceans

+
  • Arctic
  • Atlantic
  • Pacific
  • Indian
  • Southern
+
+

(B) Numbered paragraphs

+

1: Lorem ipsum

2: Dolor sit

3: Amet consectetuer

4: Magna aliquam

5: Autem veleum

+
+
+
+

Jednostki rozmiaru

+

Dotychczas w tym kursie określałeś(aś) rozmiary w pikselach (px). +Jest to rozsądny wybór w pewnych przypadkach, dla wyświetlaczy takich jak monitor komputera. +Jednak jeżeli użytkownik zmieni rozmiar kroju, Twój układ może przestać wyglądać dobrze. +

W wielu wypadkach lepiej jest określać rozmiary w procentach lub jednostkach ems (em). +Em jest nominalnym rozmiarem aktualnego kroju (szerokość litery m). +Kiedy użytkownik zmienia rozmiar kroju, Twój układ dostosuje się automatycznie. +

+ + +
Przykład +
Ramka po lewej stronie tego tekstu ma rozmiary określony w pikselach. +

Ramka po prawej ma rozmiar określony w ems. +

Zmień teraz rozmiary kroju w swojej przeglądarce, aby zobaczyć, jak ramka po prawej dopasowuje się do rozmiaru, a jak zachowa się ramka po lewej: +

+ + +
ZMIEŃ MÓJ ROZMIAR
+
+
+ + +
Więcej szczegółów +
Dla innych urządzeń najlepiej stosować inne jednostki miar. +

Więcej informacji na ten temat znajdziesz na dalszych stronach tego kursu. +

Aby dowiedzieć się więcej na temat wartości i jednostek, których możesz użyć, zobacz stronę Wartości na stronach specyfikacji CSS. +

+
+

Układ tekstu

+

Układ treści dokumentu jest określany przez dwie własności. +Możesz ich użyć, aby wstępnie określić układ: +

+ +
Określa położenie treści. Wybierz jedną z wartości: left, right, center, justify +
+ +
Tworzy odstęp dla treści o określoną wartość. +
+

Te własności dotyczą wszelkiej treści tekstowej w elemencie, nie tylko tekstu. +Pamiętaj też, że są one dziedziczone przez elementy dzieci, zatem będzie trzeba bezpośrednio wyłączyć je dla dzieci, aby uniknąć dziwnych rezultatów. +

+ + +
Przykład +
Aby wycentrować nagłówki: +
+
 h3 {
+ border-top: 1px solid gray;
+ text-align: center;
+ }
+
+
+

Wynik: +

+ + +

(A) The oceans

+
+

W dokumencie HTML treść wyświetlana pod nagłówkiem nie jest strukturalnie przynależna do nagłówka. +Zatem kiedy określasz nagłówek w taki sposób, znaczniki poniżej nagłówka nie dziedziczą stylu. +

+
+

Pływanie (Floats)

+

Własność float wymusza umieszczenie elementu po lewej lub prawej. +Jest to prosty sposób, aby kontrolować jego położenie i rozmiar. +

Reszta dokumentu opływa wybrany element. +Możesz to kontrolować, używając własności clear na innych elementach, aby sprawić, by nie opływały elementów posiadających określony float. +

+ + +
Przykład +
W Twoim przykładowym dokumencie listy są rozciągnięte na szerokość okna. Możesz tego uniknąć, przyklejając je do lewej strony. +

Aby zachować nagłówki w jednym miejscu, musisz też określić, że mają ignorować opływanie po lewej: +

+
+
 ul, #numbered {float: left;}
+ h3 {clear: left;}
+
+
+

Rezultat wygląda tak: +

+ + +

(A) The oceans

+
  • Arctic
  • Atlantic
  • Pacific
  • Indian
  • Southern
+
+

(B) Numbered paragraphs

+

1: Lorem ipsum

2: Dolor sit

3: Amet consectetuer

4: Magna aliquam

5: Autem veleum

+
+
+

(Mały margines wewnętrzny jest potrzebny po prawej stronie bloków, gdzie ramka jest za blisko tekstu.) +

+
+

Pozycjonowanie

+

Możesz określić pozycję elementu na cztery sposoby poprzez określenie własności position oraz podanie jednej z następujących wartości. +

Są to własności zaawansowane. +Można ich używać w prosty sposób — dlatego są tutaj wymienione. +Jednak korzystanie z nich w bardziej złożony sposób może być skomplikowane. +

+ +
Pozycja elementu jest określona relatywnie do jego normalnej pozycji. +
Użyj tej wartości, aby przesunąć element o określoną wartość. Czasem możesz użyć marginesu zewnętrznego, aby osiągnąć ten sam efekt. +
+ +
Element będzie przyczepiony. +
Określa pozycję elementu relatywnie do okna dokumentu. Nawet kiedy reszta dokumentu jest przewijana, element pozostaje w tym samym miejscu. +
+ +
Pozycja elementu jest ustawiana relatywnie do elementu rodzica. +
Zadziała to tylko wobec elementów, które są pozycjonowane z użyciem relative, fixed lub absolute. +
+
Możesz też sprawić, by dowolny element-rodzic mógł zostać zastosowany poprzez określenie mu position: relative; bez podawania wartości przesunięcia. +
+ +
Domyślne. Użyj tej wartości, aby wyłączyć pozycjonowanie. +
+

Razem z tymi wartościami własności position (poza static) podaj jedną lub więcej własności: top, right, bottom, left, width, height, aby określić, gdzie chcesz, aby element się pojawił, oraz jego rozmiar. +

+ + +
Przykład +
Aby umieścić dwa elementy na górze, stwórz kontener rodzica w swoim dokumencie z dwoma elementami w środku: +
+
 <DIV id="parent-div">
+ <P id="forward">/</P>
+ <P id="back">\</P>
+ </DIV>
+
+
+

W swoim arkuszu stylów nadaj rodzicowi wartość relative własności position. +Nie musisz podawać żadnego przesunięcia. +Określ wartość własności position jego dzieci jako absolute: +

+
+  #parent-div {
+  position: relative;
+  font: bold 200% sans-serif;
+  }
+
+  #forward, #back {
+  position: absolute;
+  margin:0px;
+  top: 0px;
+  left: 0px;
+  }
+
+  #forward {
+  color: blue;
+  }
+
+  #back {
+  color: red;
+  }
+
+

Rezultat wygląda tak, z odwrotnym ukośnikiem nad ukośnikiem: +

+

/

\

+
+ +
+


+

+
+ + +
Więcej szczegółów +
Cały temat pozycjonowania zajmuje dwa skomplikowane rozdziały w specyfikacji CSS: Visual formatting model oraz Visual formatting model details. +

Jeżeli tworzysz arkusze stylów, które mają działać w wielu przeglądarkach, musisz także wziąć pod uwagę różnice w sposobie interpretacji standardów oraz prawdopodobne błędy w obsłudze standardów występujące w różnych przeglądarkach. +

+
+

Zadanie: Definiowanie układu

+

Zmień swój przykładowy dokument i arkusz stylów, korzystając z przykładów z sekcji Struktura dokumentu i Pływanie. +

W przykładzie z Pływanie dodaj margines wewnętrzny, aby oddzielić tekst od prawej ramki o 0.5 em. +

+ + +
Wyzwanie +
Zmień swój przykładowy dokument, dodając ten znacznik blisko końca, tuż przed +

</BODY> +

+
+  <IMG id="fixed-pin" src="Yellow-pin.png" alt="Yellow map pin">
+
+

Jeżeli wcześniej nie pobrałeś(aś) pliku obrazka z tego kursu, zrób to teraz: +

+ + +
Image:Yellow-pin.png +
+

Spróbuj przewidzieć, gdzie ten obrazek pojawi się w dokumencie. +Potem odśwież okno przeglądarki i sprawdź czy miałeś(aś) rację. +

Dodaj regułę do arkusza stylów, która umieści obrazek na stałe w prawym górnym rogu dokumentu. +

Odśwież okno przeglądarki i zmniejsz rozmiar okna. +Sprawdź, czy obrazek nadal pozostaje w górnym prawym rogu, nawet kiedy przewijasz dokument. +

+

(A) The oceans

  • Arctic
  • Atlantic
  • Pacific
  • Indian
  • Southern

(B) Numbered paragraphs

1: Lorem ipsum

2: Dolor sit

3: Amet consectetuer

4: Magna aliquam

5: Autem veleum

 

Yellow map pin
+
+
+


+

+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

Właśnie poznałeś(aś) wszystkie zagadnienia należące do podstawowego kursu CSS. +Następna strona dokładniej opisze zaawansowane selektory dla reguł CSS oraz trochę szczegółów dotyczących tabel: Tabele +

{{ languages( { "en": "en/CSS/Getting_Started/Layout", "fr": "fr/CSS/Premiers_pas/Mise_en_page", "pt": "pt/CSS/Como_come\u00e7ar/Disposi\u00e7\u00e3o" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/wi\304\205zania_xbl/index.html" "b/files/pl/web/css/na_pocz\304\205tek/wi\304\205zania_xbl/index.html" new file mode 100644 index 0000000000..9218b33797 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/wi\304\205zania_xbl/index.html" @@ -0,0 +1,176 @@ +--- +title: Wiązania XBL +slug: Web/CSS/Na_początek/Wiązania_XBL +tags: + - 'CSS:Na_początek' +translation_of: Archive/Beginner_tutorials/Using_XBL_from_stylesheets +--- +

+

Ta strona opisuje jak możesz używać CSS-u w Mozilli, aby poprawić strukturę złożonych aplikacji, sprawiając, że kod i zasoby stają się wygodniejsze do zarządzania i ponownego użycia. +

Wykorzystasz te techniki w przykładowej demonstracji. +

+

Informacja: Wiązania XBL

+

Struktura dostarczana przez język znaczników i CSS nie jest idealna dla złożonych aplikacji, gdzie fragmentu muszą być kompletne i umożliwiać ponowne wykorzystanie. Możesz umieścić arkusze stylów w osobnych plikach, możesz umieścić skrypty w osobnych plikach. Ale musisz dodawać odnośniki do tych plików z dokumentu. +

Inne ograniczenie strukturalne dotyczy zawartości. Możesz użyć CSS, aby dodać zawartość do wybranych elementów, ale ta zawartość jest ograniczona do tekstu i obrazków, a ich pozycjonowanie jest ograniczone do przed i za wybranym elementem. +

Mozilla dodaje mechanizm, który pozwala pokonać te ograniczenia: XBL (Język Wiązań XML). +Możesz używać XBL-a do wiązania wybranych elementów: +

+ +

Ponieważ unikasz umieszczania odnośników do tego wszystkiego w dokumencie, możesz stworzyć elementy kompletne, którymi łatwo można zarządzać i które można wielokrotnie wykorzystywać. +

+ + +
Więcej szczegółów +
Aby dowiedzieć się więcej o wiązaniach XBL, zajrzyj na stronę o XBL na tym wiki. +
+

Zadanie: Demonstracja XBL-a

+

Stwórz nowy dokument HTML, doc6.html. +Skopiuj i wklej do niego poniższy kod: +

+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+
+<HEAD>
+<TITLE>Mozilla CSS Getting Started - XBL demonstration</TITLE>
+<LINK rel="stylesheet" type="text/css" href="style6.css"></strong>
+</HEAD>
+
+<BODY>
+<H1>XBL demonstration</H1>
+<DIV id="square">Click Me</DIV>
+</BODY>
+
+</HTML>
+
+

Stwórz nowy plik CSS, style6.css. +Ten arkusz stylów zawiera style dokumentu. +Skopiuj i wklej do niego poniższy kod: +

+
/*** XBL demonstration ***/
+#square {
+  -moz-binding: url("square.xbl#square");
+  }
+
+

Stwórz nowy plik tekstowy, square.xbl. +Ten plik zawiera wiązanie XBL. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
<?xml version="1.0"?>
+<!DOCTYPE bindings>
+<bindings xmlns="http://www.mozilla.org/xbl">
+
+<binding id="square">
+
+  <resources>
+    <stylesheet src="bind6.css"/>
+    </resources>
+
+  <content xmlns="http://www.w3.org/1999/xhtml">
+    <div anonid="square"/>
+    <button anonid="button" type="button">
+      <xbl:children/>
+      </button>
+    </content>
+
+  <implementation>
+
+    <field name="square"><![CDATA[
+      document.getAnonymousElementByAttribute(this, "anonid", "square")
+      ]]></field>
+
+    <field name="button"><![CDATA[
+      document.getAnonymousElementByAttribute(this, "anonid", "button")
+      ]]></field>
+
+    <method name="doDemo">
+      <body><![CDATA[
+        this.square.style.backgroundColor = "#cf4"
+        this.square.style.marginLeft = "20em"
+        this.button.setAttribute("disabled", "true")
+        setTimeout(this.clearDemo, 2000, this)
+        ]]></body>
+      </method>
+
+    <method name="clearDemo">
+      <parameter name="me"/>
+      <body><![CDATA[
+        me.square.style.backgroundColor = "transparent"
+        me.square.style.marginLeft = "0"
+        me.button.removeAttribute("disabled")
+        ]]></body>
+      </method>
+
+    </implementation>
+
+  <handlers>
+    <handler event="click" button="0"><![CDATA[
+     if (event.originalTarget == this.button) this.doDemo()
+     ]]></handler>
+    </handlers>
+
+  </binding>
+
+</bindings>
+
+

Stwórz nowy plik CSS, bind6.css. +Ten arkusz stylów zawiera style do wiązań. +Skopiuj i wklej do niego poniższy kod: +

+
/*** XBL demonstration ***/
+[anonid="square"] {
+  width: 20em;
+  height: 20em;
+  border: 2px inset gray;
+  }
+
+[anonid="button"] {
+  margin-top: 1em;
+  padding: .5em 2em;"
+  }
+
+

Otwórz dokument w swojej przeglądarce i naciśnij przycisk. +

To wiki nie obsługuje JavaScript-u na stronach, więc nie jest możliwe pokazanie demonstracji. +Wygląda to mniej więcej tak jak poniżej, przed i po naciśnięciu przycisku: +

+ + +
+ + +

XBL demonstration

+
+
+
+
+ + +

XBL demonstration

+
+
+
+
+

Uwagi dotyczące demonstracji: +

+ + + +
Wyzwanie +
Zmień plik XBL tak, aby obiekt square poszerzał się dwukrotnie, zamiast przeskakiwania w prawo, kiedy zmienia kolor. +

Użyj Inspektora DOM, aby zbadać dokument, analizując dodaną zawartość. +

+
+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony albo chcesz ją skomentować, pomóż nam, dopisując się na stronie Dyskusji. +

W tej demonstracji obiekt square oraz przycisk tworzą kompletną kontrolkę, która działa wewnątrz dokumentu HTML. +

Mozilla posiada wyspecjalizowany język znaczników do tworzenia interfejsów użytkownika. +Demonstruje to następna strona: +XUL-owe interfejsy użytkownika +

{{ languages( { "en": "en/CSS/Getting_Started/XBL_bindings", "fr": "fr/CSS/Premiers_pas/Liaisons_XBL", "pt": "pt/CSS/Como_come\u00e7ar/XBL_bindings" } ) }} diff --git "a/files/pl/web/css/na_pocz\304\205tek/xul-owe_interfejsy_u\305\274ytkownika/index.html" "b/files/pl/web/css/na_pocz\304\205tek/xul-owe_interfejsy_u\305\274ytkownika/index.html" new file mode 100644 index 0000000000..c185657258 --- /dev/null +++ "b/files/pl/web/css/na_pocz\304\205tek/xul-owe_interfejsy_u\305\274ytkownika/index.html" @@ -0,0 +1,299 @@ +--- +title: XUL-owe interfejsy użytkownika +slug: Web/CSS/Na_początek/XUL-owe_interfejsy_użytkownika +tags: + - 'CSS:Na_początek' +translation_of: Archive/Beginner_tutorials/XUL_user_interfaces +--- +

+

Ta strona opisuje specjalny język Mozilli do tworzenia interfejsów. +

Stworzysz przykładowy dokument demonstracyjny dla przeglądarek Gecko. +

+

Informacja: Interfejsy użytkownika

+

Mimo, że HTML posiada pewne wsparcie dla interfejsów użytkownika, to jest ono niewystarczające do stworzenia samodzielnej aplikacji. +

Mozilla pozwala pokonać te ograniczenia poprzez użycie specjalnego języka do tworzenia interfejsów użytkownika: XUL (XML User-interface Language, XML-owy Język Interfejsu Użytkownika, zazwyczaj wymawiany jak "zool"). +

W XUL-u, wiele często używanych funkcji interfejsu użytkownika jest wbudowanych. Na przykład, XUL dostarcza wyspecjalizowane typy okien jak okna dialogowe czy kreatory (wizards), oraz paski statusu, menu, paski narzędziowe, a nawet przeglądarki. +

Bardziej wyspecjalizowane funkcje, mogą zostać zbudowane z elementów przy użyciu XUL-a i innych technologii, które poznałeś(aś) w tym kursie: stylów CSS, kodu JavaScript, wiązań XBL. +

Jak inne języki XML-owe, XUL używa arkuszy stylów CSS. +

+ + +
Więcej szczegółów +
Aby dowiedzieć się więcej o XUL-owych interfejsach użytkownika, zajrzyj na stroną o XUL-u na tym wiki. +
+

Zadanie: Demonstracja XUL-a

+

Stwórz nowy dokument XUL jako czysty plik tekstowy, doc7.xul. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
<?xml version="1.0"?>
+<?xml-stylesheet type="text/css" href="style7.css"?>
+<!DOCTYPE window>
+
+<window
+  xmlns="http&58;//www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+  title="CSS Getting Started - XUL demonstration"
+  onload="init();">
+
+<script type="application/x-javascript" src="script7.js"/>
+
+<label class="head-1" value="XUL demonstration"/>
+
+<vbox>
+
+  <groupbox class="demo-group">
+    <caption label="Day of week calculator"/>
+    <grid>
+      <columns>
+        <column/>
+        <column/>
+        </columns>
+      <rows>
+        <row>
+          <label class="text-prompt" value="Date:"
+            accesskey="D" control="date-text"/>
+          <textbox id="date-text" type="timed"
+            timeout="750" oncommand="refresh();"/>
+          </row>
+        <row>
+          <label value="Day:"/>
+          <hbox id="day-box">
+            <label class="day" value="Sunday" disabled="true"/>
+            <label class="day" value="Monday" disabled="true"/>
+            <label class="day" value="Tuesday" disabled="true"/>
+            <label class="day" value="Wednesday" disabled="true"/>
+            <label class="day" value="Thursday" disabled="true"/>
+            <label class="day" value="Friday" disabled="true"/>
+            <label class="day" value="Saturday" disabled="true"/>
+            </hbox>
+          </row>
+        </rows>
+      </grid>
+    <hbox class="buttons">
+      <button id="clear" label="Clear" accesskey="C"
+        oncommand="clearDate();"/>
+      <button id="today" label="Today" accesskey="T"
+        oncommand="setToday();"/>
+      </hbox>
+    </groupbox>
+
+  <statusbar>
+    <statusbarpanel id="status"/>
+    </statusbar>
+
+</vbox>
+
+</window>
+
+

Stwórz nowy plik CSS, style7.css. +Skopiuj i wklej do niego poniższy kod, upewniając się, że wkleiłeś(aś) cały: +

+
/*** XUL demonstration ***/
+window {
+  -moz-box-align: start;
+  background-color: -moz-dialog;
+  font: -moz-dialog;
+  padding: 2em;
+  }
+
+.head-1 {
+  font-weight: bold;
+  font-size: 200%;
+  padding-left: 5px;
+  }
+
+
+/* the group box */
+.demo-group {
+  padding: 1em;
+  }
+
+.demo-group grid {
+  margin-bottom: 1em;
+  }
+
+.demo-group column {
+  margin-right: .5em;
+  }
+
+.demo-group row {
+  margin-bottom: .5em;
+  }
+
+.demo-group .buttons {
+  -moz-box-pack: end;
+  }
+
+
+/* the day-of-week labels */
+.day {
+  margin-left: 1em;
+  }
+
+.day[disabled] {
+  color: #777;
+  }
+
+.day:first-child {
+  margin-left: 4px;
+  }
+
+
+/* the left column labels */
+.text-prompt {
+  padding-top: .25em;
+  }
+
+
+/* the date input box */
+#date-text {
+  max-width: 8em;
+  }
+
+
+/* the status bar */
+statusbar {
+  width: 100%;
+  border: 1px inset -moz-dialog;
+  margin: 4px;
+  padding: 0px 4px;
+  }
+
+#status {
+  padding: 4px;
+  }
+
+#status[warning] {
+  color: red;
+  }
+
+

Stwórz nowy plik tekstowy, script7.js. +Skopiuj i wklej do niego poniższy kod, upewniając się, że zaznaczyłeś(aś) cały: +

+
// XUL demonstration
+
+var dateBox, dayBox, currentDay, status; // elements
+
+// called by window onLoad
+function init() {
+  dateBox = document.getElementById("date-text")
+  dayBox = document.getElementById("day-box")
+  status = document.getElementById("status")
+  setToday();
+  }
+
+// called by Clear button
+function clearDate() {
+  dateBox.value = ""
+  refresh()
+  }
+
+// called by Today button
+function setToday() {
+  var d = new Date()
+  dateBox.value = (d.getMonth() + 1)
+    + "/" + d.getDate()
+    + "/" + d.getFullYear()
+  refresh()
+  }
+
+// called by Date textbox
+function refresh() {
+  var d = dateBox.value
+  var theDate = null
+
+  showStatus(null)
+  if (d != "") {
+    try {
+      var a = d.split("/")
+      var theDate = new Date(a[2], a[0] - 1, a[1])
+      showStatus(theDate)
+      }
+    catch (ex) {}
+    }
+  setDay(theDate)
+  }
+
+// internal
+function setDay(aDate) {
+  if (currentDay) currentDay.setAttribute("disabled", "true")
+  if (aDate == null) currentDay = null
+  else {
+    var d = aDate.getDay()
+    currentDay = dayBox.firstChild
+    while (d-- > 0) currentDay = currentDay.nextSibling
+    currentDay.removeAttribute("disabled")
+    }
+  dateBox.focus()
+  }
+
+function showStatus(aDate) {
+  if (aDate == null) {
+    status.removeAttribute("warning")
+    status.setAttribute("label", "")
+    }
+  else if (aDate === false || isNaN(aDate.getTime())) {
+    status.setAttribute("warning", "true")
+    status.setAttribute("label", "Date is not valid")
+    }
+  else {
+    status.removeAttribute("warning")
+    status.setAttribute("label", aDate.toLocaleDateString())
+    }
+  }
+
+

Aby zobaczyć właściwy wynik, użyj domyślnego motywu w swojej przeglądarce. +Jeżeli użyjesz innego, może on zmieniać trochę style interfejsu użytkownika i demonstracja może wyglądać dziwnie. +

Otwórz ten dokument w przeglądarce Mozilli i skorzystaj z interfejsu. +

To wiki nie obsługuje XUL-a ani JavaScript-u na stronach, nie jest więc możliwe pokazanie demonstracji tutaj. +Wygląda ona mniej więcej tak: +

+ + +

XUL demonstration

+
+

+Day of week calculator

+ + + + + + +
Date: +6/27/2005 +
Day:Sunday Monday Tuesday Wednesday Thurdsay Friday Saturday +
+
+

Clear +Today +

+
+
+
+
+

June 27, 2005

+
+
+

Uwagi dotyczące demonstracji: +

+ +

Sprawdź arkusz stylów dokumentu, aby upewnić się, że rozumiesz wszystkie reguły w nim zawarte. +Jeżeli jest jakaś reguła, której nie rozumiesz, wykomentuj ją i odśwież przeglądarkę, aby zobaczyć różnicę. +

+ + +
Wyzwanie +
Korzystając z Inspektora DOM sprawdź kontrolkę bloku tekstowego Date. Jest ona złożona z elementów stworzonych przez jej wiązanie XBL. +

Znajdź klasę elementu html:input. To jest element, który przyjmuje dane od użytkownika. +

Korzystając z tej wiedzy, dodaj regułę do arkusza stylów, która sprawia, że tło pola Date będzie jasno niebieskie kiedy jest ono aktywne dla klawiatury (ale białe kiedy jest nieaktywne). +

+
+

Co dalej?

+

Jeżeli masz problemy ze zrozumieniem tej strony, lub jeżeli masz jakieś komentarze na jej temat, pomóż nam dopisując się na stronie Dyskusji. +

W tej demonstracji, widzisz standardowe, prostokątne kształty, które są wspólne dla większości interfejsów użytkownika. +Mozilla wspiera także specjalny język graficzny do tworzenia kształtów, którego styl tworzy się w CSS-ie. +

Demonstruje to następna strona: Grafika SVG +

{{ languages( { "en": "en/CSS/Getting_Started/XUL_user_interfaces", "fr": "fr/CSS/Premiers_pas/Interfaces_utilisateur_XUL", "pt": "pt/CSS/Como_come\u00e7ar/Interfaces_de_usu\u00e1rio_XUL" } ) }} diff --git a/files/pl/web/css/opacity/index.html b/files/pl/web/css/opacity/index.html new file mode 100644 index 0000000000..9b3e1504ff --- /dev/null +++ b/files/pl/web/css/opacity/index.html @@ -0,0 +1,180 @@ +--- +title: opacity +slug: Web/CSS/opacity +tags: + - CSS + - CSS Property + - Reference +translation_of: Web/CSS/opacity +--- +
{{ CSSRef() }}
+ +

Podsumowanie

+ +

Parametr opacity ustala przezroczystość elementu, czyli stopień, w jakim są widoczne elementy za określonym elementem.

+ + + +

Składnia

+ +
opacity: number | inherit ;
+
+ +

Wartości

+ +
+
0 (lub mniej)
+
Element jest w pełni przezroczysty (niewidoczny)
+
0 < liczba < 1
+
Element jest półprzezroczysty (tło może być widoczne)
+
1 (lub więcej)
+
Element jest w pełni nieprzezroczysty (jednolity)
+
+ +

Przykłady

+ +
hbox.example {
+  opacity: 0.5; /* zobacz tło poprzez hbox */
+}
+
+ +

Przykład kompatybilny z różnymi przeglądarkami

+ +
pre {                               /* make the box translucent (20% nieprzezroczystości) */
+   border: solid red;
+   opacity: 0.2;
+   filter: alpha(opacity=20);       /* IE8 i starsze */
+   zoom: 1;       /* set "zoom", "width" or "height" to trigger "hasLayout" in IE 7 and lower */
+}
+
+ +
pre {                               /* make the box translucent (50% nieprzezroczystości) */
+   border: solid red;
+   opacity: 0.5;
+   filter: alpha(opacity=50);       /* IE8 i starsze */
+   zoom: 1;       /* set "zoom", "width" or "height" to trigger "hasLayout" in IE 7 and lower */
+}
+
+ +
pre {                               /* make the box translucent (80% nieprzezroczystości) */
+   border: solid red;
+   opacity: 0.8;
+   filter: alpha(opacity=80);       /* IE8 i starsze */
+   zoom: 1;       /* set "zoom", "width" or "height" to trigger "hasLayout" in IE 7 and lower */
+}
+
+ +

Różna nieprzezroczystość z :hover

+ +
<html>
+<head>
+<style>
+img.opacity {
+   opacity: 1;
+   filter: alpha(opacity=50);
+   zoom: 1;
+ }
+
+img.opacity:hover {
+   opacity: 0.5;
+   filter: alpha(opacity=100);
+   zoom: 1;
+ }
+</style>
+</head>
+
+<body>
+<img src="//developer.mozilla.org/media/img/mdn-logo.png" alt="MDN logo" width="128" height="146" class="opacity" />
+</body>
+</html>
+
+ +

Kompatybilność z przeglądarkami

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
ElementChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Podstawowe wsparcie1.0{{ CompatGeckoDesktop("1.7") }}9.09.01.2 (125)
8.0
+ filter: alpha(opacity=xx)
+ filter: "alpha(opacity=xx)"

+ (oba to synonimy)
4.0
+ filter: alpha(opacity=xx)
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
ElementAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari Mobile
Podstawowe wsparcie1.0{{ CompatGeckoMobile("1.7") }}9.09.03.2
8.0
+ filter: alpha(opacity=xx)
+ filter: "alpha(opacity=xx)"

+ (oba to synonimy)
4.0
+ filter: alpha(opacity=xx)
+
+ + + +

Specyfikacje

+ + diff --git a/files/pl/web/css/outline-offset/index.html b/files/pl/web/css/outline-offset/index.html new file mode 100644 index 0000000000..025d8295a1 --- /dev/null +++ b/files/pl/web/css/outline-offset/index.html @@ -0,0 +1,42 @@ +--- +title: outline-offset +slug: Web/CSS/outline-offset +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/outline-offset +--- +
{{CSSRef}}
+ +

Podsumowanie

+ +

W aplikacjach Mozilli -moz-outline-offset jest używane do ustawienia odstępu między konturem a krawędzią lub obramowaniem elementu. Kontur jest linią rysowaną wokół elementów, na zewnątrz krawędzi obramowania w celu wyróżnienia elementu.

+ +

{{cssinfo}}

+ +

Odstęp będzie przezroczysty (rodzic określi tło).

+ +

Składnia

+ +
-moz-outline-offset: <liczba> | inherit
+
+ +

Wartości

+ +
+
<number>
+
Szerokość odstępu.
+
+ +

Przykłady

+ +
hbox.example {
+  /* Odsuwa kontur 2px od obramowania */
+  -moz-outline-offset: 2px;
+}
+
+ +

 

diff --git a/files/pl/web/css/outline/index.html b/files/pl/web/css/outline/index.html new file mode 100644 index 0000000000..42bf295b72 --- /dev/null +++ b/files/pl/web/css/outline/index.html @@ -0,0 +1,57 @@ +--- +title: outline +slug: Web/CSS/outline +tags: + - CSS + - 'CSS:Dokumentacje' + - 'CSS:Rozszerzenia_Mozilli' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/outline +--- +
+
{{CSSRef}}
+
+ +

Podsumowanie

+ +

W aplikacjach opartych na Gecko -moz-outline jest używany do ustawiania konturu elementu. Kontur jest linią rysowaną na zewnątrz krawędzi obramowania w celu wyróżnienia elementu.

+ +
{{cssinfo}}
+ +

Składnia

+ +
-moz-outline: [-moz-outline-color || -moz-outline-style || -moz-outline-width | inherit];
+
+ +

Wartości

+ +
+
-moz-outline-color
+
Ustawia kolor konturu. Zobacz {{ Cssxref("-moz-outline-color") }}.
+
-moz-outline-style
+
Ustawia styl konturu. Zobacz {{ Cssxref("-moz-outline-style") }}.
+
-moz-outline-width
+
Ustawia szerokość konturu. Zobacz {{ Cssxref("-moz-outline-width") }}.
+
+ +

Powiązane własności

+ + + +

Przykłady

+ +
hbox.example {
+  /* ciągły czerwony kontur o szerokości 10px */
+  -moz-outline: red solid 10px;
+}
diff --git a/files/pl/web/css/page-break-after/index.html b/files/pl/web/css/page-break-after/index.html new file mode 100644 index 0000000000..b8b3dbbb63 --- /dev/null +++ b/files/pl/web/css/page-break-after/index.html @@ -0,0 +1,101 @@ +--- +title: page-break-after +slug: Web/CSS/page-break-after +tags: + - CSS + - druk +translation_of: Web/CSS/page-break-after +--- +
{{ CSSRef() }}
+ +

Podsumowanie

+ +

Akapit podsumowania.  Właściwość CSS page-break-after dostosowuje łamanie stron CSS po bieżącym elemencie.

+ + + +

Składnia

+ +
page-break-after: auto | always | avoid | left | right | inherit
+
+ +

Wartości

+ +
+
auto
+
{{ Xref_cssinitial() }}.  Samoczynne łamanie stron (dozwolone ale nie wymuszone).
+
always
+
Zawsze wymusza łamanie strony po elemencie.
+
avoid {{ Unimplemented_inline() }}
+
Unika łamania stron po elemencie.
+
left {{ Unimplemented_inline() }}
+
Wymusza takie łamanie strony po elemencie, że następna strona złoży się jako lewa.
+
right {{ Unimplemented_inline() }}
+
Wymusza takie łamanie strony po elemencie, że następna strona złoży się jako prawa.
+
+ +

Przykłady

+ +
/* przejdź do następnej strony po przypisach */
+DIV.footnotes { page-break-after:always; }
+ +

Uwagi

+ +

---

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ +

(Próbna tabela kompatybilności)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer4.0
Firefox?
Netscape?
Opera7.0
Safari1.2
Konqueror4.7.2
+ +

Zobacz także

+ + diff --git a/files/pl/web/css/prywatnosc_i_znacznik__colon_visited/index.html b/files/pl/web/css/prywatnosc_i_znacznik__colon_visited/index.html new file mode 100644 index 0000000000..fad2ac55d1 --- /dev/null +++ b/files/pl/web/css/prywatnosc_i_znacznik__colon_visited/index.html @@ -0,0 +1,68 @@ +--- +title: 'Prywatność i znacznik :visited' +slug: 'Web/CSS/Prywatnosc_i_znacznik_:visited' +translation_of: 'Web/CSS/Privacy_and_the_:visited_selector' +--- +
{{cssref}}
+ +

Przed mniej więcej rokiem 2010, CSS-owy znacznik {{ cssxref(":visited") }} pozwalał stronom WWW na ujawnianie historii przeglądania użytkownika i które ze stron odwiedził. Było to możliwe przez {{domxref("window.getComputedStyle")}} i inne techniki. Proces ten działał błyskawicznie i pozwalał nie tylko na ujawnienie, co użytkownik robił w sieci, ale również pozwalał na dowiedzenie się wielu informacji o jego tożsamości.

+ +

By załagodzić ten problem, w {{ Gecko("2") }} zaimplementowano aktualizacje dot. prywatności celem ograniczenia ilości informacji zbieranych przez odwiedzone linki. W przypadku innych przeglądarek dokonano podobnych zmian.

+ +

Małe, białe kłamstewka

+ +

By chronić prywatność użytkowników, Firefox i inne przeglądarki będą kłamać aplikacjom webowym w przypadku zaistnienia poniższych okoliczności:

+ + + + + +

You can style visited links, but there are limits to which styles you can use. Only the following styles can be applied to visited links:

+ + + +

In addition, even for the above styles, you won't be able to change the transparency between unvisited and visited links, as you otherwise would be able to using rgba(), hsla(), or the transparent keyword.

+ +

Here is an example of how to use styles with the aforementioned restrictions:

+ +
:link {
+  outline: 1px dotted blue;
+  background-color: white;
+  /* The default value of background-color is `transparent`. You need to
+     specify a different value, otherwise changes on :visited won't apply. */
+}
+
+:visited {
+  outline-color: orange;    /* Visited links have an orange outline */
+  background-color: green;  /* Visited links have a green background */
+  color: yellow;            /* Visited links have yellow colored text */
+}
+
+ +

Impact on web developers

+ +

Overall, these restrictions shouldn't affect web developers too significantly. They may, however, require the following changes to existing sites:

+ + + +

See also

+ + diff --git a/files/pl/web/css/right/index.html b/files/pl/web/css/right/index.html new file mode 100644 index 0000000000..8ba4fb3b11 --- /dev/null +++ b/files/pl/web/css/right/index.html @@ -0,0 +1,148 @@ +--- +title: right +slug: Web/CSS/right +tags: + - CSS + - CSS Property + - Własność CSS + - border +translation_of: Web/CSS/right +--- +
{{CSSRef}}
+ +

Własność CSS right pełni ważną rolę w określaniu pionowej pozycji pozycjonowanego elementu. Nie ma wpływu na elementy z nieokreślonym położeniem.

+ +

{{EmbedInteractiveExample("pages/css/right.html")}}

+ + + +

Efekt right jest zależny od pozycji elementu (czyli od własności position elementu).

+ + + +

When both {{cssxref("left")}} and right are defined, and the element cannot stretch to satisfy both, the position of the element is overspecified. When this is the case, the left value has precedence when the container is left-to-right; the right value has precedence when the container is right-to-left.

+ +

Składnia

+ +
/* Wartość liczbowa (długość) */
+right: 3px;
+right: 2.4em;
+
+/* Wartość procentowa */
+right: 10%;
+
+/* Wartość kluczowa */
+right: auto;
+
+/* Wartości globalne */
+right: inherit;
+right: initial;
+right: unset;
+
+ +

Values

+ +
+
{{cssxref("<length>")}}
+
Negatywna, pozytywna lub o wartości null długość, która dla:
+
+
    +
  • elementów z position: absolute, określa odległość do prawej krawędzi rodzica
  • +
  • elementów z position: relative, określa czy element jest przeniesiony do lewej krawędzi jej normalnej (domyślnej) pozycji
  • +
+
+
{{cssxref("<percentage>")}}
+
Wartość procentowa określa procentową odległość  w stosunku do szerokości rodzica. 
+
+
auto
+
Specifies that: +
    +
  • for absolutely positioned elements, the position of the element is based on the {{Cssxref("left")}} property, while width: auto is treated as a width based on the content; or if left is also auto, the element is positioned where it should horizontally be positioned if it were a static element.
  • +
  • for relatively positioned elements, the distance of the element from its normal position is based on the {{Cssxref("left")}} property; or if left is also auto, the element is not moved horizontally at all.
  • +
+
+
inherit
+
Specifies that the value is the same as the computed value from its parent element (which might not be its containing block). This computed value is then handled as if it were a {{cssxref("<length>")}}, {{cssxref("<percentage>")}}, or the auto keyword.
+
+ +

Formal syntax

+ +
{{csssyntax}}
+ +

Przykłady

+ +
#example_3 {
+  width: 100px;
+  height: 100px;
+  background-color: #FFC7E4;
+  position: relative;
+  top: 20px;
+  left: 20px;
+}
+
+#example_4 {
+  width: 100px;
+  height: 100px;
+  background-color: #FFD7C2;
+  position: absolute;
+  bottom: 10px;
+  right: 20px;
+}
+ +
<div id="example_3">Example 3</div>
+<div id="example_4">Example 4</div>
+
+ +

{{ EmbedLiveSample('Examples', 500, 220) }}

+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('CSS3 Transitions', '#animatable-css', 'right')}}{{Spec2('CSS3 Transitions')}}Definiuje right jako animatable (możliwy do animowania)
{{SpecName('CSS3 Positioning', '#propdef-right', 'right')}}{{Spec2('CSS3 Positioning')}} +

Określa zachowanie dla sticky position.

+
{{SpecName('CSS2.1', 'visuren.html#propdef-right', 'right')}}{{Spec2('CSS2.1')}} +

Initial definition.

+
+ +

{{cssinfo}}

+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("css.properties.right")}}

+ +

Zobacz jeszcze

+ + diff --git a/files/pl/web/css/rozszerzenia_webkit/index.html b/files/pl/web/css/rozszerzenia_webkit/index.html new file mode 100644 index 0000000000..0b60bd4475 --- /dev/null +++ b/files/pl/web/css/rozszerzenia_webkit/index.html @@ -0,0 +1,358 @@ +--- +title: Rozszerzenia WebKit +slug: Web/CSS/Rozszerzenia_WebKit +tags: + - CSS + - Referencje CSS +translation_of: Web/CSS/WebKit_Extensions +--- +
{{CSSRef}}
+ +

Webkit wspiera wiele rozszerzeń dedykowanych CSS opatrzonych prefiksem -webkit. Wszystkie właściwości opatrzone prefiksem -webkit działają również z prefiksem -apple.

+ +

Niektóre z tych właściwości zostały zawarte w szkicu specyfikacji CSS w celu włączenia do ostatecznej rekomendacji, ale są one jeszcze eksperymentalne. Niektóre z tych niestandardowych właściwości nie wchodzą w skład linii standardowo obowiązującej.

+ +

Jednostki z prefiksem WebKit obowiązującego standardu

+ +
+

A – C

+ + + +

F

+ + + +

G

+ + + +

H – O

+ + + +

M

+ + + +

P

+ + + +

Q – Z

+ + +
+ +

Jednostki z prefiksem WebKit z odpowiednikiem bez prefiksu

+ +

W celu maksymalizacji kompatybilności z Twoim CSS powinienneś/powinnaś stosować właściwości standardu bez prefiksu zamiast opcji z prefiksem. Poniżej znajduje się lista wszystkich wariantów:

+ +
+

A

+ + + +

B

+ + + +

C – N

+ + + +

O – S

+ + + +

T – Z

+ + +
+ +

Firmowe jednostki z prefiksem WebKit (nie do używania na stronach internetowych)

+ +
+

A

+ + + +

B

+ + + +

C

+ + + +

D E

+ + + +

F

+ + + +

G

+ + + +

H – K

+ + + +

L

+ + + +

M

+ + + +

N

+ + + +

O

+ + + +

P Q

+ + + +

R

+ + + +

S

+ + + +

T – Z

+ + +
+ +

Zobacz również

+ + diff --git a/files/pl/web/css/selektor_klasy/index.html b/files/pl/web/css/selektor_klasy/index.html new file mode 100644 index 0000000000..12f8d4f5c8 --- /dev/null +++ b/files/pl/web/css/selektor_klasy/index.html @@ -0,0 +1,86 @@ +--- +title: Selektor klasy +slug: Web/CSS/Selektor_klasy +tags: + - CSS + - Klasy + - Reference + - Selektory +translation_of: Web/CSS/Class_selectors +--- +
{{CSSRef("Selectors")}}
+ +
 
+ +
Selektor klasy wyszukuje każdy element z atrybutem {{htmlattrxref("class")}} w dokumencie HTML. Atrybut {{htmlattrxref("class")}} jest zdefiniowany jako lista przedmiotów oddzielonych ze sobą spacją, jeden z nich musi zgadzać się z podaną klasą w selektorze (CSS).
+ +
 
+ +

Składnia

+ +
.nazwaklasy { właściwości stylu }
+ +

Jest to równoważne z {{Cssxref("Attribute_selectors", "attribute selector")}}:

+ +
[class~=nazwaklasy] { właściwości stylu }
+ +

Przykład

+ +

CSS

+ +
span.classy {
+  background-color: DodgerBlue;
+}
+
+ +

HTML

+ +
<span class="classy">Przykładowy tekst.</span>
+<span>Kolejny przykładowy tekst.</span>
+
+ +

Specyfikacje

+ + + +

Kompatybilność z przeglądarkami

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaWsparcie
ChromeTak
EdgeTak
FirefoxTak
Internet ExplorerTak
OperaTak
SafariTak
+ +

 

diff --git a/files/pl/web/css/selektor_uniwersalny/index.html b/files/pl/web/css/selektor_uniwersalny/index.html new file mode 100644 index 0000000000..c3c4952f06 --- /dev/null +++ b/files/pl/web/css/selektor_uniwersalny/index.html @@ -0,0 +1,104 @@ +--- +title: Selektor uniwersalny +slug: Web/CSS/Selektor_uniwersalny +tags: + - CSS + - Selektory +translation_of: Web/CSS/Universal_selectors +--- +
{{CSSRef}}
+ +

Selektor uniwersalny (*) dopasowuje elementy wszystkich typów.

+ +
/* Wybierz wszystkie elementy */
+* {
+  color: green;
+}
+ +

Począwszy od CSS3, gwiazdka może być używana w połączeniu z {{cssxref("CSS_Namespaces", "namespaces")}}:

+ + + +

Składnia

+ +
* { własności }
+ +

Gwiazdka jest opcjonalna w przypadku prostych selektorów. Np.: *.warning i .warning są równoważne.

+ +

Przykłady

+ +

CSS

+ +
* [lang^=pl] {
+  color: green;
+}
+
+*.warning {
+  color: red;
+}
+
+*#maincontent {
+  border: 1px solid blue;
+}
+
+.floating {
+  float: left
+}
+
+/* automatycznie czyści opływanie dla rodzeństwa znajdującego się bezpośrednio po elemencie z klasą .floating */
+.floating + * {
+  clear: left;
+}
+
+ +

HTML

+ +
<p class="warning">
+  <span lang="pl">Zielony span</span> w czerwonym akapicie.
+</p>
+<p id="maincontent" lang="pl">
+  <span class="warning">czerwony span</span> w zielonym akapicie.
+</p>
+ +

Rezultat

+ +

{{EmbedLiveSample('Przykłady')}}

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('CSS4 Selectors', '#the-universal-selector', 'universal selector')}}{{Spec2('CSS4 Selectors')}}No changes
{{SpecName('CSS3 Selectors', '#universal-selector', 'universal selector')}}{{Spec2('CSS3 Selectors')}}Defines behavior regarding namespaces and adds hint that omitting the selector is allowed within pseudo-elements
{{SpecName('CSS2.1', 'selector.html#universal-selector', 'universal selector')}}{{Spec2('CSS2.1')}}Initial definition
+ +

Browser compatibility

+ + + +

{{Compat("css.selectors.universal")}}

diff --git a/files/pl/web/css/selektory_typu/index.html b/files/pl/web/css/selektory_typu/index.html new file mode 100644 index 0000000000..13dc191bb1 --- /dev/null +++ b/files/pl/web/css/selektory_typu/index.html @@ -0,0 +1,80 @@ +--- +title: Selektory typu +slug: Web/CSS/Selektory_typu +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/Type_selectors +--- +
{{CSSRef}}
+ +

Selektory typu dopasowują wszystkie elementy mające taką samą nazwę jak dany selektor. Własności zostaną zastosowane do każdego elementu danego typu niezależnie od tego, gdzie znajduje się w drzewie dokumentu.

+ +

Składnia

+ +
selektor {własności }
+
+ +

selektor jest do dowolnym elementem np. p, div, a, table.

+ +

Przykład

+ +

CSS

+ +
span {
+  background-color: skyblue;
+}
+
+ +

HTML

+ +
<span>Span z tekstem.</span>
+<p>Akapit z tekstem.</p>
+<span>Span z większą ilością tekstu.</span>
+
+ +

Rezultat

+ +

{{EmbedLiveSample('Przykład', '100%', 150)}}

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('CSS4 Selectors', '#type-selectors', 'Type (tag name) selector')}}{{Spec2('CSS4 Selectors')}}No changes
{{SpecName('CSS3 Selectors', '#type-selectors', 'type selectors')}}{{Spec2('CSS3 Selectors')}}No changes
{{SpecName('CSS2.1', 'selector.html#type-selectors', 'type selectors')}}{{Spec2('CSS2.1')}} 
{{SpecName('CSS1', '#basic-concepts', 'type selectors')}}{{Spec2('CSS1')}}Initial definition
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("css.selectors.type")}}

diff --git "a/files/pl/web/css/skr\303\263cone_deklaracje_css/index.html" "b/files/pl/web/css/skr\303\263cone_deklaracje_css/index.html" new file mode 100644 index 0000000000..fa244eb571 --- /dev/null +++ "b/files/pl/web/css/skr\303\263cone_deklaracje_css/index.html" @@ -0,0 +1,56 @@ +--- +title: Skrócone deklaracje CSS +slug: Web/CSS/Skrócone_deklaracje_CSS +tags: + - CSS + - Wszystkie_kategorie +translation_of: Web/CSS/Shorthand_properties +--- +

+

+

Dlaczego skracamy deklaracje CSS?

+

Wielu programistów CSS stosuje skrócone wersje często stosowanych własności w celu zaoszczędzenia czasu i energii. Chociaż skracanie deklaracji może wydawać się nie intuicyjnie i prawdopodobnie będzie wymagało trochę zapamiętywania, to z całą pewnością zaoszczędzi nam pisania na klawiaturze, podczas tworzenia dużych lub kompleksowych arkuszy stylów. +

+

Własności tła

+

Tło określone za pomocą następujących własności: +

+
background-color: #000;
+background-image: url(images/bg.gif);
+background-repeat: no-repeat;
+background-position: top right;
+

Można zapisać w jednej deklaracji jako: +

+
background: #000 url(images/bg.gif) no-repeat top right;
+

(Forma skrócona jest ściśle mówiąc odpowiednikiem wypisanych powyżej własności plus background-attachment: scroll oraz kilku dodatkowych własności w CSS3) +

+

Własności czcionki

+

Następujące deklaracje: +

+
font-style: italic;
+font-weight: bold;
+font-size: .8em;
+line-height: 1.2;
+font-family: Arial, sans-serif;
+

Mogą zostać skrócone do następującej deklaracji:

+
font: italic bold .8em/1.2 Arial, sans-serif;
+

(Forma skrócona jest ściśle mówiąc odpowiednikiem wypisanych powyżej własności plus font-variant: normal i font-size-adjust: none (CSS2.0 / css3), font-stretch: normal (css3).) +

+

Własności obramowania

+

Obramowanie, szerokość, kolor i styl możemy uprościć do jednej deklaracji. Na przykład: +

+
border-width: 1px;
+border-style: solid;
+border-color: #000;
+

Możemy zapisać jako: +

+
border: 1px solid #000;
+

Własności margin/padding

+

Skrócona wersja wartości margin i padding działa w ten sam sposób. Następujące deklaracje CSS:

+
margin-top: 10px;
+margin-right: 5px;
+margin-bottom: 10px;
+margin-left: 5px;
+

Są tym samym, co poniższa deklaracja (ważne jest, aby wartości były rozmieszczone zgodnie z kierunkiem ruchu wskazówek zegara, zaczynając od wartości top: top, right, bottom i left (TRBL, spółgłoski w słowie "trouble")) +

+
margin: 10px 5px 10px 5px;
+{{ languages( { "en": "en/Guide_to_Shorthand_CSS" } ) }} diff --git a/files/pl/web/css/text-transform/index.html b/files/pl/web/css/text-transform/index.html new file mode 100644 index 0000000000..1e3bcc1ac1 --- /dev/null +++ b/files/pl/web/css/text-transform/index.html @@ -0,0 +1,81 @@ +--- +title: text-transform +slug: Web/CSS/text-transform +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/text-transform +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność CSS 'text-transform' definiuje, czy tekst w elemencie powinien być wyświetlony kapitalikami lub wielkimi literami.

+ +

{{cssinfo}}

+ +

Składnia

+ +
text-transform : capitalize | uppercase | lowercase| none
+
+ +

Wartości

+ +
+
capitalize
+
Pierwsza litera każdego słowa jest zmieniana na wielką, inne zostają bez zmian.
+
uppercase
+
Wszystkie litery są przekształcane na wielkie.
+
lowercase
+
Wszystkie litery są przekształcane na małe.
+
none
+
Żadne zmiany wielkości liter nie są dokonywane.
+
+ +

Examples

+ +
p::first-line {
+  text-transform: uppercase;
+}
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer?
Firefox?
Netscape?
Opera?
Safari?
diff --git a/files/pl/web/css/transform-function/index.html b/files/pl/web/css/transform-function/index.html new file mode 100644 index 0000000000..9a384bb869 --- /dev/null +++ b/files/pl/web/css/transform-function/index.html @@ -0,0 +1,201 @@ +--- +title: +slug: Web/CSS/transform-function +tags: + - CSS + - CSS Data Type + - CSS Reference + - CSS Transforms + - Layout + - NeedsTranslation + - Reference + - TopicStub + - Web +translation_of: Web/CSS/transform-function +--- +
{{CSSRef}}
+ +

The <transform-function> CSS data type denotes a function applied to an element's representation in order to modify it. Usually such transform may be expressed by matrices and the resulting images can be determined using matrix multiplication on each point.

+ +

Coordinates for 2D graphics

+ +

There are several coordinate models used when describing transformation. The most common are the Cartesian coordinate system and homogeneous coordinates.

+ +

Cartesian coordinates

+ +

+ +

In Cartesian coordinates each point of the Euclidian space is described using two values, the abscissa and the ordinate. The origin, the (0, 0) is the top-left corner of the element. Unlike the usual geometric convention, and like most cases in computer graphics, the y-axis goes to the bottom. Each point is mathematically described using the vector notation (x,y).

+ +

Each linear function is described using a 2x2 matrix like:

+ +
+

ac bd

+
+ +

Applying the transformation consists in doing, for each point, the matrix multiplication between both:

+ +
.
+ +

It is possible to apply several transformations in a row:

+ +
.
+ +

With this notation, it is possible to describe, and therefore composite, most usual transformations: rotations, scaling, or skewing. In fact all transformations that are linear functions can be described. Composite transforms are effectively applied in order from right to left. One major transformation is not linear and therefore must be special-cased when using this notation: translation. The translation vector (tx, ty) must be expressed separately, as two more parameters.

+ +

Möbius' homogeneous coordinates in projective geometry leading to 3x3 transformation matrices, though more complex and unusual for non-specialists, doesn't suffer from the translation limitation as these can be expressed as linear functions in this algebra, removing the need for special cases.

+ +

Functions defining transformations

+ +

Several functions are available to describe transformations in CSS. Each one applies a geometric operation, in 2D or 3D:

+ +
+
{{cssxref("transform-function/matrix","matrix()")}}
+
The matrix() CSS function specifies a homogeneous 2D transformation matrix comprised of the specified six values. The constant values of such matrices are implied and not passed as parameters; the other parameters are described in the column-major order.
+
matrix(a, b, c, d, tx, ty) is a shorthand for matrix3d(a, b, 0, 0, c, d, 0, 0, 0, 0, 1, 0, tx, ty, 0, 1).
+
{{cssxref("transform-function/matrix3d","matrix3d()")}}
+
The matrix3d() CSS function describes a 3D transform as a 4x4 homogeneous matrix. The 16 parameters are described in the column-major order.
+
{{cssxref("transform-function/perspective","perspective()")}}
+
The perspective() CSS function defines the distance between the z=0 plane and the user in order to give to the 3D-positioned element some perspective. Each 3D element with z>0 becomes larger; each 3D-element with z<0 becomes smaller. The strength of the effect is determined by the value of this property.
+
{{cssxref("transform-function/rotate","rotate()")}}
+
The rotate() CSS function defines a transformation that moves the element around a fixed point (as specified by the {{ Cssxref("transform-origin") }} property) without deforming it. The amount of movement is defined by the specified angle; if positive, the movement will be clockwise, if negative, it will be counter-clockwise. A rotation by 180° is called point reflection.
+
{{cssxref("transform-function/rotate3d","rotate3d()")}}
+
The rotate3d()CSS function defines a transformation that moves the element around a fixed axis without deforming it. The amount of movement is defined by the specified angle; if positive, the movement will be clockwise, if negative, it will be counter-clockwise.In opposition to rotations in the plane, the composition of 3D rotations is usually not commutative; it means that the order in which the rotations are applied is crucial.
+
{{cssxref("transform-function/rotateX","rotateX()")}}
+
The rotateX()CSS function defines a transformation that moves the element around the abscissa without deforming it. The amount of movement is defined by the specified angle; if positive, the movement will be clockwise, if negative, it will be counter-clockwise. The axis of rotation passes by the origin, defined by {{ cssxref("transform-origin") }} CSS property.
+
rotateX(a)is a shorthand for rotate3D(1, 0, 0, a).
+
{{cssxref("transform-function/rotateY","rotateY()")}}
+
The rotateY()CSS function defines a transformation that moves the element around the ordinate without deforming it. The amount of movement is defined by the specified angle; if positive, the movement will be clockwise, if negative, it will be counter-clockwise. The axis of rotation passes by the origin, defined by {{ cssxref("transform-origin") }} CSS property.
+
rotateY(a)is a shorthand for rotate3D(0, 1, 0, a).
+
{{cssxref("transform-function/rotateZ","rotateZ()")}}
+
The rotateZ()CSS function defines a transformation that moves the element around the z-axis without deforming it. The amount of movement is defined by the specified angle; if positive, the movement will be clockwise, if negative, it will be counter-clockwise. The axis of rotation passes by the origin, defined by {{ cssxref("transform-origin") }} CSS property.
+
rotateZ(a)is a shorthand for rotate3D(0, 0, 1, a).
+
{{cssxref("transform-function/scale","scale()")}}
+
The scale() CSS function modifies the size of the element. It can either augment or decrease its size and as the amount of scaling is defined by a vector, it can do so more in one direction than in another one. This transformation is characterized by a vector whose coordinates define how much scaling is done in each direction. If both coordinates of the vector are equal, the scaling is uniform, or isotropic, and the shape of the element is preserved. In that case, the scaling function defines a homothetic transformation.
+
{{cssxref("transform-function/scale3d","scale3d()")}}
+
The scale3d() CSS function modifies the size of an element. Because the amount of scaling is defined by a vector, it can resize different dimensions at different scales. This transformation is characterized by a vector whose coordinates define how much scaling is done in each direction. If all three coordinates of the vector are equal, the scaling is uniform, or isotropic, and the shape of the element is preserved. In that case, the scaling function defines a homothetic transformation.
+
{{cssxref("transform-function/scaleX","scaleX()")}}
+
The scaleX() CSS function modifies the abscissa of each element point by a constant factor, except if this scale factor is 1, in which case the function is the identity transform. The scaling is not isotropic and the angles of the element are not conserved. scaleX(-1) defines an axial symmetry with a vertical axis passing by the origin (as specified by the {{cssxref("transform-origin")}} property).
+
scaleX(sx) is a shorthand for scale(sx, 1) or for scale3d(sx, 1, 1).
+
{{cssxref("transform-function/scaleY","scaleY()")}}
+
The scaleY() CSS function modifies the ordinate of each element point by a constant factor except if this scale factor is 1, in which case the function is the identity transform. The scaling is not isotropic and the angles of the element are not conserved. scaleY(-1) defines an axial symmetry with a horizontal axis passing by the origin (as specified by the {{cssxref("transform-origin")}} property).
+
scaleY(sy) is a shorthand for scale(1, sy) or for scale3d(1, sy, 1).
+
{{cssxref("transform-function/scaleZ","scaleZ()")}}
+
The scaleZ() CSS function modifies the z-coordinate of each element point by a constant factor, except if this scale factor is 1, in which case the function is the identity transform. The scaling is not isotropic and the angles of the element are not conserved. scaleZ(-1) defines an axial symmetry along the z-axis passing by the origin (as specified by the {{cssxref("transform-origin")}} property).
+
scaleZ(sz) is a shorthand for scale3d(1, 1, sz).
+
{{cssxref("transform-function/skew","skew()")}}
+
The skew() CSS function is a shear mapping, or transvection, distorting each point of an element by a certain angle in each direction. It is done by increasing each coordinate by a value proportionate to the specified angle and to the distance to the origin. The more far from the origin, the more away the point is, the greater will be the value added to it.
+
{{cssxref("transform-function/skewX","skewX()")}}
+
The skewX() CSS function is a horizontal shear mapping distorting each point of an element by a certain angle in the horizontal direction. It is done by increasing the abscissa coordinate by a value proportionate to the specified angle and to the distance to the origin. The more far from the origin, the more away the point is, the greater will be the value added to it.
+
{{cssxref("transform-function/skewY","skewY()")}}
+
The skewY() CSS function is a vertical shear mapping distorting each point of an element by a certain angle in the vertical direction. It is done by increasing the ordinate coordinate by a value proportionate to the specified angle and to the distance to the origin. The more far from the origin, the more away the point is, the greater will be the value added to it.
+
{{cssxref("transform-function/translate","translate()")}}
+
The translate() CSS function moves the position of the element on the plane. This transformation is characterized by a vector whose coordinates define how much it moves in each direction.
+
{{cssxref("transform-function/translate3d","translate3d()")}}
+
The translate3d() CSS function moves the position of the element in the 3D space. This transformation is characterized by a 3-dimension vector whose coordinates define how much it moves in each direction.
+
{{cssxref("transform-function/translateX","translateX()")}}
+
The translateX() CSS function moves the element horizontally on the plane. This transformation is characterized by a {{cssxref("<length>")}} defining how much it moves horizontally.
+
translateX(tx) is a shortcut for translate(tx, 0).
+
{{cssxref("transform-function/translateY","translateY()")}}
+
The translateY() CSS function moves the element vertically on the plane. This transformation is characterized by a {{cssxref("<length>")}} defining how much it moves vertically.
+
translateY(ty) is a shortcut for translate(0, ty).
+
{{cssxref("transform-function/translateZ","translateZ()")}}
+
The translateZ() CSS function moves the element along the z-axis of the 3D space. This transformation is characterized by a {{cssxref("<length>")}} defining how much it moves.
+
translateZ(tz) is a shorthand for translate3d(0, 0, tz).
+
+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Transforms', '#transform-property', 'transform')}}{{Spec2('CSS3 Transforms')}}Initial definition
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.9.1")}}[1]9.0[2]10.53.1
3D Support12.0{{CompatGeckoDesktop("10.0")}}10.015.04.0
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatAndroid(2.1)}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}11.53.2
3D Support{{CompatAndroid(3.0)}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}223.2
+
+ +

[1] Gecko 14.0 removed the experimental support for skew(), but it was reintroduced in Gecko 15.0 for compatibility reasons. As it is non-standard and will likely be removed in the future, do not use it.

+ +

Before Firefox 16, the translation values of matrix() and matrix3d() could be {{cssxref("length")}} in addition to the standard {{cssxref("number")}}.

+ +

[2] Internet Explorer 5.5 or later supports a proprietary Matrix Filter which can be used to achieve a similar effect.

+ +

Internet Explorer 9.0 or earlier has no support for 3D transforms. Mixing 3D and 2D transform functions, such as -ms-transform: rotate(10deg) translateZ(0);, will prevent the entire property from being applied.

diff --git a/files/pl/web/css/transform-function/matrix()/index.html b/files/pl/web/css/transform-function/matrix()/index.html new file mode 100644 index 0000000000..85a951052a --- /dev/null +++ b/files/pl/web/css/transform-function/matrix()/index.html @@ -0,0 +1,58 @@ +--- +title: matrix() +slug: Web/CSS/transform-function/matrix() +tags: + - CSS + - Funkcje CSS + - Referencje + - Transformacje CSS + - wymagaPrzykładu +translation_of: Web/CSS/transform-function/matrix() +--- +
{{CSSRef}}
+ +

CSS-owa funkcja matrix() określa jednolitą macierz (matrix) transformacji 2D i składa się z sześciu określonych wartości. Wartości stałe tych macierzy są implementowane oraz nie działają jak parametry; pozostałe parametry są opisywane w porządku głównej kolumny.

+ +

matrix(a, b, c, d, tx, ty) to shorthand dla matrix3d(a, b, 0, 0, c, d, 0, 0, 0, 0, 1, 0, tx, ty, 0, 1).

+ +
Adnotacja: Od Firefoxa 16, Gecko akceptuje wartośc {{cssxref("<length>")}} dla tx oraz ty.
+ +

Składnia

+ +
matrix(a, b, c, d, tx, ty)
+
+ +

Wartości

+ +
+
a b c d
+
{{cssxref("<number>")}} opisują transformacje linearne.
+
tx ty
+
{{cssxref("<number>")}} opisują transformacje do zastosowania.
+
+ + + + + + + + + + + + + + + + + + + + + +
Współrzędne kartezjańskie na ℝ2Współrzędne jednorodne na ℝℙ2Współrzędne kartezjańskie na ℝ3Współrzędne jednorodne na ℝℙ3
ac bd actxbdty001 actxbdty001 ac0txbd0ty00100001
[a b c d tx ty]
+ +

Przykłady

+ +

TBD

diff --git a/files/pl/web/css/using_css_custom_properties/index.html b/files/pl/web/css/using_css_custom_properties/index.html new file mode 100644 index 0000000000..c9b7089b07 --- /dev/null +++ b/files/pl/web/css/using_css_custom_properties/index.html @@ -0,0 +1,244 @@ +--- +title: Użycie zmiennych CSS +slug: Web/CSS/Using_CSS_custom_properties +translation_of: Web/CSS/Using_CSS_custom_properties +--- +
{{SeeCompatTable}}
+ +
+ +

Zmienne CSS to zdefiniowane jednostki zawierające specyficzne wartości, reużywalne w całym dokumencie. Zmienne są ustawiane przy użyciu notacji właściwości niestandardowych (np. --kolor-glowny: black;) i mają dostęp do funkcji var() (np. kolor: var(--kolor-glowny);) .

+ +

Skomplikowane strony internetowe mają bardzo dużo powtarzającego się kodu CSS. Dla przykładu, taki sam kolor może być użyty setki razy w różnych miejscach, co w przypadku zmiany wymana globalnego wyszukiwania i zmian w wielu miejsach. Zmienne CSS pozwalają na przechowywanie wartości w jednym miejscu, zmiast wielu. Używają one również semantycznych identyfikatorów. Na przykład --glowny-kolor-tekstu jest łatwiejszy do zrozumienia niż #00ff00 szczególnie gdy taki sam kolor jest użyty w różnych kontekstach.

+ +

Zmienne CSS podlegają kaskadowości i dziedziczą wartości po rodzicach.

+ +

Podstawowe użycie

+ +

Deklarowanie zmiennych:

+ +
element {
+  --glowny-kolor-tla: brown;
+}
+
+ +

Użycie zmiennych:

+ +
element {
+  background-color: var(--glowny-kolor-tla);
+}
+
+ +
+

Notatka: Niestandardowy prefix var- istniał we wcześniejszych wersjach, jednak później został zmieniony na --. Firefox 31 i wyższy posiada nową specyfikację. ({{bug(985838)}})

+
+ +

Zmienne CSS - pierwsze kroki

+ +

Zacznijmy od prostego kodu CSS z różnymi klasami, których elementy posiadają różne kolory:

+ +
+
.jeden {
+  color: white;
+  background-color: brown;
+  margin: 10px;
+  width: 50px;
+  height: 50px;
+  display: inline-block;
+}
+
+.dwa {
+  color: white;
+  background-color: black;
+  margin: 10px;
+  width: 150px;
+  height: 70px;
+  display: inline-block;
+}
+.trzy {
+  color: white;
+  background-color: brown;
+  margin: 10px;
+  width: 75px;
+}
+.cztery {
+  color: white;
+  background-color: brown;
+  margin: 10px;
+  width: 100px;
+}
+
+.piec {
+  background-color: brown;
+}
+
+
+ +

Implementujemy to w HTML'u:

+ +
<div>
+    <div class="jeden"></div>
+    <div class="dwa">Tekst <span class="cztery">- wiecej tekstu</span></div>
+    <input class="trzy">
+    <textarea class="piec">Lorem Ipsum</textarea>
+</div>
+
+ +

co w efekcie daje nam:

+ +

{{EmbedLiveSample("sample1",600,180)}}

+ +


+ Zauważ powtarzalność kodu CSS. Kolor tła jest ustawiony na brązowy w kilku miejscach.W niektórych przypadkach możemy zadeklarować kolor do wszystkich elementów, co rozwiązuje problem. Jednak w przypadku złożonych projektów, nie zawsze jest to możliwe. Deklarując zmienną przy pomocy pseudo-klasy :root, możemy przechowywać zmienną i używać jej według potrzeb.

+
+ +
+
:root {
+  --glowny-kolor-tla: brown;
+}
+
+.jeden {
+  color: white;
+  background-color: var(--glowny-kolor-tla);
+  margin: 10px;
+  width: 50px;
+  height: 50px;
+  display: inline-block;
+}
+
+.dwa {
+  color: white;
+  background-color: black;
+  margin: 10px;
+  width: 150px;
+  height: 70px;
+  display: inline-block;
+}
+.trzy {
+  color: white;
+  background-color: var(--glowny-kolor-tla);
+  margin: 10px;
+  width: 75px;
+}
+.cztery {
+  color: white;
+  background-color: var(--glowny-kolor-tla);
+  margin: 10px;
+  width: 100px;
+}
+
+.piec {
+  background-color: var(--glowny-kolor-tla);
+}
+
+
+ +
+
<div>
+    <div class="one"></div>
+    <div class="two">Text <span class="five">- more text</span></div>
+    <input class="three">
+    <textarea class="four">Lorem Ipsum</textarea>
+</div>
+
+
+ +

Powyższy kod daje taki sam rezultat jak we wcześniejszym przykładzie. 

+ +

Dziedziczenie zmiennych CSS

+ +

Niestandardowe właściwości mogą być dziedziczone. Oznacza to, że jeśli dany element nie ma wartości, może użyć tej odziedziczonej od rodzica:

+ +
<div class="jeden">
+  <div class="dwa">
+    <div class="trzy">
+    </div>
+    <div class="cztery">
+    </div>
+  <div>
+</div>
+
+ +

z następującym kodem CSS:

+ +
.dwa {
+  --test: 10px;
+}
+
+.trzy {
+  --test: 2em;
+}
+
+ +

W tym przykładzie wynikiem dla var(--test) jest:

+ + + +

Zgodność z przeglądarkami

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support{{CompatVersionUnknown}}{{property_prefix("-webkit")}}
+ 33.0
+ {{CompatNo}} 34.0[2]
+ {{CompatChrome(49.0)}}
{{CompatGeckoDesktop("29")}}[3]
+ {{CompatGeckoDesktop("31")}}
{{CompatNo}}{{CompatOpera(36.0)}}9.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewFirefox Mobile (Gecko)IE PhoneOpera MobileSafari MobileChrome for Android
Basic support{{CompatNo}}{{CompatChrome(49.0)}}{{CompatGeckoDesktop("29")}}{{CompatUnknown}}{{CompatUnknown}}9.1{{CompatChrome(49.0)}}
+
+ +

[1] Przeglądarka Chrome początkowo zaimplementowała zmienne CSS ze zmienioną składną, która wymagała niestandardowego prefixu przed nazwą zmiennej -webkit-var-. Można jej było następnie użyć przy pomocy funkcji -webkit-var(). Dodatkowo implementacja została ukryta pod flagą Eksperymentalne funkcje platformy internetowej  pod chrome://flags.

+ +

[2] Chrome 34.0 usunął zmienne CSS ze względu na problemy z wydajnością.

+ +

[3] Zmienne CSS są zaimplementowane w preferencjach layout.css.variables.enabled, standardowo ustawione na false i używające stare składnia var-variablename w Gecko 29. Rozpoczynając od Gecko 31 implementacja jest włączona i używa nowej składni --variablename.

diff --git a/files/pl/web/css/vertical-align/index.html b/files/pl/web/css/vertical-align/index.html new file mode 100644 index 0000000000..8e34977446 --- /dev/null +++ b/files/pl/web/css/vertical-align/index.html @@ -0,0 +1,66 @@ +--- +title: vertical-align +slug: Web/CSS/vertical-align +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/vertical-align +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

Własność vertical-align określa wyrównanie pionowe elementów inline lub komórek tabeli. +

+ +

Składnia

+

vertical-align: baseline | sub | super | text-top | text-bottom | middle | top | bottom | <percentage> | <length> | {{ Cssxref("inherit") }} +

+

Wartości (dla elementów inline)

+

Większość wartości wyrównuje element w pionie w stosunku do jego rodzica: +

+
baseline 
Wyrównuje linię bazową elementu z linią bazową jego rodzica. +
sub 
Wyrównuje linię bazową elementu z linią bazową indeksu dolnego jego rodzica. +
super 
Wyrównuje linię bazową elementu z linią bazową indeksu górnego jego rodzica. +
text-top 
Wyrównuje górę elementu z górą czcionki elementu rodzica. +
text-bottom 
Wyrównuje dół elementu z dołem czcionki elementu rodzica. +
middle 
Wyrównuje środek elementu ze środkiem małych liter rodzica. +
<length> 
Ustawia linię bazową elementu o daną wartość powyżej linii bazowej jego rodzica. +
<percentage> 
podobnie jak wartość <length> z procentami będącymi procentem własności {{ Cssxref("line-height") }} +
+

Dla elementów, które nie mają linii bazowej, używana jest w zamian dolna krawędź marginesu. +

Natomiast dwie wartości wyrównują element w pionie raczej względem całkowitej linii niż względem jego rodzica: +

+
top 
Wyrównuje górę elementu i jego potomków z górą całkowitej linii. +
bottom 
Wyrównuje dół elementu i jego potomków z dołem całkowitej linii. +
+

Wartości ujemne są dozwolone. +

+

Wartości (dla komórek tabeli)

+
baseline (oraz sub, super, text-top, text-bottom, <length>, i <percentage>) 
Wyrównuje linię bazową komórki z linią bazową wszystkich innych komórek w wierszu, które są wyrównane względem linii bazowej. +
top
Wyrównuje górną krawędź dopełnienia komórki z górą wiersza. +
middle
Centruje obszar dopełnienia komórki względem wiersza. +
bottom
Wyrównuje dolną krawędź dopełnienia komórki z dołem wiersza. +
+

Wartości ujemne są dozwolone. +

+

Przykłady

+
img {
+	vertical-align: bottom;
+}
+
+

Uwagi

+

Specyfikacje

+ +

Zgodność z przeglądarką

+

Zobacz także

+

{{ Cssxref("line-height") }}, {{ Cssxref("text-align") }}, {{ Cssxref("margin") }} (auto) +

{{ languages( { "en": "en/CSS/vertical-align", "fr": "fr/CSS/vertical-align" } ) }} diff --git "a/files/pl/web/css/warto\305\233\304\207_pocz\304\205tkowa/index.html" "b/files/pl/web/css/warto\305\233\304\207_pocz\304\205tkowa/index.html" new file mode 100644 index 0000000000..8144cb37ba --- /dev/null +++ "b/files/pl/web/css/warto\305\233\304\207_pocz\304\205tkowa/index.html" @@ -0,0 +1,25 @@ +--- +title: Wartość początkowa +slug: Web/CSS/Wartość_początkowa +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/initial_value +--- +

{{ CSSRef() }} +

+

Podsumowanie

+

Wartość początkowa podana w podsumowaniu każdej własności CSS ma odmienne znaczenie własności dziedziczonych i własności niedziedziczonych. +

Dla własności dziedziczonych wartość początkowa używana jest tylko dla elementu źródłowego, gdy nie określono wartości elementu. +

Dla własności niedziedziczonych wartość początkowa używana jest dla każdego elementu, gdy nie określono wartości elementu. +

W CSS3 dodano wartość initial, by pozwolić autorom na wyraźne określenie wartości początkowej. +

+

Zobacz również

+

Własności dziedziczone i niedziedziczone, initial +


+

+
+
+{{ languages( { "en": "en/CSS/initial_value", "es": "es/CSS/Valor_inicial", "fr": "fr/CSS/Valeur_initiale", "ja": "ja/CSS/initial_value", "ko": "ko/CSS/initial_value" } ) }} diff --git a/files/pl/web/css/white-space/index.html b/files/pl/web/css/white-space/index.html new file mode 100644 index 0000000000..fc891b4ce1 --- /dev/null +++ b/files/pl/web/css/white-space/index.html @@ -0,0 +1,93 @@ +--- +title: white-space +slug: Web/CSS/white-space +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/white-space +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność CSS white-space jest używana do opisu sposobu, w jaki białe znaki są traktowane wewnątrz elementu.

+ +

{{cssinfo}}

+ +

Składnia

+ +
white-space: normal | pre | nowrap | pre-wrap | -moz-pre-wrap | pre-line | inherit ;
+
+ +

Wartości

+ +
+
{{ Cssxref("normal") }}
+
wszystkie sekwencje białych znaków i zakończenia linii będą skracane. Zakończenia linii nie likwidują zawijania zawartości.
+
{{ Cssxref("pre") }}
+
wszystkie białe znaki w źródle będą zachowane, linie są przełamane tylko na znakach nowej linii w źródle.
+
{{ Cssxref("nowrap") }}
+
wszystkie sekwencje białych znaków i zakończenia linii będą skracane, również przełamania linii (zawijanie tekstu) są zlikwidowane wewnątrz zawartości.
+
{{ Cssxref("pre-wrap") }} {{ Fx_minversion_inline(3) }}
+
wszystkie białe znaki w źródle będą zachowane, linie są przełamane na znakach nowej linii i w razie konieczności zawijają zawartość.
+
{{ Cssxref("-moz-pre-wrap") }} {{ Deprecated_inline() }}
+
identyczne jak pre-wrap, jest to rozszerzenie Mozilli, które stało się własnością CSS 2.1 pre-wrap, która powinna być używana zamiast niego.
+
{{ Cssxref("pre-line") }}
+
wszystkie sekwencje białych znaków będą skrócone, linie są przełamane na znakach nowej linii i również w razie potrzeby zawartość jest zawijana.
+
{{ Cssxref("inherit") }}
+
dziedziczy po rodzicu.
+
+ +

Przykłady

+ +
code {
+  white-space: pre;
+}
+
+ +

Notatki

+ +

pre-line nie jest jeszcze zaimplementowane w Mozilli.

+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ +

(Próbna tabela zgodności)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer0
Firefox0
Netscape0
Opera0
Safari?
diff --git a/files/pl/web/css/width/index.html b/files/pl/web/css/width/index.html new file mode 100644 index 0000000000..0e5abadd9f --- /dev/null +++ b/files/pl/web/css/width/index.html @@ -0,0 +1,207 @@ +--- +title: width +slug: Web/CSS/width +translation_of: Web/CSS/width +--- +
{{CSSRef}}
+ +

Właściwość widthCSS ustawia szerokość elementu. Domyślnie ustawia szerokość obszaru zawartości , ale jeśli {{cssxref ("box-sizing")}} jest ustawione na border-box, ustawia szerokość obszaru border .

+ +
{{EmbedInteractiveExample("pages/css/width.html")}}
+ + + +

Właściwości {{cssxref ("min-width")}} i {{cssxref ("max-width")}} przesłaniają {{cssxref ("width")}}.

+ +

Składnia

+ +
/ * <length> wartości * /
+szerokość: 300px;
+szerokość: 25em;
+
+/ * <wartość procentowa> * /
+szerokość: 75%;
+
+/ * Wartości słów kluczowych * /
+width: 25em border-box;
+width: 75% content-box;
+width: max-content;
+width: min-content;
+width: available;
+width: fit-content;
+width: auto;
+
+/* Global values */
+width: inherit;
+width: initial;
+width: unset;
+
+ +

Właściwość width przyjmuje wartości:

+ + + +

Wartości

+ +
+
{{cssxref("<length>")}}
+
Ustala absolutną wartość szerokości.
+
{{cssxref("<percentage>")}}
+
Określa szerokość jako procentową wartość względem szerokości obejmującego bloku. Jeśli szerokość bloku obejmującego zależy od szerokości elementu, układ końcowy jest niezdefiniowany.
+
border-box {{experimental_inline}}
+
Jeśli występuje, wartość {{cssxref("<length>")}} lub {{cssxref("<percentage>")}} są aplikowane do obszaru border elementu.
+
content-box {{experimental_inline}}
+
Jeśli występuje, wartość {{cssxref("<length>")}} lub {{cssxref("<percentage>")}} jest aplikowana do obszaru zawartości elementu.
+
auto
+
Przeglądarka sama wylicza i wybiera szerokość elementu.
+
fill {{experimental_inline}}
+
Używa liniowej wielkości fill-available lub blokowej wielkości fill-available, odpowiednio do trybu pisania (writing mode).
+
max-content {{experimental_inline}}
+
Naturalna preferowana szerokość zawartości (gdy nie zostanie zastosowane miękkie zawijanie soft wrap).
+
min-content {{experimental_inline}}
+
Naturalna minimalna szerokość zawartości (gdy zastosowane zostanie miękkie zawijanie soft wrap).
+
available {{experimental_inline}}
+
Dostępna szerokość - blok obejmujący minus poziome marginesy, border i padding.
+
fit-content {{experimental_inline}}
+
Większa z wartości: +
    +
  • naturalna minimalna szerokości (min-content)
  • +
  • mniejsza z wartości: naturalna preferowana szerokość (max-content) i dostępna szerokość (available)
  • +
+
+
+ +

Formalna składnia

+ +
{{csssyntax}}
+ +

Examples

+ +

Domyślna szerokość

+ +
p.goldie {
+  background: gold;
+}
+ +
<p class="goldie">The Mozilla community produces a lot of great software.</p>
+ +

{{EmbedLiveSample('Default_width', '500px', '64px')}}

+ +

Piksele i emy

+ +
.px_length {
+  width: 200px;
+  background-color: red;
+  color: white;
+  border: 1px solid black;
+}
+
+.em_length {
+  width: 20em;
+  background-color: white;
+  color: red;
+  border: 1px solid black;
+}
+
+ +
<div class="px_length">Width measured in px</div>
+<div class="em_length">Width measured in em</div>
+ +

{{EmbedLiveSample('Pixels_and_ems', '500px', '64px')}}

+ +

Procentowo

+ +
.percent {
+  width: 20%;
+  background-color: silver;
+  border: 1px solid red;
+}
+ +
<div class="percent">Width in percentage</div>
+ +

{{EmbedLiveSample('Percentage', '500px', '64px')}}

+ +

max-content

+ +
p.maxgreen {
+  background: lightgreen;
+  width: intrinsic;           /* Safari/WebKit uses a non-standard name */
+  width: -moz-max-content;    /* Firefox/Gecko */
+  width: -webkit-max-content; /* Chrome */
+}
+ +
<p class="maxgreen">The Mozilla community produces a lot of great software.</p>
+ +

{{EmbedLiveSample('max-content_2', '500px', '64px')}}

+ +

min-content

+ +
p.minblue {
+  background: lightblue;
+  width: -moz-min-content;    /* Firefox */
+  width: -webkit-min-content; /* Chrome */
+}
+ +
<p class="minblue">The Mozilla community produces a lot of great software.</p>
+ +

{{EmbedLiveSample('min-content_2', '500px', '155px')}}

+ +

Dostępność

+ +

Upewnij się, że elementy z ustaloną szerokością width nie są przycinane ani nie zasłaniają pozostałej zawartości, kiedy strona jest przybliżana (zoom) aby zwiększyć rozmiar tekstu. 

+ + + +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecifikacjaStatusKomentarz
{{SpecName('CSS3 Box', '#the-width-and-height-properties', 'width')}}{{Spec2('CSS3 Box')}}Dodanie słów kluczowych max-content, min-content, available, fit-content, border-box, content-box.
{{SpecName('CSS3 Transitions', '#animatable-css', 'width')}}{{Spec2('CSS3 Transitions')}}Dodanie width jako animowanego.
{{SpecName('CSS2.1', 'visudet.html#the-width-property', 'width')}}{{Spec2('CSS2.1')}}Doprecyzowanie  do jakich elementów własność jest stosowana.
{{SpecName('CSS1', '#width', 'width')}}{{Spec2('CSS1')}}Oryginalna definicja.
+ +
{{cssinfo}}
+ +

Działanie w przeglądarkach

+ + + +

{{Compat ("css.properties.width")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/css/word-spacing/index.html b/files/pl/web/css/word-spacing/index.html new file mode 100644 index 0000000000..0c8e87b786 --- /dev/null +++ b/files/pl/web/css/word-spacing/index.html @@ -0,0 +1,78 @@ +--- +title: word-spacing +slug: Web/CSS/word-spacing +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje +translation_of: Web/CSS/word-spacing +--- +

{{ CSSRef() }}

+ +

Podsumowanie

+ +

Własność CSS 'word spacing' określa odstęp pomiędzy słowami w tekstowej zawartości elementu. Można zdefiniować od jednej do trzech wartości, by wskazać minimalny, maksymalny oraz optymalny odstęp między słowami.

+ +

{{cssinfo}}

+ +

Składnia

+ +
word-spacing: [ normal | <length>  | <percentage> ] {1,3}
+
+ +

Wartości

+ +
+
normal 
+
 
+
{{cssxref("<length>")}}  
+
 
+
{{cssxref("<percentage>")}}  
+
 
+
+ +

Przykłady

+ +
p {
+  word-spacing: 1em 3em 2em;
+}
+
+ +

Specyfikacje

+ + + +

Zgodność z przeglądarką

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PrzeglądarkaNajniższa wersja
Internet Explorer?
Firefox?
Netscape?
Opera?
Safari?
diff --git a/files/pl/web/css/z-index/index.html b/files/pl/web/css/z-index/index.html new file mode 100644 index 0000000000..fd454242be --- /dev/null +++ b/files/pl/web/css/z-index/index.html @@ -0,0 +1,128 @@ +--- +title: z-index +slug: Web/CSS/z-index +tags: + - CSS + - 'CSS:Dokumentacje' + - Dokumentacje + - Wszystkie_kategorie +translation_of: Web/CSS/z-index +--- +
{{CSSRef}}
+ +

Własność z-index określa kolejność elementów wzdłuż osi z. Kiedy elementy nachodzą na siebie, kolejność osi z decyduje, który element przykrywa inny. Element z większym indeksem z zazwyczaj przykrywa element z mniejszym.

+ +
{{EmbedInteractiveExample("pages/css/z-index.html")}}
+ + + +

Składnia

+ +
/* Właściwość wartość */
+z-index: auto;
+
+/* wartość jako liczba */
+z-index: 0;
+z-index: 3;
+z-index: 289;
+z-index: -1; /* wartość ujemna w celu zmniejszenia priorytetu */
+
+/* globalne wartości */
+z-index: inherit;
+z-index: initial;
+z-index: unset;
+
+ +

Wartość z-index jest określona słowem kluczowym auto lub jako <liczba>.

+ +

Wartości

+ +
+
auto 
+
Element jest rysowany w takiej samej kolejności względem osi z jak element z z-index: 0.Nie tworzy nowego kontekstu nakładania.
+
<liczba>
+
Element jest rysowany w podanej kolejności względem osi z. Tworzy również nowy kontekst nakładania, co oznacza, że wszystkie jego elementy potomne również są rysowane z takim samym indeksem z. Oznacza to również, że indeksy z elementów potomnych nie są porównywane do indeksów z elementów na zewnątrz danego elementu.
+
+ +

Przykład

+ +

HTML

+ +
<div class="dashed-box">Dashed box
+  <span class="gold-box">Gold box</span>
+  <span class="green-box">Green box</span>
+</div>
+
+ +

CSS

+ +
.dashed-box {
+  position: relative;
+  z-index: 1;
+  border: dashed;
+  height: 8em;
+  margin-bottom: 1em;
+  margin-top: 2em;
+}
+.gold-box {
+  position: absolute;
+  z-index: 3; /* put .gold-box above .green-box and .dashed-box */
+  background: gold;
+  width: 80%;
+  left: 60px;
+  top: 3em;
+}
+.green-box {
+  position: absolute;
+  z-index: 2; /* put .green-box above .dashed-box */
+  background: lightgreen;
+  width: 20%;
+  left: 65%;
+  top: -25px;
+  height: 7em;
+  opacity: 0.9;
+}
+
+ +

Wynik

+ +

{{ EmbedLiveSample('Examples', '550', '200', '') }}

+ +

Specifikacja

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('CSS3 Transitions', '#animatable-css', 'animation behavior for z-index')}}{{Spec2('CSS3 Transitions')}}Defines z-index as animatable.
{{SpecName('CSS2.1', 'visuren.html#z-index', 'z-index')}}{{Spec2('CSS2.1')}}Initial definition
+ +

Zgodność z przeglądarką

+

{{Compat("css.properties.z-index")}}

+ +

Zobacz także

+ +

{{ Cssxref("position") }}

+ +

{{ languages( { "en": "en/CSS/z-index", "fr": "fr/CSS/z-index" } ) }}

diff --git "a/files/pl/web/dost\304\231pno\305\233\304\207/an_overview_of_accessible_web_applications_and_widgets/index.html" "b/files/pl/web/dost\304\231pno\305\233\304\207/an_overview_of_accessible_web_applications_and_widgets/index.html" new file mode 100644 index 0000000000..06d9978f8a --- /dev/null +++ "b/files/pl/web/dost\304\231pno\305\233\304\207/an_overview_of_accessible_web_applications_and_widgets/index.html" @@ -0,0 +1,165 @@ +--- +title: An overview of accessible web applications and widgets +slug: Web/Dostępność/An_overview_of_accessible_web_applications_and_widgets +translation_of: Web/Accessibility/An_overview_of_accessible_web_applications_and_widgets +--- +

Sieć się zmienia. Statyczne witryny oparte na stronach są coraz częściej zastępowane dynamicznymi aplikacjami internetowymi w stylu aplikacji pulpitowych, które intensywnie wykorzystują JavaScript i AJAX. Projektanci tworzą niesamowite nowe widżety i kontrolki całkowicie za pomocą kombinacji JavaScript, HTML i CSS. Ta zmiana może znacznie poprawić responsywność i użyteczność internetu, ale wielu użytkowników jest zagrożonych wykluczeniem z powodu luk w dostępności. JavaScript tradycyjnie cieszy się reputacją niedostępności dla użytkowników technologii pomocniczych, takich jak czytniki ekranu, ale istnieją teraz sposoby na tworzenie dynamicznych interfejsów internetowych, które są dostępne dla szerokiego grona użytkowników.

+ +

Problem

+ +

Większość zestawów narzędzi JavaScript oferuje bibliotekę widżetów po stronie klienta, które naśladują zachowanie znanych interfejsów pulpitu. Suwaki, paski menu, widoki list plików i wiele więcej można zbudować za pomocą kombinacji JavaScript, CSS i HTML. Ponieważ specyfikacja HTML 4 nie zapewnia wbudowanych znaczników, które semantycznie opisują tego rodzaju widżety, programiści zazwyczaj używają ogólnych elementów, takich jak <div> i <span>. Skutkuje to widżetem, który wygląda jak jego odpowiednik na pulpicie, jednak zwykle nie ma wystarczającej ilości znaczników semantycznych do wykorzystania przez technologię wspomagającą. Dynamiczne treści na stronie internetowej mogą być szczególnie problematyczne dla użytkowników, którzy z jakiegoś powodu nie są w stanie wyświetlić ekranu. Informacje giełdowe, aktualizacje kanałów live twitter, wskaźniki postępu i podobne treści modyfikują DOM w taki sposób, że technologia wspomagająca (AT) może nie być świadoma. Wtedy z pomocą wkracza ARIA.

+ +

Przykład 1: Znaczniki dla widżetów kart zbudowanych bez etykietowania ARIA. W znacznikach nie ma informacji opisujących formę i funkcję widżetu.

+ +
<!-- To jest widget zakładek. Jak możesz to rozpoznać, patrząc tylko na znaczniki? -->
+<ol>
+  <li id="ch1Tab">
+    <a href="#cz1Panel">Część 1</a>
+  </li>
+  <li id="ch2Tab">
+    <a href="#cz2Panel">Część 2</a>
+  </li>
+  <li id="quizTab">
+    <a href="#quizPanel">Quiz</a>
+  </li>
+</ol>
+
+<div>
+  <div id="ch1Panel">Zawartość części nr 1 </div>
+  <div id="ch2Panel">Zawartość częśći nr 2</div>
+  <div id="quizPanel">Zawartość Quizu</div>
+</div>
+ +

Przykład 2: Sposób wizualnego przedstawienia widżetów karty. Użytkownicy mogą rozpoznać to wizualnie, jednak nie ma semantyki do odczytu maszynowego dla technologii wspomagającej.
+ Screenshot of the tabs widget

+ +

ARIA

+ +

WAI-ARIA, Accessible Rich Internet Applications specyfikacja wywodząca się od W3C Web Accessibility Initiative, umożliwia dodanie brakującej semantyki potrzebnej w przypadku technologii pomocniczych, takich jak czytniki ekranu. ARIA umożliwia programiście bardziej szczegółowe opisywanie tych widżetów poprzez dodawanie specjalnych atrybutów do znaczników. Zaprojektowany, aby wypełnić lukę pomiędzy standardowymi znacznikami HTML a formantami w stylu pulpitu znajdującymi się w dynamicznych aplikacjach internetowych, ARIA udostępnia role i stany, które opisują zachowanie najbardziej znanych widgetów interfejsu użytkownika.

+ +

Specyfikacja ARIA jest podzielona na trzy różne typy atrybutów: role, stany i właściwości. Role opisują widżety, które nie są w inny sposób dostępne w HTML 4, takie jak suwaki, paski menu, karty i okna dialogowe. Właściwości opisują charakterystykę tych widgetów, na przykład, czy są one przeciągalne, mają wymagany element lub czy powiązane jest z nim wyskakujące okienko. Stany opisują bieżący stan interakcji elementu, informując technologię asystującą, jeśli jest zajęta, wyłączona, wybrana lub ukryta.

+ +

Atrybuty ARIA mają być interpretowane automatycznie przez przeglądarkę i tłumaczone na natywne API systemu operacyjnego. Kiedy ARIA jest obecna, technologie asystujące są w stanie rozpoznać i sterować niestandardowymi kontrolkami JavaScript w taki sam sposób, jak robią to z odpowiednikami komputerów. Może to zapewnić znacznie bardziej spójny interfejs użytkownika, niż było to możliwe w poprzedniej generacji aplikacji internetowych, ponieważ użytkownicy technologii pomocniczych mogą wykorzystać całą swoją wiedzę na temat działania aplikacji komputerowych podczas korzystania z aplikacji internetowych.

+ +

Przykład 3: Znaczniki dla widżetów kart z dodanymi atrybutami ARIA.

+ +
<!-- Dodaliśmy atrybut "role" aby opisać listę kart i poszczególne karty. -->
+<ol role="tablist">
+  <li id="ch1Tab" role="tab">
+    <a href="#ch1Panel">Część 1</a>
+  </li>
+  <li id="ch2Tab" role="tab">
+    <a href="#ch2Panel">Część 2</a>
+  </li>
+  <li id="quizTab" role="tab">
+    <a href="#quizPanel">Quiz</a>
+  </li>
+</ol>
+
+<div>
+  <!-- Zwróć uwagę na rolę i atrybuty "aria-labelledby", które dodaliśmy do opisu tych paneli. -->
+  <div id="ch1Panel" role="tabpanel" aria-labelledby="ch1Tab">Zawartość części nr 1</div>
+  <div id="ch2Panel" role="tabpanel" aria-labelledby="ch2Tab">Zawartość części nr 2</div>
+  <div id="quizPanel" role="tabpanel" aria-labelledby="quizTab">Zawartość Quizu</div>
+</div>
+
+ +

ARIA jest obsługiwana w najnowszych wersjach wszystkich głównych przeglądarek, w tym Firefox, Safari, Opera, Chrome i Internet Explorer. Wiele technologii wspomagających, takich jak open source NVDA i czytniki ekranu Orca, również obsługuje ARIA. Coraz częściej biblioteki widgetów JavaScript, takie jak jQuery UI, YUI, Google Closure i Dojo Dijit, również zawierają znaczniki ARIA.

+ +

Zmiany prezentacyjne

+ +

Dynamiczne zmiany prezentacyjne obejmują używanie CSS do zmiany wyglądu treści (np. Czerwone obramowanie wokół nieprawidłowych danych lub zmiana koloru tła zaznaczonego pola wyboru), a także pokazywanie lub ukrywanie treści.

+ +

Zmiany stanu

+ +

ARIA udostępnia atrybuty do deklarowania bieżącego stanu widgetu interfejsu użytkownika. Przykłady obejmują (ale z pewnością nie są ograniczone do):

+ + + +

(Pełna lista stanów: ARIA list of states and properties.)

+ +

Programiści powinni używać stanów ARIA do wskazania stanu elementów widgetu interfejsu użytkownika i używać selektorów atrybutów CSS do zmiany wyglądu wizualnego na podstawie zmian stanu (zamiast używania skryptu do zmiany nazwy klasy na elemencie).

+ +

Zmiany widoczności

+ +

Gdy zmieni się widoczność zawartości (tzn. Element jest ukryty lub pokazany), programiści powinni zmienić wartość właściwości aria-hidden. Opisane powyżej techniki powinny być używane do deklarowania CSS do wizualnego ukrywania elementu za pomocą display:none.

+ +

Przykład przedstawia prosty formularz internetowy z etykietami narzędzi zawierającymi instrukcje powiązane z polami wprowadzania.

+ +

Przykład kodu HTML z atrybutem aria-hidden ustawionym na wartość true.

+ +
<div class="text">
+    <label id="tp1-label" for="first">Pierwsze imię:</label>
+    <input type="text" id="first" name="first" size="20"
+           aria-labelledby="tp1-label"
+           aria-describedby="tp1"
+           aria-required="false" />
+    <div id="tp1" class="tooltip"
+         role="tooltip"
+         aria-hidden="true">Twoje pierwsze imię jest opcjonalne</div>
+</div>
+
+ +

Poniżej kod CSS dla powyższego przykładu.
+ Zwróć uwagę na to że nie użyto typowego selektora klasy, lecz selektora atrybutu  aria-hidden ustawionego na wartość "true".

+ +
div.tooltip[aria-hidden="true"] {
+  display: none;
+}
+
+ +

Kod JavaScript dla powyższego przykładu, aktualizujący atrybut  aria-hidden.

+ +
var showTip = function(el) {
+  el.setAttribute('aria-hidden', 'false');
+}
+ +

Zmiany ról

+ +
W budowie
+ +

ARIA pozwala programistom zadeklarować rolę semantyczną dla elementu, który w przeciwnym razie oferuje niepoprawną lub brak semantyki. Na przykład, gdy do utworzenia menu jest używana lista nie numerowana {{ HTMLElement("ul") }} powinien otrzymać atrybut role zdefiniowany jako menubar a każdy element listy {{ HTMLElement("li") }} powinien otrzymać atrybut role o wartości menuitem.

+ +

Atrybut role nie powinien być zmieniany. Zamiast tego usuń oryginalny element i zastąp go elementem z nową wartością atrybutu role.

+ +

Rozważmy przykład widgetu "edycji bezpośredniej": komponent który pozwala użytkownikom edytować fragment tekstu na miejscu, bez przełączania kontekstów . Ten komponent ma tryb "widok", gdzie tekst nie jest edytowalny, ale można go aktywować, oraz tryb "edycja", w którym tekst jest edytowalny. Deweloper może ulec pokusie, aby zaimplementować tryb "widok" używając elementu  {{ HTMLElement("input") }} tylko do odczytu, i ustawić jego ARIA atrybut role na wartość button, następnie po przęłączeniu w tryb "edycja" uczynić element zapisywalnym i usunąć atrybut w tym trybie atrybut role (ponieważ element {{ HTMLElement("input") }} ma własną semantykę ról).

+ +

Nie rób tego. Zaimplementuj tryb widoku przy użyciu zupełnie innego elementu, takiego jak {{ HTMLElement("div") }} albo {{ HTMLElement("span") }} z atrybutem role o wartości button, a tryb « edycja »  z użyciem elementu  {{ HTMLElement("input") }}.

+ +

Asynchroniczna zmiana trści

+ +
W budowie. Zobacz też Live Regions
+ +

Nawigacja klawiaturą

+ +

Często programiści pomijają obsługę klawiatury podczas tworzenia niestandardowych widżetów. Aby być dostępnym dla wielu użytkowników, wszystkie funkcje aplikacji internetowej lub widżetu powinny być sterowane za pomocą klawiatury, bez potrzeby korzystania z myszy. W praktyce zwykle wiąże się to z konwencjami obsługiwanymi przez podobne widżety na pulpicie, w pełni korzystając z klawiszy Tab, Enter, Spacja i klawiszy strzałek.

+ +

Tradycyjnie nawigacja po klawiaturze w sieci została ograniczona do klawisza Tab. Użytkownik naciśnie klawisz Tab, aby skupić się na każdym łączu, przycisku lub formularzu na stronie w liniowej kolejności, używając Shift-Tab, aby nawigować wstecz. Jest to jednowymiarowa forma nawigacji do przodu i do tyłu, jeden element na raz. Na dość gęstych stronach użytkownik klawiatury często musi kilkakrotnie nacisnąć klawisz Tab przed uzyskaniem dostępu do potrzebnej sekcji. Wdrożenie konwencji klawiatury w stylu komputera w Internecie może znacząco przyspieszyć nawigację dla wielu użytkowników.

+ +

Oto podsumowanie, jak powinna działać nawigacja klawiaturowa w aplikacji internetowej obsługującej ARIA:

+ + + +

Tak więc, dla przykładu widżetów zakładki powyżej, użytkownik powinien móc nawigować do kontenera widgetu (<ol> w naszym znaczniku) i wychodzić za pomocą klawiszy Tab i Shift-Tab. Po ustawieniu nawigacji klawiaturą w kontenerze klawisze strzałek powinny umożliwiać użytkownikowi nawigację między kartami (elementy <li>)Konwencje różnią się w zależności od platformy. W systemie Windows następna karta powinna być automatycznie aktywowana, gdy użytkownik naciśnie klawisze strzałek. W systemie Mac OS X użytkownik może nacisnąć klawisz Enter lub klawisz spacji, aby aktywować następną kartę. Szczegółowy samouczek do tworzenia Keyboard-navigable JavaScript widgets opisuje sposób implementacji tego zachowania za pomocą JavaScript.

+ +

Aby uzyskać więcej informacji na temat konwencji nawigacyjnych na klawiaturze w stylu komputerowym, należy zapoznać się z obszernym opisem DHTML style guideOpis zawiera przegląd nawigacji klawiaturowej dla każdego typu widżetu obsługiwanego przez ARIA. W3C oferuje również pomocne ARIA Best Practices dokument zawiera nawigację klawiaturową i konwencje skrótów dla różnych widżetów

+ +

Zobacz także

+ + diff --git "a/files/pl/web/dost\304\231pno\305\233\304\207/index.html" "b/files/pl/web/dost\304\231pno\305\233\304\207/index.html" new file mode 100644 index 0000000000..801f0d62ac --- /dev/null +++ "b/files/pl/web/dost\304\231pno\305\233\304\207/index.html" @@ -0,0 +1,94 @@ +--- +title: Dostępność +slug: Web/Dostępność +tags: + - Dostępność +translation_of: Web/Accessibility +--- +
+

"Dostępność (ang. accessibility) - nauka oraz zbiór standardów opisujących metody i wytyczne tworzenia serwisów WWW w sposób umożliwiający wygodny dostęp jak najszerszemu gronu odbiorców. Dostępne serwisy mogą być bez trudu wykorzystywane przez osoby niewidzące, niedowidzące, użytkowników mniej popularnych wyszukiwarek czy platform mobilnych." Artykuł o Dostępności na Wikipedii

+
+ + + + + + + + +
+

Przewodniki

+ +
+
Czym jest dostępność?
+
Niniejszy artykuł stanowi wstęp do modułu i jednocześnie obszerną odpowiedź na pytanie, czym właściwie jest dostępność - w tym jakie grupy ludzi powinniśmy brać pod uwagę i dlaczego, jakich narzędzi używają oni do interakcji z siecią oraz jak uczynić dostęność częścią naszej organizacji zadań.
+
+ +

Dokumentacja

+ +
+
Kurs Usability
+
Materiały opisujące zagadnienia związane z użytecznością, dostępnością oraz efektywnością serwisów WWW.
+
+ +
+
W głąb dostępności
+
Niniejsza książka odpowiada na dwa pytania. Pierwsze brzmi: "Dlaczego powinienem uczynić swoją stronę WWW bardziej dostępną?" Jeżeli nie masz strony w sieci, ta książka nie jest dla Ciebie. Drugie pytanie to "Jak mogę uczynić moją stronę bardziej dostępną?" Jeżeli nie zostaniesz przekonany przez odpowiedź na pierwsze pytanie, nie będziesz zainteresowany odpowiedzią na drugie.
+
+ +
+
Web Accessibility po polsku
+
Dostępność w projektowaniu stron internetowych oznacza tworzenie takich dokumentów, które są czytelne i funkcjonalne dla wszystkich użytkowników niezależnie od ich fizycznych ograniczeń, sytuacji w jakiej się znajdują, a także używanego oprogramowania oraz sprzętu.
+
+ +
+
Software Accessibility Today
+
The accessibility of computer software has seen drastic improvements over the past two decades. This article reviews the progress and technology as it has developed.
+
+ +
+
Key-navigable custom DHTML widgets, in Mozilla and IE
+
Until now, web developers who want to make their styled <div> and <span> based widgets keyboard accessible have lacked the proper techniques. Keyboard accessibility is part of the minimum accessibility requirements of which any web developer should be aware.
+
+ +
+
Accessible Web Page Authoring
+
A handy web accessibility checklist, from IBM.
+
+ +


+ Pokaż wszystkie...

+
+

Społeczność

+ + + +

Narzędzia

+ + + +

Pokaż wszystkie...

+ +

Powiązane tematy

+ +
+
Programowanie WWW, Standardy WWW, XUL
+
+ + +
+ +

 

+ +

+

Categories

+ + +

Interwiki Language Links

diff --git "a/files/pl/web/dost\304\231pno\305\233\304\207/keyboard-navigable_javascript_widgets/index.html" "b/files/pl/web/dost\304\231pno\305\233\304\207/keyboard-navigable_javascript_widgets/index.html" new file mode 100644 index 0000000000..3dd7d0f983 --- /dev/null +++ "b/files/pl/web/dost\304\231pno\305\233\304\207/keyboard-navigable_javascript_widgets/index.html" @@ -0,0 +1,171 @@ +--- +title: Keyboard-navigable JavaScript widgets +slug: Web/Dostępność/Keyboard-navigable_JavaScript_widgets +tags: + - Accessibility + - DOM + - Navigation +translation_of: Web/Accessibility/Keyboard-navigable_JavaScript_widgets +--- +

Overview

+ +

Web applications often use JavaScript to mimic desktop widgets such as menus, tree views, rich text fields, and tab panels. These widgets are typically composed of {{ HTMLElement("div") }} and {{ HTMLElement("span") }} elements that do not, by nature, offer the same keyboard functionality that their desktop counterparts do. This document describes techniques to make JavaScript widgets accessible with the keyboard.

+ +

Using tabindex

+ +

By default, when people use the tab key to browse a webpage, only interactive elements (like links, form controls) get focused. With the tabindex global attribute, authors can make other elements focusable, too. When set to 0, the element becomes focusable by keyboard and script. When set to -1, the element becomes focusable by script, but it does not become part of the keyboard focus order.

+ +

The order in which elements gain focus when using a keyboard, is the source order by default. In exceptional circumstances, authors may want to redefine the order. To do this, authors can set tabindex to any positive number.

+ +
+

Warning: avoid using positive values for tabindex.  Elements with a positive tabindex are put before the default interactive elements on the page, which means page authors will have to set (and maintain) tabindex values for all focusable elements on the page whenever they use one or more positive values for tabindex.

+
+ +

The following table describes tabindex behavior in modern browsers:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tabindex attributeFocusable with mouse or JavaScript via element.focus()Tab navigable
not presentFollows the platform convention of the element (yes for form controls, links, etc.).Follows the platform convention of the element.
Negative (i.e. tabindex="-1")YesNo; author must focus the element with focus() in response to arrow or other key presses.
Zero (i.e. tabindex="0")YesIn tab order relative to element's position in document (note that interactive elements like {{ HTMLElement("a") }} have this behavior by default, they don't need the attribute).
Positive (e.g. tabindex="33")Yestabindex value determines where this element is positioned in the tab order: smaller values will position elements earlier in the tab order than larger values (for example, tabindex="7" will be positioned before tabindex="11").
+ +

Non-native controls

+ +

Native HTML elements that are interactive, like {{ HTMLElement("a") }}, {{ HTMLElement("input") }} and {{ HTMLElement("select") }}, are already accessible by keyboards, so to use one of them is the fastest path to make components work with keyboards.

+ +

Authors can also make a {{ HTMLElement("div") }} or {{ HTMLElement("span") }} keyboard accessible by adding a tabindex of 0. This is particularly useful for components that use interactive elements that do not exist in HTML.

+ +

Grouping controls

+ +

For grouping widgets such as menus, tablists, grids, or tree views, the parent element should be in the tab order (tabindex="0"), and each descendent choice/tab/cell/row should be removed from the tab order (tabindex="-1"). Users should be able to navigate the descendent elements using arrow keys. (For a full description of the keyboard support that is normally expected for typical widgets, see the WAI-ARIA Authoring Practices.)

+ +

The example below shows this technique used with a nested menu control. Once keyboard focus lands on the containing {{ HTMLElement("ul") }} element, the JavaScript developer must programmatically manage focus and respond to arrow keys. For techniques for managing focus within widgets, see "Managing focus inside groups" below.

+ +

Example 2: A menu control using tabindex to control keyboard access

+ +
<ul id="mb1" tabindex="0">
+  <li id="mb1_menu1" tabindex="-1"> Font
+    <ul id="fontMenu" title="Font" tabindex="-1">
+      <li id="sans-serif" tabindex="-1">Sans-serif</li>
+      <li id="serif" tabindex="-1">Serif</li>
+      <li id="monospace" tabindex="-1">Monospace</li>
+      <li id="fantasy" tabindex="-1">Fantasy</li>
+    </ul>
+  </li>
+  <li id="mb1_menu2" tabindex="-1"> Style
+    <ul id="styleMenu" title="Style" tabindex="-1">
+      <li id="italic" tabindex="-1">Italics</li>
+      <li id="bold" tabindex="-1">Bold</li>
+      <li id="underline" tabindex="-1">Underlined</li>
+    </ul>
+  </li>
+  <li id="mb1_menu3" tabindex="-1"> Justification
+    <ul id="justificationMenu" title="Justication" tabindex="-1">
+      <li id="left" tabindex="-1">Left</li>
+      <li id="center" tabindex="-1">Centered</li>
+      <li id="right" tabindex="-1">Right</li>
+      <li id="justify" tabindex="-1">Justify</li>
+    </ul>
+  </li>
+</ul>
+ +

Disabled controls

+ +

When a custom control becomes disabled, remove it from the tab order by setting tabindex="-1". Note that disabled items within a grouped widget (such as menu items in a menu) should remain navigable using arrow keys.

+ +

Managing focus inside groups

+ +

When a user tabs away from a widget and returns, focus should return to the specific element that had focus, for example, the tree item or grid cell. There are two techniques for accomplishing this:

+ +
    +
  1. Roving tabindex: programmatically moving focus
  2. +
  3. aria-activedescendant: managing a 'virtual' focus
  4. +
+ +

Technique 1: Roving tabindex

+ +

Setting the tabindex of the focused element to "0" ensures that if the user tabs away from the widget and then returns, the selected item within the group retains focus. Note that updating the tabindex to "0" requires also updating the previously selected item to tabindex="-1". This technique involves programmatically moving focus in response to key events and updating the tabindex to reflect the currently focused item. To do this:

+ +

Bind a key down handler to each element in the group, and when an arrow key is used to move to another element:

+ +
    +
  1. programmatically apply focus to the new element,
  2. +
  3. update the tabindex of the focused element to "0", and
  4. +
  5. update the tabindex of the previously focused element to "-1".
  6. +
+ +

Here's an example of a WAI-ARIA tree view using this technique.

+ +
Tips
+ +
Use element.focus() to set focus
+ +

Do not use createEvent(), initEvent() and dispatchEvent() to send focus to an element. DOM focus events are considered informational only: generated by the system after something is focused, but not actually used to set focus. Use element.focus() instead.

+ +
Use onfocus to track the current focus
+ +

Don't assume that all focus changes will come via key and mouse events: assistive technologies such as screen readers can set the focus to any focusable element. Track focus using onfocus and onblur instead.

+ +

onfocus and onblur can now be used with every element. There is no standard DOM interface to get the current document focus. If you want to track the focus status, you can use the document.activeElement to get the active element. You can also use document.hasFocus to make sure if the current document focus. 

+ +

Technique 2: aria-activedescendant

+ +

This technique involves binding a single event handler to the container widget and using the aria-activedescendant to track a "virtual" focus. (For more information about ARIA, see this overview of accessible web applications and widgets.)

+ +

The aria-activedescendant property identifies the ID of the descendent element that currently has the virtual focus. The event handler on the container must respond to key and mouse events by updating the value of aria-activedescendant and ensuring that the current item is styled appropriately (for example, with a border or background color). See the source code of this ARIA radiogroup example for a direct illustration of how this works.

+ +

General Guidelines

+ +

Use onkeydown to trap key events, not onkeypress

+ +

IE will not fire keypress events for non-alphanumeric keys. Use onkeydown instead.

+ +

Ensure that keyboard and mouse produce the same experience

+ +

To ensure that the user experience is consistent regardless of input device, keyboard and mouse event handlers should share code where appropriate. For example, the code that updates the tabindex or the styling when users navigate using the arrow keys should also be used by mouse click handlers to produce the same changes.

+ +

Ensure that the keyboard can be used to activate element

+ +

To ensure that the keyboard can be used to activate elements, any handlers bound to mouse events should also be bound to keyboard events. For example, to ensure that the Enter key will activate an element, if you have an onclick="doSomething()", you should bind doSomething() to the key down event as well: onkeydown="return event.keyCode != 13 || doSomething();".

+ +

Always draw the focus for tabindex="-1" items and elements that receive focus programatically

+ +

IE will not automatically draw the focus outline for items that programatically receive focus. Choose between changing the background color via something like this.style.backgroundColor = "gray"; or add a dotted border via this.style.border = "1px dotted invert". In the dotted border case you will need to make sure those elements have an invisible 1px border to start with, so that the element doesn't grow when the border style is applied (borders take up space, and IE doesn't implement CSS outlines).

+ +

Prevent used key events from performing browser functions

+ +

If your widget handles a key event, prevent the browser from also handling it (for example, scrolling in response to the arrow keys) by using your event handler's return code. If your event handler returns false, the event will not be propagated beyond your handler.

+ +

For example:

+ +
<span tabindex="-1" onkeydown="return handleKeyDown();">
+ +

If handleKeyDown() returns false, the event will be consumed, preventing the browser from performing any action based on the keystroke.

+ +

Don't rely on consistent behavior for key repeat, at this point

+ +

Unfortunately onkeydown may or may not repeat depending on what browser and OS you're running on.

diff --git a/files/pl/web/exslt/index.html b/files/pl/web/exslt/index.html new file mode 100644 index 0000000000..5fde08b5d5 --- /dev/null +++ b/files/pl/web/exslt/index.html @@ -0,0 +1,93 @@ +--- +title: EXSLT +slug: Web/EXSLT +tags: + - Dokumentacje + - EXSLT + - Wszystkie_kategorie + - XSLT + - 'XSLT:Dokumentacje' +translation_of: Web/EXSLT +--- +

+{{ XsltRef() }} +{{ Fx_minversion_header(3) }} +EXSLT to zestaw rozszerzeń języka XSLT. Program Firefox obsługuje następujące spośród wielu istniejących modułów: +

+
Pakiet podstawowy (exsl) +
Podstawowe elementy i funkcje rozszerzeń. +
Pakiet matematyczny (math) +
Procedury służące do porównywania węzłów. +
Wyrażenia regularne (regexp) +
Mechanizmy wspomagające korzystanie z wyrażeń regularnych w składni języka JavaScript. +
Zestawy (set) +
Procedury do obsługi zestawów. +
Ciągi znaków (str) +
Funkcje służące do manipulowania ciągami znaków. +
+

Korzystanie z EXSLT

+

Aby skorzystać z rozszerzenia EXSLT, należy zadeklarować jego przestrzeń nazw jako przestrzeń nazw rozszerzenia w arkuszu stylów. W poniższym przykładzie używany jest pakiet wyrażeń regularnych: +

+
<xsl:stylesheet version="1.0"
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:regexp="http://exslt.org/regular-expressions"
+                extension-element-prefixes="regexp">
+
+<xsl:import href="regexp.xsl" />
+
+...
+
+</xsl:stylesheet>
+
+

Pakiet podstawowy

+

Pakiet podstawowy EXSLT zawiera główne funkcje rozszerzające możliwości języka XSLT. Przestrzeń nazw pakietu podstawowego to http://exslt.org/common. +

+

Funkcje

+ +

Pakiet matematyczny

+

Pakiet matematyczny EXSLT zawiera funkcje służące do operacji na wartościach numerycznych oraz do porównywania węzłów. Przestrzeń nazw pakietu matematycznego to http://exslt.org/math. +

+

Funkcje

+ +

Wyrażenia regularne

+

Pakiet wyrażeń regularnych EXSLT zawiera funkcje umożliwiające sprawdzanie, dopasowywanie i zastępowanie tekstu za pomocą wyrażeń regularnych w formie stosowanej w języku JavaScript. +

Przestrzeń nazw pakietu wyrażeń regularnych EXSLT to http://exslt.org/regular-expressions. +

+

Funkcje

+ +

Zestawy

+

Pakiet zestawów EXSLT zawiera funkcje pozwalające na manipulowanie zestawami. Przestrzeń nazw dla tych funkcji to http://exslt.org/sets. +

+

Funkcje

+ +

Ciągi znaków

+

Pakiet ciągów znaków EXSLT zawiera funkcje służące do manipulowania ciągami znaków. Przestrzeń nazw tego pakietu to http://exslt.org/strings. +

+

Funkcje

+ +

Zobacz także

+ +


+

+
+
+{{ languages( { "en": "en/EXSLT", "es": "es/EXSLT", "fr": "fr/EXSLT", "ja": "ja/EXSLT" } ) }} diff --git a/files/pl/web/guide/ajax/index.html b/files/pl/web/guide/ajax/index.html new file mode 100644 index 0000000000..c8f03c5f20 --- /dev/null +++ b/files/pl/web/guide/ajax/index.html @@ -0,0 +1,23 @@ +--- +title: AJAX +slug: Web/Guide/AJAX +tags: + - AJAX + - Wszystkie_kategorie +translation_of: Web/Guide/AJAX +--- +

 

+

"Getting Started" box, if there is no "Getting Started" article yet written, should be populated with another featurearticle or tutorial.

+
Na początek
+Wprowadzenie do AJAX-a.
+
+

AJAX (ang. Asynchronous JavaScript and XML, asynchroniczny JavaScript i XML) nie jest technologią sam w sobie, lecz terminem określającym "nowe" podejście do jednoczesnego wykorzystania takich istniejących technologii razem, jak: HTML lub XHTML, kaskadowe arkusze stylów, JavaScript, obiektowy model dokumentu, XML, XSLT oraz obiekt XMLHttpRequest. Dzięki modelowi AJAX, aplikacje sieciowe są w stanie dokonywać szybkich, przyrostowych aktualizacji w interfejsie użytkownika bez potrzeby przeładowywania całej strony WWW. W efekcie aplikacja wydaje się szybsza i lepiej reaguje na akcje użytkownika.

+
+ +

Dokumentacja

Na początek
Ten artykuł prowadzi czytelnika przez podstawy AJAX-u i podaje dwa proste przykłady, na początek.
Ajax: Nowe podejście do aplikacji sieciowych
Jesse James Garrett z adaptive path napisał ten artykuł w lutym 2005 roku. Przedstawia w nim AJAX i jemu pokrewne koncepcje.
A Simpler Ajax Path
"Okazuje się że, wykorzystanie obiektu XMLHttpRequest w celu uczynienia aplikacji sieciowej bardziej interaktywną bez rezygnowania z tradycyjnych rozwiązań, takich jak formularze służące pobieraniu danych od użytkownika, nie musi być wcale takie trudne."
Fixing the Back Button and Enabling Bookmarking for AJAX Apps
Mike Stenhouse opisuje kilka sposobów na poradzenie sobie podczas tworzenia aplikacji AJAX z problemamami dotyczącymi przycisku Wstecz i zakładek.
Ajax Mistakes
Alex Bosworth pisze o błędach popełnianych przez programistów tworzących aplikacje w AJAX-ie.

Pokaż wszystkie...

Społeczność

  • Obejrzyj fora Mozilli...

{{ DiscussionList("dev-ajax", "mozilla.dev.ajax") }}

Narzędzia

Pokaż wszystkie...

Przykłady

Powiązane tematy

HTML, XHTML, CSS, DOM, JavaScript, XML, XMLHttpRequest, XSLT, DHTML

Wybrane tematy

+

Categories

+

Interwiki Language Links

+

 

+

 

+ +

{{ languages( { "ca": "ca/AJAX", "cs": "cs/AJAX", "en": "en/AJAX", "es": "es/AJAX", "fr": "fr/AJAX", "it": "it/AJAX", "ja": "ja/AJAX", "ko": "ko/AJAX", "nl": "nl/AJAX", "pt": "pt/AJAX", "ru": "ru/AJAX", "zh-cn": "cn/AJAX", "zh-tw": "zh_tw/AJAX" } ) }}

diff --git "a/files/pl/web/guide/ajax/na_pocz\304\205tek/index.html" "b/files/pl/web/guide/ajax/na_pocz\304\205tek/index.html" new file mode 100644 index 0000000000..1e4a4ec491 --- /dev/null +++ "b/files/pl/web/guide/ajax/na_pocz\304\205tek/index.html" @@ -0,0 +1,221 @@ +--- +title: Na początek +slug: Web/Guide/AJAX/Na_początek +tags: + - AJAX + - Wszystkie_kategorie +translation_of: Web/Guide/AJAX/Getting_Started +--- +

+

Ten artykuł pozwoli Ci poznać podstawy technologii AJAX oraz poda dwa proste, gotowe do użycia przykłady. +

+

Czym jest AJAX?

+

AJAX (Asynchronous JavaScript and XML) jest niedawno ukutą nazwą na dwie potężne cechy przeglądarek WWW, które, choć dostępne od lat, były pomijane przez wielu autorów stron, aż do niedawna, gdy na rynku ukazały się takie aplikacje, jak Gmail, Google Suggest i Google Maps. +

Dzięki tym cechom możesz: +

+ +

Termin AJAX jest akronimem. A pochodzi od "asynchroniczny", co znaczy, że możesz wysyłać zapytania HTTP do serwera i robić inne rzeczy w trakcie oczekiwania na odpowiedź. JA pochodzi od "JavaScript", a X pochodzi od "XML". +

+

Krok 1 – powiedz "Poproszę!", czyli jak wykonać zapytanie HTTP

+

W celu stworzenia zapytania HTTP przy użyciu JavaScriptu, potrzebujesz instancji klasy, która posiada żądaną funkcjonalność. Taka klasa została po raz pierwszy wprowadzona w Internet Explorerze, jako obiekt ActiveX, pod nazwą XMLHTTP. Później Mozilla, Safari i inne przeglądarki również dodały taki obiekt, implementując klasę XMLHttpRequest, która obsługuje metody i właściwości oryginalnego obiektu ActiveX. +

W rezultacie, w celu stworzenia międzyprzeglądarkowej instancji (obiektu) potrzebnej nam klasy, należy wpisać: +

+
if (window.XMLHttpRequest) { // Mozilla, Safari, Opera ...
+    http_request = new XMLHttpRequest();
+} else if (window.ActiveXObject) { // IE
+    http_request = new ActiveXObject("Microsoft.XMLHTTP");
+}
+
+

(Na potrzeby przykładu powyższy fragment jest lekko uproszczoną wersją kodu używanego do stworzenia instancji XMLHTTP. Bardziej "życiowy" przykład można znaleźć w punkcie 3. tego artykułu). +

Niektóre wersje przeglądarek opartych na technologii Mozilli nie zadziałają poprawnie, jeżeli odpowiedź z serwera nie będzie opisana XML-owym nagłówkiem mime-type. Aby rozwiązać ten problem, można użyć dodatkowej metody do nadpisania nagłówka wysyłanego przez serwer, jeśli nie jest to text/xml. +

+
http_request = new XMLHttpRequest();
+http_request.overrideMimeType('text/xml');
+
+

Następnie należy się zdecydować, co chcesz zrobić po otrzymaniu od serwera odpowiedzi na Twoje zapytanie. Na tym etapie wystarczy powiedzieć obiektowi zapytania HTTP, która funkcja JavaScript będzie opracowywała wynik. Można to uzyskać poprzez ustawienie właściwości onreadystatechange obiektu funkcji JavaScript, której będziesz używał, na przykład: +

http_request.onreadystatechange = nameOfTheFunction; +

Zwróć uwagę, że nie ma żadnych nawiasów za nazwą funkcji i nie są przekazywane żadne parametry, ponieważ chcemy przypisać referencję do tej funkcji, a nie wywołać ją. Można także, zamiast podawać nazwę funkcji, użyć techniki JavaScript do definiowania funkcji w locie (zwanej "funkcją anonimową") i określić akcje, które przetworzą wynik natychmiast, jak na przykład: +

+
http_request.onreadystatechange = function(){
+    // instrukcje
+};
+
+

Następnie, kiedy już zostało zadeklarowane, co będzie się działo zaraz po odebraniu odpowiedzi, należy wykonać zapytanie. W tym celu należy wywołać metody open() i send() klasy zapytania HTTP, tak jak na poniższym przykładzie: +

+
http_request.open('GET', 'http://www.example.org/some.file', true);
+http_request.send(null);
+
+ + + +

Parametr metody send() może być dowolną daną, którą chcesz wysłać do serwera w przypadku użycia metody POST. Dane powinny być umieszczone w formie używanej przez ciągi zapytań, czyli: +

name=value&anothername=othervalue&so=on +

Należy pamiętać o zakodowaniu każdej wysyłanej wartości funkcją encodeURIComponent. Na przykład jeśli w środku, jakiegoś przesyłanego łańcucha znajdzie się znak & to "obetnie" nasz łańcuch. Opis tej funkcji w dokumentcji zawiera bardziej szczegółowe informacje. +

Zwróć uwagę na to, że jeśli chcesz wysłać dane metodą POST, musisz zmienić typ MIME swojego zapytania, używając składni: +

+
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
+
+

W przeciwnym wypadku, serwer odrzuci dane wysłane metodą POST. +

+

Krok 2 – "Voilà!", czyli obsługa odpowiedzi serwera

+

Pamiętasz, że w trakcie wysyłania zapytania została podana nazwa funkcji JavaScript, która została przygotowana do obsługi odpowiedzi? +

http_request.onreadystatechange = nazwaFunkcji; +

Zobaczmy, co ta funkcja powinna zrobić. Najpierw musi ona sprawdzić stan zapytania. Jeżeli status ma wartość 4, oznacza to, że udało się pobrać pełną odpowiedź z serwera i można kontynuować jej przetwarzanie. +

+
if (http_request.readyState == 4) {
+    // wszystko jest OK, odpowiedź została odebrana
+} else {
+    // ciągle nie gotowe
+}
+
+

Możliwe są następujące wartości readyState: +

+ +

(Źródło) +

Następnie należy sprawdzić kod odpowiedzi serwera HTTP. Wszystkie możliwe kody są opisane na stronie W3C. W tym przypadku interesuje nas tylko odpowiedź 200 OK. +

+
if (http_request.status == 200) {
+    // świetnie!!
+} else {
+    // wystąpił jakiś problem z zapytaniem,
+    // na przykład odpowiedzią mogło być 404 (Nie odnaleziono)
+    // lub 500 (Wewnętrzny błąd serwera)
+}
+
+

Teraz, kiedy został już sprawdzony stan zapytania i kod statusu odpowiedzi, możesz zrobić co zechcesz z danymi otrzymanymi z serwera. Masz dwie możliwości dostania się do danych: +

+ +

Krok 3 – "Do dzieła!" - Prosty przykład

+

Stwórzmy teraz proste zapytanie HTTP. JavaScript odpyta serwer o dokument HTML test.html, który zawiera tekst "Jestem testem.", a następnie wyświetlimy ten tekst przy użyciu funkcji alert(). +

+
<script type="text/javascript" language="javascript">
+
+    var http_request = false;
+
+    function makeRequest(url) {
+
+        http_request = false;
+
+        if (window.XMLHttpRequest) { // Mozilla, Safari,...
+            http_request = new XMLHttpRequest();
+            if (http_request.overrideMimeType) {
+                http_request.overrideMimeType('text/xml');
+                // Przeczytaj o tym wierszu poniżej
+            }
+        } else if (window.ActiveXObject) { // IE
+            try {
+                http_request = new ActiveXObject("Msxml2.XMLHTTP");
+            } catch (e) {
+                try {
+                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
+                } catch (e) {}
+            }
+        }
+
+        if (!http_request) {
+            alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP');
+            return false;
+        }
+        http_request.onreadystatechange = function() { alertContents(http_request); };
+        http_request.open('GET', url, true);
+        http_request.send(null);
+
+    }
+
+    function alertContents(http_request) {
+
+        if (http_request.readyState == 4) {
+            if (http_request.status == 200) {
+                alert(http_request.responseText);
+            } else {
+                alert('Wystąpił problem z zapytaniem.');
+            }
+        }
+
+    }
+</script>
+<span
+    style="cursor: pointer; text-decoration: underline"
+    onclick="makeRequest('test.html')">
+        Odpytaj
+</span>
+
+

W tym przykładzie: +

+ +

Możesz przetestować ten przykład tutaj i zobaczyć testowy plik tutaj. +

Uwaga: Jeżeli strona wywołana przez XMLHttpRequest nie jest poprawionym XML-em (np. kiedy jest plikiem tekstowym), linia http_request.overrideMimeType('text/xml'); spowoduje pojawienie się błędów w konsoli JavaScript w Firefoksie 1.5 i późniejszych. Zostało to opisane na stronie: https://bugzilla.mozilla.org/show_bug.cgi?id=311724. Jest to zachowanie właściwe; ten artykuł zostanie niedługo poprawiony, aby dostosować się do tej zmiany. +

Uwaga 2: jeżeli wysyłasz zapytanie do skryptu, który ma zwrócić XML, zamiast do statycznego pliku XML, musisz ustawić nagłówki odpowiedzi, jeśli chcesz, aby zadziałało to także w Internet Explorerze. Jeżeli nie ustawisz nagłówka Content-Type: application/xml, IE zwróci błąd JavaScript "Object Expected" po wierszu, w którym próbujesz dostać się do XML-owego elementu. Jeżeli nie ustawisz nagłówka Cache-Control: no-cache, przeglądarka doda odpowiedź do pamięci podręcznej i nigdy nie wyśle żądania ponownie, sprawiając, że praca nad skryptem może być "kłopotliwa". +

Uwaga 3: jeżeli zmienna http_request jest używana globalnie, konkurujące funkcje wywołujące makeRequest() mogą nadpisywać siebie nawzajem, tworząc problemy. Określenie zmiennej http_request lokalnie dla funkcji i przekazywanie jej do funkcji alertContent() pozwala uniknąć takiej sytuacji. +

Uwaga 4: Aby zarejestrować funkcję zwrotną (callback function) onreadystatechange, nie możesz użyć argumentów. Dlatego też poniższy kod nie zadziała: +

+
http_request.onreadystatechange = alertContents(http_request); // (nie działa)
+
+

Z tego względu, aby zarejestrować tę funkcję pomyślnie, należy albo przekazać argumenty pośrednio poprzez funkcję anonimową, albo użyć http_request jako zmiennej globalnej. Oto przykłady: +

+
http_request.onreadystatechange = function() { alertContents(http_request); };  //1 (simultaneous request)
+http_request.onreadystatechange = alertContents;  //2 (global variable)
+
+

Metoda pierwsza pozwala mieć wiele zapytań przetwarzanych jednocześnie, a metoda trzecia może być używana jeśli http_request jest zmienną globalną. +

Uwaga 5: W przypadku błędu połączenia (na przykład kiedy serwer WWW został wyłączony), zostanie wyrzucony wyjątek w metodzie onreadystatechange podczas próby odczytania zmiennej .status. Z tego względu dobrze jest opakować wyrażenie if...then w try...catch. (Zobacz: https://bugzilla.mozilla.org/show_bug.cgi?id=238559). +

+
function alertContents(http_request) {
+
+        try {
+            if (http_request.readyState == 4) {
+                if (http_request.status == 200) {
+                    alert(http_request.responseText);
+                } else {
+                    alert('Wystąpił problem z tym żądaniem.');
+                }
+            }
+        }
+        catch( e ) {
+            alert('Złapany wyjątek: ' + e.description);
+        }
+
+    }
+
+

Krok 4 – "Z archiwum X" czyli praca z odpowiedzią XML

+

W poprzednim przykładzie, po otrzymaniu odpowiedzi z serwera, użyliśmy właściwości responseText obiektu zapytania i zawierała ona treść pliku <tt>test.html</tt>. Teraz spróbujmy użyć właściwości responseXML. +

Przede wszystkim stwórzmy prawidłowy dokument XML, o który odpytamy potem serwer. Taki dokument (<tt>test.xml</tt>) może wyglądać tak: +

+
<?xml version="1.0" ?>
+<root>
+    Jestem testem.
+</root>
+
+

W skrypcie musimy tylko zmienić linię zapytania na: +

+
...
+onclick="makeRequest('test.xml')">
+...
+
+

Potem w alertContents() musimy zmienić linię alert(http_request.responseText); na: +

+
var xmldoc = http_request.responseXML;
+var root_node = xmldoc.getElementsByTagName('root').item(0);
+alert(root_node.firstChild.data);
+
+

W ten sposób pobraliśmy obiekt XMLDocument, zwrócony przez responseXML i skorzystaliśmy z metod DOM, aby dostać się do danych zawartych w dokumencie XML. Możesz zajrzeć do dokumentu XML test.xml tutaj oraz do zaktualizowanego skryptu tutaj. +

Aby dowiedzieć się więcej o metodach DOM, zajrzyj do dokumentów Mozilla's DOM implementation. +

+
+
+{{ languages( { "ca": "ca/AJAX/Primers_passos", "de": "de/AJAX/Getting_Started", "en": "en/AJAX/Getting_Started", "es": "es/AJAX/Primeros_Pasos", "fr": "fr/AJAX/Premiers_pas", "it": "it/AJAX/Iniziare", "ja": "ja/AJAX/Getting_Started", "ko": "ko/AJAX/Getting_Started", "pt": "pt/AJAX/Como_come\u00e7ar", "ru": "ru/AJAX/\u0421_\u0447\u0435\u0433\u043e_\u043d\u0430\u0447\u0430\u0442\u044c", "zh-cn": "cn/AJAX/\u5f00\u59cb", "zh-tw": "zh_tw/AJAX/\u4e0a\u624b\u7bc7" } ) }} diff --git a/files/pl/web/guide/api/index.html b/files/pl/web/guide/api/index.html new file mode 100644 index 0000000000..0d56f6ab30 --- /dev/null +++ b/files/pl/web/guide/api/index.html @@ -0,0 +1,25 @@ +--- +title: Przewodnik po internetowych interfejsach API +slug: Web/Guide/API +tags: + - API + - Landing + - Przewodnik + - TopicStub + - Web +translation_of: Web/Guide/API +--- +

Współczesne technologie tworzenia aplikacji internetowych przy użyciu JavaScript wykorzystuje całą gamę interfejsów API, dzięki którym można tworzyć zaawansowane i wydajne aplikacje, uruchamiane w sieci web, lokalnie albo na serwerach za pośrednictwem takich technologii jak Node.js. Na tej stronie można znaleźć kompletną listę wszystkich interfejsów API dostarczanych przez cały stos współczesnych technologii internetowej.

+ +

Interfejsy API od A do Z

+ +

{{ListGroups}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/guide/css/kolumny_css3/index.html b/files/pl/web/guide/css/kolumny_css3/index.html new file mode 100644 index 0000000000..19d3c4285a --- /dev/null +++ b/files/pl/web/guide/css/kolumny_css3/index.html @@ -0,0 +1,65 @@ +--- +title: Kolumny CSS3 +slug: Web/Guide/CSS/Kolumny_CSS3 +tags: + - CSS + - CSS_3 + - Wszystkie_kategorie +translation_of: Web/CSS/CSS_Columns/Using_multi-column_layouts +--- +

+

+

Wprowadzenie

+

Czytanie tekstu wyświetlanego w długich wierszach jest trudne i męczące dla oczu - jeśli przenoszenie wzroku z końca jednej linii na początek drugiej zajmuje zbyt wiele czasu, łatwo jest zgubić się w tekście i rozpocząć czytanie niewłaściwego wiersza. Z tego powodu i aby w pełni wykorzystać szerokość ekranu, tekst na stronach internetowych - tak samo jak w gazetach - powinien być układany w sąsiadujących kolumnach o stałej szerokości. Niestety osiągnięcie tego efektu nie jest możliwe przy użyciu języków HTML i obecnego CSS bez wymuszania sztywnej wysokości kolumn, znacznego ograniczania dozwolonej składni wewnątrz tekstu bądź też bez stosowania skomplikowanych skryptów. +

Szkic specyfikacji CSS3 proponuje kilka nowych własności CSS, które rozwiązałyby ten problem. W Firefoksie 1.5 i następnych zaimplementowana została część tych własności i zachowują się one w sposób opisany przez szkic specyfikacji (z jednym wyjątkiem opisanym niżej).

Aby zobaczyć, jak działają kolumny CSS, odwiedź (korzystając z Firefoksa 1.5) blog Roberta O'Callahana. +

+

Stosowanie kolumn

+

Liczba i szerokość kolumn

+

Własności CSS pozwalają okreslić liczbę i szerokość kolumn, w jakich zostanie wyświetlony tekst na stronie: -moz-column-count oraz -moz-column-width. +

-moz-column-count pozwala ustalić liczbę kolumn. Na przykład: +

+
<div style="-moz-column-count:2">Z powodu trwających przygotowań do wydania Mozilli
+Firefox 1.5 Beta 1 drzewo zostanie zamrożone dziś w nocy o 23:59 PDT (UTC -7:00).
+Od tego momentu żadne nowe poprawki nie będą przyjmowane do Firefoksa 1.5 Beta 1,
+którego wydanie zaplanowane jest na czwartek.</div>
+
+

Powyższy tekst powinien zostać w Firefoksie 1.5 wyświetlony w dwu kolumnach: +

+
Z powodu trwających przygotowań do wydania Mozilli Firefox 1.5 Beta 1 drzewo zostanie zamrożone dziś w nocy o 23:59 PDT (UTC -7:00). Od tego momentu żadne nowe poprawki nie będą przyjmowane do Firefoksa 1.5 Beta 1, którego wydanie zaplanowane jest na czwartek.
+

-moz-column-width pozwala natomiast określić minimalną pożądaną szerokość kolumn. Jeśli przy okazji własność -moz-column-count nie jest ustalona, przeglądarka automatycznie wyświetli tyle kolumn, ile zmieści się w jej oknie. Na przykład tekst: +

+
<div style="-moz-column-width:20em;">Z powodu trwających przygotowań do wydania Mozilli
+Firefox 1.5 Beta 1 drzewo zostanie zamrożone dziś w nocy o 23:59 PDT (UTC -7:00).
+Od tego momentu żadne nowe poprawki nie będą przyjmowane do Firefoksa 1.5 Beta 1,
+którego wydanie zaplanowane jest na czwartek.</div>
+
+

przeglądarka wyświetli następująco: +

+
Z powodu trwających przygotowań do wydania Mozilli Firefox 1.5 Beta 1 drzewo zostanie zamrożone dziś w nocy o 23:59 PDT (UTC -7:00). Od tego momentu żadne nowe poprawki nie będą przyjmowane do Firefoksa 1.5 Beta 1, którego wydanie zaplanowane jest na czwartek.
+

Szczegóły dotyczące kolumn CSS opisano w szkicu specyfikacji CSS3. +

W przypadku wyświetlania wielokolumnowego, treść automatycznie przepływa do następnych kolumn, jeśli zachodzi taka potrzeba. Cała funkcjonalność HTML, CSS oraz DOM jest zachowana, podobnie jak możliwość edycji i drukowania. +


+

+

Wyrówywanie wysokości kolumn

+

Szkic specyfikacji CSS3 zakłada, że wysokości kolumn powinny być wyrównywane przez przeglądarkę w taki sposób, by wysokości treści w każdej kolumnie były możliwie najbardziej zbliżone. I to właśnie robi Firefox. +

Czasami jednak pojawia się potrzeba jednoznacznego zdefiniowania wysokości kolumn. W takim przypadku treść - w zależności od długości - wyświetlana powinna być w różnej, nieznanej projektantowi liczbie kolumn. Efekt ten zastosowano na stronach International Herald Tribune, gdzie jednak użyto w tym celu odpowiednich skryptów. Firefox rozszerza szkic specyfikacji CSS w taki sposób, że nadanie blokowi kolumn własności height powoduje wydłużanie się kolumn do określonej wysokości, a po osiągnięciu tejże - utworzeniu nowej kolumny. Zachowanie to jest bardzo przydatne przy tworzeniu układów stron WWW. +

+

Odstęp między kolumnami

+

Domyślnie, przeglądarka wyświetla kolumny jedna tuż obok drugiej, przylegające do siebie. Zazwyczaj jednak nie jest to zachowanie pożądane. Aby poprawić tę sytuację, można za pomocą CSS ustawić dla kolumn odpowiednie wartości marginesów wewnętrznych, często jednak o wiele łatwiej zastosować jest własność -moz-column-gap ustawianą dla bloku kolumn: +

+
<div style="-moz-column-width:20em; -moz-column-gap:2em;">Z powodu trwających
+przygotowań do wydania Mozilli Firefox 1.5 Beta 1 drzewo zostanie zamrożone dziś
+w nocy o 23:59 PDT (UTC -7:00). Od tego momentu żadne nowe poprawki nie będą
+przyjmowane do Firefoksa 1.5 Beta 1, którego wydanie zaplanowane jest na czwartek.</div>
+
+
Z powodu trwających przygotowań do wydania Mozilli Firefox 1.5 Beta 1 drzewo zostanie zamrożone dziś w nocy o 23:59 PDT (UTC -7:00). Od tego momentu żadne nowe poprawki nie będą przyjmowane do Firefoksa 1.5 Beta 1, którego wydanie zaplanowane jest na czwartek.
+

Czytelność w starszych przeglądarkach

+

Starsze przeglądarki ignorują własności -moz-column, dzięki czemu stosunkowo łatwo jest utworzyć stronę, której treść będzie wyświetlana w pojedynczej kolumnie w starszych przeglądarkach, a w wielu kolumnach w Firefoksie 1.5. +

+

Zakończenie

+

Kolumny w CSS3 to nowe narzędzie, które pomoże projektantom stron internetowych w najlepszy możliwy sposób wykorzystywać cenną powierzchnię ekranów uzytkowników. Dzięki takim opcjom jak automatycze wyrównywanie wysokości, kolumny na pewno znajdą wiele zastosowań w tworzeniu stron internetowych. +

+

Dodatkowe zasoby

+ +{{ languages( { "en": "en/CSS3_Columns", "es": "es/Columnas_con_CSS-3", "fr": "fr/Colonnes_CSS3", "it": "it/Le_Colonne_nei_CSS3", "ja": "ja/CSS3_Columns", "ko": "ko/CSS3_Columns" } ) }} diff --git a/files/pl/web/guide/css/sprawdzanie_media_queries/index.html b/files/pl/web/guide/css/sprawdzanie_media_queries/index.html new file mode 100644 index 0000000000..140d3a1796 --- /dev/null +++ b/files/pl/web/guide/css/sprawdzanie_media_queries/index.html @@ -0,0 +1,116 @@ +--- +title: Sprawdzanie media queries +slug: Web/Guide/CSS/Sprawdzanie_media_queries +translation_of: Web/CSS/Media_Queries/Testing_media_queries +--- +

{{SeeCompatTable}}

+ +

DOM dostarcza funkcje, dzięki którym możliwym jest sprawdzenie wyników media query. Jest to możliwe przy użyciu interfejsu {{domxref("MediaQueryList") }} i jego funkcji oraz właściwości. Po utworzeniu obiektu {{domxref("MediaQueryList") }} możesz zbadać wynik zapytania (query) lub (dodatkowo) otrzymywać powiadomienie, gdy rezultat się zmieni.

+ +

Tworzenie listy media query

+ +

Zanim będziesz mógł ocenić wynik zapytania, musisz utworzyć obiekt {{domxref("MediaQueryList") }}, reprezentujący media query. Aby to uczynić użyj metody {{domxref("window.matchMedia") }}.

+ +

Na przykład, jeśli chcesz ustalić czy orientacja urządzenia jest pionowa czy pozioma, możesz skorzystać z takiego zapytania jak poniżej:

+ +
var mql = window.matchMedia("(orientation: portrait)"); /* sprawdzamy czy orientacja obiektu, jest pionowa; zwraca obiekt MediaQueryList */
+
+ +

Sprawdzanie rezultatu zapytania (query)

+ +

Po wykonaniu powyższej metody, mamy dostęp do obiektu {{domxref("MediaQueryList") }}, który ma kilka przydatnych metod i właściwości. Jedną z nich jest cecha matches, która zwraca prawdę lub fałsz.

+ +
if (mql.matches) {
+  /* wykryta orientacja pionowa */
+} else {
+  /* wykryta orientacja pozioma */
+}
+
+ +

Otrzymywanie powiadomień

+ +

W przypadku, gdy chciałbyś na bieżąco dostawać alerty o stanie zapytania (query), skorzystaj z funkcji addListener(), która jest zdecydowanie wydajniejsza aniżeli sprawdzanie "ręcznie" co jakiś czas. By skorzystać z tego ułatwienia, wywołaj tę funkcję na obiekcie {{domxref("MediaQueryList") }}, określając obserwator, który implementuje interfejs {{domxref("MediaQueryListListener") }}:

+ +
var mql = window.matchMedia("(orientation: portrait)");
+mql.addListener(zmianaOrientacji);
+zmianaOrientacji(mql);
+
+ +

Powyższy kod tworzy media query list, a następnie dołącza listener. Zauważ, że po dodaniu listenera, przywołaliśmy listenera bezpośrednio - trzecia linijka. To pozwala nam określić aktualną orientację urządzenia.

+ +

Zaimplementowana metoda zmianaOrientacji() pozwala nam wykonać pewne czynności, gdy zmieni się położenie urządzenia.

+ +
function zmianaOrientacji(mql) {
+  if (mql.matches) {
+    /* wykryta orientacja pionowa */
+  } else {
+    /* wykryta orientacja pozioma */
+  }
+}
+
+ +

Wyłączenie powiadomień

+ +

Gdy nie potrzebujesz już powiadomień dotyczących zmiany wartości zapytania, możesz wywołać metodę removeListener() dostępną w obiekcie {{domxref("MediaQueryList") }}:

+ +
mql.removeListener(zmianaOrientacji);
+
+ +

Zgodność z przeglądarką

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support9{{CompatGeckoDesktop("6.0") }}1012.15.1
+
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support3.0{{CompatUnknown}}1012.15
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/guide/graphics/index.html b/files/pl/web/guide/graphics/index.html new file mode 100644 index 0000000000..17edfe14d1 --- /dev/null +++ b/files/pl/web/guide/graphics/index.html @@ -0,0 +1,41 @@ +--- +title: Grafiki na stronach +slug: Web/Guide/Graphics +tags: + - 2D + - 3D + - Canvas + - Graphics + - NeedsTranslation + - TopicStub + - Web + - WebGL +translation_of: Web/Guide/Graphics +--- +

Nowoczesne strony czy też aplikacje internetowe często muszą prezentować pewne grafiki. Dopóki proste wyświetlenie obrazka można wykonać za pomocą elementu {{HTMLElement("img")}}, albo ustawiając tło elementu HTML poprzez atrybut {{cssxref("background-image")}}, to często i tak zachodzi potrzeba generowania grafiki w locie albo manipulowania wyświetlonymi już obrazami. Poniże artykuły wprowadzą Ciebie głębiej w realizowanie tych czynności.

+
+
+

Grafika 2D

+
+
+ Rysowanie grafiki z elementem canvas
+
+ Przewodnik wprowadzający do użycia elementu {{HTMLElement("canvas")}}, by rysować grafikę 2D w przeglądarce.
+
+ SVG
+
+ Scalable Vector Graphics (SVG) pozwala używać linii, krzywych oraz innych kształtów by wyświetlać grafikę. Unikając bitmap możesz generować obrazki, które bez problemów przeskalujesz do dowolnego rozmiaru.
+
+

Wyświetl wszystko...

+
+
+

Grafika 3D

+
+
+ WebGL
+
+ Przewodnik, który ułatwi Tobie zaczęcie pracy z WebGL. Technologia ta umożliwia użycie standardu OpenGL ES prosto w przeglądarce.
+
+
+
+

 

diff --git a/files/pl/web/guide/html/editable_content/index.html b/files/pl/web/guide/html/editable_content/index.html new file mode 100644 index 0000000000..77abe792b7 --- /dev/null +++ b/files/pl/web/guide/html/editable_content/index.html @@ -0,0 +1,216 @@ +--- +title: Making content editable +slug: Web/Guide/HTML/Editable_content +translation_of: Web/Guide/HTML/Editable_content +--- +

In progress. In HTML, any element can be editable. By using some JavaScript event handlers, you can transform your web page into a full and fast rich text editor. This article provides some information about this functionality.

+ +

How does it work?

+ +

All you have to do is set the {{htmlattrxref("contenteditable")}} attribute on nearly any HTML element to make it editable.

+ +

Here's a simple example which creates a {{HTMLElement("div")}} element whose contents the user can edit.

+ +
<div contenteditable="true">
+  This text can be edited by the user.
+</div>
+ +

Here's the above HTML in action:

+ +

{{ EmbedLiveSample('How_does_it_work') }}

+ +

Executing commands

+ +

When an HTML element has contenteditable set to true, the {{ domxref("document.execCommand()") }} method is made available. This lets you run commands to manipulate the contents of the editable region. Most commands affect the document's selection by, for example, applying a style to the text (bold, italics, etc), while others insert new elements (like adding a link) or affect an entire line (indenting). When using contentEditable, calling execCommand() will affect the currently active editable element.

+ +

Differences in markup generation

+ +

Use of contenteditable across different browsers has been painful for a long time because of the differences in generated markup between browsers. For example, even something as simple as what happens when you press Enter/Return to create a new line of text inside an editable element was handled differently across the major browsers (Firefox inserted {{htmlelement("br")}} elements, IE/Opera used {{htmlelement("p")}}, Chrome/Safari used {{htmlelement("div")}}).

+ +

Fortunately, in modern browsers things are somewhat more consistent. As of Firefox 55, Firefox has been updated to wrap the separate lines in {{htmlelement("div")}} elements, matching the behavior of Chrome, modern Opera, Edge, and Safari.

+ +

Try it out in the above example.

+ +
+

Note: Internet Explorer, which is no longer being developed, uses {{htmlelement("p")}} elements instead of <div>.

+
+ +

If you want to use a different paragraph separator, the above browsers all support {{domxref("document.execCommand")}}, which provides a DefaultParagraphSeparator command to allow you to change it. For example, to use {{htmlelement("p")}} elements:

+ +
document.execCommand("DefaultParagraphSeparator", false, "p");
+ +

Security

+ +

For security reasons, Firefox doesn't let JavaScript code use clipboard related features (copy, paste, etc.) by default. You can enable them by setting the preferences shown below using about:config:

+ +
user_pref("capability.policy.policynames", "allowclipboard");
+user_pref("capability.policy.allowclipboard.sites", "https://www.mozilla.org");
+user_pref("capability.policy.allowclipboard.Clipboard.cutcopy", "allAccess");
+user_pref("capability.policy.allowclipboard.Clipboard.paste", "allAccess");
+ +

Example: A simple but complete rich text editor

+ +
+
<!doctype html>
+<html>
+<head>
+<title>Rich Text Editor</title>
+<script type="text/javascript">
+var oDoc, sDefTxt;
+
+function initDoc() {
+  oDoc = document.getElementById("textBox");
+  sDefTxt = oDoc.innerHTML;
+  if (document.compForm.switchMode.checked) { setDocMode(true); }
+}
+
+function formatDoc(sCmd, sValue) {
+  if (validateMode()) { document.execCommand(sCmd, false, sValue); oDoc.focus(); }
+}
+
+function validateMode() {
+  if (!document.compForm.switchMode.checked) { return true ; }
+  alert("Uncheck \"Show HTML\".");
+  oDoc.focus();
+  return false;
+}
+
+function setDocMode(bToSource) {
+  var oContent;
+  if (bToSource) {
+    oContent = document.createTextNode(oDoc.innerHTML);
+    oDoc.innerHTML = "";
+    var oPre = document.createElement("pre");
+    oDoc.contentEditable = false;
+    oPre.id = "sourceText";
+    oPre.contentEditable = true;
+    oPre.appendChild(oContent);
+    oDoc.appendChild(oPre);
+  } else {
+    if (document.all) {
+      oDoc.innerHTML = oDoc.innerText;
+    } else {
+      oContent = document.createRange();
+      oContent.selectNodeContents(oDoc.firstChild);
+      oDoc.innerHTML = oContent.toString();
+    }
+    oDoc.contentEditable = true;
+  }
+  oDoc.focus();
+}
+
+function printDoc() {
+  if (!validateMode()) { return; }
+  var oPrntWin = window.open("","_blank","width=450,height=470,left=400,top=100,menubar=yes,toolbar=no,location=no,scrollbars=yes");
+  oPrntWin.document.open();
+  oPrntWin.document.write("<!doctype html><html><head><title>Print<\/title><\/head><body onload=\"print();\">" + oDoc.innerHTML + "<\/body><\/html>");
+  oPrntWin.document.close();
+}
+</script>
+<style type="text/css">
+.intLink { cursor: pointer; }
+img.intLink { border: 0; }
+#toolBar1 select { font-size:10px; }
+#textBox {
+  width: 540px;
+  height: 200px;
+  border: 1px #000000 solid;
+  padding: 12px;
+  overflow: scroll;
+}
+#textBox #sourceText {
+  padding: 0;
+  margin: 0;
+  min-width: 498px;
+  min-height: 200px;
+}
+#editMode label { cursor: pointer; }
+</style>
+</head>
+<body onload="initDoc();">
+<form name="compForm" method="post" action="sample.php" onsubmit="if(validateMode()){this.myDoc.value=oDoc.innerHTML;return true;}return false;">
+<input type="hidden" name="myDoc">
+<div id="toolBar1">
+<select onchange="formatDoc('formatblock',this[this.selectedIndex].value);this.selectedIndex=0;">
+<option selected>- formatting -</option>
+<option value="h1">Title 1 &lt;h1&gt;</option>
+<option value="h2">Title 2 &lt;h2&gt;</option>
+<option value="h3">Title 3 &lt;h3&gt;</option>
+<option value="h4">Title 4 &lt;h4&gt;</option>
+<option value="h5">Title 5 &lt;h5&gt;</option>
+<option value="h6">Subtitle &lt;h6&gt;</option>
+<option value="p">Paragraph &lt;p&gt;</option>
+<option value="pre">Preformatted &lt;pre&gt;</option>
+</select>
+<select onchange="formatDoc('fontname',this[this.selectedIndex].value);this.selectedIndex=0;">
+<option class="heading" selected>- font -</option>
+<option>Arial</option>
+<option>Arial Black</option>
+<option>Courier New</option>
+<option>Times New Roman</option>
+</select>
+<select onchange="formatDoc('fontsize',this[this.selectedIndex].value);this.selectedIndex=0;">
+<option class="heading" selected>- size -</option>
+<option value="1">Very small</option>
+<option value="2">A bit small</option>
+<option value="3">Normal</option>
+<option value="4">Medium-large</option>
+<option value="5">Big</option>
+<option value="6">Very big</option>
+<option value="7">Maximum</option>
+</select>
+<select onchange="formatDoc('forecolor',this[this.selectedIndex].value);this.selectedIndex=0;">
+<option class="heading" selected>- color -</option>
+<option value="red">Red</option>
+<option value="blue">Blue</option>
+<option value="green">Green</option>
+<option value="black">Black</option>
+</select>
+<select onchange="formatDoc('backcolor',this[this.selectedIndex].value);this.selectedIndex=0;">
+<option class="heading" selected>- background -</option>
+<option value="red">Red</option>
+<option value="green">Green</option>
+<option value="black">Black</option>
+</select>
+</div>
+<div id="toolBar2">
+<img class="intLink" title="Clean" onclick="if(validateMode()&&confirm('Are you sure?')){oDoc.innerHTML=sDefTxt};" src="data:image/gif;base64,R0lGODlhFgAWAIQbAD04KTRLYzFRjlldZl9vj1dusY14WYODhpWIbbSVFY6O7IOXw5qbms+wUbCztca0ccS4kdDQjdTLtMrL1O3YitHa7OPcsd/f4PfvrvDv8Pv5xv///////////////////yH5BAEKAB8ALAAAAAAWABYAAAV84CeOZGmeaKqubMteyzK547QoBcFWTm/jgsHq4rhMLoxFIehQQSAWR+Z4IAyaJ0kEgtFoLIzLwRE4oCQWrxoTOTAIhMCZ0tVgMBQKZHAYyFEWEV14eQ8IflhnEHmFDQkAiSkQCI2PDC4QBg+OAJc0ewadNCOgo6anqKkoIQA7" />
+<img class="intLink" title="Print" onclick="printDoc();" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oEBxcZFmGboiwAAAAIdEVYdENvbW1lbnQA9syWvwAAAuFJREFUOMvtlUtsjFEUx//n3nn0YdpBh1abRpt4LFqtqkc3jRKkNEIsiIRIBBEhJJpKlIVo4m1RRMKKjQiRMJRUqUdKPT71qpIpiRKPaqdF55tv5vvusZjQTjOlseUkd3Xu/3dPzusC/22wtu2wRn+jG5So/OCDh8ycMJDflehMlkJkVK7KUYN+ufzA/RttH76zaVocDptRxzQtNi3mRWuPc+6cKtlXZ/sddP2uu9uXlmYXZ6Qm8v4Tz8lhF1H+zDQXt7S8oLMXtbF4e8QaFHjj3kbP2MzkktHpiTjp9VH6iHiA+whtAsX5brpwueMGdONdf/2A4M7ukDs1JW662+XkqTkeUoqjKtOjm2h53YFL15pSJ04Zc94wdtibr26fXlC2mzRvBccEbz2kiRFD414tKMlEZbVGT33+qCoHgha81SWYsew0r1uzfNylmtpx80pngQQ91LwVk2JGvGnfvZG6YcYRAT16GFtW5kKKfo1EQLtfh5Q2etT0BIWF+aitq4fDbk+ImYo1OxvGF03waFJQvBCkvDffRyEtxQiFFYgAZTHS0zwAGD7fG5TNnYNTp8/FzvGwJOfmgG7GOx0SAKKgQgDMgKBI0NJGMEImpGDk5+WACEwEd0ywblhGUZ4Hw5OdUekRBLT7DTgdEgxACsIznx8zpmWh7k4rkpJcuHDxCul6MDsmmBXDlWCH2+XozSgBnzsNCEE4euYV4pwCpsWYPW0UHDYBKSWu1NYjENDReqtKjwn2+zvtTc1vMSTB/mvev/WEYSlASsLimcOhOBJxw+N3aP/SjefNL5GePZmpu4kG7OPr1+tOfPyUu3BecWYKcwQcDFmwFKAUo90fhKDInBCAmvqnyMgqUEagQwCoHBDc1rjv9pIlD8IbVkz6qYViIBQGTJPx4k0XpIgEZoRN1Da0cij4VfR0ta3WvBXH/rjdCufv6R2zPgPH/e4pxSBCpeatqPrjNiso203/5s/zA171Mv8+w1LOAAAAAElFTkSuQmCC">
+<img class="intLink" title="Undo" onclick="formatDoc('undo');" src="data:image/gif;base64,R0lGODlhFgAWAOMKADljwliE33mOrpGjuYKl8aezxqPD+7/I19DV3NHa7P///////////////////////yH5BAEKAA8ALAAAAAAWABYAAARR8MlJq7046807TkaYeJJBnES4EeUJvIGapWYAC0CsocQ7SDlWJkAkCA6ToMYWIARGQF3mRQVIEjkkSVLIbSfEwhdRIH4fh/DZMICe3/C4nBQBADs=" />
+<img class="intLink" title="Redo" onclick="formatDoc('redo');" src="data:image/gif;base64,R0lGODlhFgAWAMIHAB1ChDljwl9vj1iE34Kl8aPD+7/I1////yH5BAEKAAcALAAAAAAWABYAAANKeLrc/jDKSesyphi7SiEgsVXZEATDICqBVJjpqWZt9NaEDNbQK1wCQsxlYnxMAImhyDoFAElJasRRvAZVRqqQXUy7Cgx4TC6bswkAOw==" />
+<img class="intLink" title="Remove formatting" onclick="formatDoc('removeFormat')" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9oECQMCKPI8CIIAAAAIdEVYdENvbW1lbnQA9syWvwAAAuhJREFUOMtjYBgFxAB501ZWBvVaL2nHnlmk6mXCJbF69zU+Hz/9fB5O1lx+bg45qhl8/fYr5it3XrP/YWTUvvvk3VeqGXz70TvbJy8+Wv39+2/Hz19/mGwjZzuTYjALuoBv9jImaXHeyD3H7kU8fPj2ICML8z92dlbtMzdeiG3fco7J08foH1kurkm3E9iw54YvKwuTuom+LPt/BgbWf3//sf37/1/c02cCG1lB8f//f95DZx74MTMzshhoSm6szrQ/a6Ir/Z2RkfEjBxuLYFpDiDi6Af///2ckaHBp7+7wmavP5n76+P2ClrLIYl8H9W36auJCbCxM4szMTJac7Kza////R3H1w2cfWAgafPbqs5g7D95++/P1B4+ECK8tAwMDw/1H7159+/7r7ZcvPz4fOHbzEwMDwx8GBgaGnNatfHZx8zqrJ+4VJBh5CQEGOySEua/v3n7hXmqI8WUGBgYGL3vVG7fuPK3i5GD9/fja7ZsMDAzMG/Ze52mZeSj4yu1XEq/ff7W5dvfVAS1lsXc4Db7z8C3r8p7Qjf///2dnZGxlqJuyr3rPqQd/Hhyu7oSpYWScylDQsd3kzvnH738wMDzj5GBN1VIWW4c3KDon7VOvm7S3paB9u5qsU5/x5KUnlY+eexQbkLNsErK61+++VnAJcfkyMTIwffj0QwZbJDKjcETs1Y8evyd48toz8y/ffzv//vPP4veffxpX77z6l5JewHPu8MqTDAwMDLzyrjb/mZm0JcT5Lj+89+Ybm6zz95oMh7s4XbygN3Sluq4Mj5K8iKMgP4f0////fv77//8nLy+7MCcXmyYDAwODS9jM9tcvPypd35pne3ljdjvj26+H2dhYpuENikgfvQeXNmSl3tqepxXsqhXPyc666s+fv1fMdKR3TK72zpix8nTc7bdfhfkEeVbC9KhbK/9iYWHiErbu6MWbY/7//8/4//9/pgOnH6jGVazvFDRtq2VgiBIZrUTIBgCk+ivHvuEKwAAAAABJRU5ErkJggg==">
+<img class="intLink" title="Bold" onclick="formatDoc('bold');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAInhI+pa+H9mJy0LhdgtrxzDG5WGFVk6aXqyk6Y9kXvKKNuLbb6zgMFADs=" />
+<img class="intLink" title="Italic" onclick="formatDoc('italic');" src="data:image/gif;base64,R0lGODlhFgAWAKEDAAAAAF9vj5WIbf///yH5BAEAAAMALAAAAAAWABYAAAIjnI+py+0Po5x0gXvruEKHrF2BB1YiCWgbMFIYpsbyTNd2UwAAOw==" />
+<img class="intLink" title="Underline" onclick="formatDoc('underline');" src="data:image/gif;base64,R0lGODlhFgAWAKECAAAAAF9vj////////yH5BAEAAAIALAAAAAAWABYAAAIrlI+py+0Po5zUgAsEzvEeL4Ea15EiJJ5PSqJmuwKBEKgxVuXWtun+DwxCCgA7" />
+<img class="intLink" title="Left align" onclick="formatDoc('justifyleft');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAIghI+py+0Po5y02ouz3jL4D4JMGELkGYxo+qzl4nKyXAAAOw==" />
+<img class="intLink" title="Center align" onclick="formatDoc('justifycenter');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAIfhI+py+0Po5y02ouz3jL4D4JOGI7kaZ5Bqn4sycVbAQA7" />
+<img class="intLink" title="Right align" onclick="formatDoc('justifyright');" src="data:image/gif;base64,R0lGODlhFgAWAID/AMDAwAAAACH5BAEAAAAALAAAAAAWABYAQAIghI+py+0Po5y02ouz3jL4D4JQGDLkGYxouqzl43JyVgAAOw==" />
+<img class="intLink" title="Numbered list" onclick="formatDoc('insertorderedlist');" src="data:image/gif;base64,R0lGODlhFgAWAMIGAAAAADljwliE35GjuaezxtHa7P///////yH5BAEAAAcALAAAAAAWABYAAAM2eLrc/jDKSespwjoRFvggCBUBoTFBeq6QIAysQnRHaEOzyaZ07Lu9lUBnC0UGQU1K52s6n5oEADs=" />
+<img class="intLink" title="Dotted list" onclick="formatDoc('insertunorderedlist');" src="data:image/gif;base64,R0lGODlhFgAWAMIGAAAAAB1ChF9vj1iE33mOrqezxv///////yH5BAEAAAcALAAAAAAWABYAAAMyeLrc/jDKSesppNhGRlBAKIZRERBbqm6YtnbfMY7lud64UwiuKnigGQliQuWOyKQykgAAOw==" />
+<img class="intLink" title="Quote" onclick="formatDoc('formatblock','blockquote');" src="data:image/gif;base64,R0lGODlhFgAWAIQXAC1NqjFRjkBgmT9nqUJnsk9xrFJ7u2R9qmKBt1iGzHmOrm6Sz4OXw3Odz4Cl2ZSnw6KxyqO306K63bG70bTB0rDI3bvI4P///////////////////////////////////yH5BAEKAB8ALAAAAAAWABYAAAVP4CeOZGmeaKqubEs2CekkErvEI1zZuOgYFlakECEZFi0GgTGKEBATFmJAVXweVOoKEQgABB9IQDCmrLpjETrQQlhHjINrTq/b7/i8fp8PAQA7" />
+<img class="intLink" title="Delete indentation" onclick="formatDoc('outdent');" src="data:image/gif;base64,R0lGODlhFgAWAMIHAAAAADljwliE35GjuaezxtDV3NHa7P///yH5BAEAAAcALAAAAAAWABYAAAM2eLrc/jDKCQG9F2i7u8agQgyK1z2EIBil+TWqEMxhMczsYVJ3e4ahk+sFnAgtxSQDqWw6n5cEADs=" />
+<img class="intLink" title="Add indentation" onclick="formatDoc('indent');" src="data:image/gif;base64,R0lGODlhFgAWAOMIAAAAADljwl9vj1iE35GjuaezxtDV3NHa7P///////////////////////////////yH5BAEAAAgALAAAAAAWABYAAAQ7EMlJq704650B/x8gemMpgugwHJNZXodKsO5oqUOgo5KhBwWESyMQsCRDHu9VOyk5TM9zSpFSr9gsJwIAOw==" />
+<img class="intLink" title="Hyperlink" onclick="var sLnk=prompt('Write the URL here','http:\/\/');if(sLnk&&sLnk!=''&&sLnk!='http://'){formatDoc('createlink',sLnk)}" src="data:image/gif;base64,R0lGODlhFgAWAOMKAB1ChDRLY19vj3mOrpGjuaezxrCztb/I19Ha7Pv8/f///////////////////////yH5BAEKAA8ALAAAAAAWABYAAARY8MlJq7046827/2BYIQVhHg9pEgVGIklyDEUBy/RlE4FQF4dCj2AQXAiJQDCWQCAEBwIioEMQBgSAFhDAGghGi9XgHAhMNoSZgJkJei33UESv2+/4vD4TAQA7" />
+<img class="intLink" title="Cut" onclick="formatDoc('cut');" src="data:image/gif;base64,R0lGODlhFgAWAIQSAB1ChBFNsRJTySJYwjljwkxwl19vj1dusYODhl6MnHmOrpqbmpGjuaezxrCztcDCxL/I18rL1P///////////////////////////////////////////////////////yH5BAEAAB8ALAAAAAAWABYAAAVu4CeOZGmeaKqubDs6TNnEbGNApNG0kbGMi5trwcA9GArXh+FAfBAw5UexUDAQESkRsfhJPwaH4YsEGAAJGisRGAQY7UCC9ZAXBB+74LGCRxIEHwAHdWooDgGJcwpxDisQBQRjIgkDCVlfmZqbmiEAOw==" />
+<img class="intLink" title="Copy" onclick="formatDoc('copy');" src="data:image/gif;base64,R0lGODlhFgAWAIQcAB1ChBFNsTRLYyJYwjljwl9vj1iE31iGzF6MnHWX9HOdz5GjuYCl2YKl8ZOt4qezxqK63aK/9KPD+7DI3b/I17LM/MrL1MLY9NHa7OPs++bx/Pv8/f///////////////yH5BAEAAB8ALAAAAAAWABYAAAWG4CeOZGmeaKqubOum1SQ/kPVOW749BeVSus2CgrCxHptLBbOQxCSNCCaF1GUqwQbBd0JGJAyGJJiobE+LnCaDcXAaEoxhQACgNw0FQx9kP+wmaRgYFBQNeAoGihCAJQsCkJAKOhgXEw8BLQYciooHf5o7EA+kC40qBKkAAAGrpy+wsbKzIiEAOw==" />
+<img class="intLink" title="Paste" onclick="formatDoc('paste');" src="data:image/gif;base64,R0lGODlhFgAWAIQUAD04KTRLY2tXQF9vj414WZWIbXmOrpqbmpGjudClFaezxsa0cb/I1+3YitHa7PrkIPHvbuPs+/fvrvv8/f///////////////////////////////////////////////yH5BAEAAB8ALAAAAAAWABYAAAWN4CeOZGmeaKqubGsusPvBSyFJjVDs6nJLB0khR4AkBCmfsCGBQAoCwjF5gwquVykSFbwZE+AwIBV0GhFog2EwIDchjwRiQo9E2Fx4XD5R+B0DDAEnBXBhBhN2DgwDAQFjJYVhCQYRfgoIDGiQJAWTCQMRiwwMfgicnVcAAAMOaK+bLAOrtLUyt7i5uiUhADs=" />
+</div>
+<div id="textBox" contenteditable="true"><p>Lorem ipsum</p></div>
+<p id="editMode"><input type="checkbox" name="switchMode" id="switchBox" onchange="setDocMode(this.checked);" /> <label for="switchBox">Show HTML</label></p>
+<p><input type="submit" value="Send" /></p>
+</form>
+</body>
+</html>
+
+
+ +
Note: if you want to see how to standardize the creation and the insertion of your editor in your page, please see our more complete rich-text editor example.
+ +

See also

+ + diff --git a/files/pl/web/guide/index.html b/files/pl/web/guide/index.html new file mode 100644 index 0000000000..33786c5980 --- /dev/null +++ b/files/pl/web/guide/index.html @@ -0,0 +1,55 @@ +--- +title: Podręcznik web developera +slug: Web/Guide +tags: + - podręcznik + - sieć +translation_of: Web/Guide +--- +

W tym artykule przedstawiono informacje o sposobie korzystania z określonych technologii i interfejsów API.

+ +
+
+
+
HTML
+
Hipertekstowy język znaczników (ang. HyperText Markup Language - HTML) jest podstawowym językiem niemal wszystkich treści internetowych. Większość tego, co widzisz w przeglądarce jest opisane zasadniczo przy użyciu HTML.
+
CSS
+
Kaskadowe arkusze stylów (ang. Cascading Style Sheets - CSS) to język używany do opisu prezentacji dokumetu napisanego w HTML.
+
Zdarzenia
+
Zdarzenia odnoszą się zarówno do wzorców projektowych używanych do asynchronicznej obsługi różnych incydentów występujących w czasie życia strony internetowej jak i do nazywania, charakteryzowania  i stosowania dużej ilości incydentów różnego rodzaju.
+
AJAX
+
AJAX jest pojęciem odnoszącym się do grupy technologii, umożliwiającym aplikacjom szybkie, stopniowe aktualizowanie interfejsu użytkownika, bez przeładowywania całej strony przegladarki. Czyni to aplikacje szybszymi i lepiej reagującymi na działania użytkownika.
+
Grafika internetowa
+
Nowoczesne strony internetowe i aplikacje często muszą prezentować grafike o różnym wyrafinowaniu.
+
Przewodnik po internetowych interfejsach API
+
Wykaz wszystkich internetowych internfejsów API i wyjaśnienie do czego służą.
+
JavaScript
+
JavaScript to potężny język skryptowy używany do tworzenia aplikacji internetowych.
+
Lokalizacje i kodowanie znaków
+
Przeglądarki przetwarzają wewnętrznie tekst jako Unicode. Jednak, dla transferu tekstu przez sieć do przegladarki stosuje się różne kodowanie znaków, polegajace na reprezentacji znaków w postaci bajtów, co jest uwarunkowane językiem treści (lokalizacją).  Specyfikacja HTML zaleca używanie kodowania UTF-8 (które reprezentuje cały Unicode) i niezależnie od użytego kodowania, deklarowanie kodowania w metadanych dokumentu HTML.
+
Tworznie mobilnych stron i aplikacji
+
Ta strona omawia kilka głównych technik stosowanych przy tworzeniu stron internetowych , które dobrze wyglądają i działają na urzadzeniach mobilnych. Jeżeli szukasz informacji o projekcie Firefox OS Mozillii, zobacz stronę Firefox OS . Interesująca może być też dla Ciebie strona o Firefox dla Android.
+
+
+ +
+
+
Optymalizacja i wydajność
+
Podczas tworzenia nowoczesnych aplikacji internetowych i stron jest ważne, aby działały one szybko i sprawnie. Pozwala to na efektywność zarówno na systemach dektopowych jak i urządzeniach przenośnych.
+
Parsowanie i serializowanie XML
+
Ta platforma internetowa opisuje różne metody parsowania i serializowania dokumentów XML, z których każd ma swoje zalety i wady.
+
Otwarty internetowy format czcionki (Web Open Font Format - WOFF)
+
WOFF (Web Open Font Format) to format czcionki, który jest bezpłatny dla każdego uzytkownika internetu.
+
Stosowanie obiektów FormData
+
Obiekt FormData pozwala skompilować zestaw par klucz-wartość do wysłania przy użyciu XMLHttpRequest. Jest przeznaczony głównie do wysyłania danych formularzy, ale można go wykorzystać również do transmisji danych z kluczami poza formularzami. Transmisja odbywa się w tym samym formacie co metoda submit()  formularzy, stosowaną gdy typ kodowania w formularza jest ustawiony na "multipart/form-data".
+
Słownik
+
Podaje definicje wielu pojęć związanych z siecią web i Internetem.
+
+
+
+ +

See also

+ + diff --git a/files/pl/web/guide/liczniki_css/index.html b/files/pl/web/guide/liczniki_css/index.html new file mode 100644 index 0000000000..3c494e6af3 --- /dev/null +++ b/files/pl/web/guide/liczniki_css/index.html @@ -0,0 +1,86 @@ +--- +title: Liczniki CSS +slug: Web/Guide/Liczniki_CSS +tags: + - CSS + - Wszystkie_kategorie +translation_of: Web/CSS/CSS_Lists_and_Counters/Using_CSS_counters +--- +

 

+ +

Podsumowanie

+ +

Liczniki w CSS zostały opisane w sekcji Automatic counters and numbering dokumentacji CSS 2.1. Wartość licznika jest ustawiana poprzez użycie własności counter-reset oraz counter-increment, natomiast wyświetlana jest przy wykorzystaniu funkcji counter() lub counters() należących do własności content.

+ +

Zastosowanie liczników

+ +

Aby użyć licznika CSS, należy najpierw ustawić mu wartość (domyślnie jest to 0) przy pomocy własności reset. Aby wyświetlić wartość licznika w danym elemencie należy skorzystać z funkcji counter(). Poniższy przykład dodaje na początku każdego elementu h1 "Sekcja wartość licznika:".

+ +
  body {
+    counter-reset: sekcja;           /* Ustawienie licznika sekcja na 0 */
+  }
+  h1::before {
+    counter-increment: sekcja;               /* Zwiększa licznik sekcja */
+    content: "Sekcja " counter(sekcja) ": ";       /* Wyświetla licznik */
+  }
+
+ +

Zagnieżdżanie liczników

+ +

Liczniki CSS mogą być szczególnie użyteczne przy listach uporządkowanych (ol), ponieważ nowa instancja licznika CSS jest automatycznie tworzona dla potomków danego elementu. Użycie funkcji counters() pozwala na dodanie ciągu znaków, który będzie oddzielał kolejne poziomy zagnieżdżonych liczników:

+ +
  ol {
+    counter-reset: sekcja;                /* Tworzy nową instancję licznika
+                                             sekcja w każdym elemencie ol */
+    list-style-type: none;                /* Usuwa domyślnie wyświetlany licznik */
+  }
+  li::before {
+    counter-increment: sekcja;            /* Zwiększa tylko tę instancję
+                                             licznika sekcja */
+    content: counters(sekcja, ".") " ";   /* Wyświetla wartości wszystkich
+                                             instancji licznika sekcja,
+                                             oddzielając je ciągiem ".". */
+  }
+
+ +

Przykładowy HTML (w komentarzach podano wartość wygenerowanego licznika):

+ +
<ol>
+  <li>item</li>          <!-- 1     -->
+  <li>item               <!-- 2     -->
+    <ol>
+      <li>item</li>      <!-- 2.1   -->
+      <li>item</li>      <!-- 2.2   -->
+      <li>item           <!-- 2.3   -->
+        <ol>
+          <li>item</li>  <!-- 2.3.1 -->
+          <li>item</li>  <!-- 2.3.2 -->
+        </ol>
+        <ol>
+          <li>item</li>  <!-- 2.3.1 -->
+          <li>item</li>  <!-- 2.3.2 -->
+          <li>item</li>  <!-- 2.3.3 -->
+        </ol>
+      </li>
+      <li>item</li>      <!-- 2.4   -->
+    </ol>
+  </li>
+  <li>item</li>          <!-- 3     -->
+  <li>item</li>          <!-- 4     -->
+</ol>
+<ol>
+  <li>item</li>          <!-- 1     -->
+  <li>item</li>          <!-- 2     -->
+</ol>
+
+ +

Zobacz także

+ + + +

potrzebna treść do artykułu

+ +

{{ languages( { "en": "en/CSS_Counters", "fr": "fr/Compteurs_CSS" } ) }}

diff --git a/files/pl/web/guide/performance/index.html b/files/pl/web/guide/performance/index.html new file mode 100644 index 0000000000..00c4b9d7fe --- /dev/null +++ b/files/pl/web/guide/performance/index.html @@ -0,0 +1,14 @@ +--- +title: Optimization and performance +slug: Web/Guide/Performance +tags: + - Landing + - NeedsTranslation + - Optimization + - Performance + - TopicStub + - Web +translation_of: Web/Guide/Performance +--- +

When building modern Web apps and sites, it's important to make your content perform well. That is, to make it work quickly and efficiently. This lets it work effectively both for users of powerful desktop systems as well as for handheld devices with less power.

+

{{LandingPageListSubpages}}

diff --git a/files/pl/web/html(pl)/index.html b/files/pl/web/html(pl)/index.html new file mode 100644 index 0000000000..2bc10ea70b --- /dev/null +++ b/files/pl/web/html(pl)/index.html @@ -0,0 +1,108 @@ +--- +title: 'HTML: Hipertekstowy Język Znaczników' +slug: Web/HTML(PL) +tags: + - HTML + - HTML5 + - Landing + - Web + - 'l10n:priority' +translation_of: Web/HTML +--- +
{{HTMLSidebar}}
+ +

HTML (HyperText Markup Language) jest najbardziej podstawowym elementem składowym sieci Web. Definiuje on znaczenie i strukturę treści stron internetowych. Inne technologie poza HTML są używane do opisu wyglądu/prezentacji strony internetowej (CSS) lub funkcjonalności/zachowania (JavaScript).

+ +

"Hipertekst" (HyperText) odnosi się do linków łączących ze sobą strony internetowe, zarówno w obrębie jednej strony internetowej, jak i pomiędzy różnymi stronami internetowymi. Linki są podstawowym aspektem sieci Web. Umieszczając treści w Internecie i linkując je do stron stworzonych przez inne osoby, stajesz się aktywnym uczestnikiem sieci World Wide Web.

+ +

HTML używa "znaczników" do opisywania tekstu, obrazów i innych treści do wyświetlania w przeglądarce internetowej. Znacznik HTML zawiera specjalne "elementy", takie jak {{HTMLElement("head")}}, {{HTMLElement("title")}}, {{HTMLElement("body")}}, {{HTMLElement("header")}}, {{HTMLElement("footer")}}, {{HTMLElement("article")}}, {{HTMLElement("section")}}, {{HTMLElement("p")}}, {{HTMLElement("div")}}, {{HTMLElement("span")}}, {{HTMLElement("img")}}, {{HTMLElement("aside")}}, {{HTMLElement("audio")}}, {{HTMLElement("canvas")}}, {{HTMLElement("datalist")}}, {{HTMLElement("details")}}, {{HTMLElement("embed")}}, {{HTMLElement("nav")}}, {{HTMLElement("output")}}, {{HTMLElement("progress")}}, {{HTMLElement("video")}} i wiele innych.

+ +

Element HTML jest odróżniany od zwykłego tekstu w dokumencie za pomocą "tagów", które składają się z nazwy elementu otoczonego przez "<" oraz ">". Nazwa elementu wewnątrz znacznika nie rozróżnia wielkości liter. Oznacza to, że może być napisana wielkimi, małymi lub zmieszanymi literami. Na przykład tag <title> może być zapisany jako <Title>,<TITLE> lub w inny sposób.

+ +

Poniższe artykuły pomogą Ci dowiedzieć się więcej o HTML.

+ +
+
    +
  • Wprowadzenie do HTML + +

    Jeśli dopiero rozpoczynasz tworzenie stron internetowych, zapoznaj się z naszym artykułem Podstawy HTML, aby dowiedzieć się czym jest HTML i jak go używać.

    +
  • +
  • Poradniki HTML +

    Aby zapoznać się z artykułami o tym jak korzystać z HTML, jak również z samouczkami i kompletnymi przykładami, sprawdź naszą Strefę Nauki HTML.

    +
  • +
  • Odniesienia HTML +

    W naszej obszernej sekcji Odniesienia HTML, znajdziesz szczegóły dotyczące każdego elementu i atrybutu w HTML.

    +
  • +
+ +
+
+

Poradniki dla początkujących

+ +

Nasza Strefa Nauki HTML zawiera wiele modułów, które uczą HTML od podstaw - nie jest wymagana wcześniejsza wiedza.

+ +
+
Wprowadzenie do HTML
+
Ten moduł jest etapem, który pozwala przyzwyczaić się do ważnych pojęć i składni, takich jak spojrzenie na zastosowanie HTML dla tekstu, jak tworzyć hiperłącza i jak używać HTML do strukturyzacji strony internetowej.
+
+ +
+
Multimedia i osadzanie
+
Moduł ten wyjaśnia jak używać HTML do umieszczania multimediów na stronach internetowych, w tym różnych sposobów na dodawanie obrazów oraz osadzanie wideo, audio, a nawet całych innych stron internetowych.
+
Tabele HTML
+
Przedstawienie danych tabelarycznych na stronie internetowej w zrozumiały i dostępny sposób może być wyzwaniem. Moduł ten obejmuje podstawowe znaczniki tabelaryczne wraz z bardziej złożonymi funkcjami, takimi jak implementacja podpisów i podsumowań.
+
Formularze HTML
+
Formularze są bardzo ważną częścią sieci Web — zapewniają one wiele funkcji potrzebnych do interakcji z witrynami internetowymi, np. rejestracja i logowanie, wysyłanie opinii, kupowanie produktów i wiele więcej. Ten moduł przygotuje Cię do rozpoczęcia tworzenia części formularzy po stronie klienta/front-end.
+
Użyj HTML do rozwiązywania częstych problemów
+
Zawiera linki do sekcji wyjaśniających, jak używać HTML do rozwiązywania bardzo powszechnych problemów przy tworzeniu strony internetowej: radzenie sobie z tytułami, dodawanie zdjęć lub filmów, podkreślanie treści, tworzenie podstawowej formy, itp.
+
+ +

Zaawansowane zagadnienia

+ +
+
CORS z włączoną funkcją obrazów
+
Atrybut {{htmlattrxref("crossorigin", "img")}}, w połączeniu z odpowiednim nagłówkiem {{glossary("CORS")}}, pozwala na ładowanie obrazów zdefiniowanych przez element {{HTMLElement("img")}} z innych źródeł i używanie ich w elemencie {{HTMLElement("canvas")}} tak, jakby były ładowane z lokalnego źródła.
+
Ustawienia atrybutów CORS
+
Niektóre elementy HTML, które zapewniają wsparcie dla CORS, takie jak {{HTMLElement("img")}} lub {{HTMLElement("video")}}, posiadają atrybut crossorigin (właściwość crossOrigin), który umożliwia konfigurację żądań CORS dla wczytywanych przez ten element danych.
+
Zarządzanie metodą focus w HTML
+
Atrybut activeElement w DOM i metoda hasFocus() w DOM pomagają śledzić i kontrolować interakcje użytkownika z elementami na stronie internetowej.
+
Korzystanie z pamięci podręcznej aplikacji
+
Buforowanie aplikacji umożliwia uruchamianie aplikacji internetowych w trybie offline. Możesz użyć interfejsu Application Cache (AppCache) aby określić zasoby, które przeglądarka powinna buforować i udostępniać użytkownikom offline. Aplikacje, które są buforowane i działają poprawnie, nawet jeśli użytkownicy kliknęli przycisk odświeżania, gdy są w trybie offline.
+
Wstępne ładowanie treści z rel="preload"
+
Wartość preload atrybutu {{htmlattrxref("rel", "link")}} elementu {{htmlelement("link")}} pozwala na pisanie deklaratywnych żądań pobrania w sekcji {{htmlelement("head")}} dokumentu HTML, określając zasoby, które strony będą potrzebowały bardzo szybko po załadowaniu, których w związku z tym chcesz rozpocząć ładowanie od razu na początku cyklu życia strony, zanim uruchomi się główna maszyna renderująca w przeglądarce. Dzięki temu są one dostępne wcześniej i istnieje mniejsze ryzyko zablokowania pierwszego renderu strony, co prowadzi do poprawy wydajności. Ten artykuł zawiera podstawowy przewodnik po tym, jak działa ładowanie wstępne.
+
+
+ +
+

Odniesienia

+ +
+
Odniesienia HTML
+
HTML składa się z elementów, z których każdy może być modyfikowany przez pewną liczbę atrybutów. Dokumenty HTML są ze sobą połączone linkami.
+
Odniesienia do elementów HTML
+
Przeglądaj listę wszystkich {{glossary("Element", "elementów")}} {{glossary("HTML")}}.
+
Odniesienia do atrybutów HTML
+
Elementy w HTML mają atrybuty. Są to dodatkowe wartości, które konfigurują elementy lub dostosowują ich zachowanie na różne sposoby.
+
Atrybuty globalne
+
Atrybuty globalne mogą być definiowane na wszystkich elementach HTML, nawet tych, które nie zostały określone w standardzie. Oznacza to, że wszelkie niestandardowe elementy muszą nadal zezwalać na te atrybuty, nawet jeśli elementy te sprawiają, że dokument jest niezgodny z HTML5.
+
Elementy inline oraz Elementy block-level
+
Elementy HTML są zazwyczaj elementami "inline" lub "block-level". Element inline zajmuje tylko przestrzeń ograniczoną znacznikami, które go definiują. Element block-level zajmuje całą przestrzeń elementu nadrzędnego (kontenera), tworząc w ten sposób "blok".
+
Rodzaje odnośników
+
W HTML, różne typy linków mogą być użyte do nawiązania i zdefiniowania relacji pomiędzy dwoma dokumentami. Elementy odnośników, na których można ustawiać typy to {{HTMLElement("a")}}, {{HTMLElement("area")}} oraz {{HTMLElement("link")}}.
+
Formaty multimedialne obsługiwane przez elementy audio i wideo
+
Elementy {{HTMLElement("audio")}} oraz {{HTMLElement("video")}} umożliwiają odtwarzanie multimediów audio i wideo. Elementy te stanowią alternatywę dla podobnych funkcji w Adobe Flash i innych wtyczkach.
+
Rodzaje treści w HTML
+
HTML składa się z kilku rodzajów treści, z których każda może być używana w określonych kontekstach, a w innych jest niedozwolona. Podobnie, każda z nich posiada zestaw innych kategorii zawartości, które mogą zawierać oraz elementy, które mogą lub nie mogą być w nich użyte. To jest przewodnik po tych kategoriach.
+
Tryb Quirks oraz tryb standardów
+
Historyczne informacje o trybie quirks i trybie standardów.
+
+ +

Tematy powiązane

+ +
+
Zastosowanie koloru do elementów HTML przy użyciu CSS
+
W tym artykule omówiono większość sposobów na użycie CSS w celu dodania kolorów do zawartości HTML, wymieniając które części dokumentów HTML mogą być kolorowane i jakie właściwości CSS mogą być do tego użyte. Zawiera przykłady, odnośniki do narzędzi do budowania palet i wiele innych.
+
+
+
+Zobacz wszystkie...
diff --git a/files/pl/web/html(pl)/tryb_zgodnosci_oraz_tryb_standardow/index.html b/files/pl/web/html(pl)/tryb_zgodnosci_oraz_tryb_standardow/index.html new file mode 100644 index 0000000000..72018a6571 --- /dev/null +++ b/files/pl/web/html(pl)/tryb_zgodnosci_oraz_tryb_standardow/index.html @@ -0,0 +1,54 @@ +--- +title: Tryb Zgodności (Quirks Mode) i Tryb Standardów +slug: Web/HTML(PL)/Tryb_Zgodnosci_oraz_Tryb_Standardow +tags: + - Gecko + - Guide + - HTML + - NeedsUpdate + - Web Development + - Web Standards + - XHTML +translation_of: Web/HTML/Quirks_Mode_and_Standards_Mode +--- +

W dawnych czasach strony internetowe zwykle pisane były w dwóch wersjach: Jedna dla Netscape Navigator i jedna dla Microsoft Internet Explorer. Kiedy standardy sieciowe były tworzone w W3C, przeglądarki nie mogły po prostu zacząć z nich korzystać, ponieważ w ten sposób zniszczyłyby większość istniejących stron internetowych. W związku z tym przeglądarki wprowadziły dwa tryby traktowania nowych witryn zgodnych ze standardami w inny sposób niż witryn starej generacji.

+ +

Obecnie w przeglądarkach internetowych stosowane są trzy tryby pracy silników układu graficznego: tryb zgodności (tryb quirks), tryb prawie standardowy oraz tryb pełnego standardu. W trybie zgodności układ emuluje niestandardowe zachowanie w Navigator 4 i Internet Explorer 5. Jest to niezbędne do obsługi stron internetowych, które powstały przed powszechnym przyjęciem standardów internetowych. W trybie pełnych standardów, zachowanie jest (miejmy nadzieję) zachowaniem opisanym przez specyfikacje HTML i CSS. W trybie prawie standardowym zaimplementowana jest bardzo mała liczba kompatybilności.

+ +

Jak przeglądarki decydują, z którego trybu korzystać?

+ +

W przypadku dokumentów HTML, przeglądarki używają DOCTYPE na początku dokumentu, aby zdecydować, czy obsługiwać go w trybie zgodności, czy też w trybie standardów. Aby zagwarantować, że strona korzysta z trybu pełnego standardu, upewnij się że strona ma DOCTYPE, tak jak w tym przykładzie:

+ +
<!DOCTYPE html>
+<html lang="pl">
+  <head>
+    <meta charset="UTF-8">
+    <title>Witaj, Świecie!</title>
+  </head>
+  <body>
+  </body>
+</html>
+ +

DOCTYPE pokazany w przykładzie, <!DOCTYPE html>, jest najprostrzy z możliwych i zalecany przez HTML5. Wcześniejsze wersje standardu HTML zalecały inne warianty, ale wszystkie istniejące obecnie przeglądarki będą korzystały z trybu pełnego standardu dla DOCTYPE, nawet z przestarzałego Internet Explorera 6. Nie ma uzasadnionych powodów, aby używać bardziej skomplikowanego DOCTYPE. Jeśli używasz innego DOCTYPE, możesz być narażony na ryzyko wybrania takiego, który uruchamia prawie standardowy tryb lub tryb zgodności.

+ +

Upewnij się, że umieścisz DOCTYPE bezpośrednio na początku dokumentu HTML. Wszystko przed DOCTYPE, takie jak komentarz czy deklaracja XML, wyzwoli tryb zgodnści w Internet Explorerze 9 i starszych.

+ +

W HTML5, jedynym celem DOCTYPE jest aktywowanie trybu pełnego standardu. Starsze wersje standardu HTML nadawały dodatkowe znaczenie DOCTYPE, ale żadna przeglądarka nie używała DOCTYPE do innych celów niż przełączanie pomiędzy trybem zgodności a trybem standardów.

+ +

Zobacz również szczegółowy opis tego, kiedy różne przeglądarki wybierają różne tryby pracy.

+ +

XHTML

+ +

Jeśli podajesz swoją stronę jako XHTML używając application/xhtml+xml MIME type w Content-Type HTTP header, nie potrzebujesz DOCTYPE, aby włączyć tryb standardów. Należy jednak pamiętać, że podawanie stron jako application/xhtml+xml spowoduje, że Internet Explorer 8 wyświetli okno dialogowe pobierania nieznanego formatu zamiast wyświetlania strony, ponieważ pierwszą wersją Internet Explorera z obsługą XHTML jest Internet Explorer 9.

+ +

Jeśli tworzysz treści w formacie XHTML używając text/html MIME type, przeglądarki przeczytają je jako HTML i będziesz potrzebował DOCTYPE do korzystania z trybu standardów.

+ +

Jak sprawdzić, który tryb jest używany?

+ +

W Firefoksie wybierz opcję View Page Info z menu kontekstowego i poszukaj trybu Render Mode.

+ +

W Internet Explorerze naciśnij F12 i poszukaj Document Mode.

+ +

Jakie są różnice pomiędzy trybami?

+ +

Zobacz listę zgodności oraz tryb prawie standardowy, aby poznać różnice pomiędzy trybami.

diff --git a/files/pl/web/html/canvas/index.html b/files/pl/web/html/canvas/index.html new file mode 100644 index 0000000000..e4bf56c5e7 --- /dev/null +++ b/files/pl/web/html/canvas/index.html @@ -0,0 +1,55 @@ +--- +title: Canvas +slug: Web/HTML/Canvas +translation_of: Web/API/Canvas_API +--- +
+ {{outdated()}}
+
+

Canvas (<canvas>) jest nowym elementem HTML, który może być użyty do rysowania grafik przy użyciu skryptów (zazwyczaj JavaScript). Na przykład może być użyty do rysowania wykresów, tworzenia kompozycji fotografii lub do prostych (i nie tylko prostych) animacji.

+

Po raz pierwszy <canvas> został przedstawiony przez Apple dla Mac OS X Dashboard i później zaimplementowany w Safari. Przeglądarki oparte o silnik Gecko począwszy od wersji 1.8 (tj. Firefox 1.5 oraz późniejsze) obsługują ten nowy element. Również Opera 9 go wspiera. Czynione są starania, aby <canvas> był obsługiwany przez Internet Explorera (zobacz ).

+

Element <canvas> jest częścią specyfikacji WhatWG Web applications 1.0 znanej także jako HTML 5.

+
+ + + + + + + +
+

Dokumentacja

+
+
+ Rysowanie grafik za pomocą Canvas
+
+ Wprowadzenie do <canvas>.
+
+ Przewodnik po canvas
+
+ <canvas> jest nowym elementem HTML, który może być użyty do rysowania grafik przy użyciu skryptów (zazwyczaj JavaScript). Na przykład może być użyty do rysowania wykresów, tworzenia kompozycji fotografii lub do prostych (i nie tylko prostych) animacji.
+
+ Fragmenty kodu:Canvas
+
+ Fragmenty kodu z użyciem <canvas>.
+
+ Przykłady Canvas
+
+ Lista różnych przykładów stosujących <canvas>.
+
+ Rysowanie tekstu za pomocą Canvas
+
+ Dokumentacja nowych własności <canvas> dostępnych począwszy od Firefoksa 3
+
+
+

Społeczność

+ + + +
+

 

diff --git a/files/pl/web/html/element/a/index.html b/files/pl/web/html/element/a/index.html new file mode 100644 index 0000000000..fbf1e19205 --- /dev/null +++ b/files/pl/web/html/element/a/index.html @@ -0,0 +1,384 @@ +--- +title: ': Element Kotwicy' +slug: Web/HTML/Element/a +tags: + - Element + - HTML + - HTML semantyka na poziomie tekstu + - Reference + - Treść + - Web +translation_of: Web/HTML/Element/a +--- +

{{HTMLRef}}

+ +

Element <a> w HTML (lub element kotwicy) tworzy hiperłącze do innych stron internetowych, plików, miejsc na tej samej stronie, adresów e-mail lub innych adresów URL.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Kategorie treściTreść płynna, Treść frazowania, Treść interaktywna, zawartość zdzieralna.
Dozwolona zawartośćTransparent, zawierający albo treści płynne (z wyłączeniem treści interaktywnych), albo treści frazowania.
Pominięcie znacznikaBrak, zarówno znacznik początkowy jak i końcowy są obowiązkowe.
Dozwoleni rodziceKażdy element, który akceptuje zawartość frazowania, lub każdy element, który akceptuje treści przepływu, ale zawsze z wyłączeniem elementów <a> (zgodnie z logiczną zasadą symetrii, jeśli znacznik <a>, jako rodzic, nie może mieć interaktywnej zawartości, to ta sama zawartość <a> nie może mieć znacznika <a> jako rodzica).
Dozwolone role ARIA{{ARIARole("button")}}, {{ARIARole("checkbox")}}, {{ARIARole("menuitem")}}, {{ARIARole("menuitemcheckbox")}}, {{ARIARole("menuitemradio")}}, {{ARIARole("option")}}, {{ARIARole("radio")}}, {{ARIARole("switch")}}, {{ARIARole("tab")}}, {{ARIARole("treeitem")}}
Interfejs DOM{{DOMxRef("HTMLAnchorElement")}}
+ +

Atrybuty

+ +

Ten element uwzględnia atrybuty globalne.

+ +
+
{{HTMLAttrDef("download")}}{{HTMLVersionInline(5)}}
+
Ten atrybut nakazuje przeglądarkom pobieranie adresu URL zamiast nawigowania do niego, więc użytkownik zostanie poproszony o zapisanie go w postaci pliku lokalnego. Jeśli atrybut ma wartość, jest używany jako wstępnie wypełniona nazwa pliku w oknie dialogowym Zapisz (użytkownik nadal może zmienić nazwę, jeśli chce). Nie ma ograniczeń co do dozwolonych wartości, choć / oraz \ są konwertowane na podkreślenia. Większość systemów plików ogranicza interpunkcję w nazwach plików, a przeglądarki odpowiednio dostosują sugerowaną nazwę. +
Uwagi: +
    +
  • Ten atrybut działa tylko dla adresów URL tego samego pochodzenia.
  • +
  • Chociaż adresy URL HTTP muszą być w tym samym miejscu pochodzenia, obiekt blob: URLs oraz data: URLs są dozwolone, aby można było pobierać treści generowane przez JavaScript, takie jak obrazy utworzone w aplikacji internetowej do edycji obrazów.
  • +
  • Jeżeli nagłówek HTTP Content-Disposition: podaje inną nazwę pliku niż ten atrybut, nagłówek HTTP ma pierwszeństwo przed tym atrybutem.
  • +
  • Jeśli Content-Disposition: jest ustawione na inline, Firefox nadaje priorytet Content-Disposition, podobnie jak w przypadku nazwy pliku, podczas gdy Chrome nadaje priorytet atrybutowi download.
  • +
+
+
+
{{HTMLAttrDef("href")}}
+
Zawiera URL lub fragment URL do którego wskazuje hiperłącze.
+
Fragment adresu URL jest nazwą poprzedzoną znakiem skrótu (#), który określa wewnętrzną lokalizację docelową ({{HTMLAttrxRef("id")}} elementu HTML) w bieżącym dokumencie. Adresy URL nie są ograniczone do dokumentów opartych na sieci Web, ale mogą korzystać z dowolnego protokołu obsługiwanego przez przeglądarkę. Na przykład, file:, ftp:, oraz mailto: działają w większości przeglądarek. +
+

Uwaga: Możesz użyć href="#top" lub pusty fragment href="#" aby przejść do górnej części biężącej strony. Takie zachowanie jest określone przez HTML5.

+
+
+
{{HTMLAttrDef("hreflang")}}
+
Ten atrybut wskazuje język ludzki powiązanego zasobu. Jest to atrybut czysto doradczy, bez wbudowanych funkcji. Dozwolone wartości są określane przez BCP47.
+
{{HTMLAttrDef("ping")}}
+
Zawiera oddzieloną spacją listę adresów URL, do których, gdy następuje hiperłącze, żądania {{HTTPMethod("POST")}} z oznaczeniem PING będą wysyłane przez przeglądarkę (w tle). Najczęściej używane do śledzenia.
+
{{HTMLAttrDef("referrerpolicy")}} {{Experimental_Inline}}
+
Wskazuje który odsyłacz należy wysłać podczas pobierania adresu URL: +
    +
  • 'no-referrer' oznacza, że Referer: nagłówek nie zostanie wysłany.
  • +
  • 'no-referrer-when-downgrade' oznacza, że Referer: nagłówek nie zostanie wysłany podczas nawigacji do miejsca pochodzenia bez HTTPS. Jest to zachowanie domyślne.
  • +
  • 'origin' oznacza, że odsyłającym będzie pochodzenie strony, nie włączając informacji po domenie.
  • +
  • 'origin-when-cross-origin' oznacza, że nawigacja do innych miejsc pochodzenia będzie ograniczona do schematu, hosta i portu, podczas gdy nawigacja w tym samym miejscu pochodzenia będzie obejmować ścieżkę strony odsyłającej.
  • +
  • 'strict-origin-when-cross-origin'
  • +
  • 'unsafe-url' oznacza, że odsyłacz będzie zawierał pochodzenie i ścieżkę, ale nie fragment, hasło, lub nazwę użytkownika. Jest to niebezpieczne, ponieważ może spowodować przeciek danych z bezpiecznych adresów URL do niepewnych.
  • +
+
+
{{HTMLAttrDef("rel")}}
+
Określa relację obiektu docelowego z obiektem łącza. Wartość jest oddzieloną spacjami listą typów łączy.
+
{{HTMLAttrDef("target")}}
+
Określa, gdzie ma być wyświetlany link URL. Jest to nazwa lub słowo kluczowe kontekstu przeglądania, zakładki, okna lub <iframe>. Następujące słowa kluczowe mają specjalne znaczenie: +
    +
  • _self: Wczytuje adres URL do tego samego kontekstu przeglądania, co bieżący. Jest to zachowanie domyślne.
  • +
  • _blank: Wczytuje adres URL w nowy kontekst przeglądania. Zazwyczaj jest to zakładka, ale użytkownicy mogą skonfigurować przeglądarkę tak, aby korzystała z nowych okien.
  • +
  • _parent: Ładuje adres URL do nadrzędnego kontekstu przeglądania bieżącego. Jeśli nie ma rodzica, zachowuje się tak samo jak _self.
  • +
  • _top: Wczytuje adres URL w kontekst przeglądania na najwyższym poziomie (czyli "najwyższy" kontekst przeglądania, który jest przodkiem obecnego i nie ma rodzica). Jeśli nie ma rodzica, zachowuje się tak samo jak _self.
  • +
+ +
+

Uwaga: Podczas używania target, rozważ dodanie rel="noreferrer", aby uniknąć wykorzystania API window.opener.

+
+ +
+

Uwaga: Linkowanie do innej strony przy użyciu target="_blank" uruchomi nową stronę na tym samym procesie co Twoja strona. Jeśli nowa strona wykonuje duże skrypty JS, wydajność Twojej strony może ucierpieć. Aby tego uniknąć, użyj rel="noopener".

+
+
+
{{HTMLAttrDef("type")}}
+
Określa typ nośnika w postaci {{Glossary("typu MIME")}} dla połączonego adresu URL. Jest to czysto doradcze, bez wbudowanych funkcji.
+
+ +

Atrybuty przestarzałe

+ +
+
{{HTMLAttrDef("charset")}}{{Obsolete_Inline("HTML5")}}
+
Ten atrybut definiuje kodowanie znaków dla powiązanego adresu URL. Wartość ta powinna być spacją i/lub przecinkiem z listy zbiorów znaków zdefiniowanych w RFC 2045. Domyślną wartością jest ISO-8859-1. +
+

Uwaga dotycząca zastosowania: Ten atrybut jest przestarzały w HTML5 i nie powinien być używany przez twórców. Aby uzyskać jego efekt, użyj nagłówka HTTP Content-Type: na linkowanym adresie URL.

+
+
+
{{HTMLAttrDef("coords")}} tylko{{HTMLVersionInline(4)}}{{Obsolete_Inline("HTML5")}}
+
Do wykorzystania z atrybutem shape opisanym niżej, atrybut ten używał oddzielonej przecinkami listy liczb w celu określenia współrzędnych odnośnika na stronie.
+
{{HTMLAttrDef("name")}} tylko{{HTMLVersionInline(4)}}{{Obsolete_Inline("HTML5")}}
+
Ten atrybut był wymagany w przypadku kotwic określających możliwą lokalizację docelową na stronie. W HTML 4.01, id oraz name mogą być używane jednocześnie w elemencie <a>, o ile mają identyczne wartości. +
+

Uwaga dotycząca zastosowania: Ten atrybut jest przestarzały w HTML5, zamiast niego użyj globalnego atrybutu {{HTMLAttrxRef("id")}}.

+
+
+
{{HTMLAttrDef("rev")}} tylko{{HTMLVersionInline(4)}}{{Obsolete_Inline("HTML5")}}
+
Ten atrybut określa łącze odwrotne, odwrotną zależność atrybutu rel. Został wycofany ze względu na to, że był bardzo mylący. +
Uwaga: Obecnie specyfikacja W3C HTML 5.2 stwierdza, że rev nie jest już przestarzałe, podczas gdy Living Standard od WHATWG nadal ma to oznaczone jako przestarzałe. Dopóki ta rozbieżność nie zostanie wyjaśniona, zalecane jest uznawać go jako atrybut przestarzały.
+
+
{{HTMLAttrDef("shape")}} tylko{{HTMLVersionInline(4)}}{{Obsolete_Inline("HTML5")}}
+
Atrybut ten został użyty do zdefiniowania regionu dla hiperłączy w celu utworzenia mapy obrazu. Wartości to circle, default, polygon, oraz rect. Format atrybutu coords zależy od wartości kształtu. Dla circle wartością jest x,y,r gdzie x oraz y są współrzędnymi pikseli dla środka okręgu, a r jest wartością promienia w pikselach. Dla rect atrybut coords powinien wynosić x,y,w,h. Wartości x,y definiują lewy górny narożnik prostokąta, natomiast w oraz h odpowiednio szerokość i wysokość. Wartość polygon dla kształtu wymaga wartości x1,y1,x2,y2,... dla coords. Każda z par x,y określa punkt wielokąta, z kolejnymi punktami połączonymi liniami prostymi i ostatnim punktem połączonym z pierwszym. Wartość default dla kształtu wymaga użycia całego zamkniętego obszaru, zazwyczaj obrazu. +
Uwaga: Użyj atrybutu {{HTMLAttrxRef("usemap", "img")}} dla elementu {{HTMLElement("img")}} i powiązanego elementu {{HTMLElement("map")}} aby zdefiniować hotspoty zamiast atrybutu shape.
+
+
+ +

Przykłady

+ +

Odnośnik do lokalizacji zewnętrznej

+ +
<!-- kotwica tworząca odnośnik do zewnętrznego pliku -->
+<a href="http://www.mozilla.com/">
+Odnośnik zewnętrzny
+</a>
+
+ +

Rezultat

+ + +

Odnośnik zewnętrzny

+ +

Odnośnik do innej sekcji na tej samej stronie

+ +
<!-- odnośniki do elementów na tej stonie z id="attr-href" -->
+<a href="#attr-href">
+Opis łączy na tej samej stronie
+</a>
+ +

Rezultat

+ +

Opis łączy na tej samej stronie

+ +

Tworzenie klikalnego obrazu

+ +

W tym przykładzie jako odnośnika do strony głównej MDN użyto obrazu. Strona główna otworzy się w nowym kontekście przeglądania, czyli w nowej stronie lub nowej karcie.

+ +
<a href="https://developer.mozilla.org/pl/" target="_blank">
+  <img src="https://mdn.mozillademos.org/files/6851/mdn_logo.png"
+       alt="MDN logo" />
+</a>
+
+ +

Rezultat

+ +

MDN logo

+ +

Tworzenie odnośnika email

+ +

Często tworzy się linki, które otwierają się w programie pocztowym użytkownika, aby umożliwić mu wysłanie nowej wiadomości. Odbywa się to za pomocą odnośnika mailto:. Oto prosty przykład:

+ +
<a href="mailto:nowhere@mozilla.org">Wyślij email do nikąd</a>
+ +

Rezultat

+ +

Wyślij email do nikąd

+ +

Aby uzyskać dodatkowe informacje dotyczące schematu adresu URL mailto, takie jak temat, treść, lub inne z góry określone treści, zobacz Odnośniki email lub {{RFC(6068)}}.

+ +

Tworzenie łącza telefonicznego

+ +

Oferowanie łącz telefonicznych jest pomocne dla użytkowników przeglądających dokumenty internetowe a ich urządzenie jest powiązane z telefonem.

+ +
<a href="tel:+491570156">+49 157 0156</a>
+ +

Dodatkowe informację na temat schematu URL tel można znaleźć w {{RFC(3966)}}.

+ +

Użycie atrybutu download do zapisania <canvas> jako PNG

+ +

Jeśli chcesz pozwolić użytkownikom na pobranie elementu HTML {{HTMLElement("canvas")}} jako obrazu, możesz utworzyć odnośnik z atrybutem download i danymi płótna jako URL pliku:

+ +
var link = document.createElement('a');
+link.textContent = 'download image';
+
+link.addEventListener('click', function(ev) {
+    link.href = canvas.toDataURL();
+    link.download = "mypainting.png";
+}, false);
+
+document.body.appendChild(link);
+ +

Można to zobaczyć w praktyce na stronie jsfiddle.net/codepo8/V6ufG/2/.

+ +

Uwagi

+ +

HTML 3.2 definiuje tylko atrybuty name, href, rel, rev oraz title.

+ +

Kwestie dotyczące bezpieczeństwa i prywatności

+ +

Chociaż elementy <a> mają wiele niewinnych zastosowań, mogą mieć niepożądane konsekwencje dla bezpieczeństwa i prywatności użytkownika. Zobacz Nagłówek Referer: obawy dotyczące prywatności i bezpieczeństwa, aby uzyskać więcej informacji i środków zaradczych.

+ +

Kwestie dostępności

+ +

wydarzenia onclick

+ +

Znaczniki Kotwicy są często nadużywane przez zdarzenie onclick do tworzenia pseudo-przycisków przez ustawienie href na "#" lub "javascript:void(0)", aby zapobiec odświeżaniu strony.

+ +

Wartości te powodują nieoczekiwane zachowanie podczas kopiowania/przenoszenia linków, otwierania odnośników w nowej zakładce/oknie, dodawaniu do zakładek i gdy JavaScript jest nadal pobierany, w stanie błędu, lub wyłączony. To również przekazuje nieprawidłową semantykę do technologii wspomagających (np. czytniki ekranu). W takich przypadkach zaleca się użycie przycisku {{HTMLElement("button")}} instead. Ogólnie rzecz biorąc, należy używać kotwicy tylko do nawigacji przy użyciu odpowiedniego adresu URL.

+ +

Linki zewnętrzne i łącza do zasobów nie-HTML

+ +

Oba odnośniki, które otwierają się w nowej zakładce lub oknie poprzez deklarację target="_blank" oraz linki do zasobów plików, których wartość href wskazuje na źródło pliku powinny zawierać wskaźnik zachowania, które wystąpi po aktywacji łącza.

+ +

Osoby o słabym wzroku, które poruszają się za pomocą technologii odczytu ekranowego lub które mają problemy poznawcze mogą zostać zmylone, gdy nieoczekiwanie otworzy się nowa karta, okno lub aplikacja. Starsze wersje oprogramowania do czytania na ekranie mogą nawet nie ogłaszać zachowania.

+ +

Odnośnik otwierający nową kartę lub okno

+ +
<a target="_blank" href="https://www.wikipedia.org/">Wikipedia (otwiera się w nowym oknie)</a>
+
+ +

Odnośnik do zasobów nie-HTML

+ +
<a target="_blank" href="2017-annual-report.ppt">Raport Roczny 2017 (PowerPoint)</a>
+
+ +

Jeśli zamiast tekstu używana jest ikona do oznaczenia tego rodzaju zachowania odnośników, upewnij się, że zawiera ona {{HTMLAttrxRef("alt", "img", "opis alternatywny", "true")}}.

+ + + +

Odnośniki pomijające

+ +

Link pomijający, znany również jako skipnav, jest elementem a umieszczonym jak najbliżej elementu otwarcia {{HTMLElement("body")}}, który odsyła do początku głównej zawartości strony. Odnośnik ten umożliwia ominięcie treści powtarzanej na wielu stronach, takich jak nagłówek strony i podstawowa nawigacja.

+ +

Łącza pomijające są szczególnie przydatne dla osób, które poruszają się za pomocą technologii wspomagających, takich jak przełączniki, komendy głosowe, ustne pałeczki/różdżki, gdzie poruszanie się przez powtarzające się łącza może być pracochłonnym zadaniem.

+ + + +

Odległość

+ +

Duża ilość interaktywnych treści—w tym kotwic—umieszczonych w bliskiej odległości od siebie powinna mieć miejsce na ich oddzielenie. Odstęp ten jest korzystny dla osób, które doświadczają problemów z układem ruchu, które mogą przypadkowo aktywować błędne treści interaktywne podczas nawigacji.

+ +

Odstępy mogą być tworzone przy użyciu właściwości CSS, takich jak {{CSSxRef("margin")}}.

+ + + +

Klikanie i focus

+ +

To, czy kliknięcie na {{HTMLElement("a")}} powoduje, że przechodzi ono w tryb skupienia, zależy od przeglądarki i systemu operacyjnego.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Czy kliknięcie na {{HTMLElement("a")}} spowoduje tryb skupienia?
Przeglądarki stacjonarneWindows 8.1OS X 10.9
Firefox 30.0TakTak
Chrome ≥39
+ (Chromium bug 388666)
TakTak
Safari 7.0.5Nie dotyczyTylko jeśli posiada tabindex
Internet Explorer 11TakNie dotyczy
Presto (Opera 12)TakTak
+ + + + + + + + + + + + + + + + + + + + + + +
Czy stuknięcie w {{HTMLElement("a")}} spowoduje tryb skupienia?
Przeglądarki mobilneiOS 7.1.2Android 4.4.4
Safari MobileTylko jeśli posiada tabindexNie dotyczy
Chrome 35???Tylko jeśli posiada tabindex
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName("Referrer Policy", "#referrer-policy-delivery-referrer-attribute", "referrer attribute")}}{{Spec2("Referrer Policy")}}Dodano atrybut referrer.
{{SpecName("HTML WHATWG", "text-level-semantics.html#the-a-element", "<a>")}}{{Spec2("HTML WHATWG")}} 
{{SpecName("HTML5 W3C", "text-level-semantics.html#the-a-element", "<a>")}}{{Spec2("HTML5 W3C")}} 
{{SpecName("HTML4.01", "struct/links.html#h-12.2", "<a>")}}{{Spec2("HTML4.01")}} 
+ +

Kompatybilność z przeglądarką

+ + + +

{{Compat("html.elements.a")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/html/element/abbr/index.html b/files/pl/web/html/element/abbr/index.html new file mode 100644 index 0000000000..0dfe90c52b --- /dev/null +++ b/files/pl/web/html/element/abbr/index.html @@ -0,0 +1,200 @@ +--- +title: ': Element Skrótu' +slug: Web/HTML/Element/abbr +tags: + - Akronim + - Definicje + - Element + - HTML + - HTML semantyka na poziomie tekstu + - Reference + - Web + - semantyka + - skrót +translation_of: Web/HTML/Element/abbr +--- +

{{HTMLRef}}

+ +

Element skrótu HTML (<abbr>) reprezentuje skrót lub akronim; opcjonalny atrybut {{htmlattrxref("title")}} może stanowić rozwinięcie lub opis skrótu. Jeśli występuje, title musi zawierać pełny opis i nic więcej.

+ +

Artykuł Jak oznaczać skróty i uczynić je zrozumiałymi jest przewodnikiem do nauki używania <abbr> i elementów pokrewnych.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Kategorie treściTreść płynnaTreść frazowania, zawartość zdzieralna.
Dozwolona zawartośćTreść frazowania
Pominięcie znacznikaBrak, zarówno znacznik początkowy jak i końcowy są obowiązkowe.
Dozwoleni rodziceKażdy element, który akceptuje zawartość frazowania
Dozwolone role ARIAKażdy
Interfejs DOM{{domxref("HTMLElement")}}
+ +

Atrybuty

+ +

Ten element obsługuje tylko atrybuty globalne. Atrybut {{htmlattrxref("title")}} ma specyficzne znaczenie semantyczne, gdy jest używany z elementem <abbr>musi zawierać pełny opis czytelny dla człowieka lub rozwinięcie skrótu. Tekst ten jest często prezentowany przez przeglądarki jako etykieta pomocnicza, gdy kursor myszy jest zawieszony nad elementem.

+ +

Każdy element <abbr>, którego używasz jest niezależny od wszystkich innych; podanie title dla jednego elementu nie załącza automatycznie tego samego rozszerzenia tekstu do innych o tej samej treści.

+ +

Uwagi dotyczące użycia

+ +

Typowe zastosowania

+ +

Z pewnością nie jest wymagane, aby wszystkie skróty były oznaczane przy użyciu <abbr>. Jest jednak kilka przypadków, w których jest to pomocne:

+ +
    +
  • Jeśli używany jest skrót i chcesz zapewnić rozszerzenie lub definicję poza obiegiem treści dokumentu, użyj <abbr> z odpowiednim atrybutem {{htmlattrxref("title")}}.
  • +
  • Aby zdefiniować skrót, który może być nieznany czytelnikowi, należy przedstawić termin używając <abbr> oraz atrybutu title lub tekstu liniowego podającego definicję.
  • +
  • W przypadku, gdy należy zwrócić uwagę semantycznie na obecność skrótu w tekście, przydatny jest element <abbr>. To z kolei może być użyte do celów stylizacyjnych lub skryptowych.
  • +
  • Możesz użyć <abbr> w porozumieniu z {{HTMLElement("dfn")}} aby ustalić definicje terminów, które są skrótami lub akronimami. Zobacz przykład {{anch("Definiowanie skrótu")}} poniżej.
  • +
+ +

Uwagi gramatyczne

+ +

W języka z {{interwiki("wikipedia", "grammatical number")}} (czyli w tych językach, w których liczba elementów wpływa na gramatykę zdania), użyj tej samej liczby gramatycznej w atrybucie title, co wewnątrz elementu <abbr>. Jest to szczególnie ważne w językach z więcej niż dwoma liczbami, takich jak Arabski, ale jest również istotne w języku angielskim.

+ +

Domyślna stylizacja

+ +

Celem tego znacznika jest jedynie wygoda dla autora i wszystkie przeglądarki domyślnie wyświetlają go w linii ({{cssxref('display')}}: inline), choć jego stylizacja różni się w zależności od przeglądarki:

+ +
    +
  • Niektóre przeglądarki, takie jak Internet Explorer, nie stylizują go inaczej niż elementu {{HTMLElement("span")}}.
  • +
  • Opera, Firefox i inne dodają kropkowane podkreślenie zawartości elementu.
  • +
  • Kilka przeglądarek nie tylko dodaje kropkowane podkreślenie, ale także dodaje do nich wariant "small-caps"; aby uniknąć tej stylizacji, dodanie czegoś w rodzaju {{cssxref('font-variant')}}: none w CSS załatwia tę sprawę.
  • +
+ +

Przykłady

+ +

Oznaczanie skrótu semantycznie

+ +

Aby oznaczyć skrót bez podania rozwinięcia lub opisu, po prostu użyj <abbr> bez żadnych atrybutów, jak widać w tym przykładzie.

+ +

HTML

+ +
<p>Używanie <abbr>HTML</abbr> jest fajne i proste!</p>
+ +

Rezultat

+ +

Używanie HTML jest fajne i proste!

+ +

Stylistyka skrótów

+ +

Możesz użyć CSS, aby ustawić własny styl skrótów, jak pokazano w tym prostym przykładzie.

+ +

HTML

+ +
<p>Używając <abbr>CSS</abbr>, możesz stylizować swoje skróty!</p>
+ +

CSS

+ +
abbr {
+  font-variant: all-small-caps;
+}
+ +

Rezultat

+ +

Używając CSS, możesz stylizować swoje skróty!

+ +

Dostarczanie rozszerzenia

+ +

Dodanie atrybutu {{htmlattrxref("title")}} pozwala na rozwinięcie lub zdefiniowanie skrótu lub akronimu.

+ +

HTML

+ +
<p>Funkcję rejestru nazw internetowych w domenie .pl pełni <abbr title="Naukowa i Akademicka Śieć Komputerowa">NASK</abbr>.</p>
+ +

Rezultat

+ +

Funkcję rejestru nazw internetowych w domenie .pl pełni NASK.

+ +

Definiowanie skrótu

+ +

Możesz użyć <abbr> w połączeniu z {{HTMLElement("dfn")}}, aby bardziej formalnie zdefiniować skrót, jak pokazano tutaj.

+ +

HTML

+ +
<p><dfn id="html"><abbr title="HyperText Markup Language">HTML</abbr>
+</dfn> jest językiem znaczników używanym do tworzenia semantyki i struktury strony internetowej.</p>
+
+<p><dfn id="spec">Specyfikacja</dfn>
+(<abbr title="Specyfikacja">spec</abbr>) jest dokumentem, który przedstawia w szczegółach, jak technologia lub API ma funkcjonować i jak wygląda dostęp do nich.</p>
+ +

Rezultat

+ +

HTML jest językiem znaczników używanym do tworzenia semantyki i struktury strony internetowej.

+ +

Specyfikacja (spec) jest dokumentem, który przedstawia w szczegółach, jak technologia lub API ma funkcjonować i jak wygląda dostęp do nich.

+ +

Zobacz bardziej szczegółowe przykłady w artykule Jak oznaczyć skróty i uczynić je zrozumiałymi.

+ +

Kwiestie dostępności

+ +

Wypisanie akronimu lub skrótu w całości za pierwszym razem, gdy jest on używany na stronie, jest korzystne, aby pomóc ludziom go zrozumieć, zwłaszcza jeśli treść jest żargonem technicznym lub branżowym.

+ +

Przykład

+ +
<p>JavaScript Object Notation (<abbr>JSON</abbr>) jest lekkim formatem wymiany danych.</p>
+
+ +

Jest to szczególnie pomocne dla osób, które nie znają terminologii lub pojęć omawianych w treści, dla osób, które są nowe w języku oraz dla osób z problemami poznawczymi.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', 'semantics.html#the-abbr-element', '<abbr>')}}{{Spec2('HTML WHATWG')}} 
{{SpecName('HTML5 W3C', 'text-level-semantics.html#the-abbr-element', '<abbr>')}}{{Spec2('HTML5 W3C')}} 
{{SpecName('HTML4.01', 'struct/text.html#edef-ABBR', '<abbr>')}}{{Spec2('HTML4.01')}} 
+ +

Kompatybilność z przeglądarką

+ + + +

{{Compat("html.elements.abbr")}}

+ +

Zobacz także

+ +
    +
  • Używanie elementu <abbr>
  • +
  • Inne elementy zawierające semantykę na poziomie tekstu: {{HTMLElement("a")}}, {{HTMLElement("em")}}, {{HTMLElement("strong")}}, {{HTMLElement("small")}}, {{HTMLElement("cite")}}, {{HTMLElement("q")}}, {{HTMLElement("dfn")}}, {{HTMLElement("time")}}, {{HTMLElement("code")}}, {{HTMLElement("var")}}, {{HTMLElement("samp")}}, {{HTMLElement("kbd")}}, {{HTMLElement("sub")}}, {{HTMLElement("sup")}}, {{HTMLElement("b")}}, {{HTMLElement("i")}}, {{HTMLElement("mark")}}, {{HTMLElement("ruby")}}, {{HTMLElement("rp")}}, {{HTMLElement("rt")}}, {{HTMLElement("bdo")}}, {{HTMLElement("span")}}, {{HTMLElement("br")}}, {{HTMLElement("wbr")}}.
  • +
  • Przestarzały element {{HTMLElement("acronym")}}, którego obowiązki zostały przeniesione na <abbr>
  • +
diff --git a/files/pl/web/html/element/acronym/index.html b/files/pl/web/html/element/acronym/index.html new file mode 100644 index 0000000000..95c271a99f --- /dev/null +++ b/files/pl/web/html/element/acronym/index.html @@ -0,0 +1,81 @@ +--- +title: +slug: Web/HTML/Element/acronym +tags: + - Element + - HTML + - 'HTML:Treść płynna' + - Obsolete + - Reference + - Web +translation_of: Web/HTML/Element/acronym +--- +

{{obsolete_header}}

+ +

Podsumowanie

+ +

Element HTML Akronim (<acronym>) pozwala autorom wyraźnie wskazać ciąg znaków, które składają się na akronim lub skrót słowa. Element ten został usunięty w HTML5. Użyj elementu {{HTMLElement("abbr")}}.

+ +
+

Uwaga dotycząca użycia: Ten element został usunięty w HTML5 i nie powinien być już używany. Zamiast tego, programiści powinni używać elementu {{HTMLElement("abbr")}}.

+
+ +

Atrybuty

+ +

Ten element ma tylko globalne atrybuty, które są wspólne dla wszystkich elementów.

+ +

Interfejs DOM

+ +

Ten element implementuje interfejs {{domxref('HTMLElement')}}.

+ +
Uwaga dotycząca implementacji: Do Gecko 1.9.2 włącznie, Firefox implementuje interfejs {{domxref('HTMLSpanElement')}} dla tego elementu.
+ +

Przykład

+ +
<p><acronym title="World Wide Web">WWW</acronym> jest tylko częścią składową Internetu.</p>
+
+ +

Domyślna stylizacja

+ +

Chociaż celem tego znacznika jest jedynie wygoda dla autora, jego domyślna stylizacja różni się w zależności od przeglądarki:

+ +
    +
  • Niektóre przeglądarki, takie jak Internet Explorer, nie stylizowały go inaczej niż elementu {{HTMLElement("span")}}.
  • +
  • Opera, Firefox, Chrome i inne dodają kropkowane podkreślenie zawartości elementu.
  • +
  • Kilka przeglądarek nie tylko dodaje kropkowane podkreślenie, ale także dodaje do nich wariant "small-caps"; aby uniknąć tej stylizacji, dodanie czegoś w rodzaju {{cssxref('font-variant')}}: none w CSS załatwia tę sprawę.
  • +
+ +

Dlatego zaleca się, aby autorzy stron internetowych nie polegali całkowicie na domyślnej stylizacji.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML4.01', 'struct/text.html#edef-ACRONYM', '<acronym>')}}{{Spec2('HTML4.01')}} 
+ +

Kompatybilność z przeglądarką

+ + + +

{{Compat("html.elements.acronym")}}

+ +

Zobacz także

+ +
    +
  • Element {{HTMLElement("abbr")}}
  • +
+ +

{{HTMLRef}}

diff --git a/files/pl/web/html/element/address/index.html b/files/pl/web/html/element/address/index.html new file mode 100644 index 0000000000..3b3f050fbd --- /dev/null +++ b/files/pl/web/html/element/address/index.html @@ -0,0 +1,140 @@ +--- +title: '
: Element Adresu Kontaktowego' +slug: Web/HTML/Element/address +tags: + - Adres + - Adres Email + - Autor + - Element + - Email + - HTML + - Informacje Kontaktowe + - Kontakt + - Reference + - Sekcje HTML + - Web +translation_of: Web/HTML/Element/address +--- +
{{HTMLRef}}
+ +

Element HTML <address> wskazuje, że dołączony HTML dostarcza informacji kontaktowych dla osoby lub osób, lub dla organizacji.

+ +

Informacje kontaktowe dostarczane przez element <address> mogą przybierać dowolną formę odpowiednią dla danego kontekstu i mogą obejmować wszelkie potrzebne informacje kontaktowe, takie jak adres fizyczny, adres URL, adres email, numer telefonu, obsługa mediów społecznościowych, współrzędne geograficzne i tak dalej. Element <address> powinien zawierać imię i nazwisko osoby, osób lub nazwę organizacji, do której odnoszą się dane kontaktowe.

+ +

<address> może być używany w różnych kontekstach, takich jak podanie informacji kontaktowych firmy w nagłówku strony lub wskazanie autora artykułu poprzez włączenie elementu <address> do {{HTMLElement("article")}}.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Kategorie treściTreść płynna, zawartość zdzieralna.
Dozwolona zawartość +

Zawartość przepływu, ale bez zagnieżdżonego elementu <address>, bez zawartości nagłówka ({{HTMLElement("hgroup")}}, {{HTMLElement("h1")}}, {{HTMLElement("h2")}}, {{HTMLElement("h3")}}, {{HTMLElement("h4")}}, {{HTMLElement("h5")}}, {{HTMLElement("h6")}}), bez zawartości sekcjonowania ({{HTMLElement("article")}}, {{HTMLElement("aside")}}, {{HTMLElement("section")}}, {{HTMLElement("nav")}}) i bez elementu {{HTMLElement("header")}} ani {{HTMLElement("footer")}}.

+
Pominięcie znacznikaBrak, zarówno znacznik początkowy jak i końcowy są obowiązkowe.
Dozwoleni rodziceKażdy element, który akceptuje zawartość przepływu, ale zawsze z wyłączeniem elementów <address> (zgodnie z logiczną zasadą symetrii, jeśli znacznik <address>, jako rodzic, nie może zagnieżdżać elementu <address>, to ta sama zawartość <address> nie może mieć znacznika <address> jako rodzica.
Dozwolone role ARIABrak
Interfejs DOM{{domxref("HTMLElement")}} Przed Gecko 2.0 (Firefox 4), Gecko zaimplementowało ten element wykorzystując interfejs {{domxref("HTMLSpanElement")}}
+ +

Atrybuty

+ +

Ten element uwzględnia tylko atrybuty globalne.

+ +

Uwagi dotyczące użycia

+ +
    +
  • Aby reprezentować dowolny adres, taki, który nie jest związany z danymi kontaktowymi, użyj elementu {{HTMLElement("p")}} zamiast elementu <address>.
  • +
  • Element ten nie powinien zawierać więcej informacji niż dane kontaktowe, np. data publikacji (która należy do elementu {{HTMLElement("time")}}).
  • +
  • Zazwyczaj element <address> może być umieszczony wewnątrz elementu {{HTMLElement("footer")}} bieżącej sekcji, jeśli taki istnieje.
  • +
+ +

Przykład

+ +

Ten przykład pokazuje wykorzystanie elementu <address> do wyznaczenia danych kontaktowych autora artykułu.

+ +
  <address>
+    Możesz skontaktować się z autorem na <a href="http://www.somedomain.com/contact">
+    www.somedomain.com</a>.<br>
+    Jeśli widzisz jakieś błędy, proszę <a href="mailto:webmaster@somedomain.com">
+    skontaktuj się z administratorem</a>.<br>
+    Możesz również chcieć nas odwiedzić:<br>
+    Mozilla Foundation<br>
+    331 E Evelyn Ave<br>
+    Mountain View, CA 94041<br>
+    USA
+  </address>
+
+ +

Rezultat

+ +
Możesz skontaktować się z autorem na www.somedomain.com.
+Jeśli widzisz jakieś błędy, proszę skontaktuj się z administratorem.
+Możesz również chcieć nas odwiedzić:
+Mozilla Foundation
+331 E Evelyn Ave
+Mountain View, CA 94041
+USA
+ +

 

+ +

Mimo, że renderuje tekst z taką samą domyślną stylistyką jak elementy {{HTMLElement("i")}} oraz {{HTMLElement("em")}}, bardziej odpowiednie jest użycie <address> w odniesieniu do informacji kontaktowych, ponieważ przekazuje on dodatkowe informacje semantyczne.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('HTML WHATWG', 'semantics.html#the-address-element', '<address>')}}{{Spec2('HTML WHATWG')}} 
{{SpecName('HTML5 W3C', 'sections.html#the-address-element', '<address>')}}{{Spec2('HTML5 W3C')}} 
{{SpecName('HTML4.01', 'struct/global.html#h-7.5.6', '<address>')}}{{Spec2('HTML4.01')}} 
+ +

Kompatybilność z przeglądarką

+ + + +

{{Compat("html.elements.address")}}

+ +

Zobacz także

+ +
    +
  • Inne elementy związane z sekcją: {{HTMLElement("body")}}, {{HTMLElement("nav")}}, {{HTMLElement("article")}}, {{HTMLElement("aside")}}, {{HTMLElement("h1")}}, {{HTMLElement("h2")}}, {{HTMLElement("h3")}}, {{HTMLElement("h4")}}, {{HTMLElement("h5")}}, {{HTMLElement("h6")}}, {{HTMLElement("hgroup")}}, {{HTMLElement("footer")}}, {{HTMLElement("section")}}, {{HTMLElement("header")}};
  • +
  • Sekcje i zarys dokumentu HTML5.
  • +
diff --git a/files/pl/web/html/element/applet/index.html b/files/pl/web/html/element/applet/index.html new file mode 100644 index 0000000000..dc0e3f6945 --- /dev/null +++ b/files/pl/web/html/element/applet/index.html @@ -0,0 +1,74 @@ +--- +title: applet +slug: Web/HTML/Element/applet +tags: + - 'HTML:Opis_elementów' +translation_of: Web/HTML/Element/applet +--- +

+


+

+

Podsumowanie

+

Element <applet> (Applet) wyróżnia włączenie apletu Java. Definicja HTML 4.01 Strict nie zawiera tego elementu, został on wycofany na rzecz <object>. +

+

Atrybuty

+
align +
Ten atrybut jest używany to umieszczenia apletu na stronie względem treści, która może opływać go wokół. Specyfikacja HTML 4.01 definiuje wartości bottom, left, middle, right i top, natomiast Microsoft i Netscape mogą wspierać również absbottom, absmiddle, baseline, center i texttop. +
+
alt +
Ten atrybut powoduje wyświetlenie opisowego alternatywnego tekstu w przeglądarkach, które nie wspierają Javy. Projektanci stron powinni również pamiętać, że zawartość zamknięta w elemencie <applet> również może być wyświetlona jako alternatywny tekst. +
+
archive +
Ten atrybut odsyła do zarchiwizowanej lub skompresowanej wersji apletu i powiązanych z nim plików klas, co może pomóc zredukować czas ładowania. +
+
code +
Ten atrybut określa URL pliku apletu z klasami do załadowania i wykonania. Nazwy plików apletu są identyfikowane przez rozszerzenie pliku .class. URL określony przez code może być relatywny do atrybutu codebase. +
+
codebase +
Ten atrybut daje bezwzględny lub względny URL katalogu, gdzie są przechowywane pliki .class apletu przywoływane przez atrybut code . +
+
datafld +
Ten atrybut, wspierany przez Internet Explorer 4 i wyższy, określa nazwę kolumny z obiektu źródła danych, który dostarcza powiązanych danych. Ten atrybut może być użyty do określenia różnych elementów <param> przekazywanych do apletu Javy. +
+
datasrc +
Podobnie jak datafld ten atrybut jest używany do wiązania danych w Internet Explorer 4. Określa id obiektu źródła danych, który dostarcza danych, które są powiązane z elementami <param>, związanymi z apletem.
+
height +
Ten atrybut określa wysokość w pikselach, której potrzebuje aplet. +
+
hspace +
Ten atrybut określa w pikselach dodatkową poziomą przestrzeń do zarezerwowania z dwóch stron apletu. +
+
mayscript +
W implementacji Netscape'a ten atrybut pozwala na dostęp do apletu przez programy w języku skryptowym, osadzone w dokumencie. +
+
name +
Ten atrybut przypisuje nazwę do apletu, zatem może być identyfikowany przez inne zasoby, szczególnie skrypty. +
+
object +
Ten atrybut określa URL serializowanej reprezentacji apletu. +
+
src +
Jako zdefiniowany dla Internet Explorer 4 i wyższego, ten atrybut określa URL dla pliku powiązanego z apletem. Znaczenie i użycie jest niejasne i nie jest częścią standardu HTML. +
+
vspace +
Ten atrybut określa w pikselach dodatkową pionową przestrzeń do zarezerwowania nad i pod apletem. +
+
width +
Ten atrybut określa w pikselach szerokość, której potrzebuje aplet. +
+

Przykład

+
<applet code="game.class" align="left" archive="game.zip" height="250" width="350">
+
+<param name="difficulty" value="easy">
+
+<b>Przepraszamy, potrzebujesz Javy, by grać w tę grę</b>
+
+</applet>
+

Notatki

+

Specyfikacja W3C nie zachęca do używania <applet> i preferuje używanie znacznika <object>. W definicji HTML 4.01 Strict ten element jest wycofywany. +


+{{ HTML:Element_Navigation() }} +

+
+
+{{ languages( { "en": "en/HTML/Element/applet" } ) }} diff --git a/files/pl/web/html/element/aside/index.html b/files/pl/web/html/element/aside/index.html new file mode 100644 index 0000000000..8bcb01e076 --- /dev/null +++ b/files/pl/web/html/element/aside/index.html @@ -0,0 +1,126 @@ +--- +title: